.site-footer{position:relative;z-index:1;margin-top:-55svh;pointer-events:auto;color:var(--paper);padding:clamp(40px,4.8vw,72px) var(--gutter) 0;min-height:min(760px,90svh);display:flex;flex-direction:column;scroll-margin-top:100px}
.footer-main{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap);margin-bottom:clamp(96px,10vw,160px)}
.footer-heading{grid-column:1/span 6;font-family:SuisseBPIntl,Helvetica,Arial,sans-serif;font-weight:700;font-size:clamp(48px,5.8vw,104px);line-height:.94;letter-spacing:-.04em;margin:0;text-wrap:balance}
.footer-heading span{display:block}
.footer-contact{grid-column:8/span 5;padding-top:clamp(56px,5.8vw,96px)}
.footer-eyebrow{display:block;margin-bottom:28px}
.footer-contact>p{font-size:clamp(19px,1.55vw,28px);line-height:1.25;letter-spacing:-.02em;max-width:520px;text-wrap:pretty}
.footer-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:48px}
.footer-action{display:inline-flex;align-items:center;justify-content:center;min-height:50px;min-width:190px;padding:0 38px 0 24px;border:1px solid #f9f4eb44;border-radius:4px;background:transparent;color:var(--paper);white-space:nowrap}
.footer-baseline{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:24px;border-top:1px solid var(--paper);min-height:58px;margin-top:auto}
.footer-baseline .availability{justify-self:start}.footer-baseline .hero-social{display:inline-flex;white-space:nowrap}
.footer-baseline a:hover{opacity:.7}
@media(max-width:1023px){.footer-main{grid-template-columns:repeat(6,minmax(0,1fr));row-gap:48px}.footer-heading{grid-column:1/span 4;font-size:clamp(48px,7vw,76px)}.footer-contact{grid-column:1/-1;padding-top:0;display:grid;grid-template-columns:1fr 1fr;column-gap:32px;align-items:start}.footer-eyebrow{grid-column:1/-1;margin-bottom:24px}.footer-contact>p{grid-column:1;font-size:21px}.footer-actions{grid-column:2;margin-top:0;flex-direction:column;align-items:flex-start}.footer-baseline{font-size:9px;gap:20px}}
@media(max-width:639px){.site-footer{padding-top:40px;margin-top:-45svh;min-height:0}.footer-main{display:block;margin-bottom:80px}.footer-heading{font-size:clamp(44px,10.5vw,68px);max-width:500px;margin-bottom:48px}.footer-contact{display:block}.footer-eyebrow{margin-bottom:24px}.footer-contact>p{font-size:20px}.footer-actions{margin-top:32px;flex-direction:row;gap:8px}.footer-action{min-width:0;flex:1;padding-left:12px;padding-right:26px;font-size:9px}.footer-action .button-motion-arrow{right:10px}.footer-baseline{min-height:92px;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;align-content:center;row-gap:14px;column-gap:8px}.footer-baseline .hero-experience{grid-column:1;grid-row:1}.footer-baseline .availability{grid-column:2;grid-row:1;justify-self:end;gap:4px}.footer-baseline .hero-socials{grid-column:1/-1;grid-row:2;justify-self:stretch;justify-content:space-between;gap:12px}}

/* Scroll motion stays within the footer's established layout. */
.footer-heading>span,.footer-contact{will-change:transform,opacity}
.footer-baseline{position:relative;border-top:0}
.footer-baseline::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--paper);transform:scaleX(0);transform-origin:left center;transition:transform .55s cubic-bezier(.16,1,.3,1)}
.footer-baseline>*{transform:translateY(80%);clip-path:inset(0 0 100% 0);will-change:transform,clip-path;transition:transform .65s cubic-bezier(.76,0,.24,1),clip-path .65s cubic-bezier(.76,0,.24,1)}
@media(prefers-reduced-motion:reduce){.footer-heading>span,.footer-contact{transform:none!important;opacity:1!important;will-change:auto}.footer-baseline::before{transform:none}.footer-baseline>*{transform:none;clip-path:none;will-change:auto}}

@media(prefers-reduced-motion:reduce){.site-footer{margin-top:0}}

.footer-baseline.is-revealed::before{transform:scaleX(1)}
.footer-baseline.is-revealed>*{transform:translateY(0);clip-path:inset(0)}
@media(prefers-reduced-motion:reduce){.footer-baseline::before,.footer-baseline>*{transition:none}}

@media(min-width:1024px){.footer-heading{padding-top:clamp(56px,5.8vw,96px)}}
