/* Complete post-hero choreography. The approved hero remains byte-for-byte intact. */
.editorial { --cream:#e7e7e5; --coal:#0c0d0e; --copper:#bf7750; }
.manifesto { min-height:110svh; padding:135px 10.5vw 130px; isolation:isolate; background:#0c0d0e; }
.manifesto-sculpture { position:absolute; inset:-10% -10% 0 10%; z-index:-1; overflow:hidden; pointer-events:none; }
.manifesto-sculpture img { width:100%; height:100%; object-fit:contain; opacity:.44; mix-blend-mode:screen; }
.manifesto .section-label { position:relative; margin-bottom:65px; }
.manifesto-text { font-size:clamp(52px,6.15vw,108px); line-height:1.12; font-weight:400; }
.manifesto-word { color:#7c807d; } .manifesto-word.is-lit { color:#f0f0ee; }
.manifesto-bottom { margin-top:85px; grid-template-columns:1fr 1fr; }
.manifesto-bottom:before { background:#0c0d0e; }
.manifesto-bottom>div { max-width:345px; } .manifesto-bottom>div>p { color:#bdc1bd; }
.editorial .section-label,.editorial .eyebrow { text-wrap:balance; }
.principles { padding:0; background:#0c0d0e; isolation:isolate; }
.principles-stage { position:relative; }
.vision-scene { min-height:75svh; background:#0c0d0e; color:#eceeed; padding:90px 10.5vw 70px; display:flex; flex-direction:column; justify-content:space-between; }
.type-ribbon { margin:40px -10.5vw; padding:0; overflow:hidden; }
.type-ribbon>div { font-size:clamp(100px,17vw,300px); line-height:1; font-weight:400; }
.type-ribbon span { color:#b87a58; }
.vision-note { font-size:12px; letter-spacing:.07em; }
.light-bands { inset:0; height:100%; grid-template-rows:repeat(5,1fr); z-index:2; }
.light-bands i { width:100%; background:#e7e7e5; transform-origin:bottom!important; }
.principle-content { position:relative; z-index:3; background:#e7e7e5; color:#1a1c1b; padding:90px 7vw 70px; }
.principle-content>h2 { font-size:clamp(42px,4vw,72px); letter-spacing:-.065em; line-height:1.05; }
.principle-content>.section-label { margin-bottom:20px; font-size:12px; }
.principle-grid { gap:24px; max-width:1320px; margin:60px auto 0; perspective:1400px; }
.principle-card { position:relative; overflow:hidden; border-radius:6px; height:clamp(390px,42svh,520px); min-height:0; padding:28px; transform-origin:50% 0; }
.principle-card h3 { font-size:30px; line-height:1.06; margin-bottom:14px; }
.principle-card p { font-size:16px; line-height:1.5; max-width:280px; }
.principle-foot { margin-top:auto; padding-top:17px; font-size:11px; letter-spacing:.06em; }
.image-principle { padding:0; color:#fff; background:#151716!important; }
.image-principle>img { position:absolute; inset:0; height:100%; width:100%; object-fit:cover; }
.image-principle>div { position:relative; height:100%; padding:27px; display:flex; flex-direction:column; background:linear-gradient(180deg,#0000 12%,#0004 35%,#080a08ee 100%); }
.image-principle .principle-index { font-size:100px; color:#fff; margin-bottom:auto; font-weight:300; opacity:.85; }
.image-principle .principle-foot { margin-top:23px; border-color:#fff4; }
.bronze-principle>img { object-fit:cover; object-position:48% 45%; transform:scale(1.25); }
.bronze-principle .principle-index { color:#daab81!important; }
.type-principle { background:#d0d4d0!important; color:#18251d!important; }
.type-principle .principle-index { font-size:clamp(80px,8vw,145px); font-weight:400; letter-spacing:-.09em; margin-bottom:24px; color:#253b2c!important; }
.action-cycle { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:auto; padding-bottom:25px; }
.action-cycle span { font-size:10px; border:1px solid #203c3040; border-radius:30px; padding:7px 10px; }
.type-principle .principle-foot { border-color:#203c3040!important; margin-top:22px; }
.tools-line { margin:55px auto 0; text-align:center; }
.tools-line>p { font-size:11px; letter-spacing:.06em; color:#7b827d; }
.tools-line>div { display:flex; justify-content:center; gap:5vw; margin-top:22px; font-size:clamp(20px,2.2vw,32px); letter-spacing:-.06em; color:#555e58; }
.mission-gallery { background:#e7e7e5; }
.gallery-stage { padding:0; }
.gallery-layer { background:linear-gradient(#f6f6f4,#d7d8d6); overflow:clip; }
.gallery-track { padding:0; gap:0; align-items:stretch; }
.gallery-intro,.work-card,.gallery-outro { width:50vw; min-width:0; flex:none; min-height:100svh; border-left:1px solid #2223; padding:10svh 4.3vw; display:flex; flex-direction:column; justify-content:center; }
.gallery-intro { border:0; text-align:center; align-items:center; }
.gallery-intro .section-label { margin-bottom:40px; font-size:11px; }
.gallery-intro h2 { font-size:clamp(50px,4.5vw,78px); line-height:1.08; letter-spacing:-.065em; }
.gallery-intro>p:not(.section-label) { margin-top:30px; max-width:280px; font-size:16px; color:#69716b; }
.gallery-intro .line-link { margin-top:32px; }
.work-visual { height:51svh!important; min-height:380px!important; max-height:600px!important; padding:25px 30px!important; }
.work-visual>h3 { font-size:clamp(40px,4vw,68px)!important; }
.visual-meta { font-size:10px; }
.visual-facts { gap:20px; } .visual-facts p { font-size:15px; }
.work-caption { display:block; padding-top:24px; }
.work-caption h3 { font-size:28px; } .work-caption p { max-width:none; font-size:15px; }
.work-caption .line-link { width:100%; font-size:12px; margin-top:10px; padding-top:12px; }
.gallery-outro { text-align:center; align-items:center; }
.gallery-outro h3 { font-size:clamp(45px,4.4vw,76px); line-height:1.1; max-width:430px; }
.gallery-outro .line-link { max-width:280px; margin-top:45px; }
.gallery-progress { left:4vw; right:4vw; bottom:20px; z-index:2; }
.agent-stage { position:relative; min-height:100svh; background:#080a09; color:#e4e6e1; overflow:hidden; isolation:isolate; }
.agent-core { position:absolute; width:100%; height:100%; inset:0; object-fit:contain; opacity:.65; mix-blend-mode:screen; z-index:-1; }
.agent-label { text-align:center; padding-top:8svh; margin:0; }
.agent-burst { font-size:clamp(60px,10.5vw,185px); line-height:.96; letter-spacing:-.055em; text-align:center; padding:10svh 4vw; font-weight:400; }
.burst-word { white-space:nowrap; display:inline-block; } .burst-char { display:inline-block; transform-origin:50% 50%; }
.agent-bottom { position:absolute; bottom:7svh; left:7vw; right:7vw; display:flex; justify-content:space-between; align-items:end; }
.agent-bottom p { font-size:16px; line-height:1.5; color:#b0b8b1; } .agent-bottom .line-link { max-width:250px; margin:0; }
.agent-flight { position:relative; display:grid; grid-template-columns:1fr 1fr; gap:22px; padding:20px 7vw 160px; }
.flight-card { position:relative; padding:28px; background:#b9c5ba; color:#183020; border:1px solid #eee3; border-radius:5px; min-height:230px; display:flex; flex-direction:column; overflow:hidden; }
.flight-card:nth-child(even) { background:#b37654; color:#221d17; }
.flight-card>span { font-size:11px; letter-spacing:.045em; }
.flight-card strong { font-size:clamp(30px,3vw,49px); font-weight:400; letter-spacing:-.06em; line-height:1.06; margin:27px 0 22px; }
.flight-card p { font-size:13px; line-height:1.5; margin-top:auto; }
.flight-line { height:1px; background:currentColor; opacity:.35; width:100%; margin-top:18px; transform-origin:left; }
.agent-stripes { position:absolute; inset:0; display:grid; grid-template-rows:repeat(5,1fr); pointer-events:none; z-index:10; }
.agent-stripes i { background:#e7e7e5; transform:scaleY(0); transform-origin:bottom; }
.mission-stories { padding:110px 10.5vw 120px; background:#e7e7e5; color:#242825; z-index:5; }
.story-heading { display:grid; grid-template-columns:1fr 1.6fr; gap:7vw; align-items:start; margin-bottom:75px; }
.story-heading>.section-label { font-size:12px; color:#7b837d; margin:10px 0 0; }
.story-heading>h2 { font-size:clamp(42px,4.4vw,75px); line-height:1.07; }
.mission-stories .archive-index { display:grid; grid-template-columns:repeat(6,1fr); gap:0; margin-bottom:75px; border-bottom:1px solid #25312630; }
.mission-stories .archive-index button,.mission-stories .archive-index button:last-child { display:flex; flex-direction:column; align-items:start; justify-content:start; border:0; border-bottom:2px solid transparent; padding:18px 10px 23px!important; min-height:100px; gap:12px; background:transparent; transition:color .25s,border-color .25s; }
.mission-stories .archive-index button>span:nth-child(2) { font-size:18px; font-weight:400; letter-spacing:-.04em; line-height:1.2; }
.mission-stories .archive-index button small,.mission-stories .drawer-handle { display:none; }
.mission-stories .archive-index button[aria-pressed=true] { color:#a45838; border-bottom-color:#a45838; }
.mission-stories .archive-number { font-size:11px; color:#8b938c; }
.mission-story { padding-left:10%; position:relative; }
.story-cross { position:absolute; left:0; top:-15px; font-size:85px; font-weight:200; color:#a16b4c; }
.story-objective { font-size:clamp(34px,4.25vw,73px); line-height:1.2; letter-spacing:-.06em; min-height:2.5em; max-width:1150px; }
.story-bottom { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-top:50px; }
.story-bottom span { font-size:12px; color:#77857b; } .story-bottom h3 { font-size:22px; letter-spacing:-.04em; margin-top:12px; }
.story-bottom .line-link { max-width:255px; }
.control-journey { padding:0; background:#0c100d; color:#e6eae5; }
.control-stage { padding:95px 7vw 50px; min-height:100svh; overflow:hidden; perspective:1800px; }
.editorial-control .control-intro { position:relative; z-index:2; text-align:center; margin:0 0 60px; max-width:none; }
.editorial-control .control-intro h2 { font-size:clamp(48px,7vw,115px); line-height:1.02; }
.editorial-control .control-intro>p:last-child { margin:25px auto 0; max-width:600px; font-size:17px; }
.control-window { transform-origin:50% 70%; }
.editorial-control .control-desk { max-width:1220px; margin:auto; }
.control-caption { display:flex; justify-content:space-between; font-size:11px; color:#9daa9e; letter-spacing:.04em; margin-top:38px; }
.method-journey { display:block; background:#e7e7e5; color:#222b24; padding:0; }
.method-stage { position:relative; min-height:100svh; padding:80px 8vw; overflow:hidden; isolation:isolate; }
.method-wall { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; perspective:1500px; }
.method-tile { min-height:250px; padding:28px; color:#e4e9e1; background:#3b4c3e; border-radius:5px; overflow:hidden; position:relative; }
.method-tile:nth-child(3n) { background:#b27050; color:#291f18; } .method-tile:nth-child(4) { background:#bfcbbd; color:#233325; }
.method-tile>span { font-size:11px; letter-spacing:.07em; }.method-tile strong { display:block; font-size:36px; font-weight:400; letter-spacing:-.06em; line-height:1.06; margin:35px 0 20px; }.method-tile p { font-size:15px; line-height:1.5; }.method-tile img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.method-center { position:relative; margin:80px auto; max-width:640px; text-align:center; }
.method-center .section-label { font-size:12px; margin-bottom:35px; }.method-center h2 { font-size:clamp(70px,8.5vw,150px); line-height:.96; }
.method-center>p:not(.section-label) { font-size:18px; line-height:1.5; max-width:445px; margin:35px auto 0; color:#6a796b; }.method-center .line-link { max-width:285px; margin:30px auto 0; }
.method-foot { display:flex; justify-content:space-between; gap:25px; font-size:11px; color:#6d7b6d; letter-spacing:.045em; }
.immersive-footer { padding:0; min-height:110svh; background:#080a0a; color:#e4e7e1; position:relative; isolation:isolate; overflow:hidden; }
.footer-sculpture { position:absolute; inset:4% -15% 0 auto; width:100%; height:100%; object-fit:contain; opacity:.6; mix-blend-mode:screen; z-index:-1; }
.footer-content { position:relative; padding:100px 8vw 30px; background:linear-gradient(90deg,#080a0a66,#080a0a00); }
.footer-top { display:grid; grid-template-columns:1.8fr 1fr; align-items:center; gap:10vw; }
.footer-top h2 { font-size:clamp(60px,7.1vw,122px); line-height:1.04; }.footer-top h2>span { color:#b97d55; }
.round-cta { width:clamp(165px,17vw,270px); aspect-ratio:1; border:1px solid #eee7; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:23px; margin:auto; transition:background .35s,color .35s,transform .35s; }
.round-cta>span { font-size:14px; letter-spacing:.055em; line-height:1.4; }.round-cta b { font-size:40px; font-weight:200; }.round-cta:hover { background:#d8dfd5; color:#1b2a1d; transform:rotate(-8deg); }
.footer-links { display:flex; justify-content:space-between; gap:60px; margin:80px 0 100px; font-size:17px; line-height:1.6; }
.footer-links>p { color:#adb9ad; }.footer-links nav { display:grid; grid-template-columns:1fr 1fr; gap:15px 50px; font-size:14px; }.footer-links a { border-bottom:1px solid #fff4; padding-bottom:6px; }
.immersive-footer .footer-wordmark { font-size:19vw; color:#e5e9e2; line-height:.82; letter-spacing:-.08em; opacity:.85; margin:0; padding:0; }
.immersive-footer .footer-wordmark span { color:#af7752; }
.footer-baseline { display:flex; justify-content:space-between; border-top:1px solid #fff3; padding-top:22px; margin-top:55px; font-size:11px; letter-spacing:.04em; color:#899c8b; }
/* Detail surfaces stay available without breaking the main scroll narrative. */
.editorial-detail { width:calc(100% - 40px); max-width:840px; max-height:90svh; overflow:auto; background:#e7eae4; color:#233025; padding:65px 45px 35px; }
.editorial-detail .mission-sheet { min-height:0; background:none; box-shadow:none; border:0; transform:none; padding:0; }.editorial-detail .mission-sheet h3 { max-width:none; font-size:50px; line-height:1.05; }.editorial-detail .sheet-top .mono { font-size:11px; }.editorial-detail :is(.mission-objective,.mission-fields dd) { font-size:17px; }.editorial-detail .mission-fields dt { font-size:12px; }.editorial-detail .sheet-action { font-size:15px; }.editorial-detail .mission-extra { font-size:14px; }.editorial-detail .eyebrow { font-size:12px; margin-bottom:25px; }.editorial-detail>h2 { font-size:55px; line-height:1.05; }
#contact-detail .contact-room { display:block; padding:35px 0 0; background:transparent; color:inherit; }#contact-detail label { color:#384b3c; font-size:16px; }#contact-detail :is(textarea,input) { color:#243328; font-size:17px; border-color:#263c2955; }#contact-detail :is(textarea,input)::placeholder { color:#899989; }#contact-detail .contact-action { color:#243328; border-color:#263c2955; }#contact-detail #contact-feedback { color:#758975; font-size:12px; }
.method-detail-list { list-style:none; padding:0; margin:40px 0 0; }.method-detail-list li { display:flex; gap:25px; border-top:1px solid #28472d40; padding:28px 0; }.method-detail-list li>span { font-size:12px; color:#788b75; }.method-detail-list h3 { font-size:30px; letter-spacing:-.045em; line-height:1.12; }.method-detail-list p { font-size:16px; line-height:1.6; margin-top:18px; color:#5e765e; }
/* The same sequence is composed as pinned scenes only when the viewport has room. */
.full-motion .principles { height:275svh; }.full-motion .principles-stage { position:sticky; top:0; height:100svh; overflow:clip; }
.full-motion .vision-scene { position:absolute; inset:0; min-height:0; padding:10svh 10.5vw 8svh; }
.full-motion .principle-content { position:absolute; inset:0; padding:5svh 7vw 3svh; background:transparent; }
.full-motion .principle-grid { margin-top:4svh; }.full-motion .principle-card { height:46svh; min-height:340px; }.full-motion .tools-line { margin-top:4svh; }.full-motion .tools-line>div { margin-top:2svh; }
.full-motion .gallery-stage { position:sticky; top:0; height:100svh; min-height:0; overflow:clip; padding:0; }
.full-motion .gallery-layer { position:absolute; inset:0; }
.full-motion .gallery-track { display:flex!important; width:max-content!important; transform:none; height:100%; will-change:transform; }
.full-motion .gallery-intro,.full-motion .work-card,.full-motion .gallery-outro { width:50vw!important; height:100%; min-height:0; margin:0!important; padding:6svh 4.3vw; }
.full-motion .gallery-progress { display:flex; }.full-motion .agent-stage { position:absolute; inset:0; min-height:0; height:100%; }
.full-motion .agent-burst { position:absolute; top:50%; left:0; width:100%; padding:0 4vw; transform:translateY(-50%); z-index:3; }
.full-motion .agent-flight { position:absolute; inset:0; display:block; padding:0; pointer-events:none; perspective:1500px; }
.full-motion .flight-card { position:absolute; left:0; top:0; width:32vw; height:34svh; min-height:0; padding:26px; will-change:transform,opacity; }
.full-motion .control-journey { height:210svh; }.full-motion .control-stage { position:sticky; top:0; height:100svh; min-height:0; padding:0; }
.full-motion .control-intro { position:absolute; left:7vw; right:7vw; top:16svh; margin:0; }
.full-motion .control-intro h2 { font-size:clamp(58px,8vw,140px); }
.full-motion .control-window { position:absolute; left:7vw; right:7vw; top:50%; max-height:88svh; overflow:auto; border-radius:5px; scrollbar-width:thin; }
.full-motion .control-caption { position:absolute; bottom:3svh; left:7vw; right:7vw; margin:0; }
.full-motion .method-journey { height:245svh; }.full-motion .method-stage { position:sticky; top:0; height:100svh; min-height:0; padding:0; }
.full-motion .method-wall { position:absolute; inset:0; display:block; perspective:1500px; pointer-events:none; }
.full-motion .method-tile { position:absolute; width:31vw; height:32svh; min-height:0; padding:25px; will-change:transform,opacity; }
.full-motion .method-tile:nth-child(1) { left:0; top:0; }.full-motion .method-tile:nth-child(2) { left:34.5%; top:-12%; }.full-motion .method-tile:nth-child(3) { right:0; top:0; }.full-motion .method-tile:nth-child(4) { left:0; bottom:0; }.full-motion .method-tile:nth-child(5) { left:34.5%; bottom:-12%; }.full-motion .method-tile:nth-child(6) { right:0; bottom:0; }
.full-motion .method-center { position:absolute; width:52%; left:24%; top:50%; transform:translateY(-50%); margin:0; max-width:none; }
.full-motion .method-center h2 { font-size:clamp(60px,7vw,120px); }.full-motion .method-center>p:not(.section-label) { font-size:17px; max-width:425px; margin-top:25px; }.full-motion .method-center .section-label { margin-bottom:25px; }.full-motion .method-foot { position:absolute; left:6vw; right:6vw; bottom:4svh; }
/* Short titles dissolve into place as in the reference. No long-running blur rendering. */
.reveal-word { display:inline-block; white-space:nowrap; }.reveal-char { display:inline-block; }
.full-motion [data-reveal]:not(.is-revealed) .reveal-char { opacity:0; transform:translateY(18px); filter:blur(6px); }
.full-motion [data-reveal].is-revealed .reveal-char { animation:reveal-letter .65s both; animation-delay:calc(var(--letter) * 9ms); }
@keyframes reveal-letter { from { opacity:0; transform:translateY(18px); filter:blur(6px); } to { opacity:1; transform:none; filter:none; } }
.line-link { overflow:hidden; }.line-link:hover { color:#af6945; }.line-link span { transition:transform .35s; }.line-link:hover span { transform:translate(4px,-4px) rotate(8deg); }
@media(max-width:1100px) { .full-motion .work-visual { padding:22px!important; }.full-motion .work-visual>h3 { font-size:43px!important; }.full-motion .visual-facts { flex-direction:column; gap:12px; }.full-motion .visual-facts p { font-size:14px; }.full-motion .visual-label { margin-top:15px; }.full-motion .work-caption p { font-size:14px; }.full-motion .gallery-intro h2 { font-size:53px; }.full-motion .principle-card { padding:22px; }.full-motion .image-principle { padding:0; }.full-motion .principle-card h3 { font-size:25px; }.full-motion .principle-card p { font-size:15px; }.full-motion .action-cycle { gap:4px; }.full-motion .action-cycle span { padding:6px; font-size:9px; }.full-motion .flight-card strong { font-size:33px; }.full-motion .method-tile strong { font-size:30px; } }
@media(max-width:900px) { .manifesto { padding:90px 6vw; min-height:0; }.manifesto .section-label { margin-bottom:45px; }.manifesto-text { font-size:clamp(43px,7.5vw,68px); }.manifesto-sculpture { inset:0 -35% 0 0; }.principle-content { padding:70px 6vw; }.principle-grid { gap:16px; }.principle-card { height:auto; min-height:410px; }.type-principle .principle-index { font-size:90px; }.tools-line>div { gap:25px; flex-wrap:wrap; }.vision-scene { min-height:60svh; padding:75px 6vw; }.type-ribbon { margin:35px -6vw; }.light-bands { display:none; }.gallery-track { padding:0!important; }.gallery-intro,.work-card,.gallery-outro { width:auto!important; min-height:0; padding:65px 6vw!important; border:0; margin:0!important; }.gallery-intro h2 { font-size:65px; }.work-visual { height:auto!important; min-height:480px!important; }.work-visual>h3 { font-size:55px!important; }.gallery-outro { min-height:65svh; }.gallery-outro h3 { font-size:60px; }.agent-burst { font-size:11vw; padding:10svh 4vw; }.agent-flight { gap:18px; padding:30px 6vw 150px; }.flight-card { padding:24px; }.agent-bottom { left:6vw; right:6vw; bottom:50px; }.agent-bottom p { max-width:260px; font-size:15px; }.agent-bottom .line-link { max-width:210px; font-size:13px; }.mission-stories { padding:80px 6vw; }.story-heading { grid-template-columns:1fr; gap:30px; margin-bottom:45px; }.mission-stories .archive-index { grid-template-columns:repeat(3,1fr); margin-bottom:50px; }.mission-stories .archive-index button { min-height:110px; }.story-objective { font-size:clamp(35px,5.8vw,60px); }.story-bottom h3 { font-size:20px; }.control-stage { padding:80px 6vw 40px; }.editorial-control .control-intro h2 { font-size:60px; }.method-stage { padding:65px 6vw; }.method-wall { grid-template-columns:1fr 1fr; gap:16px; }.method-tile strong { font-size:30px; }.method-center h2 { font-size:90px; }.method-foot { font-size:10px; }.footer-content { padding:85px 6vw 30px; }.footer-top { gap:5vw; }.footer-top h2 { font-size:clamp(52px,7.8vw,75px); }.round-cta { width:175px; }.footer-links { margin:65px 0 80px; gap:40px; }.footer-links nav { gap:15px 30px; } }
@media(max-width:600px) { .manifesto-text { font-size:43px; }.manifesto-bottom { margin-top:55px; }.principle-grid { grid-template-columns:1fr; gap:25px; }.principle-card { min-height:420px; }.image-principle .principle-index { font-size:125px; }.principle-card h3 { font-size:35px; }.principle-card p { font-size:17px; }.type-principle { padding:30px; }.type-principle .principle-index { font-size:135px; }.action-cycle span { font-size:11px; padding:9px 12px; }.tools-line>div { font-size:24px; gap:15px 30px; }.vision-scene { min-height:55svh; }.type-ribbon>div { font-size:100px; }.gallery-intro h2 { font-size:53px; }.work-visual>h3 { font-size:47px!important; }.work-visual { min-height:490px!important; }.work-caption h3 { font-size:27px; }.work-caption p { font-size:16px; }.gallery-outro h3 { font-size:53px; }.agent-label { font-size:10px; padding:60px 25px 0; }.agent-burst { font-size:13vw; padding:70px 4vw; }.agent-flight { grid-template-columns:1fr; padding-bottom:155px; }.flight-card { min-height:220px; }.flight-card strong { font-size:39px; }.agent-bottom p { max-width:180px; font-size:13px; }.agent-bottom .line-link { max-width:145px; font-size:12px; gap:10px; }.mission-stories .archive-index button>span:nth-child(2) { font-size:16px; }.mission-stories .archive-index button { padding-left:5px!important; padding-right:5px!important; }.story-heading>h2 { font-size:43px; }.mission-story { padding-left:0; }.story-cross { display:none; }.story-objective { font-size:37px; min-height:0; }.story-bottom { display:block; margin-top:35px; }.story-bottom .line-link { max-width:none; margin-top:25px; }.editorial-control .control-intro h2 { font-size:48px; }.editorial-control .control-intro>p:last-child { font-size:16px; }.control-caption { font-size:9px; gap:20px; }.method-wall { gap:12px; }.method-tile { min-height:210px; padding:20px; }.method-tile>span { font-size:10px; }.method-tile strong { font-size:26px; margin-top:30px; }.method-tile p { font-size:13px; }.method-center { margin:65px auto; }.method-center h2 { font-size:76px; }.method-center>p:not(.section-label) { font-size:17px; }.method-center .section-label { font-size:10px; }.method-foot { display:block; line-height:1.7; }.method-foot span { display:block; }.footer-top { display:block; }.footer-top h2 { font-size:54px; }.round-cta { width:155px; margin:45px 0 0 auto; gap:15px; }.round-cta>span { font-size:12px; }.footer-links { display:block; margin:55px 0 70px; }.footer-links nav { margin-top:35px; }.footer-sculpture { inset:15% -25% 0 auto; width:140%; }.footer-baseline { font-size:9px; gap:15px; }.immersive-footer .footer-wordmark { font-size:20vw; }.editorial-detail { padding:55px 25px 30px; }.editorial-detail .mission-sheet h3 { font-size:40px; }.editorial-detail>h2 { font-size:45px; }.method-detail-list { margin-top:30px; }.method-detail-list li { gap:16px; }.method-detail-list h3 { font-size:28px; } }
@media(prefers-reduced-motion:reduce) { .manifesto-word { color:#f0f0ee; }.manifesto-sculpture img,.agent-core,.footer-sculpture,.method-tile,.control-window,.mission-story { transform:none!important; }.light-bands,.agent-stripes { display:none; }.round-cta,.line-link,.reveal-char { animation:none!important; transition:none!important; }.agent-flight { opacity:1!important; }.principle-card,.burst-char { transform:none!important; opacity:1!important; }.gallery-stage,.principles-stage,.control-stage,.method-stage { height:auto!important; position:relative!important; }.principle-content,.gallery-layer,.agent-stage,.method-center,.control-intro,.control-window { position:relative!important; inset:auto!important; transform:none!important; opacity:1!important; } }
.agent-pin { position:relative; min-height:100svh; overflow:hidden; isolation:isolate; }
.full-motion .agent-pin { height:100%; min-height:0; }
.light-bands { display:none; }.full-motion .light-bands,.mobile-motion .light-bands { display:grid; }
.mobile-motion .principles { height:290svh; }.mobile-motion .principles-stage { position:sticky; top:0; height:100svh; overflow:clip; }
.mobile-motion .vision-scene { position:absolute; inset:0; min-height:0; padding:10svh 6vw; }.mobile-motion .principle-content { position:absolute; inset:0; padding:5svh 6vw; background:transparent; }
.mobile-motion .principle-content>h2 { font-size:42px; }.mobile-motion .principle-content>.section-label { font-size:10px; }
.mobile-motion .principle-grid { display:flex; width:max-content; gap:20px; margin:4svh 0 0; }.mobile-motion .principle-card { flex:none; width:88vw; height:51svh; min-height:330px; }.mobile-motion .principle-card h3 { font-size:30px; }.mobile-motion .type-principle .principle-index { font-size:100px; }.mobile-motion .image-principle .principle-index { font-size:95px; }
.mobile-motion .tools-line { margin:4svh 0 0; }.mobile-motion .tools-line>p { font-size:9px; }.mobile-motion .tools-line>div { gap:12px 20px; font-size:19px; margin-top:15px; }
.mobile-motion .agent-stage { height:370svh; overflow:visible; }.mobile-motion .agent-pin { position:sticky; top:0; height:100svh; min-height:0; overflow:clip; }
.mobile-motion .agent-burst { position:absolute; top:50%; left:0; width:100%; padding:0 4vw; transform:translateY(-50%); font-size:13vw; z-index:3; }.mobile-motion .agent-core { height:100%; object-fit:cover; }
.mobile-motion .agent-flight { position:absolute; inset:0; display:block; padding:0; pointer-events:none; }.mobile-motion .flight-card { position:absolute; left:0; top:0; width:86vw; height:30svh; min-height:0; padding:25px; }.mobile-motion .flight-card strong { font-size:37px; margin:25px 0 15px; }.mobile-motion .agent-bottom { bottom:6svh; }
.mobile-motion .control-journey { height:220svh; }.mobile-motion .control-stage { position:sticky; top:0; height:100svh; min-height:0; padding:0; }
.mobile-motion .control-intro { position:absolute; left:6vw; right:6vw; top:17svh; margin:0; }.mobile-motion .control-window { position:absolute; left:5vw; right:5vw; top:50%; max-height:82svh; overflow:auto; border-radius:5px; scrollbar-width:thin; }
.mobile-motion .control-caption { position:absolute; bottom:3svh; left:5vw; right:5vw; margin:0; }
.mobile-motion .method-journey { height:240svh; }.mobile-motion .method-stage { position:sticky; top:0; height:100svh; min-height:0; padding:0; }.mobile-motion .method-wall { position:absolute; inset:0; display:block; pointer-events:none; }.mobile-motion .method-tile { position:absolute; width:55vw; height:28svh; min-height:0; padding:20px; }
.mobile-motion .method-tile:nth-child(1) { left:-30%; top:0; }.mobile-motion .method-tile:nth-child(2) { left:25%; top:-14%; }.mobile-motion .method-tile:nth-child(3) { left:80%; top:0; }.mobile-motion .method-tile:nth-child(4) { left:-30%; bottom:0; }.mobile-motion .method-tile:nth-child(5) { left:25%; bottom:-14%; }.mobile-motion .method-tile:nth-child(6) { left:80%; bottom:0; }
.mobile-motion .method-center { position:absolute; width:88%; left:6%; top:50%; margin:0; }.mobile-motion .method-center h2 { font-size:68px; }.mobile-motion .method-center .section-label { font-size:10px; margin-bottom:25px; }.mobile-motion .method-center>p:not(.section-label) { font-size:16px; max-width:360px; margin-top:25px; }.mobile-motion .method-center .line-link { margin-top:22px; font-size:13px; }.mobile-motion .method-foot { position:absolute; bottom:4svh; left:6vw; right:6vw; font-size:9px; }
.mobile-motion [data-reveal]:not(.is-revealed) .reveal-char { opacity:0; transform:translateY(16px); }.mobile-motion [data-reveal].is-revealed .reveal-char { animation:reveal-letter .6s both; animation-delay:calc(var(--letter) * 7ms); }
@media(max-height:720px) and (min-width:901px) { .full-motion .principle-content>h2 { font-size:42px; }.full-motion .principle-content>.section-label { margin-bottom:12px; }.full-motion .principle-card { min-height:0; height:47svh; }.full-motion .principle-card h3 { font-size:24px; }.full-motion .principle-card p { font-size:14px; }.full-motion .principle-index { font-size:75px; margin-bottom:18px; }.full-motion .image-principle .principle-index { margin-bottom:auto; }.full-motion .principle-foot { font-size:10px; margin-top:15px; }.full-motion .tools-line { margin-top:3svh; }.full-motion .work-visual { min-height:340px!important; }.full-motion .work-caption h3 { font-size:24px; }.full-motion .work-caption p { font-size:14px; }.full-motion .work-caption .line-link { margin-top:4px; }.full-motion .method-center h2 { font-size:83px; }.full-motion .method-center>p:not(.section-label) { font-size:16px; } }

/* Sticky scenes must not inherit a scrolling ancestor from the previous layout. */
.gallery-stage,.method-journey{overflow:visible}
.full-motion .gallery-stage{overflow:clip}
