/* Canonical shell, scoped: never restyle the home main. */
.site-header.common-shell,.site-footer.common-shell{box-sizing:border-box;width:min(1240px,calc(100% - 40px));max-width:1240px;margin:0 auto;color:#203D2B;background:#F7F4EB;font:500 13px/1.5 'General Sans',sans-serif;border:0;box-shadow:none;transform:none}
.site-header.common-shell{position:sticky;inset:auto;top:0;z-index:100;min-height:108px;height:auto;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:20px;padding:0}
.common-shell *{box-sizing:border-box}.common-shell a{color:inherit;text-decoration:none}.common-shell a:focus-visible,.common-shell button:focus-visible,.common-shell summary:focus-visible{outline:3px solid #477548;outline-offset:4px}
.common-shell .brand{display:inline-block;flex-shrink:0;padding:8px 0}.common-shell .brand img{display:block;width:152px;height:auto;max-width:100%;object-fit:contain;filter:none}
.common-shell .site-nav{position:static;inset:auto;display:flex;flex-direction:row;align-items:center;flex-wrap:nowrap;gap:20px;width:auto;padding:0;border:0;background:transparent;box-shadow:none;font-size:13px}
.common-shell .site-nav>a:not(.button){display:flex;align-items:center;min-height:48px;padding:0;border:0;background:none;white-space:normal}
.common-shell .site-nav .nav-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;white-space:nowrap;font-size:13px;padding:12px 16px;background:#203D2B;color:#F7F4EB;border:0;border-radius:14px;margin:0}
.common-shell .nav-cta:hover{background:#477548}.common-shell .discover{position:relative}.common-shell .discover summary{cursor:pointer;min-height:48px;display:flex;align-items:center;gap:6px;list-style:none}.common-shell .discover summary:after{content:'⌄'}.common-shell summary::-webkit-details-marker{display:none}.common-shell .discover-links{position:absolute;z-index:40;top:54px;left:-20px;min-width:180px;padding:12px;border:1px solid #ccd5c9;border-radius:14px;background:#F7F4EB;box-shadow:0 12px 32px #203d2b14}.common-shell .discover-links a{display:block;padding:12px}.common-shell .discover-links a:hover{background:#E8EFE5}
.common-shell .nav-toggle{display:none}
.site-footer.common-shell{display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr;gap:32px;padding:48px 0}.common-shell .footer-brand-block p{font-size:13px;line-height:1.6;max-width:260px;margin:16px 0 0}.common-shell .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:13px}.common-shell .footer-links strong{font-weight:600;margin-bottom:12px}.common-shell .footer-links a{display:flex;align-items:center;min-height:40px}.common-shell .footer-links a:hover{text-decoration:underline}
.common-card-cover{display:block;position:relative;width:100%}.common-cover{display:block;width:100%;height:220px;object-fit:cover}.common-image-caption{display:block;font-size:12px;line-height:1.4;padding:8px 16px;background:#F7F4EB;color:#203D2B}
figure[data-common-image]{max-width:900px;margin:24px auto 36px;padding:0 16px}figure[data-common-image] .common-cover{height:390px;border-radius:18px}figure[data-common-image] figcaption{font-size:13px;line-height:1.6;padding:12px 0}figure[data-common-image] a,.common-credits a{text-decoration:underline}.common-credits{padding-block:24px;font-size:12px}.common-credits h2{font-size:20px}.editorial-card .common-cover{height:220px!important;max-height:none!important;opacity:1!important;visibility:visible!important}
@media(max-width:1100px){.site-header.common-shell{flex-wrap:wrap;padding:16px 0;min-height:92px}.common-shell .nav-toggle{display:flex;align-items:center;gap:12px;width:auto;height:auto;min-height:48px;padding:12px 16px;border:1px solid #ccd5c9;border-radius:14px;background:#F7F4EB;color:#203D2B;font:inherit;cursor:pointer}.common-shell .nav-toggle span{display:inline;width:auto;height:auto;background:none}.common-shell .site-nav{flex-basis:100%;flex-wrap:wrap;gap:12px 24px}.js-menu .common-shell .site-nav{display:none}.js-menu .common-shell .site-nav.is-open{display:flex}.site-footer.common-shell{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.common-shell .site-nav,.js-menu .common-shell .site-nav.is-open{flex-direction:column;align-items:stretch;gap:0}.common-shell .site-nav>a:not(.button){min-height:52px}.common-shell .discover-links{position:static;box-shadow:none;margin-bottom:12px}.common-shell .site-nav .nav-cta{align-self:flex-start;margin-top:12px;white-space:normal}.common-shell .brand img{width:140px}.site-footer.common-shell{grid-template-columns:1fr;gap:24px}figure[data-common-image] .common-cover{height:260px}}

/* V25: keep the common navigation in flow, above scrolling content. */
html{scroll-padding-top:124px}
:where([id]){scroll-margin-top:16px}
@media(max-width:1100px){
 .site-header.common-shell{max-height:100vh;max-height:100dvh}
 .common-shell .site-nav{max-height:calc(100vh - 128px);max-height:calc(100dvh - 128px);overflow-y:auto;overscroll-behavior:contain;flex-shrink:1}
}

/* Legal footer V1: archive ink #203D2B, current navigation and slogan retained. */
footer.site-footer.common-shell{width:100%;max-width:none;background:#203D2B;color:#F7F4EB;padding:48px max(20px,calc((100% - 1240px)/2));margin:0;gap:32px}
footer.site-footer.common-shell .brand{background:#F7F4EB;border-radius:14px;padding:8px 12px;justify-self:start;width:max-content;max-width:100%}
footer.site-footer.common-shell .footer-links strong,footer.site-footer.common-shell .footer-information strong{color:#FF8213}
footer.site-footer.common-shell .footer-information{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;border-top:1px solid #ffffff26;padding-top:24px;font-size:13px}
footer.site-footer.common-shell .footer-information a,footer.site-footer.common-shell .footer-information button{display:inline-flex;align-items:center;min-height:44px;color:#F7F4EB}
footer.site-footer.common-shell .footer-information button{appearance:none;border:0;background:none;padding:0;font:inherit;text-decoration:underline;cursor:pointer}
footer.site-footer.common-shell :is(a,button):focus-visible{outline-color:#FF8213}
footer.site-footer.common-shell .brand-signature{font-size:18px;line-height:1.6}
@media(max-width:760px){footer.site-footer.common-shell{padding:40px 6% 24px;gap:24px}footer.site-footer.common-shell .footer-information{align-items:flex-start;flex-direction:column;gap:4px}footer.site-footer.common-shell .footer-information strong{margin-bottom:12px}}

/* Footer design V2. Archive V21 footer-grid/footer-bottom and exact logo reused.
   Scoped to footer only. Reference screenshot scale, current commercial copy and consent retained. */
footer.site-footer.common-shell.footer-design-v2{display:block;width:100%;max-width:none;margin:0;padding:76px 5% 28px;background:#203D2B;color:#F7F4EB;font:400 20px/1.5 'General Sans',Arial,sans-serif;border:0;border-radius:0;gap:0}
footer.footer-design-v2 .footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.2fr;max-width:1350px;margin:0 auto;gap:64px;align-items:start}
footer.footer-design-v2 .footer-grid>*{min-width:0}
footer.site-footer.footer-design-v2 .brand{display:block;width:286px;max-width:100%;padding:8px 12px;background:#F7F4EB;border-radius:14px;margin:0;line-height:0}
footer.site-footer.footer-design-v2 .brand img{display:block;width:262px;max-width:100%;height:auto;object-fit:contain;filter:none}
footer.site-footer.footer-design-v2 .footer-brand .brand-signature{font-size:24px;font-weight:400;line-height:1.6;max-width:310px;color:#F7F4EB;margin:28px 0 22px;letter-spacing:0}
footer.site-footer.footer-design-v2 .footer-brand .footer-description{font-size:16px;line-height:1.6;color:#CCD8C8;margin:0;max-width:310px}
footer.footer-design-v2 .footer-brand-contact{font-size:14px;line-height:1.6;margin-top:14px;color:#E8EFE5}
footer.footer-design-v2 .footer-brand-contact>a{display:inline-flex;align-items:center;min-height:36px}
footer.footer-design-v2 .footer-brand-contact nav{display:flex;flex-wrap:wrap;gap:4px 16px}
footer.footer-design-v2 .footer-brand-contact nav a{display:inline-flex;align-items:center;min-height:36px}
footer.site-footer.footer-design-v2 .footer-column{display:flex;flex-direction:column;align-items:stretch;gap:12px;font-size:20px;grid-column:auto;border:0;padding:0;margin:0}
footer.site-footer.footer-design-v2 .footer-column h2{font:700 20px/1.4 'Cabinet Grotesk','General Sans',Arial,sans-serif;color:#FF8213;letter-spacing:0;margin:0 0 18px;padding:0;text-transform:none}
footer.site-footer.footer-design-v2 .footer-column :is(a,button){display:flex;align-items:center;min-height:34px;color:#E8EFE5;font:inherit;line-height:1.5;text-align:left;white-space:normal;overflow-wrap:normal;text-decoration:none;padding:0;margin:0;background:none;border:0;border-radius:0;width:auto;max-width:100%;cursor:pointer}
footer.site-footer.footer-design-v2 :is(a,button):hover{text-decoration:underline;text-underline-offset:4px;color:#F7F4EB}
footer.site-footer.footer-design-v2 :is(a,button):focus-visible{outline:3px solid #FF8213;outline-offset:4px}
footer.footer-design-v2 .footer-bottom{max-width:1350px;margin:52px auto 0;border-top:1px solid #ffffff26;padding-top:28px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#CCD8C8;font-size:16px;line-height:1.6}
footer.footer-design-v2 .footer-bottom small{font-size:14px;color:#CCD8C8;margin:0}
footer.footer-design-v2 .footer-bottom span{font-size:16px;color:#E8EFE5;margin:0}
@media(max-width:1100px){footer.footer-design-v2 .footer-grid{grid-template-columns:1.2fr 1fr;gap:40px 56px}}
@media(max-width:600px){footer.site-footer.common-shell.footer-design-v2{padding:44px 6% 24px}footer.footer-design-v2 .footer-grid{grid-template-columns:1fr;gap:32px}footer.site-footer.footer-design-v2 .footer-brand .brand-signature{font-size:23px;margin:22px 0 16px}footer.site-footer.footer-design-v2 .footer-column{font-size:18px;gap:4px}footer.site-footer.footer-design-v2 .footer-column h2{margin-bottom:10px}footer.site-footer.footer-design-v2 .footer-column :is(a,button){min-height:44px}footer.footer-design-v2 .footer-bottom{align-items:flex-start;flex-direction:column;gap:10px;margin-top:32px;padding-top:22px}footer.footer-design-v2 .footer-bottom span{font-size:14px}}

/* Footer V2 clearance: reserve space under the signature for the unchanged consent control. */
footer.site-footer.common-shell.footer-design-v2{padding-bottom:48px}
