/* Shared footer: clear destinations, quiet typography, enough space for legal links. */
.site-footer{background:#263b35;color:#f5f2e9}
.site-footer a:focus-visible{outline-color:#e8d995}
.footer-lead{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:55px 42px;border-bottom:1px solid #52685d}
.footer-lead>p{font:400 clamp(32px,3.3vw,48px)/1.12 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em}
.footer-lead em{color:#c1cec0}
.footer-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 23px;border:1px solid #96a596;font-size:13px;line-height:1.5}
.footer-cta>span{font-size:23px;line-height:1}
.footer-cta:hover{background:#f5f2e9;color:#263b35}
.footer-main{grid-template-columns:1.3fr .8fr 1.2fr 1.1fr;gap:38px;padding-block:48px 42px;align-items:start}
.footer-main>*{min-width:0}
.footer-identity .footer-name{max-width:270px}
.footer-main .eyebrow,.footer-main>div>.eyebrow{font-size:10px;letter-spacing:.14em;color:#c1cec0;margin:0 0 18px}
.footer-main .footer-column>a{display:block;width:fit-content;font-size:13px;line-height:1.65;padding-block:5px;overflow-wrap:anywhere;text-underline-offset:5px}
.footer-main .footer-column>a:hover{text-decoration:underline}
.footer-main .footer-identity p.footer-role{font-size:12px;margin:13px 0 12px;color:#f5f2e9}
.footer-main .footer-identity p.footer-description{font-size:12px;line-height:1.85;color:#c1cec0;margin:0}
.footer-main .footer-column p:not(.eyebrow){font-size:12px;line-height:1.85;color:#c1cec0;margin:13px 0}
.footer-main .footer-contact .footer-email{font-size:13px}
.footer-bottom{display:flex;justify-content:flex-start;align-items:center;gap:30px;border-top:1px solid #52685d;padding-block:22px;font-size:11px;color:#c1cec0}
.footer-bottom>a{padding-block:7px;text-underline-offset:5px}
.footer-bottom>a:hover{text-decoration:underline;color:#fff}
.footer-bottom .footer-to-top{margin-left:auto;display:flex;align-items:center;gap:14px}
/* Legal documents use live text, anchored contents and a comfortable reading measure. */
.legal-intro{padding-block:68px 38px}
.legal-intro>.eyebrow{margin-bottom:26px}
.legal-intro h1{font-size:clamp(32px,5.5vw,80px);line-height:1.06;letter-spacing:-.035em;overflow-wrap:break-word}
.legal-description{font-size:16px;line-height:1.8;max-width:680px;margin-top:25px}
.legal-date{font-size:11px;color:#586b60;margin-top:19px}
.legal-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding-block:28px;border-top:1px solid #aeb9ae;border-bottom:1px solid #aeb9ae}
.legal-summary>div{border-left:2px solid #b4a16a;padding-left:19px}
.legal-summary h2{font:400 25px/1.25 'Cormorant Garamond',Georgia,serif;letter-spacing:-.015em;margin-bottom:9px}
.legal-summary p{font-size:12px;line-height:1.8;max-width:36ch}
.legal-layout{display:grid;grid-template-columns:250px minmax(0,760px);gap:clamp(40px,7vw,115px);justify-content:space-between;padding-block:55px 100px;align-items:start}
.legal-aside{position:sticky;top:140px}
.legal-aside .eyebrow{margin-bottom:19px}
.legal-aside nav>a{display:flex;gap:13px;font-size:12px;line-height:1.65;padding-block:8px}
.legal-aside nav>a>span{font-size:10px;color:#647865;padding-top:2px}
.legal-aside a:hover{text-decoration:underline;text-underline-offset:4px}
.legal-other{font-size:12px;line-height:1.7;display:block;border-top:1px solid #aeb9ae;margin-top:22px;padding-top:20px}
.legal-other>span{padding-left:10px}
.legal-section{position:relative;padding-block:0 36px;margin-bottom:30px;border-bottom:1px solid #c4ccbf;scroll-margin-top:140px}
.legal-content .legal-number{font-size:10px;color:#7d6a39;letter-spacing:.1em;margin:0 0 10px}
.legal-section h2{font-size:clamp(27px,2.6vw,36px);line-height:1.2;letter-spacing:-.02em;margin-bottom:22px}
.legal-section p,.legal-section li{font-size:14px;line-height:1.95;max-width:none}
.legal-section p+p{margin-top:17px}
.legal-section ul{padding-left:22px;margin:20px 0}
.legal-section li+li{margin-top:12px}
.legal-section strong{font-weight:600}
.legal-content a{text-decoration:underline;text-decoration-color:#8b9d89;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-content a:hover{text-decoration-color:currentColor}
.legal-question{padding:30px;background:#e6e8db}
.legal-question h2{font-size:36px;margin:14px 0 19px}
.legal-question>a{font-size:14px}
@media(min-width:851px) and (max-width:1100px){.footer-main{grid-template-columns:1fr 1fr;gap:36px 65px}.footer-identity{grid-row:1/3}.footer-documents{grid-column:2}.legal-layout{grid-template-columns:210px minmax(0,1fr);gap:40px}}
@media(max-width:850px){.footer-main{grid-template-columns:1fr 1fr;gap:36px 30px;padding-block:38px}.footer-identity .footer-name{max-width:260px}.footer-lead{padding-block:40px 32px}.legal-intro{padding-top:45px}.legal-layout{grid-template-columns:1fr;padding-block:30px 65px;gap:38px}.legal-aside{position:static}.legal-aside nav{display:grid;grid-template-columns:1fr 1fr;column-gap:28px}.legal-aside .eyebrow{grid-column:1/-1;margin-bottom:7px}.legal-other{margin-top:14px;padding-top:14px}.legal-section{scroll-margin-top:110px}.legal-summary{gap:20px}.legal-summary>div{padding-left:13px}.legal-summary h2{font-size:23px}}
@media(max-width:540px){.footer-lead{display:block}.footer-lead>p{font-size:36px}.footer-cta{margin-top:25px;padding:13px 20px}.footer-main{gap:30px 23px}.footer-identity,.footer-contact{grid-column:1/-1}.footer-identity{grid-row:1}.footer-contact{grid-row:3}.footer-main .footer-column>a{font-size:12px;padding-block:7px}.footer-main .footer-identity p.footer-description{font-size:12px}.footer-bottom{gap:12px 22px;flex-wrap:wrap;font-size:10px}.footer-bottom>span{flex-basis:100%}.footer-bottom .footer-to-top{margin-left:auto}.legal-intro h1{font-size:clamp(29px,7.7vw,41px);letter-spacing:-.04em}.legal-description{font-size:14px;margin-top:22px}.legal-summary{grid-template-columns:1fr;gap:21px;padding-block:25px}.legal-summary p{max-width:none}.legal-summary h2{font-size:24px;margin-bottom:5px}.legal-aside nav{grid-template-columns:1fr}.legal-aside nav>a{padding-block:6px}.legal-section p,.legal-section li{font-size:13px;line-height:1.95}.legal-question{padding:25px 20px}.legal-question h2{font-size:30px}.legal-question>a{font-size:12px}}
@media(prefers-reduced-motion:no-preference){.footer-cta{transition:background .2s,color .2s}.footer-cta>span{transition:transform .2s}.footer-cta:hover>span{transform:translate(2px,-2px)}}
@media print{.site-footer,.legal-aside{display:none}.legal-layout{display:block;padding:25px 0}.legal-intro{padding-top:0}.legal-section{break-inside:avoid}.legal-content a{color:inherit}}
