/* People first. Geometry frames imagery; practical information stays straight. */
:root{--signal:#fff;--gutter:clamp(24px,4.45vw,64px)}
html{scroll-padding-top:24px}
.brand-location{font-weight:400;font-size:14px;letter-spacing:.025em}
.site-nav a,.language button,.mobile-toggle{min-height:44px;display:inline-flex;align-items:center}
.editorial-hero{padding-top:28px}
.hero-composition{display:grid;grid-template-columns:.85fr 1.15fr;grid-template-rows:auto auto;gap:20px 40px;padding-bottom:34px;align-items:start}
.editorial-hero .hero-wordmark{grid-column:1;grid-row:1;font-size:clamp(90px,9.45vw,140px);line-height:1.105;letter-spacing:-.065em;margin:0;padding:.035em 0 .025em}
.hero-making{grid-column:2;grid-row:1/3;align-self:stretch;position:relative;min-height:600px;isolation:isolate}
.hero-making>img{height:100%;position:absolute;inset:0;object-fit:cover;object-position:66% 50%;clip-path:polygon(0 0,72% 0,72% 8%,100% 8%,100% 100%,10% 100%,10% 90%,0 90%)}
.hero-making .image-caption{left:12%;right:14px;bottom:15px;font-size:14px;width:max-content;max-width:85%;background:#000;color:#fff;padding:7px 10px;position:absolute}
.hero-intro{grid-column:1;grid-row:2;max-width:470px}
.hero-intro h2{font-size:clamp(22px,2.4vw,34px);line-height:1.16;letter-spacing:-.035em;margin:12px 0}
.hero-intro .copy{font-size:18px;line-height:1.5;max-width:34ch;margin-bottom:20px}
.hero-intro .eyebrow{font-size:14px}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.hero-room-peek{margin-top:0}
.space-heading{padding-top:56px}
.duality{gap:0}
.room-panel{min-height:690px}
.room-panel .copy{max-width:36ch}
.home-rates,.studio-rates,.production-rates{padding:64px var(--gutter) 72px;background:#fff;color:#000}
.home-rates{display:grid;grid-template-columns:1fr 1fr;gap:64px;border-top:1px solid #000;border-bottom:1px solid #000}
.home-rates .title{font-size:clamp(48px,5.4vw,78px);margin-top:22px}
.home-rate-info{align-self:center}
.home-from{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;font-size:18px;line-height:1.2;margin-bottom:22px}
.home-from strong{font-size:clamp(36px,4.2vw,60px);letter-spacing:-.045em;line-height:1.12}
.home-rate-info .copy{margin-bottom:25px;max-width:42ch}
.rate-heading{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:60px;margin:38px 0 44px}
.rate-heading .title{font-size:clamp(48px,5.5vw,80px);line-height:1.1}
.rate-heading .copy{max-width:39ch}
.rate-row{display:grid;grid-template-columns:36px 1fr 1.05fr 1.2fr;gap:24px;padding:34px 0;border-top:1px solid #000;align-items:start}
.rate-row:last-child{border-bottom:1px solid #000}
.rate-index{font-size:14px;line-height:1.5;padding-top:8px}
.rate-name h3{font-size:clamp(25px,2.2vw,32px);letter-spacing:-.035em;line-height:1.2;padding-top:4px}
.rate-name .label-vi{font-size:14px;line-height:1.5;margin-top:9px}
.rate-value strong{font-size:clamp(34px,3.3vw,47px);letter-spacing:-.045em;line-height:1.14;font-weight:700;display:block}
.rate-unit{display:block;font-size:16px;line-height:1.5;margin-top:5px}
.rate-detail .copy{font-size:17px;margin-bottom:16px;max-width:33ch}
.rate-note{font-size:16px;line-height:1.6;margin-top:26px;max-width:86ch}
.rate-next{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #999;margin-top:34px;padding-top:20px;font-size:18px}
.production-rates{background:#000;color:#fff}
.package-group{border-top:1px solid #777}
.package-group:last-of-type{border-bottom:1px solid #777}
.package-group>summary{min-height:88px;display:grid;grid-template-columns:1fr 1fr 24px;align-items:center;gap:24px;list-style:none;cursor:pointer;padding:18px 0;font-size:clamp(24px,2.3vw,34px);font-weight:700;letter-spacing:-.025em;line-height:1.2}
.package-group>summary::-webkit-details-marker{display:none}
.package-group>summary::after{content:'+';font-size:30px;font-weight:400}
.package-group[open]>summary::after{content:'−'}
.package-summary{font-size:16px;line-height:1.5;font-weight:400;letter-spacing:0}
.package-content{padding:0 0 26px 36px}
.package-row{display:grid;grid-template-columns:1.25fr 1fr;gap:60px;padding:26px 0;border-top:1px solid #444}
.package-row h3{font-size:23px;line-height:1.3;letter-spacing:-.025em;margin-bottom:12px}
.package-row .copy{font-size:17px;max-width:44ch}
.package-price{display:flex;flex-direction:column;align-items:flex-start}
.package-price strong{font-size:34px;line-height:1.15;letter-spacing:-.035em}
.package-price .text-link{margin-top:12px}
.package-note{font-size:16px;line-height:1.6;max-width:86ch;padding-top:20px}
.creator-picture img:not(.creator-symbol){clip-path:polygon(0 0,85% 0,85% 12%,100% 12%,100% 100%,0 100%);object-position:64% 50%}
.creator-symbol{position:absolute;z-index:2;left:calc(69% - 28px);top:calc(52.6% - 28px);width:56px;height:56px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}
.creators .signal{color:var(--signal)}
.membership{background:#fff;border-top:1px solid #000}
.membership .eyebrow{font-size:14px}
.visit .address-lines{margin-top:32px}
.footer-brand{display:flex;align-items:center;gap:18px;font-size:clamp(24px,3.4vw,44px);line-height:1.2}
.footer-symbol{width:45px;height:45px;object-fit:contain;filter:invert(1);flex:none}
.selection-context{padding:28px 0 34px;border-top:1px solid #000;max-width:760px}
.selection-context h2{font-size:clamp(26px,3.2vw,42px);letter-spacing:-.035em;line-height:1.2;margin:14px 0}
.selection-context p{font-size:18px;margin-bottom:16px}
.btn{min-height:58px}
.text-link::after,.btn::after{content:none!important}
@media(min-width:1601px){.home-rates,.studio-rates,.production-rates{padding-left:max(64px,calc((100vw - 1312px)/2));padding-right:max(64px,calc((100vw - 1312px)/2))}.editorial-hero .hero-wordmark{font-size:140px}}
@media(max-width:1100px){.hero-composition{grid-template-columns:1fr 1fr;column-gap:24px}.editorial-hero .hero-wordmark{font-size:clamp(88px,10.2vw,118px)}.hero-making{min-height:580px}.rate-row{grid-template-columns:24px 1fr 1fr;gap:20px}.rate-detail{grid-column:2/4;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.rate-detail .copy{margin:0;max-width:none}.rate-heading{gap:30px}.package-row{gap:30px}.home-rates{gap:32px}.hero-making .image-caption{font-size:14px;max-width:88%;width:auto}}
@media(max-width:760px){
 .site-header{padding:12px 24px;gap:12px}.brand-location{font-size:12px}.small-mark{height:36px;width:30px}.brand-link{gap:10px}.header-end{gap:14px}.language{gap:5px}
 .editorial-hero{padding-top:20px}.hero-composition{grid-template-columns:1.1fr .9fr;grid-template-rows:auto auto;gap:20px 8px;padding-bottom:28px}
 .editorial-hero .hero-wordmark{font-size:clamp(54px,17.7vw,100px);line-height:1.115;letter-spacing:-.06em;align-self:center}
 .hero-making{grid-column:2;grid-row:1;min-height:260px;align-self:stretch}
 .hero-making>img{clip-path:polygon(0 0,70% 0,70% 7%,100% 7%,100% 100%,0 100%);object-position:67% 50%}
 .hero-making .image-caption{font-size:12px;line-height:1.35;left:5px;right:5px;bottom:5px;padding:5px;max-width:none}
 .hero-intro{grid-column:1/3;grid-row:2;max-width:none}.hero-intro h2{font-size:24px;line-height:1.2;margin:12px 0}.hero-intro .copy{font-size:17px;max-width:35ch;margin-bottom:20px}.hero-actions{gap:14px 20px}.hero-actions .btn{flex:1;min-width:190px}.hero-actions .text-link{font-size:16px}
 .hero-room-peek{display:grid;grid-template-columns:1fr 1fr}.room-peek{padding:20px 0;min-height:100px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.room-peek:first-child{padding-right:16px}.room-peek:last-child{padding-left:16px}.room-peek span:first-child{font-size:17px}.room-peek .meta{font-size:13px}
 .room-panel{min-height:680px}.space-heading .title{font-size:44px;line-height:1.12}
 .home-rates,.studio-rates,.production-rates{padding:44px 24px 48px}.home-rates{display:block}.home-rates .title{font-size:45px;line-height:1.12;margin:20px 0 28px}.home-from strong{font-size:42px}.home-rate-info .btn{width:100%}
 .rate-heading{display:block;margin:26px 0 32px}.rate-heading .title{font-size:43px;line-height:1.12;margin-bottom:22px}.rate-heading .copy{font-size:17px}
 .rate-row{grid-template-columns:26px 1fr;gap:14px;padding:26px 0}.rate-index{grid-column:1;grid-row:1/4}.rate-name{grid-column:2;grid-row:1}.rate-name h3{font-size:27px;padding:0}.rate-name .label-vi{margin-top:5px}.rate-value{grid-column:2;grid-row:2}.rate-value strong{font-size:40px}.rate-detail{grid-column:2;grid-row:3;display:block}.rate-detail .copy{font-size:17px;margin:3px 0 16px}.rate-detail .text-link{width:100%;min-height:46px}
 .rate-note{font-size:16px;line-height:1.6}.rate-next{display:block;font-size:17px}.rate-next .text-link{margin-top:12px}
 .package-group>summary{grid-template-columns:1fr 24px;gap:12px;font-size:25px;padding:20px 0}.package-summary{grid-column:1;grid-row:2;font-size:16px}.package-group>summary::after{grid-column:2;grid-row:1/3}.package-content{padding-left:0}.package-row{display:block;padding:25px 0}.package-row h3{font-size:22px}.package-row .copy{font-size:17px}.package-price{margin-top:20px}.package-price strong{font-size:34px}.package-price .text-link{width:100%}.package-note{font-size:16px}
 .creators .title{font-size:50px;line-height:1.11}.creator-picture{min-height:340px}.creator-symbol{width:44px;height:44px;left:calc(69% - 22px);top:calc(52.6% - 22px)}
 .membership{padding-top:32px;padding-bottom:38px}.membership h2{font-size:34px;line-height:1.2}.membership .copy{font-size:17px}
 .footer-brand{font-size:26px;line-height:1.3}.footer-symbol{width:34px;height:34px}.footer{align-items:flex-start}.footer .meta{font-size:13px}
 .selection-context h2{font-size:30px}.selection-context p{font-size:17px}
}
@media(max-width:360px){.editorial-hero .hero-wordmark{font-size:17vw}.hero-making{min-height:232px}.hero-actions{display:block}.hero-actions .btn{width:100%}.hero-actions .text-link{margin-top:12px}.brand-link>span{font-size:12px}.brand-location{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Spaces benchmark: immersive opening, broad breathing room, photographic rhythm. */
.editorial-hero{padding-top:0;padding-bottom:0;overflow:clip}
.cinematic-composition{position:relative;display:block;min-height:clamp(680px,calc(100svh - 76px),900px);padding:34px 0 36px;isolation:isolate}
.cinematic-composition .hero-making{position:absolute;inset:0 calc(-1 * var(--gutter));min-height:0;z-index:-2;overflow:hidden}
.cinematic-composition .hero-making>img{clip-path:none;object-position:66% 50%;width:100%;height:calc(100% + 50px);inset:-25px 0;transform:translate3d(0,var(--hero-shift,0px),0);will-change:transform}
.cinematic-composition .hero-making::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.06) 80%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 45%);pointer-events:none}
.cinematic-composition .hero-wordmark{font-size:clamp(88px,12.3vw,178px);line-height:1.1;letter-spacing:-.065em;position:relative;z-index:1;padding-top:.035em;max-width:82%;text-shadow:0 1px 24px rgba(0,0,0,.1)}
.cinematic-composition .hero-intro{position:relative;z-index:1;margin-top:32px;max-width:590px}
.cinematic-composition .hero-intro h2{font-weight:500;font-size:clamp(23px,2.4vw,34px)}
.cinematic-composition .hero-intro .copy{max-width:37ch}
.cinematic-composition .hero-making .image-caption{z-index:1;left:auto;right:var(--gutter);bottom:20px;max-width:330px}
.making-statement{padding:clamp(90px,11vw,164px) var(--gutter);background:#000;color:#fff;text-align:center}
.making-statement h2{font-size:clamp(52px,8.2vw,118px);font-weight:500;letter-spacing:-.06em;line-height:1.13;margin:40px auto 34px;white-space:pre-line;max-width:16ch}
.making-statement p{font-size:clamp(19px,2vw,28px);line-height:1.45;max-width:36ch;margin:0 auto 26px}
.making-statement .eyebrow{font-size:14px}
.space-heading{padding-top:90px;padding-bottom:60px}
.space-heading .title,.rate-heading .title,.home-rates .title{font-weight:500;letter-spacing:-.05em}
.duality{padding:0 var(--gutter) 100px;background:#fff;gap:32px;align-items:start}
.room-panel{min-height:760px;padding:32px;overflow:hidden}
.room-panel.white{background:#efefef}.room-panel.black{margin-top:84px}
.room-photo{transition:transform 1.2s cubic-bezier(.2,.65,.3,1);transform:scale(1.01)}
.room-panel h3{font-size:clamp(47px,5.4vw,78px);font-weight:500;line-height:1.1}
.room-panel .image-caption{left:32px;top:92px;right:32px;width:max-content;max-width:calc(100% - 64px)}
.home-rates{padding-top:94px;padding-bottom:94px}
.ways{padding-top:88px;padding-bottom:94px}
.ways .title{font-weight:500;line-height:1.13}
.mode h3{font-weight:500;line-height:1.12}
.creators{background:#fff;color:#fff;padding-top:100px;padding-bottom:110px}
.creators .title{font-weight:500;line-height:1.11;letter-spacing:-.05em}
.creators .btn{background:#fff;color:#000;border-color:#fff}
.creators .btn:hover,.creators .btn:focus-visible{background:#000;color:#fff;border-color:#000}
.creators .signal{color:#fff}
.creator-picture{margin-top:42px;min-height:540px}
.creator-picture img:not(.creator-symbol){filter:none}
.creator-picture .image-caption{font-size:14px;background:#000;color:#fff;max-width:calc(100% - 36px)}
.membership{padding-top:64px;padding-bottom:64px}
.visit{padding-top:94px;padding-bottom:110px}
.studio-hero{padding-top:70px;padding-bottom:86px;gap:70px}
.studio-hero .title{font-weight:500;line-height:1.13;font-size:clamp(65px,7.5vw,108px)}
.studio-hero-art img{filter:none}
.studio-rates,.production-rates{padding-top:90px;padding-bottom:100px}
.before{padding-top:90px;padding-bottom:90px}
.immersive-footer{display:block;padding:72px var(--gutter) 22px;background:#000;color:#fff;border-top:1px solid #333}
.footer-information{display:grid;grid-template-columns:.9fr .9fr 1fr 1.35fr;gap:48px;padding-bottom:95px}
.footer-column h2{font-size:14px;line-height:1.5;letter-spacing:.01em;color:#aaa;font-weight:400;margin-bottom:32px}
.footer-column a{display:block;width:fit-content;font-size:18px;line-height:1.4;padding:5px 0;min-height:40px}
.footer-column a:hover{text-decoration:underline;text-underline-offset:6px}
.footer-column p{font-size:17px;line-height:1.65;margin-bottom:14px;max-width:24ch}
.footer-invitation{position:relative}
.footer-invitation .footer-symbol{width:46px;height:46px;margin-bottom:16px}
.footer-invitation p{font-size:clamp(28px,3.2vw,46px);line-height:1.2;letter-spacing:-.035em;font-weight:400;white-space:pre-line;margin-bottom:22px}
.footer-invitation .btn{min-height:54px;font-weight:400;width:100%;justify-content:center;align-items:center}
.footer-wordmark{display:flex;justify-content:space-between;align-items:center;gap:.18em;white-space:nowrap;width:100%;color:#fff;background:#000;font-size:clamp(50px,11.72vw,208px);font-weight:700;line-height:1.08;letter-spacing:-.065em;padding:.08em .015em .03em;transition:color .25s ease,background-color .25s ease;text-decoration:none}
.footer-wordmark:focus-visible{color:#000;background:#fff;outline:3px solid var(--signal);outline-offset:8px}
[data-reveal].entering{animation:section-arrive .7s cubic-bezier(.2,.65,.3,1) both}
@keyframes section-arrive{from{transform:translateY(36px)}to{transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.footer-wordmark:hover{background:#fff;color:#000}.room-panel:hover .room-photo{transform:scale(1.05)}}
@media(max-width:1100px){.footer-information{grid-template-columns:1fr 1fr;gap:42px 56px}.footer-invitation{max-width:370px}.cinematic-composition .hero-wordmark{font-size:12.6vw}.cinematic-composition .hero-intro{margin-top:40px}.room-panel{min-height:760px;padding:26px}.room-panel .image-caption{left:26px;right:26px;max-width:calc(100% - 52px)}.duality{gap:24px}.room-panel h3{font-size:5.7vw}}
@media(max-width:760px){
 .cinematic-composition{min-height:calc(100svh - 76px);padding:22px 0 88px;display:flex;flex-direction:column;justify-content:space-between}
 .cinematic-composition .hero-wordmark{font-size:clamp(60px,15vw,114px);line-height:1.13;max-width:100%;padding-top:.08em}
 .cinematic-composition .hero-making>img{object-position:67% 50%;height:100%;inset:0;transform:none}
 .cinematic-composition .hero-making::after{background:linear-gradient(0deg,rgba(0,0,0,.88),rgba(0,0,0,.05) 70%),linear-gradient(90deg,rgba(0,0,0,.25),transparent)}
 .cinematic-composition .hero-intro{margin-top:160px;max-width:100%}.cinematic-composition .hero-intro h2{font-size:26px;line-height:1.2}.cinematic-composition .hero-intro .copy{font-size:17px;max-width:31ch;margin-bottom:20px}
 .cinematic-composition .hero-making .image-caption{font-size:12px;left:24px;right:24px;bottom:20px;max-width:calc(100% - 48px);padding:6px 8px}
 .making-statement{padding:88px 24px 96px}.making-statement h2{font-size:53px;line-height:1.15;margin:34px 0 26px}.making-statement p{font-size:20px;max-width:27ch}.making-statement .eyebrow{font-size:13px}
 .space-heading{padding-top:60px;padding-bottom:40px}.duality{display:block;padding:0 24px 64px}.room-panel{min-height:690px;padding:25px 22px 30px}.room-panel.black{margin-top:26px}.room-panel h3{font-size:56px;line-height:1.1}.room-panel .image-caption{top:86px;left:22px;right:22px;max-width:calc(100% - 44px);font-size:13px}
 .home-rates,.studio-rates,.production-rates{padding:60px 24px 68px}.home-rates .title{font-size:46px;line-height:1.15}.rate-heading .title{font-size:44px;line-height:1.15}.rate-heading{margin-top:34px}
 .ways{padding-top:58px;padding-bottom:60px}.creators{padding:70px 24px 74px}.creators .title{font-size:52px;line-height:1.13}.creator-picture{min-height:370px;margin-top:28px}.creator-picture .image-caption{font-size:13px}
 .membership{padding:44px 24px 50px}.visit{padding:64px 24px 72px}.studio-hero{padding-top:40px;padding-bottom:48px}.studio-hero .title{font-size:61px;line-height:1.14}.before{padding-top:60px;padding-bottom:64px}
 .immersive-footer{padding:48px 24px 22px}.footer-information{grid-template-columns:1fr 1fr;gap:42px 22px;padding-bottom:58px}.footer-column h2{font-size:13px;margin-bottom:20px}.footer-column a{font-size:16px;line-height:1.45;min-height:44px}.footer-column p{font-size:16px;line-height:1.6}.footer-invitation .footer-symbol{width:36px;height:36px}.footer-invitation p{font-size:27px;line-height:1.22}.footer-invitation .btn{font-size:16px;padding:10px 12px}
 .footer-wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:0;white-space:normal;font-size:clamp(86px,28.5vw,206px);line-height:1.07;letter-spacing:-.065em;padding:.02em 0}.footer-wordmark span{display:block}
 [data-reveal].entering{animation:none}
}
@media(max-width:360px){.cinematic-composition .hero-wordmark{font-size:14.7vw}.footer-wordmark{font-size:27.7vw}.footer-invitation p{font-size:23px}.footer-information{column-gap:18px}}
@media(prefers-reduced-motion:reduce){.cinematic-composition .hero-making>img{transform:none!important;will-change:auto}[data-reveal].entering{animation:none}.footer-wordmark{transition:none}}
