/* Footer: fluid spacing and content-driven wrapping, independent of page templates. */
.af-footer{background:var(--af-background,#142a33);color:var(--af-text,#fff);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:clamp(16px,1.15vw,20px);line-height:1.5;margin:0!important;width:100%;max-width:none!important;overflow-wrap:anywhere}
.af-footer *{box-sizing:border-box}
.af-footer a{color:inherit;text-decoration:none;transition:color .2s ease}
.af-footer a:hover{color:var(--af-accent,#7ab6e3)}
.af-footer a:focus-visible{outline:2px solid var(--af-accent,#7ab6e3);outline-offset:5px}
.af-footer p,.af-footer h2{margin:0}
.af-inner{padding-inline:clamp(20px,4vw,80px)}
.af-top{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:clamp(48px,6vw,100px);border-bottom:1px solid color-mix(in srgb,var(--af-text) 22%,transparent)}
.af-navigation{min-width:0;flex:1}
.af-menu,.af-menu .sub-menu{list-style:none;margin:0;padding:0}
.af-menu{display:flex;flex-wrap:wrap;gap:12px 28px}
.af-menu li{min-width:0}
.af-menu a{display:inline-block;padding-block:8px}
.af-navigation .af-menu>li>a{color:var(--af-muted)}
.af-navigation .af-menu>li>a:hover,.af-navigation .current-menu-item>a{color:var(--af-text)}
.af-menu .sub-menu{font-size:.9em;display:grid;gap:2px;padding-top:4px}
.af-menu .sub-menu .sub-menu{padding-inline-start:12px}
.af-brand{display:block;flex:0 1 var(--af-logo-width,180px);width:var(--af-logo-width,180px);font-size:clamp(28px,3vw,44px);letter-spacing:-.06em;line-height:1.1}
.af-brand img{display:block;width:100%;height:auto;max-height:110px;object-fit:contain}
.af-brand--white img{filter:brightness(0) invert(1)}
.af-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr);gap:48px;padding-block:clamp(48px,5vw,80px) clamp(64px,8vw,140px);min-height:320px}
.af-intro p{max-width:25ch;color:var(--af-muted);font-size:clamp(20px,1.7vw,28px);line-height:1.4;letter-spacing:-.025em}
.af-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.af-contact h2{font-size:inherit;font-weight:400;line-height:1.4;letter-spacing:0;margin-bottom:24px;color:var(--af-text)}
.af-contact p{margin-bottom:16px;white-space:normal}
.af-contact>a{display:table;padding-block:6px;max-width:100%}
.af-social .af-menu{justify-content:flex-end;gap:10px 24px}
.af-underlined,.af-social a{ text-decoration:underline!important;text-underline-offset:8px;text-decoration-thickness:1px}
.af-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;padding-block:24px;border-top:1px solid color-mix(in srgb,var(--af-text) 22%,transparent);font-size:14px}
.af-copyright,.af-legal{color:var(--af-muted)}
.af-back{display:inline-flex;gap:12px;align-items:center;min-height:44px}
.af-back span{font-size:24px;font-weight:300}
.af-legal{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:flex-end;align-items:center}
.af-legal .af-menu{gap:8px 20px}
#charnay-page-top{display:block;position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden}
@media(min-width:1025px){body:not(.charnay-editorial-page):not(.charnay-shop-page):not(:has(.charnay-canvas)) .af-footer{width:calc(100% + 2 * var(--wp--style--root--padding-left,clamp(20px,4vw,80px)));margin-inline:calc(-1 * var(--wp--style--root--padding-left,clamp(20px,4vw,80px)))!important}}
@media(max-width:1024px){
.af-top{align-items:flex-start;gap:32px}.af-menu{gap:8px 24px}
.af-body{grid-template-columns:1fr 1fr;gap:40px}.af-intro{grid-column:1}.af-contacts{grid-column:1 / -1;grid-row:2}.af-social{grid-column:2;grid-row:1}
.af-bottom{grid-template-columns:1fr auto}.af-back{grid-column:2;grid-row:1}.af-legal{grid-column:1 / -1;justify-content:flex-start}
body:not(.charnay-editorial-page):not(.charnay-shop-page):not(:has(.charnay-canvas)) .af-footer{width:calc(100% + 2 * var(--wp--style--root--padding-left,clamp(20px,4vw,80px)));margin-inline:calc(-1 * var(--wp--style--root--padding-left,clamp(20px,4vw,80px)))!important}
}
@media(max-width:600px){
.af-top{flex-direction:column-reverse;padding-block:40px;gap:36px}.af-brand{flex-basis:auto;max-width:100%}
.af-navigation{width:100%}.af-navigation>.menu{width:100%}.af-navigation .af-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.af-body{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:36px 48px;min-height:0}.af-intro,.af-contacts,.af-social{grid-column:1;grid-row:auto}.af-intro p{max-width:30ch}
.af-social .af-menu{justify-content:flex-start;gap:12px 24px}.af-contacts{gap:28px}.af-contact h2{margin-bottom:16px}
.af-bottom{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:20px 28px}.af-back{grid-column:1;grid-row:1}.af-copyright{grid-row:2}.af-legal{grid-column:1}
}
@media(max-width:380px){.af-contacts{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.af-footer a{transition:none}}

/* The posts page has no outer body gutter to compensate. */
body.blog:not(:has(.charnay-canvas)) .af-footer{width:100%;margin-inline:0!important}

/* Keep the footer compact and the brand legible with or without an image. */
.af-top{padding-block:48px;align-items:flex-start}
.af-brand{flex-shrink:0;flex-basis:auto;width:auto;max-width:320px;font-size:clamp(25px,2.5vw,38px);overflow-wrap:normal;letter-spacing:-.04em}
.af-brand:has(img){width:var(--af-logo-width,180px)}
.af-body{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;min-height:0;padding-block:48px 56px}
.af-intro p{max-width:42ch;font-size:clamp(19px,1.5vw,24px)}
.af-contacts{grid-template-columns:minmax(0,1fr)}
.af-contacts:has(.af-contact:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}
.af-contact-copy{color:var(--af-muted);max-width:48ch;font-size:16px}
.af-contact h2{margin-bottom:16px}
.af-contact .af-contact-button{display:inline-flex;align-items:center;gap:14px;border:1px solid var(--af-muted);border-radius:999px;padding:12px 20px;margin-top:10px;font-size:15px}
.af-contact-button svg{flex-shrink:0}
.af-social:empty{display:none}
.af-body:not(:has(.af-social nav)){grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
@media(max-width:1024px){.af-body,.af-body:not(:has(.af-social nav)){grid-template-columns:1fr 1fr}.af-contacts{grid-column:2;grid-row:1}.af-social{grid-column:1 / -1;grid-row:2}.af-social .af-menu{justify-content:flex-start}}
@media(max-width:600px){.af-body,.af-body:not(:has(.af-social nav)){grid-template-columns:minmax(0,1fr);gap:32px;padding-block:32px 40px}.af-intro,.af-contacts,.af-social{grid-column:1;grid-row:auto}.af-contacts:has(.af-contact:nth-child(2)){grid-template-columns:1fr}.af-brand{max-width:100%}.af-top{padding-block:36px}}

/* Secondary links occupy their own compact row, without stretching Shop. */
.af-navigation .af-menu{gap:8px 28px}
.af-secondary-nav{margin-top:22px;padding-top:20px;border-top:1px solid color-mix(in srgb,var(--af-text) 16%,transparent)}
.af-secondary-label{display:block;color:var(--af-muted);font-size:11px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}
.af-secondary-nav ul{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;margin:0;padding:0}
.af-secondary-nav a{display:inline-block;padding-block:6px;font-size:14px;color:var(--af-muted);text-underline-offset:5px}
.af-secondary-nav a:hover{color:var(--af-accent);text-decoration:underline}
@media(max-width:600px){.af-secondary-nav ul{flex-direction:column;gap:4px}.af-secondary-nav{margin-top:16px;padding-top:16px}}
