/* Full-image closing scene, then an independently revealed footer. */
.f-site #main{position:relative;z-index:2}
.f-site .f-contact[data-contact-scene]{position:relative;isolation:isolate;min-height:120vw;padding:0;overflow:clip;background:#181b20;text-align:center}
.f-contact-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden;margin:0}
.f-contact-backdrop>img{position:absolute;left:0;top:-150px;width:100%;height:calc(100% + 300px);object-fit:cover;object-position:58% 50%;filter:grayscale(.92) brightness(.62);transform:translateY(var(--closing-image-y,0px));max-width:none}
.f-site.motion-enabled .f-contact-backdrop>img{animation:f-closing-image-drift 18s cubic-bezier(.45,0,.55,1) infinite alternate paused;transform-origin:50% 50%}
.f-site.motion-enabled .f-contact[data-ambient-running="true"] .f-contact-backdrop>img{animation-play-state:running;will-change:transform}
@keyframes f-closing-image-drift{from{transform:translate3d(-1.4vw,calc(var(--closing-image-y,0px) - 12px),0) scale(1.055)}to{transform:translate3d(1.4vw,calc(var(--closing-image-y,0px) + 12px),0) scale(1.14)}}
.f-site.motion-paused .f-contact-backdrop>img,.f-site.large-text .f-contact-backdrop>img{animation:none!important}
.f-contact-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#12171c55 0%,#0b111638 45%,#11171a90 100%)}
.f-contact-backdrop figcaption{position:absolute;bottom:20px;right:var(--f-pad);z-index:1;font-size:.75rem;line-height:1.5;color:#e8ebed}
.f-contact-scene-content{position:relative;min-height:inherit;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:17.8vw var(--f-pad) 19.5vw}
.f-contact-header{width:min(80%,1120px);display:flex;flex-direction:column;align-items:center}
.f-site .f-contact[data-contact-scene] h2{width:100%;margin:0;text-align:left;font-size:9.65vw;font-weight:750;line-height:.89;letter-spacing:-.067em;text-transform:uppercase;max-width:none;overflow:visible}
.f-contact-title-line{display:block;width:max-content;max-width:100%;white-space:nowrap}
.f-contact-title-1{margin-left:0}
.f-contact-title-2{margin-left:9%;transform:translateX(var(--closing-type-x,0px))}
.f-contact-title-3{margin-left:0}
.f-contact-title-4{margin-left:39%;display:flex;align-items:center;gap:.1em}
.f-contact-title-4 i{font-style:normal;font-weight:400;line-height:.5;font-size:.78em}
.f-site .f-contact-header>.f-button{margin-top:78px;font-size:clamp(24px,3vw,49px);font-weight:650;letter-spacing:-.05em;padding:12px 13px 12px 18px;gap:25px;color:#171b20;background:#e8ebed;min-height:76px;line-height:1}
.f-site .f-contact-header>.f-button>.f-btn-icon{width:54px;height:54px;font-size:38px;background:#181c21;color:#e8ebed}
.f-site .f-contact-header>.f-button:hover{background:#cfdaee}
.f-contact-proof{width:min(100%,650px);margin-top:170px}
.f-contact-practices{display:flex;align-items:center;justify-content:center;gap:32px;color:#e8ebed;flex-wrap:wrap}
.f-contact-practices span{font-size:clamp(24px,2.25vw,37px);font-weight:650;letter-spacing:-.055em}
.f-contact-practices span+span{padding-left:32px;border-left:1px solid #ffffff60}
.f-site .f-contact-copy{margin:40px auto 0;gap:22px;max-width:560px}
.f-site .f-contact-copy>p{font-size:clamp(20px,1.7vw,26px);font-weight:600;line-height:1.2;letter-spacing:-.035em}
.f-site .f-contact-compact[data-contact-scene]{min-height:900px;border-top:0;padding:0!important}
.f-contact-compact .f-contact-scene-content{padding-top:130px;padding-bottom:90px}
.f-contact-compact .f-contact-proof{margin-top:110px}
.f-site .f-footer{position:relative;z-index:1;padding:0;overflow:clip;background:#0b0d10;color:#e8ebed}
.f-footer-inner{padding:26px var(--f-pad) 0;transform:translateY(var(--closing-footer-y,0px))}
.f-site .f-footer-grid{grid-template-columns:1.6fr .55fr .55fr;gap:9vw;max-width:none}
.f-site .f-footer nav a{display:flex;justify-content:space-between;align-items:center;font-size:clamp(34px,3.65vw,60px);font-weight:650;letter-spacing:-.055em;line-height:1;padding:12px 0;border-bottom:1px solid #9ca6ad24;color:#e8ebed}
.f-site .f-footer nav a:hover,.f-site .f-footer nav a:focus-visible{padding-left:0;color:#cad9fa}
.f-footer-arrow{opacity:0;transform:translateX(-16px);transition:opacity .2s,transform .4s cubic-bezier(.2,1,.36,1)}
.f-footer nav a:hover .f-footer-arrow,.f-footer nav a:focus-visible .f-footer-arrow{opacity:1;transform:translateX(0)}
.f-site .f-footer-grid>div>span{font-family:ui-monospace,monospace;font-size:.75rem;text-transform:uppercase;line-height:1.5;letter-spacing:.015em;color:#9ca5ae}
.f-site .f-footer-grid>div>a{font-size:1.125rem;line-height:1.4;letter-spacing:-.025em}
.f-site .f-footer-grid>div>p{font-size:1rem;line-height:1.4;letter-spacing:-.025em;max-width:230px}
.f-site .f-footer-line{padding:210px 0 26px;display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:30px;align-items:end;font-size:.875rem;line-height:1.4}
.f-site .f-footer-line>span:last-child{text-align:right}
.f-site.f-home .f-footer-line{grid-template-columns:1fr 1fr}
.f-site.f-home .f-footer-line>.f-back-top{justify-self:start}
/* Optical field stays at the document edge throughout the footer reveal. */
.f-site .f-footer .f-liquid{height:400px;margin:0;background:#080a0c;transform:none}
.f-site .f-liquid-logo{left:var(--f-pad);width:85px;top:50%;transform:translateY(-50%)}
.f-site .f-liquid>span{right:var(--f-pad);top:50%;transform:translateY(-50%);font-size:.875rem;background:#0b0d10b8;max-width:70%;padding:3px 6px;line-height:1.5}
.f-site .f-disrupt{top:auto;bottom:18px;min-height:36px;background:#10151be8;color:#f0f3f6;padding:8px 13px}
.f-site .f-liquid-logo{mix-blend-mode:difference}
@media(max-width:1050px) and (min-width:651px){.f-site .f-footer-grid{grid-template-columns:1.3fr .8fr .8fr;gap:4vw}.f-site .f-footer-grid>div>a{font-size:1rem}.f-site .f-contact[data-contact-scene]{min-height:135vw}.f-contact-header{width:87%}.f-contact-title-2{margin-left:7%}}
@media(max-width:650px){
 .f-site .f-contact[data-contact-scene]{min-height:1250px}
 .f-contact-scene-content{padding:155px 13px 135px}
 .f-contact-header{width:100%}
 .f-site .f-contact[data-contact-scene] h2{font-size:11.25vw;line-height:.98;letter-spacing:-.07em}
 .f-contact-title-1{margin-left:4%}.f-contact-title-2{margin-left:9%}.f-contact-title-3{margin-left:4%}.f-contact-title-4{margin-left:35%}
 .f-site .f-contact-header>.f-button{margin-top:65px;font-size:24px;padding:8px 8px 8px 13px;gap:15px;min-height:52px}
 .f-site .f-contact-header>.f-button>.f-btn-icon{display:flex;width:37px;height:37px;font-size:26px}
 .f-contact-proof{margin-top:150px;max-width:350px}
 .f-contact-practices{gap:18px}.f-contact-practices span{font-size:24px}.f-contact-practices span+span{padding-left:18px}
 .f-site .f-contact-copy{margin-top:35px;gap:20px;max-width:330px}.f-site .f-contact-copy>p{font-size:21px;line-height:1.24}
 .f-contact-backdrop>img{object-position:55% center}.f-contact-backdrop figcaption{font-size:.75rem;bottom:14px}
 .f-site .f-contact-compact[data-contact-scene]{min-height:1050px}.f-contact-compact .f-contact-scene-content{padding-top:130px;padding-bottom:80px}
 .f-footer-inner{padding:24px 13px 0}.f-site .f-footer-grid{grid-template-columns:1fr;gap:65px}.f-site .f-footer-grid>div:first-child{grid-column:auto}.f-site .f-footer nav a{font-size:36px;padding:11px 0}.f-site .f-footer-grid>div>p{max-width:320px}.f-site .f-footer-grid>div>a{font-size:1.125rem}
 .f-site .f-footer-line{display:flex;flex-direction:column;align-items:start;padding-top:100px;gap:30px}.f-site .f-footer-line>span:last-child{text-align:left}.f-site .f-footer .f-liquid{height:300px}.f-site .f-liquid-logo{left:13px;width:72px}.f-site .f-liquid>span{left:auto;right:13px;max-width:66%;font-size:.75rem}.f-disrupt{font-size:.75rem}
}
.f-site.lang-zh .f-contact[data-contact-scene] h2{font-size:8.7vw;letter-spacing:-.045em;line-height:1.13}
@media(max-width:650px){.f-site.lang-zh .f-contact[data-contact-scene] h2{font-size:13.3vw;line-height:1.15}.lang-zh .f-contact-title-2{margin-left:25%}.lang-zh .f-contact-title-4{margin-left:37%}}
.f-site.large-text .f-contact[data-contact-scene]{min-height:0;padding:90px var(--f-pad)!important}
.f-site.large-text .f-contact-scene-content{padding:0;min-height:0}.f-site.large-text .f-contact-header{width:100%}
.f-site.large-text .f-contact[data-contact-scene] h2{font-size:2.6rem;line-height:1.15;letter-spacing:-.045em}
.f-site.large-text .f-contact-title-line{white-space:normal;width:100%;margin-left:0;transform:none}
.f-site.large-text .f-contact-title-4{justify-content:start}.f-site.large-text .f-contact-header>.f-button{font-size:1rem;min-height:55px;gap:15px;max-width:100%}.f-site.large-text .f-contact-header>.f-button>.f-btn-icon{width:30px;height:30px;font-size:25px}
.f-site.large-text .f-contact-proof{margin-top:80px}.f-site.large-text .f-contact-copy>p{font-size:1rem}.f-site.large-text .f-contact-practices{gap:20px}.f-site.large-text .f-contact-practices span{font-size:1rem;padding:0;border:0}
.f-site.large-text .f-footer-grid{display:block}.f-site.large-text .f-footer-grid>div{margin-bottom:45px}.f-site.large-text .f-footer nav a{font-size:1.3rem}.f-site.large-text .f-footer-line{display:flex;flex-wrap:wrap;padding-top:60px}.f-site.large-text .f-footer-grid>div>a{font-size:1rem;overflow-wrap:anywhere}
.f-site.large-text .f-footer-inner,.f-site.large-text .f-liquid,.f-site.large-text .f-contact-backdrop>img{transform:none!important}
@media(prefers-reduced-motion:reduce){.f-footer-inner,.f-site .f-footer .f-liquid,.f-contact-backdrop>img,.f-contact-title-line{transform:none!important}.f-contact-backdrop>img{animation:none!important}.f-footer-arrow{transition:none}}
