/* Page-wide material motion: an opening screen, paper sheets, and a closing poster. */
.cinema-shutters,.cinema-opening-title{display:none}
.experience-motion .cinema-shutters{display:block;position:absolute;inset:0;z-index:3;pointer-events:none}
.cinema-shutter{position:absolute;top:0;bottom:0;width:50.1%;background:var(--studio-paper)}
.cinema-shutter-left{left:0;transform:translate3d(calc(var(--aperture,0) * -102%),0,0)}
.cinema-shutter-right{right:0;transform:translate3d(calc(var(--aperture,0) * 102%),0,0)}
.experience-motion .cinema-opening-title{position:absolute;inset:0 var(--gutter);z-index:5;display:flex;align-items:center;justify-content:center;gap:.2em;pointer-events:none;font-size:clamp(45px,9.4vw,170px);line-height:1;letter-spacing:-.04em;font-weight:550;color:var(--studio-ink);opacity:var(--aperture-title-opacity,1)}
.cinema-opening-title>span:first-child{transform:translate3d(calc(var(--aperture,0) * -52vw),0,0) rotate(calc(var(--aperture,0) * -8deg))}
.cinema-opening-title>span:last-child{transform:translate3d(calc(var(--aperture,0) * 52vw),0,0) rotate(calc(var(--aperture,0) * 8deg))}
.experience-motion .cinema-scroll .film-window:after{z-index:4;opacity:var(--aperture-caption-opacity,0)}
.experience-motion .cinema-scroll .film-caption{z-index:6}
.experience-motion .cinema-scroll .film-caption>p{opacity:var(--aperture-caption-opacity,0)}
.cinema-scroll .film-toggle{padding:4px 17px;min-height:44px;background:var(--studio-ink);color:var(--studio-paper);border-radius:100px}
.experience-motion.scroll-directed .cinema-sticky{perspective:1800px;perspective-origin:50% 55%}
.experience-motion.scroll-directed .cinema-scroll .film-window{transform:translate3d(0,var(--cinema-exit-y,0px),var(--cinema-exit-z,0px)) rotateX(var(--cinema-exit-rx,0deg)) scale(var(--cinema-scale,.82));transform-origin:50% 80%}
.experience-motion.scroll-directed .cinema-scroll .film-window:focus-within{transform:scale(var(--cinema-scale,1))}

/* Native disclosures become sheets with depth, while retaining ordinary flow. */
.studio-process{background:var(--studio-ink);color:var(--studio-paper);padding-top:100px;padding-bottom:115px;overflow:clip}
.process-heading{margin-bottom:75px}
.process-heading h2{font-size:clamp(45px,6.7vw,112px);max-width:1000px}
.process-heading>p{color:#b6b8ae}
.process-list{display:flex;flex-direction:column;gap:31px;padding:0 15px;perspective:1500px}
.studio-process .process-step{position:relative;background:var(--studio-paper);color:var(--studio-ink);border:0;border-radius:6px;box-shadow:0 30px 55px -32px #000c;transform-origin:50% 100%;isolation:isolate}
.studio-process .process-step:last-child{border:0}
.studio-process .process-step:before{content:'';position:absolute;inset:0;border-radius:6px;background:var(--studio-orange);z-index:-1;transform:translate3d(0,10px,-1px)}
.studio-process .process-step:after{content:'';position:absolute;inset:0;border-radius:6px;background:var(--studio-paper);z-index:-1}
.studio-process .process-step:nth-child(2){margin-left:4%;margin-right:0}
.studio-process .process-step:nth-child(3){margin-left:0;margin-right:4%}
.studio-process .process-step summary{grid-template-columns:7% 1fr 20% 36px;padding:35px 38px;min-height:190px;gap:16px;transform:none}
.studio-process .process-step h3{font-size:clamp(56px,8.5vw,145px);letter-spacing:-.04em;line-height:1;transition:transform .45s var(--ease-out)}
.studio-process .stage-number{font-size:12px;margin-top:16px}
.studio-process .stage-caption{font-size:15px}
.studio-process .stage-content{padding:0 5% 42px 10.5%;gap:7vw}
.studio-process .stage-content>p{font-size:clamp(23px,2.6vw,40px);line-height:1.15;max-width:470px}
.studio-process .stage-content li{font-size:14px;line-height:1.55;margin-bottom:12px}
.experience-motion .studio-process .process-step{transform:translate3d(var(--sheet-x,0px),var(--sheet-y,0px),var(--sheet-z,0px)) rotateX(var(--sheet-rx,0deg)) rotateY(var(--sheet-ry,0deg)) rotateZ(var(--sheet-rz,0deg));transform-style:preserve-3d}
.experience-motion .studio-process .process-step:focus-within,.experience-motion .studio-process .process-step[open]{transform:none}
.studio-faq{padding-top:110px}

/* The form keeps a stable plane under a dimensional, moving headline. */
.studio-contact{padding-top:90px}
.contact-heading{align-items:flex-end;perspective:1500px;isolation:isolate;gap:20px}
.studio-contact .contact-heading h2{font-size:clamp(65px,12.5vw,225px);transform:none;line-height:.91;position:relative;z-index:2}
.studio-contact .contact-heading h2>.contact-line-intro{display:block;color:var(--studio-ink);font-size:.7em;line-height:1.12}
.studio-contact .contact-heading h2>.contact-line-main{display:block;color:var(--studio-ink);font-size:1.17em;white-space:nowrap}
.contact-word{display:inline-block;position:relative;isolation:isolate;transform-style:preserve-3d}
.contact-word:before,.contact-word:after{content:attr(data-echo);position:absolute;inset:0;pointer-events:none;z-index:-1;line-height:inherit;white-space:nowrap}
.contact-word:before{color:var(--studio-ink);transform:translate3d(calc(var(--poster-depth,5) * 1.5px),calc(var(--poster-depth,5) * 1.8px),0)}
.contact-word:after{color:transparent;-webkit-text-stroke:1px var(--studio-paper);transform:translate3d(calc(var(--poster-depth,5) * 3px),calc(var(--poster-depth,5) * 3.6px),0);z-index:-2}
.studio-contact .contact-word-face{position:relative;color:#fff;z-index:1}
.experience-motion .contact-line-intro{transform:translate3d(var(--poster-intro-x,0px),0,0)}
.experience-motion .contact-line-main{transform:translate3d(var(--poster-main-x,0px),var(--poster-y,0px),0) rotateX(var(--poster-rx,0deg));transform-origin:50% 100%}
.contact-heading-arrow{width:13vw;height:13vw;max-width:220px;max-height:220px;min-width:58px;min-height:58px;margin:0 0 7px;flex:none}
.experience-motion .contact-heading-arrow{rotate:var(--poster-arrow,0deg)}
.experience-motion .contact-heading-arrow:focus-visible{rotate:0deg}
.contact-layout{padding-top:95px}
.footer-wordmark{overflow:visible}
.experience-motion .footer-wordmark{transform:translate3d(0,var(--footer-rise,0px),0)}

@media(max-width:1100px){
  .studio-process .process-step summary{padding:28px;min-height:160px}
  .studio-process .stage-number{margin-top:10px}
  .process-list{padding:0 8px}
}
@media(max-width:767px){
  .experience-motion .cinema-opening-title{flex-direction:column;align-items:flex-start;justify-content:center;gap:0;font-size:clamp(48px,14vw,105px);inset-inline:24px}
  .cinema-opening-title>span:last-child{align-self:flex-end}
  .studio-process{padding-top:62px;padding-bottom:75px}
  .process-heading{margin-bottom:45px}
  .process-heading h2{font-size:clamp(38px,10.5vw,70px)}
  .process-list{gap:25px;padding:0 5px}
  .studio-process .process-step:nth-child(2),.studio-process .process-step:nth-child(3){margin-inline:0}
  .studio-process .process-step summary{grid-template-columns:21px 1fr 20px;gap:10px;padding:26px 18px 22px;min-height:145px;position:relative}
  .studio-process .process-step h3{font-size:clamp(47px,13vw,76px)}
  .studio-process .stage-number{font-size:10px;margin-top:8px}
  .studio-process .stage-caption{position:absolute;left:49px;bottom:14px;font-size:11px}
  .studio-process .stage-content{display:block;padding:7px 22px 24px 49px}
  .studio-process .stage-content>p{font-size:23px;margin-bottom:23px}
  .studio-process .stage-content li{font-size:12px;line-height:1.65}
  .studio-process .process-step:before{transform:translate3d(0,7px,-1px)}
  .studio-faq{padding-top:68px}
  .studio-contact{padding-top:63px}
  .contact-heading{gap:12px}
  .studio-contact .contact-heading h2{font-size:14vw;font-variation-settings:'wdth' 78,'wght' 600}
  .studio-contact .contact-heading h2>.contact-line-intro{font-size:.8em;line-height:1.15}
  .studio-contact .contact-heading h2>.contact-line-main{font-size:1.1em}
  .contact-heading-arrow{width:50px;height:50px;min-width:50px;min-height:50px;margin-bottom:2px}
  .contact-word:before{transform:translate(calc(var(--poster-depth,5) * .65px),calc(var(--poster-depth,5) * .8px))}
  .contact-word:after{transform:translate(calc(var(--poster-depth,5) * 1.3px),calc(var(--poster-depth,5) * 1.6px))}
  .contact-layout{padding-top:53px}
}
@media(max-width:359px){
  .studio-process .process-step summary{padding-inline:14px;grid-template-columns:18px 1fr 18px;gap:8px;min-height:128px}
  .studio-process .stage-caption{left:40px;bottom:14px}
  .studio-process .stage-content{padding-left:40px;padding-right:18px}
  .studio-process .stage-content>p{font-size:21px}
  .contact-heading-arrow{width:44px;height:44px;min-width:44px;min-height:44px}
}
@media(prefers-reduced-motion:reduce){
  .cinema-shutters,.experience-motion .cinema-shutters,.experience-motion .cinema-opening-title{display:none}
  .experience-motion .cinema-scroll .film-caption>p{opacity:1}
  .experience-motion .cinema-scroll .film-window:after{opacity:1}
  .experience-motion.scroll-directed .cinema-scroll .film-window{transform:none}
  .experience-motion .studio-process .process-step,.experience-motion .contact-line-intro,.experience-motion .contact-line-main,.experience-motion .footer-wordmark{transform:none}
  .experience-motion .contact-heading-arrow{rotate:0deg}
}
