.studio-vision{overflow:clip}.vision-statement{font-size:clamp(52px,7.4vw,112px);line-height:1.03;margin:32px 0 60px;font-weight:400}.vision-statement em{color:var(--acid)}
.vision-opening-copy{display:grid;grid-template-columns:1fr 1.15fr;gap:10vw;max-width:1180px;margin-left:auto}.vision-opening-copy p,.vision-taste-copy p,.vision-team-copy p{font-size:18px;line-height:1.75;color:#c6c6bc}.vision-opening-copy p+p,.vision-team-copy p+p{margin-top:22px}.vision-ten{font-size:clamp(72px,11vw,160px);letter-spacing:-.065em;line-height:.9}.vision-ten small{display:block;font-size:11px;letter-spacing:.14em;margin-top:24px;color:var(--muted)}
.vision-pillars{border-top:1px solid var(--line)}.vision-section-heading{display:flex;justify-content:space-between;gap:30px;margin-bottom:48px}.vision-section-heading h2{font-size:clamp(42px,5.5vw,78px);font-weight:400}.vision-section-heading>.eyebrow{max-width:25ch}
.vision-panels{display:flex;gap:12px;height:640px;height:clamp(460px,65vh,740px)}.vision-panel{flex:1;min-width:0;position:relative;overflow:hidden;text-align:left;padding:0;background:#171714;transition:flex .8s cubic-bezier(.22,1,.36,1)}.vision-panel.is-active{flex:2.5}.vision-panel>img,.vision-panel>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.vision-panel>video{opacity:0;transition:opacity .5s}.vision-panel.is-active>video{opacity:1}.vision-panel:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0003,transparent 40%,#000c)}.vision-panel-number{position:absolute;left:24px;top:24px;z-index:1;font-size:12px}.vision-panel-copy{position:absolute;left:28px;right:24px;bottom:30px;z-index:1}.vision-panel-title{display:block;font-size:clamp(32px,3.8vw,58px);line-height:1.05;letter-spacing:-.05em}.vision-panel-title em{color:var(--acid)}.vision-panel-description{display:block;max-width:37ch;font-size:15px;line-height:1.6;max-height:0;opacity:0;overflow:hidden;transition:max-height .65s,opacity .4s,margin .65s}.is-active .vision-panel-description{max-height:180px;opacity:1;margin-top:20px}.vision-panel-hint{font-size:12px;color:var(--muted);margin-top:18px}
.vision-taste{padding-bottom:25px}.vision-taste-copy{display:grid;grid-template-columns:1fr 1fr;gap:8vw;max-width:950px;margin-left:auto}.vision-assembly{height:185vh;position:relative}.vision-assembly-stage{height:100svh;position:sticky;top:0;display:flex;flex-direction:column;justify-content:center;padding:100px 6vw 30px;gap:25px}.vision-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);gap:10px;width:100%;height:min(65vh,750px)}.vision-fragment{margin:0;min-width:0;min-height:0;overflow:hidden;background:#171714;will-change:transform,opacity}.vision-fragment img,.vision-fragment video{display:block;width:100%;height:100%;object-fit:cover}.fragment-0{grid-column:1;grid-row:1/3}.fragment-1{grid-column:2/4;grid-row:1}.fragment-2{grid-column:2/4;grid-row:2}.fragment-3{grid-column:3/5;grid-row:3}.fragment-4{grid-column:4;grid-row:1/3}.fragment-5{grid-column:1;grid-row:3}.fragment-6{grid-column:2;grid-row:3}.vision-assembly-caption{display:flex;justify-content:space-between;align-items:center;gap:20px}.vision-assembly-caption>span:first-child{font-size:10px;letter-spacing:.1em}.vision-assembly-caption>span:nth-child(2){font-size:28px}.vision-assembly-caption a{font-size:12px}
.vision-culture{border-top:1px solid var(--line)}.vision-culture-type{font-size:clamp(44px,7.6vw,115px);font-weight:400;line-height:1.12;margin:35px 0 65px}.vision-culture-type em{color:var(--acid)}.vision-team-copy{max-width:650px;margin-left:auto}.vision-team-copy .pill-link{margin-top:30px}.studio-vision .studio-evolution-intro{margin-bottom:0}
.vision-ready .vision-reveal{opacity:0;transform:translateY(28px);transition:opacity .85s ease,transform .85s cubic-bezier(.22,1,.36,1)}.vision-ready .vision-reveal.is-visible,.vision-quiet .vision-reveal{opacity:1;transform:none}.vision-quiet .vision-reveal,.vision-quiet .vision-panel{transition:none}.vision-quiet .vision-assembly{height:auto}.vision-quiet .vision-assembly-stage{position:relative;height:auto}
@media(max-width:720px){.vision-opening-copy,.vision-taste-copy{grid-template-columns:1fr;gap:34px}.vision-section-heading{display:block}.vision-section-heading h2{margin-top:28px}.vision-statement{margin:26px 0 38px}.vision-opening-copy p,.vision-taste-copy p,.vision-team-copy p{font-size:16px}.vision-panels{height:540px;gap:6px}.vision-panel-copy{left:12px;right:12px;bottom:20px}.vision-panel-title{font-size:24px;overflow-wrap:normal}.vision-panel.is-active{flex:4}.vision-panels:has(.is-active) .vision-panel:not(.is-active) .vision-panel-title{writing-mode:vertical-rl;font-size:22px;white-space:nowrap}.vision-panels:has(.is-active) .vision-panel:not(.is-active) .vision-panel-title br{display:none}.vision-panel-description{font-size:13px}.vision-panel-number{left:12px;top:16px}.vision-panel-hint{font-size:11px}.vision-assembly{height:150vh}.vision-assembly-stage{padding:95px 4vw 25px}.vision-mosaic{gap:5px;height:60vh;grid-template-columns:repeat(4,1fr)}.vision-assembly-caption{flex-wrap:wrap;gap:12px}.vision-assembly-caption>span:nth-child(2){font-size:21px}.vision-assembly-caption>span:first-child{font-size:8px}.vision-culture-type{font-size:clamp(38px,8vw,55px)}}
@media(prefers-reduced-motion:reduce){.vision-ready .vision-reveal{opacity:1;transform:none;transition:none}.vision-panel,.vision-panel-description,.vision-panel>video{transition:none}}
/* A continuous visual narrative, with fewer editorial breaks. */
.vision-opening{padding-bottom:65px}.vision-statement{font-weight:400;letter-spacing:-.055em;line-height:1.06}.vision-single-copy{max-width:510px;margin-left:auto;font-size:18px;color:var(--muted)}
.vision-pillars{border:0;padding:30px 3vw 90px}.vision-panels{height:clamp(640px,88svh,1000px);gap:10px}.vision-panel{background:#000}.vision-panel>img{opacity:.55}.vision-panel.is-active>video{opacity:.48}.vision-panel-copy{bottom:46px;left:34px;right:28px}.vision-panel-description{max-width:31ch}.vision-panel:after{background:linear-gradient(180deg,#0002,transparent 25%,#000a)}
.vision-taste{padding-top:50px;padding-bottom:0}.vision-taste .vision-statement{margin-bottom:0}.vision-assembly{height:230vh}.vision-assembly-stage{padding:90px 3vw 24px}.vision-mosaic{position:relative;display:block;height:min(73svh,850px);isolation:isolate}.vision-fragment{position:absolute;box-shadow:0 15px 45px #0005;grid-area:auto;will-change:transform,opacity}.fragment-0{left:3%;top:5%;width:25%;height:51%;z-index:2}.fragment-1{left:22%;top:0;width:35%;height:32%;z-index:3}.fragment-2{left:23%;top:31%;width:47%;height:38%;z-index:8}.fragment-3{left:58%;top:65%;width:39%;height:33%;z-index:9}.fragment-4{left:69%;top:9%;width:27%;height:35%;z-index:3}.fragment-5{left:1%;top:58%;width:32%;height:33%;z-index:4}.fragment-6{left:48%;top:5%;width:24%;height:43%;z-index:4}.fragment-7{left:13%;top:75%;width:32%;height:24%;z-index:6}.fragment-8{left:66%;top:35%;width:34%;height:36%;z-index:5}.fragment-9{left:35%;top:69%;width:32%;height:27%;z-index:5}.fragment-10{left:7%;top:31%;width:28%;height:31%;z-index:6}.fragment-11{left:40%;top:18%;width:32%;height:19%;z-index:7}.vision-assembly-caption>span:first-child{display:none}.vision-assembly-caption{padding:0 3vw}.vision-culture{border:0;padding-top:75px;padding-bottom:70px}.vision-culture-type{font-weight:400;letter-spacing:-.055em;line-height:1.12;margin:0 0 35px}.studio-vision .studio-evolution{border:0;display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:20px;padding-bottom:70px}.vision-built{font-size:clamp(30px,4vw,56px);letter-spacing:-.04em}
body[data-page="studio"] .people{grid-template-columns:repeat(6,minmax(0,1fr));gap:35px 24px}body[data-page="studio"] .people article{grid-column:span 2}body[data-page="studio"] .people article:nth-child(4){grid-column:2/span 2}body[data-page="studio"] .people .team-portrait{filter:grayscale(1);border-radius:0;object-position:center 35%}body[data-page="studio"] .people h3{font-size:38px;margin:20px 0 10px}body[data-page="studio"] .people article:has(img[src*="declan"]) .team-portrait{object-position:center 60%}.team-reveal-ready .people article{opacity:0;transform:translateY(45px);transition:opacity .9s ease var(--entry-delay),transform 1s cubic-bezier(.22,1,.36,1) var(--entry-delay)}.team-reveal-ready .people article.is-visible,.team-quiet .people article{opacity:1;transform:none}.team-quiet .people article{transition:none}
@media(max-width:720px){.vision-panels{height:75svh;min-height:570px}.vision-panel-copy{left:14px;right:14px;bottom:28px}.vision-single-copy{font-size:16px;margin:0}.vision-assembly{height:190vh}.vision-mosaic{height:65svh}.vision-assembly-stage{padding:95px 2vw 25px}.vision-taste .vision-statement{font-size:clamp(38px,9vw,62px)}.vision-assembly-caption{gap:16px}.vision-assembly-caption a{font-size:11px}.studio-vision .studio-evolution{display:block}.vision-built{margin-bottom:20px}body[data-page="studio"] .people{grid-template-columns:1fr 1fr;gap:25px 16px}body[data-page="studio"] .people article:nth-child(n){grid-column:auto}body[data-page="studio"] .people article:last-child{grid-column:1/-1;width:70%;justify-self:center}body[data-page="studio"] .people h3{font-size:28px}body[data-page="studio"] .people p{font-size:12px}.vision-panel:not(.is-active) .vision-panel-title em{margin-block-start:4px}}
@media(prefers-reduced-motion:reduce){.team-reveal-ready .people article{opacity:1;transform:none;transition:none}}
/* Still at rest; a clean switch to motion and copy on interaction. */
.vision-panel>img{opacity:1;transition:none}.vision-panel.is-active>img{opacity:0;visibility:hidden}.vision-panel.is-active>video{opacity:1}.vision-panel>video{transition:none}.vision-panel:after{opacity:0;transition:opacity .4s}.vision-panel.is-active:after{opacity:1;background:linear-gradient(180deg,transparent 35%,#000b)}
.vision-panel-number,.vision-panel-copy{opacity:0;visibility:hidden;transition:opacity .4s}.vision-panel.is-active .vision-panel-number,.vision-panel.is-active .vision-panel-copy{opacity:1;visibility:visible}.vision-panel-title{line-height:.88}.vision-panel-description{margin-top:26px!important}.vision-assembly-caption{justify-content:flex-end}
.brand-scroll{height:300svh;position:relative}.brand-scroll-stage{height:100svh;position:sticky;top:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding-top:95px;padding-bottom:35px}.brand-scroll-track{display:flex;gap:24px;padding:0 6vw;width:max-content;will-change:transform}.brand-scroll-card{margin:0;width:76vw;height:70svh;flex-shrink:0;overflow:hidden;background:#151515}.brand-scroll-card video{width:100%;height:100%;object-fit:cover;display:block}.brand-scroll-progress{height:2px;background:#ffffff20;margin:30px 6vw 0}.brand-scroll-progress span{display:block;width:100%;height:100%;background:var(--acid);transform:scaleX(0);transform-origin:left}.vision-quiet .brand-scroll{height:auto}.vision-quiet .brand-scroll-stage{height:auto;position:relative}.vision-quiet .brand-scroll-track{width:100%;overflow-x:auto;scroll-snap-type:x mandatory}.vision-quiet .brand-scroll-card{scroll-snap-align:center}.vision-quiet .brand-scroll-progress{display:none}
body[data-page="studio"] .team-title{font-size:clamp(44px,7.6vw,115px);font-weight:400;letter-spacing:-.055em;line-height:1.12;margin-bottom:65px}body[data-page="studio"] .team-title em{color:var(--acid)}.team-reveal-ready .team-title{opacity:0;transform:translateY(35px);transition:opacity .85s,transform .85s}.team-reveal-ready .team-title.is-visible,.team-quiet .team-title{opacity:1;transform:none}
body[data-page="studio"] .team-portrait-frame{aspect-ratio:4/5;overflow:hidden;margin:20px 0}body[data-page="studio"] .people .team-portrait{height:100%;margin:0}body[data-page="studio"] .people article:has(img[src*="declan"]) .team-portrait{transform:scale(1.55);transform-origin:50% 43%;object-position:center 60%}
@media(max-width:720px){.brand-scroll-card{width:86vw;height:65svh}.brand-scroll-track{gap:12px}.brand-scroll{height:260svh}body[data-page="studio"] .team-title{font-size:clamp(38px,8vw,55px);margin-bottom:40px}.vision-panel:not(.is-active) .vision-panel-title em{margin:0}}
@media(prefers-reduced-motion:reduce){.team-reveal-ready .team-title{opacity:1;transform:none;transition:none}.vision-panel-copy,.vision-panel:after{transition:none}}
/* Studio opens on the manifesto; the film sequence sits close to its title. */
body[data-page="studio"] .vision-opening{padding-top:190px;padding-bottom:70px}
body[data-page="studio"] .vision-opening .vision-statement{margin-top:0}
.vision-culture{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:35px;padding-bottom:24px}
.vision-culture .vision-culture-type{margin:0;font-size:clamp(44px,7.1vw,108px)}
.vision-culture>.underlink{align-self:end;white-space:nowrap;margin-bottom:8px}
.brand-scroll-stage{justify-content:flex-start;padding-top:30px;padding-bottom:30px}
body[data-page="studio"] .team-section,body[data-page="studio"] .people article{border:0}
body[data-page="studio"] .team-title{margin-bottom:22px}
.team-introduction{font-size:18px;line-height:1.65;color:var(--muted);max-width:48ch;margin-bottom:50px}
.team-reveal-ready .team-introduction{opacity:0;transform:translateY(25px);transition:opacity .85s,transform .85s}.team-reveal-ready .team-introduction.is-visible,.team-quiet .team-introduction{opacity:1;transform:none}
body[data-page="studio"] .people .team-portrait{transition:scale .65s cubic-bezier(.22,1,.36,1);scale:1}
body[data-page="studio"] .people h3{transition:color .35s ease}
@media(hover:hover){body[data-page="studio"] .people article:hover .team-portrait{scale:1.045}body[data-page="studio"] .people article:hover h3{color:var(--acid)}}
@media(max-width:900px){.vision-culture .vision-culture-type{font-size:clamp(38px,6.4vw,76px)}.vision-culture{column-gap:20px}.vision-culture>.underlink{font-size:12px}}
@media(max-width:600px){body[data-page="studio"] .vision-opening{padding-top:140px;padding-bottom:50px}.vision-culture{grid-template-columns:1fr;gap:22px;padding-bottom:12px}.vision-culture .vision-culture-type{font-size:clamp(38px,8vw,55px)}.vision-culture>.underlink{justify-self:end;margin:0}.brand-scroll-stage{padding-top:18px}.team-introduction{font-size:16px;margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){body[data-page="studio"] .people .team-portrait,body[data-page="studio"] .people h3{transition:none}.team-reveal-ready .team-introduction{opacity:1;transform:none;transition:none}}

.brand-scroll-stage{top:82px;height:calc(100svh - 82px)}
