/* V15 - The same footer component across every website page. */
.az15-footer-wrap {
    --az15-ink:#17191b;
    position:relative;
    isolation:isolate;
    overflow:clip;
    width:100%;
    background-image:linear-gradient(180deg,rgba(24,28,28,.38),rgba(24,28,28,.58)),var(--az15-footer-photo);
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    color:var(--az15-ink);
    font-family:Jost,Arial,sans-serif;
    font-size:14px;
    line-height:1.7;
    box-sizing:border-box;
}
.az15-footer-wrap *, .az15-footer-wrap *::before, .az15-footer-wrap *::after{box-sizing:border-box}
.az15-footer-wrap a {color:inherit;text-decoration:none;transition:color .2s ease,background .2s ease,border-color .2s ease}
.az15-footer-wrap .az15-footer-cta {
    width:100%;max-width:none;min-height:340px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    padding:85px 24px 116px;margin:0;
    background:none!important;color:#fff;text-align:center;
    border:0;border-radius:0;
    text-shadow:0 2px 18px rgba(0,0,0,.13);
}
.az15-footer-wrap .az15-footer-cta::before, .az15-footer-wrap .az15-footer-cta::after{content:none!important;display:none!important}
.az15-footer-wrap .az15-footer-cta>span{
    font:600 11px/1.5 Jost,Arial,sans-serif!important;
    letter-spacing:.23em!important;color:#fff!important;
}
.az15-footer-wrap .az15-footer-cta h2{
    font:400 clamp(38px,4.7vw,69px)/1.06 'Cormorant Garamond',Georgia,serif!important;
    color:#fff!important;text-transform:none!important;letter-spacing:0!important;
    margin:14px auto 22px!important;max-width:720px;
    text-wrap:balance;
}
.az15-footer-wrap .az15-footer-cta .outline-link{
    color:#fff!important;border:1px solid rgba(255,255,255,.85)!important;
    background:transparent!important;border-radius:0!important;
    padding:13px 26px!important;
    font:600 11px/1.4 Jost,Arial,sans-serif!important;
    letter-spacing:.12em!important;
    display:inline-flex!important;align-items:center;gap:9px;text-transform:uppercase;
}
.az15-footer-wrap .az15-footer-cta .outline-link:hover,
.az15-footer-wrap .az15-footer-cta .outline-link:focus-visible{
    color:#1b2223!important;background:white!important;
}
.az15-footer-wrap .az15-site-footer {
    background:none!important;
    border:0!important;
    position:relative;
    width:min(calc(100% - 60px),1380px);
    max-width:1380px;
    margin:-54px auto 32px!important;
    padding:49px 44px 23px!important;
    border-radius:0!important;
    box-shadow:0 18px 52px rgba(0,0,0,.09)!important;
    min-height:0;
    color:#141414!important;
    z-index:2;
}
.az15-footer-wrap .az15-site-footer::before {
    content:''!important;display:block!important;
    position:absolute!important;inset:0!important;
    border-radius:0!important;background:#fff!important;
    box-shadow:none!important;z-index:-1!important;
}
.az15-footer-wrap .az15-site-footer::after {content:none!important;display:none!important}
.az15-footer-wrap .az15-site-footer .footer-grid{
    display:grid!important;
    grid-template-columns:minmax(275px,1.35fr) minmax(170px,1fr) minmax(160px,.85fr) minmax(145px,.8fr)!important;
    column-gap:26px!important;row-gap:22px!important;
    align-items:start!important;
    max-width:none!important;width:100%!important;
    margin:0!important;padding:0!important;
    background:none!important;
    border:0!important;
}
.az15-footer-wrap .az15-site-footer .footer-grid>div{min-width:0!important}
.az15-footer-wrap .az15-site-footer .footer-grid>div+div {
    border-left:1px solid #e9e7e4!important;
    padding-left:23px!important;
}
.az15-footer-wrap .az15-site-footer .footer-heading {
    font:400 clamp(24px,2.35vw,42px)/1.24 Georgia,serif!important;
    letter-spacing:.07em!important;color:#111!important;
    text-transform:uppercase!important;
    overflow-wrap:normal!important;
}
.az15-footer-wrap .az15-site-footer .footer-grid h4 {
    margin:2px 0 17px!important;
    font:700 11px/1.45 Jost,Arial,sans-serif!important;
    letter-spacing:.15em!important;color:#151515!important;
    text-transform:uppercase!important;
}
.az15-footer-wrap .az15-site-footer .footer-grid h4:not(:first-child){margin-top:28px!important}
.az15-footer-wrap .az15-site-footer .footer-grid a {
    display:block!important;width:auto!important;
    font:400 12px/1.65 Jost,Arial,sans-serif!important;
    margin:0 0 10px!important;padding:0!important;
    color:#333!important;text-align:left!important;
    background:none!important;border:0!important;
    text-decoration:none!important;
}
.az15-footer-wrap .az15-site-footer .footer-grid a:hover,
.az15-footer-wrap .az15-site-footer .copyright a:not(.book-pill):hover{color:#a46f59!important}
.az15-footer-wrap .az15-site-footer .footer-grid p {
    margin:0!important;font:400 12px/1.7 Jost,Arial,sans-serif!important;
    color:#444!important;
}
.az15-footer-wrap .az15-site-footer .copyright {
    margin:30px 0 0!important;
    padding:19px 0 0!important;
    border-top:1px solid #e9e7e4!important;
    display:flex!important;align-items:center!important;
    justify-content:space-between!important;gap:20px!important;
    max-width:none!important;
    color:#767676!important;
    font:400 11px/1.7 Jost,Arial,sans-serif!important;
}
.az15-footer-wrap .az15-site-footer .copyright span{color:inherit!important}
.az15-footer-wrap .az15-site-footer .copyright a:not(.book-pill){color:#777!important;text-decoration:none!important}
.az15-footer-wrap .az15-site-footer .copyright .book-pill{
    display:inline-flex!important;justify-content:center!important;align-items:center!important;gap:9px!important;
    padding:12px 20px!important;min-height:42px!important;
    background:#b78e74!important;color:#fff!important;
    border:1px solid #b78e74!important;border-radius:999px!important;
    text-decoration:none!important;white-space:nowrap!important;
    font:600 11px/1.4 Jost,Arial,sans-serif!important;
    letter-spacing:.07em!important;box-shadow:none!important;
}
.az15-footer-wrap .az15-site-footer .copyright .book-pill:hover{
    background:#956c54!important;border-color:#956c54!important;color:#fff!important;
}
/* Only for Artale-rendered archives/custom post types. Preserve the parent markup
   needed by its scripts while hiding its older visible footer elements. */
body.az15-parent-template-footer #footer-wrapper,
body.az15-parent-template-footer .footer-main-container,
body.az15-parent-template-footer #go-to-top{display:none!important}
@media(max-width:1040px){
    .az15-footer-wrap .az15-site-footer{padding:38px 30px 22px!important}
    .az15-footer-wrap .az15-site-footer .footer-grid{grid-template-columns:1.15fr 1fr 1fr!important;gap:25px!important}
    .az15-footer-wrap .az15-site-footer .footer-heading{grid-column:1 / -1;font-size:clamp(28px,3.6vw,37px)!important}
    .az15-footer-wrap .az15-site-footer .footer-grid>div:nth-child(2){padding-left:0!important;border-left:0!important}
}
@media(max-width:720px){
    .az15-footer-wrap .az15-footer-cta{min-height:295px;padding:64px 17px 88px}
    .az15-footer-wrap .az15-footer-cta h2{font-size:clamp(37px,9vw,53px)!important}
    .az15-footer-wrap .az15-site-footer{width:calc(100% - 24px);margin:-35px auto 12px!important;padding:30px 22px 22px!important}
    .az15-footer-wrap .az15-site-footer .footer-grid{grid-template-columns:1fr 1fr!important;gap:25px 18px!important}
    .az15-footer-wrap .az15-site-footer .footer-heading{font-size:clamp(23px,6.8vw,30px)!important}
    .az15-footer-wrap .az15-site-footer .footer-grid>div+div{padding-left:0!important;border-left:0!important}
    .az15-footer-wrap .az15-site-footer .copyright{flex-direction:column!important;align-items:flex-start!important;gap:16px!important}
}
@media(max-width:430px){
    .az15-footer-wrap .az15-site-footer .footer-grid{grid-template-columns:1fr!important}
    .az15-footer-wrap .az15-site-footer .footer-grid>div{border:0!important}
}
@media(prefers-reduced-motion:reduce){.az15-footer-wrap a{transition:none}}

/* V24: identical homepage footer width, spacing and shape on all custom pages. */
html body .az15-footer-wrap,
html body.az22-page .az15-footer-wrap,
html body.az-tips-page .az15-footer-wrap,
html body.azv7-content .az15-footer-wrap {
 width:100%!important;max-width:100%!important;min-width:0!important;
 margin:0!important;padding:0!important;border:0!important;
 box-sizing:border-box!important;
}
html body .az15-footer-wrap .az15-footer-cta{
 width:100%!important;max-width:none!important;min-height:340px!important;
 border-radius:0!important;box-sizing:border-box!important;
}
html body .az15-footer-wrap .az15-site-footer{
 width:min(calc(100% - 60px),1380px)!important;
 max-width:1380px!important;
 margin:-54px auto 32px!important;
 border-radius:0!important;
}
html body .az15-footer-wrap .az15-site-footer .footer-grid,
html body .az15-footer-wrap .az15-site-footer .copyright{width:100%!important;max-width:none!important}
@media(max-width:740px){
 html body .az15-footer-wrap .az15-footer-cta{min-height:295px!important}
 html body .az15-footer-wrap .az15-site-footer{width:calc(100% - 24px)!important;margin:-35px auto 12px!important}
}

/* V32 footer restore: prevent unstyled ModuloBox share overlay beneath footer on custom pages.
   Do not disable lightboxes on ordinary parent/Elementor pages. */
body.azv7-content .mobx-holder, body.az32-about .mobx-holder,
body.azv7-content .mobx-share-tooltip,body.az32-about .mobx-share-tooltip {display:none!important;visibility:hidden!important;}
.az15-footer-wrap .az32-client-link{margin-top:12px;font-weight:600;text-decoration:underline;text-underline-offset:5px;}

/* V42: ModuloBox's injected sharing controls should never render after the footer.
   Keep valid image/video lightbox controls available when they are opened. */
html body .mobx-share-tooltip,
html body .mobx-share,
html body .mobx-share-button,
html body .mobx-social,
html body .mobx-socials,
html body .mobx-share-container,
html body .mfp-share,
html body .modulobox-share{display:none!important;visibility:hidden!important}
/* On child-theme bespoke pages, the unstyled overlay is never needed. */
body.azv3-home .mobx-holder,
body.az22-page .mobx-holder,
body.az32-about .mobx-holder,
body.azv7-content .mobx-holder,
body.az-checkdate-theme .mobx-holder,
body.az-tips-page .mobx-holder {display:none!important;visibility:hidden!important}
.az15-footer-wrap .az15-footer-links .az32-client-link{font-weight:700!important;color:#94684f!important;border-bottom:1px solid #b98f72!important;width:max-content!important;max-width:100%!important}

/* V43: legacy ModuloBox/Follow me buttons could be injected outside normal
   footer markup. Hide only dormant UI and sharing nodes. */
html body .mobx-share-tooltip, html body .mobx-share,
html body .mobx-share-button,html body .mobx-social,
html body .mobx-socials,html body .mobx-share-container,
html body .mobx-social-button,html body .mobx-share-icon,
html body .mobx-share-link,html body .mobx-share-label,
html body .mfp-share,html body .modulobox-share {display:none!important;visibility:hidden!important}
body.azv41-about .mobx-holder,
body.azv41-about .mobx-share-tooltip {display:none!important;visibility:hidden!important}
/* Outside of an open lightbox, the plugin's orphan holder must not occupy page space. */
body:not(.mobx-open):not(.mobx-active) > .mobx-holder:not(.mobx-visible),
body:not(.mobx-open):not(.mobx-active) > .mobx-share-tooltip {display:none!important;visibility:hidden!important;position:fixed!important;width:0!important;height:0!important;overflow:hidden!important}

/* V47: Compact editorial footer — smaller storytelling statement, balanced columns. */
html body .az15-footer-wrap .az15-site-footer{
  padding:32px 34px 18px!important;
}
html body .az15-footer-wrap .az15-site-footer .footer-grid{
  grid-template-columns:minmax(270px,1.20fr) minmax(180px,1.02fr) minmax(175px,.90fr) minmax(130px,.65fr)!important;
  column-gap:20px!important;
  row-gap:18px!important;
}
html body .az15-footer-wrap .az15-site-footer .footer-heading{
  font:400 clamp(20px,1.64vw,26px)/1.27 Georgia,serif!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
  margin:0!important;
  text-wrap:balance;
  overflow-wrap:normal!important;
}
html body .az15-footer-wrap .az15-site-footer .footer-grid>div+div{
  padding-left:19px!important;
}
html body .az15-footer-wrap .az15-site-footer .footer-grid h4{
  margin-bottom:11px!important;
}
html body .az15-footer-wrap .az15-site-footer .footer-grid h4:not(:first-child){
  margin-top:19px!important;
}
html body .az15-footer-wrap .az15-site-footer .footer-grid a{
  margin-bottom:7px!important;
}
html body .az15-footer-wrap .az15-site-footer .copyright{
  margin-top:21px!important;padding-top:14px!important;
}
@media(max-width:1050px){
  html body .az15-footer-wrap .az15-site-footer .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:19px!important;}
  html body .az15-footer-wrap .az15-site-footer .footer-heading{grid-column:1/-1;font-size:23px!important}
  html body .az15-footer-wrap .az15-site-footer .footer-grid>div:nth-child(2){padding-left:0!important;border-left:0!important}
}
@media(max-width:720px){
  html body .az15-footer-wrap .az15-site-footer{padding:24px 20px 18px!important}
  html body .az15-footer-wrap .az15-site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 15px!important}
  html body .az15-footer-wrap .az15-site-footer .footer-heading{font-size:21px!important;line-height:1.25!important}
  html body .az15-footer-wrap .az15-site-footer .footer-grid>div+div{padding-left:0!important;border:0!important}
}
@media(max-width:430px){
  html body .az15-footer-wrap .az15-site-footer .footer-grid{grid-template-columns:1fr!important;gap:13px!important}
  html body .az15-footer-wrap .az15-site-footer .footer-heading{font-size:20px!important}
}
