/* Source: styles.css */
@font-face{font-family:"Anton Local";src:url("assets/fonts/anton-latin-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono Local";src:url("assets/fonts/ibm-plex-mono-latin-400.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono Local";src:url("assets/fonts/ibm-plex-mono-latin-500.woff2") format("woff2");font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:"IBM Plex Mono Local";src:url("assets/fonts/ibm-plex-mono-latin-700.woff2") format("woff2");font-style:normal;font-weight:700 900;font-display:swap}
:root{
  --paper:#b8b8b1;
  --paper-soft:#cecec7;
  --ink:#101010;
  --smoke:#202020;
  --white:#f3f3ed;
  --accent:#eaff00;
  --rail:min(10.333vw,143px);
  --pad:clamp(22px,3.2vw,58px);
  --display:"Anton Local",Impact,"Arial Narrow","Arial Black",sans-serif;
  --mono:"IBM Plex Mono Local","Courier New",ui-monospace,monospace;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--mono);overflow-x:hidden}
body.reader-open{overflow:hidden}
body::selection{color:var(--ink);background:var(--accent)}
img,video{display:block;max-width:100%}
a,button{font:inherit;color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.skip-link{position:fixed;left:12px;top:12px;z-index:1000;background:var(--accent);padding:10px 14px;transform:translateY(-150%);transition:transform .2s}.skip-link:focus{transform:none}
.grain{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.54'/%3E%3C/svg%3E");mix-blend-mode:multiply}

.rail{position:fixed;inset:0 auto 0 0;width:var(--rail);z-index:50;display:grid;grid-template-rows:auto 1fr auto;padding:clamp(9px,.9vw,14px);background:rgba(184,184,177,.94);border-right:1px solid rgba(16,16,16,.42);backdrop-filter:blur(13px)}
.rail::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(16,16,16,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(16,16,16,.07) 1px,transparent 1px);background-size:42px 42px;pointer-events:none;z-index:-1}
.rail-head{display:flex;justify-content:center;align-items:flex-start}
.monogram{font:900 clamp(2.5rem,3.5vw,3.25rem)/.76 var(--display);letter-spacing:-.08em;text-decoration:none}.monogram span{font:700 .5rem/1 var(--mono);vertical-align:top;margin-left:2px;letter-spacing:0}
.rail-caption{display:none}
.timeline{align-self:center;justify-self:stretch;display:flex;flex-direction:column;align-items:center;gap:clamp(6px,1.15vh,12px);position:relative;padding-block:10px}
.timeline::before{content:"";position:absolute;top:4%;bottom:4%;left:50%;width:1px;background:rgba(16,16,16,.35)}
.timeline-item{--dot-size:5px;position:relative;width:min(104px,calc(var(--rail) - 14px));height:23px;border:0;background:transparent;padding:0;display:grid;place-items:center;cursor:pointer;z-index:1;transition:height .5s cubic-bezier(.2,.8,.2,1)}
.dot{display:block;width:var(--dot-size);height:var(--dot-size);border-radius:50%;background:var(--ink);border:1px solid var(--paper);box-shadow:0 0 0 1px var(--ink);transition:width .45s,height .45s,background .35s,border-radius .4s}
.year{position:absolute;inset:50% auto auto 50%;display:flex;gap:0;align-items:center;opacity:0;pointer-events:none;transform:translate(-50%,-50%) rotate(-90deg) scale(.55);transition:opacity .35s,transform .5s cubic-bezier(.2,.85,.2,1);font:900 clamp(4rem,7vw,7.2rem)/.75 var(--display);letter-spacing:-.06em;white-space:nowrap}
.year b{color:transparent;-webkit-text-stroke:2px var(--white);paint-order:stroke fill}.year i{font-style:normal;color:rgba(18,18,18,.83)}
.timeline-item.active{height:clamp(170px,22vh,220px)}.timeline-item.active .dot{width:min(112px,calc(var(--rail) - 10px));height:82px;border-radius:2px;background:transparent;border-color:transparent;box-shadow:none}.timeline-item.active .year{opacity:1;transform:translate(-50%,-50%) rotate(-90deg) scale(1)}
.rail-foot{display:grid;gap:10px}.rail-links,.coordinates{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:clamp(.48rem,.55vw,.58rem);letter-spacing:.05em;text-align:center}.rail-links a{text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}.coordinates{opacity:.74}

.portfolio{margin-left:var(--rail);width:calc(100% - var(--rail));position:relative}
.chapter{position:relative}
.scene{--vis:1;--vis-late:1;position:relative;min-height:100svh;padding:var(--pad);overflow:hidden;display:grid;align-content:center;isolation:isolate;border-bottom:1px solid rgba(16,16,16,.38);background-color:var(--paper)}
.scene::before{content:"";position:absolute;inset:0;z-index:-3;background-image:linear-gradient(rgba(16,16,16,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(16,16,16,.11) 1px,transparent 1px);background-size:clamp(44px,6.2vw,94px) clamp(44px,6.2vw,94px)}
.tone-dark{color:var(--white);background-color:var(--ink)}
.tone-dark::before{background-image:linear-gradient(rgba(244,244,238,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(244,244,238,.08) 1px,transparent 1px)}
.tone-smoke{color:var(--white);background:var(--smoke)}
.tone-light{background:var(--paper-soft)}
.scene-index{position:absolute;top:var(--pad);right:var(--pad);z-index:15;font-size:.7rem;letter-spacing:.1em}
.eyebrow,.kicker,.micro-label{font-size:clamp(.68rem,.82vw,.82rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:0}
.scroll-layer{will-change:transform;transform:translate3d(0,var(--shift,0px),0)}
.js .reveal{opacity:var(--vis,0);transform:translate3d(0,calc((1 - var(--vis,0))*54px),0);transition:opacity .14s linear}
.js .reveal--late{opacity:var(--vis-late,0);transform:translate3d(0,calc((1 - var(--vis-late,0))*76px),0)}

/* Tactimon */
.scene--hero{align-content:start;padding-top:clamp(86px,11vh,130px)}
.hero-copy{position:relative;z-index:5}.hero-copy h1{font:900 clamp(6.7rem,16.4vw,16.2rem)/.66 var(--display);letter-spacing:-.07em;margin:10px 0 0;text-transform:uppercase;max-width:92%}.hero-meta{margin-top:25px;display:flex;gap:clamp(18px,4vw,55px);font-size:.76rem;font-weight:700;letter-spacing:.08em}
.media-frame{margin:0;background:var(--smoke);border:1px solid var(--ink);box-shadow:-17px 17px 0 var(--accent);overflow:hidden;clip-path:polygon(7% 0,100% 0,100% 87%,93% 100%,0 100%,0 13%)}
.media-frame--hero{position:absolute;right:4.5%;bottom:7%;width:min(58vw,82%);height:47%;z-index:3}
.media-frame img{width:100%;height:calc(100% - 30px);object-fit:cover;filter:grayscale(1) contrast(1.12);transition:filter .45s,scale .8s}.media-frame:hover img{filter:grayscale(0) contrast(1.03);scale:1.018}.media-frame figcaption{height:30px;display:flex;justify-content:space-between;align-items:center;padding:0 13px;color:var(--white);font-size:.62rem;letter-spacing:.09em}
.radar{position:absolute;width:clamp(270px,40vw,600px);aspect-ratio:1;border:1px solid rgba(16,16,16,.42);border-radius:50%;right:-15%;top:-12%;z-index:-1;rotate:calc(var(--pointer-x, .5)*15deg)}.radar::before,.radar::after{content:"";position:absolute;inset:15%;border:1px solid rgba(16,16,16,.32);border-radius:50%}.radar::after{inset:33%}.radar span{position:absolute;width:11px;height:11px;background:var(--accent);border:1px solid var(--ink);border-radius:50%}.radar span:nth-child(1){left:12%;top:27%}.radar span:nth-child(2){right:29%;bottom:7%}.radar span:nth-child(3){right:9%;top:50%;width:6px;height:6px;background:var(--ink)}
.scroll-cue{position:absolute;left:var(--pad);bottom:26px;font-size:.65rem;letter-spacing:.12em}.scroll-cue span{font-size:1.35rem;margin-left:12px}

.scene--case{grid-template-columns:minmax(180px,.85fr) minmax(320px,1.15fr);gap:clamp(28px,6vw,100px);align-items:center}
.case-number{position:absolute;left:1%;bottom:-10%;z-index:-1;font:900 clamp(17rem,38vw,38rem)/.8 var(--display);letter-spacing:-.1em;color:rgba(16,16,16,.07)}
.case-copy{grid-column:1;position:relative;z-index:2}.case-copy h2{font:900 clamp(3rem,6vw,6.2rem)/.82 var(--display);letter-spacing:-.035em;margin:20px 0 26px}.case-copy>p:last-of-type{font:400 clamp(1rem,1.3vw,1.2rem)/1.55 var(--mono);max-width:44ch}.tags{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:28px 0 0;padding:0}.tags li{border:1px solid currentColor;padding:7px 9px;font-size:.66rem;letter-spacing:.07em}.tags li:first-child{background:var(--accent);color:var(--ink);border-color:var(--ink)}
.case-media{grid-column:2;position:relative;height:min(70vh,690px);min-height:480px}.case-media img{position:absolute;object-fit:cover;border:1px solid var(--ink);filter:grayscale(1);transition:filter .4s}.case-media:hover img{filter:grayscale(0)}.miniature-shot{inset:10% 5% auto 5%;width:90%;height:46%;box-shadow:14px -14px 0 var(--accent)}.card-shot{right:0;bottom:0;width:43%;height:58%;object-position:top;background:var(--smoke);rotate:4deg}.measure{position:absolute;font-size:.63rem;letter-spacing:.1em}.measure::before,.measure::after{content:"";position:absolute;background:var(--ink)}.measure--v{left:-18px;top:12%;bottom:2%;width:1px;border-left:1px solid var(--ink)}.measure--v span{position:absolute;left:-13px;top:50%;writing-mode:vertical-rl;transform:translateY(-50%)}.measure--v::before,.measure--v::after{width:10px;height:1px;left:-5px}.measure--v::after{bottom:0}.measure--h{left:8%;right:7%;bottom:-20px;border-top:1px solid var(--ink);text-align:center;padding-top:7px}.measure--h::before,.measure--h::after{height:10px;width:1px;top:-5px}.measure--h::after{right:0}
.scene--manifesto{align-content:center}.manifesto-image{position:absolute;inset:-8%;width:116%;height:116%;object-fit:cover;filter:grayscale(1) contrast(1.35);z-index:-3}.manifesto-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.96) 10%,rgba(10,10,10,.7) 55%,rgba(10,10,10,.15));z-index:-2}.scene--manifesto>.eyebrow{position:absolute;left:var(--pad);top:var(--pad);z-index:2}.outline-title{font:900 clamp(5rem,12vw,12rem)/.72 var(--display);letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px var(--white);margin:0}.outline-title::first-line{color:var(--accent);-webkit-text-stroke:0}.manifesto-note{position:absolute;right:var(--pad);bottom:var(--pad);display:grid;grid-template-columns:repeat(2,auto);gap:10px 30px;font-size:.68rem;letter-spacing:.1em}

.box-front-shot{object-fit:contain!important;object-position:center;background:var(--smoke);rotate:0deg}
.card-shot.box-front-shot{height:auto;aspect-ratio:921/1130;object-fit:cover!important}

/* MicroWarfare / Green Squat */
.scene--duo{grid-template-columns:1.05fr .8fr;grid-template-rows:auto 1fr;gap:22px;align-content:center}.duo-title{grid-column:1/-1;display:flex;align-items:flex-end;gap:clamp(10px,2vw,28px);position:relative;z-index:3}.duo-title .eyebrow{position:absolute;top:-20px}.duo-title h2{font:900 clamp(4.6rem,9.4vw,9.7rem)/.72 var(--display);letter-spacing:-.05em;margin:0}.ghost-title{color:transparent;-webkit-text-stroke:2px var(--ink);opacity:.45}.plus{font:400 clamp(2.6rem,5vw,5rem)/1 var(--mono);align-self:center}.duo-figure{margin:0;position:relative;border:1px solid var(--ink);overflow:hidden;background:var(--smoke);box-shadow:12px 12px 0 var(--accent)}.duo-figure img{width:100%;height:calc(100% - 30px);object-fit:cover;filter:grayscale(1);transition:filter .4s,scale .7s}.duo-figure:hover img{filter:grayscale(0);scale:1.02}.duo-figure figcaption{height:30px;background:var(--smoke);color:var(--white);display:flex;align-items:center;padding-inline:10px;font-size:.63rem;letter-spacing:.1em}.duo-figure--wide{height:37vh;min-height:270px}.duo-figure--portrait{height:51vh;min-height:370px;grid-row:2;grid-column:2}.duo-figure--portrait img{object-position:50% 14%}
.scene--split-copy{grid-template-columns:1fr 1fr;padding:0}.split-half{min-height:100svh;padding:clamp(40px,6vw,90px);display:flex;flex-direction:column;justify-content:center;position:relative}.split-half h3{font:900 clamp(3.4rem,7vw,7rem)/.8 var(--display);letter-spacing:-.04em;margin:28px 0}.split-half p{font-size:clamp(1rem,1.25vw,1.17rem);line-height:1.6;max-width:36ch}.split-half--ink{background:var(--ink);color:var(--white)}.split-half--paper{background:var(--paper-soft);color:var(--ink)}.split-half--paper::after{content:"02";position:absolute;right:2%;bottom:-4%;font:900 18rem/1 var(--display);color:rgba(16,16,16,.06)}.scanline{position:absolute;left:0;right:0;top:calc(var(--scan, .5)*100%);height:2px;background:var(--accent);box-shadow:0 0 20px var(--accent);z-index:5}

/* Chevelus */
.scene--video-poster{align-content:end}.poster-image{position:absolute;inset:-7%;width:114%;height:114%;object-fit:cover;z-index:-4;filter:grayscale(.2) contrast(1.15)}.poster-filter{position:absolute;inset:0;z-index:-3;background:linear-gradient(0deg,rgba(7,7,9,.94),rgba(7,7,9,.08) 68%),repeating-linear-gradient(0deg,transparent 0 3px,rgba(234,255,0,.04) 4px)}.poster-copy h2{font:900 clamp(4.4rem,10.2vw,10.5rem)/.77 var(--display);letter-spacing:-.045em;margin:14px 0 0;max-width:95%}.play-mark{position:absolute;right:8%;bottom:14%;width:clamp(72px,8vw,115px);aspect-ratio:1;border:2px solid var(--white);border-radius:50%;display:grid;place-items:center;padding-left:7px;font-size:clamp(1.4rem,2.2vw,2.4rem);color:var(--accent)}.poster-timecode{position:absolute;right:var(--pad);top:calc(var(--pad) + 34px);font-size:.69rem;letter-spacing:.1em}.poster-timecode::first-letter{color:#ff3b30}
.scene--process{grid-template-columns:.8fr 1.2fr;grid-template-rows:auto auto;gap:clamp(30px,6vw,90px);align-content:center}.process-head h2{font:900 clamp(4rem,8vw,8rem)/.78 var(--display);letter-spacing:-.05em;margin:18px 0}.process-head>span{font-size:.72rem;letter-spacing:.1em}.process-intro{font:400 clamp(1rem,1.45vw,1.35rem)/1.55 var(--mono);max-width:39ch}.process-track{grid-column:1/-1;list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.process-track li{position:relative;padding:24px 14px 12px;border-right:1px solid var(--ink);min-height:120px}.process-track li::before{content:"";position:absolute;top:-6px;left:14px;width:11px;height:11px;border-radius:50%;background:var(--accent);border:1px solid var(--ink)}.process-track b{font:900 2.5rem/1 var(--display);display:block;margin-bottom:22px}.process-track span{font-size:.72rem;line-height:1.4}

/* SEO chapters */
.scene--seo{align-content:center}.seo-code{position:absolute;top:var(--pad);left:var(--pad);font-size:.65rem;line-height:1.55;letter-spacing:.08em;color:rgba(244,244,238,.66)}.seo-stack{position:relative;z-index:3;display:flex;flex-direction:column;align-items:flex-start}.seo-stack span{font:900 clamp(5rem,13vw,13rem)/.67 var(--display);letter-spacing:-.055em}.seo-stack span:nth-child(2){color:transparent;-webkit-text-stroke:2px var(--white)}.seo-stack .accent-word{color:var(--accent);margin-left:14%}.search-orbit{position:absolute;right:-9%;top:13%;width:min(43vw,600px);aspect-ratio:1;border:1px solid rgba(244,244,238,.3);border-radius:50%}.search-orbit::before,.search-orbit::after{content:"";position:absolute;inset:14%;border:1px solid rgba(244,244,238,.23);border-radius:50%}.search-orbit::after{inset:31%}.search-orbit div{position:absolute;background:var(--accent);border-radius:50%}.search-orbit div:nth-child(1){width:13px;height:13px;left:9%;top:42%}.search-orbit div:nth-child(2){width:8px;height:8px;right:20%;top:12%}.search-orbit div:nth-child(3){width:5px;height:5px;right:2%;bottom:33%}.seo-caption{position:absolute;right:var(--pad);bottom:var(--pad);max-width:33ch;text-align:right;font-size:.7rem;line-height:1.6;letter-spacing:.08em}
.scene--editorial{align-content:center}.editorial-title h2{font:900 clamp(6rem,15vw,14rem)/.7 var(--display);letter-spacing:-.06em;margin:18px 0 30px}.editorial-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,100px);align-items:start}.editorial-copy{border-top:5px solid var(--ink);padding-top:16px}.editorial-copy span{font-size:.7rem;font-weight:700;letter-spacing:.1em}.editorial-copy p{font:400 clamp(1rem,1.25vw,1.16rem)/1.58 var(--mono)}.keyword-cloud{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.keyword-cloud span{border:1px solid var(--ink);padding:10px 12px;font-size:clamp(.66rem,.9vw,.85rem);font-weight:700}.keyword-cloud span:nth-child(3n+1){background:var(--ink);color:var(--white)}.keyword-cloud span:nth-child(5){background:var(--accent);color:var(--ink)}
.scene--rank{align-content:start;padding-top:11vh}.rank-copy h2{font:900 clamp(6.3rem,15.7vw,15.3rem)/.66 var(--display);letter-spacing:-.065em;margin:12px 0 0}.rank-one{position:absolute;right:4%;bottom:5%;font:900 clamp(12rem,31vw,31rem)/.7 var(--display);letter-spacing:-.11em;color:transparent;-webkit-text-stroke:3px var(--ink);z-index:-1}.rank-one span{color:var(--accent);-webkit-text-stroke:1px var(--ink);font-size:.45em;vertical-align:top}.rank-bars{position:absolute;left:var(--pad);right:var(--pad);bottom:14%;height:18%;display:flex;align-items:flex-end;gap:1.6%;opacity:.45}.rank-bars i{display:block;flex:1;border:1px solid var(--ink);background:repeating-linear-gradient(0deg,transparent 0 6px,rgba(16,16,16,.35) 7px)}.rank-bars i:nth-child(1){height:19%}.rank-bars i:nth-child(2){height:26%}.rank-bars i:nth-child(3){height:39%}.rank-bars i:nth-child(4){height:54%}.rank-bars i:nth-child(5){height:63%}.rank-bars i:nth-child(6){height:77%}.rank-bars i:nth-child(7){height:89%}.rank-bars i:nth-child(8){height:100%;background:var(--accent)}.rank-caption{position:absolute;left:var(--pad);bottom:7%;font-size:.66rem;letter-spacing:.1em}.case-number--white{color:rgba(244,244,238,.06)}.case-copy--white .tags li:first-child{border-color:var(--accent)}

/* ExpressVPN performance */
.scene--express-metrics{align-content:center;background:var(--ink);color:var(--white);isolation:isolate}.scene--express-metrics::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(234,255,0,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(234,255,0,.065) 1px,transparent 1px);background-size:5vw 5vw}.scene--express-metrics::after{content:"";position:absolute;width:45vw;aspect-ratio:1;border:1px solid rgba(234,255,0,.2);border-radius:50%;right:-24vw;top:-23vw;box-shadow:0 0 0 6vw rgba(234,255,0,.025),0 0 0 12vw rgba(234,255,0,.018);z-index:-1}.metrics-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:clamp(24px,4vh,48px)}.metrics-head h2{font:900 clamp(4rem,8vw,8rem)/.82 var(--display);letter-spacing:-.045em;margin:12px 0 0}.metrics-head .eyebrow{align-self:flex-start;color:var(--accent)}.metrics-dashboard{display:grid;grid-template-columns:1.35fr .82fr .82fr;gap:12px}.metric-block{position:relative;min-height:clamp(280px,37vh,390px);padding:clamp(18px,2.2vw,30px);border:1px solid rgba(244,244,238,.52);background:rgba(16,16,16,.82);overflow:hidden}.metric-block::before{content:"";position:absolute;inset:9px;border:1px solid rgba(244,244,238,.1);pointer-events:none}.metric-label{display:block;font-size:.64rem;font-weight:700;letter-spacing:.13em;color:rgba(244,244,238,.66)}.metric-block strong{display:block;font:900 clamp(5rem,9vw,9rem)/.78 var(--display);letter-spacing:-.055em;margin-top:clamp(25px,5vh,50px);font-variant-numeric:tabular-nums}.metric-block strong sup{font-size:.34em;color:var(--accent);vertical-align:top;margin-left:3px}.metric-block>p{position:absolute;left:clamp(18px,2.2vw,30px);bottom:16px;margin:0;font-size:.66rem;letter-spacing:.11em;z-index:3}.metric-graph{position:absolute;left:0;right:0;bottom:39px;width:100%;height:45%;overflow:visible}.metric-grid{fill:none;stroke:rgba(244,244,238,.12);stroke-width:1}.metric-trace{fill:none;stroke:var(--accent);stroke-width:5;vector-effect:non-scaling-stroke;stroke-linejoin:bevel;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--vis-late,0))}.metric-target{fill:var(--accent);stroke:var(--ink);stroke-width:3;transform-origin:640px 15px;transform:scale(calc(.45 + var(--vis-late,0)*.55))}.metric-block--guestposts strong{color:transparent;-webkit-text-stroke:2px var(--white)}.metric-bars{position:absolute;left:24px;right:24px;bottom:47px;height:39%;display:flex;align-items:flex-end;gap:5px}.metric-bars i{flex:1;height:calc(var(--h)*1%);background:repeating-linear-gradient(0deg,var(--accent) 0 2px,transparent 2px 7px);border:1px solid rgba(234,255,0,.42);transform-origin:bottom;transform:scaleY(clamp(0,calc(var(--vis-late,0)*1.5 - var(--i)*.045),1))}.metric-block--ranking{display:flex;flex-direction:column}.rank-seal{position:relative;width:min(15vw,190px);aspect-ratio:1;margin:auto;border:2px solid var(--accent);border-radius:50%;display:grid;place-items:center;transform:rotate(calc((1 - var(--scan,0))*-55deg)) scale(calc(.72 + var(--vis-late,0)*.28))}.rank-seal::before,.rank-seal::after{content:"";position:absolute;border-radius:50%;border:1px dashed rgba(244,244,238,.55)}.rank-seal::before{inset:9px}.rank-seal::after{inset:22px}.rank-seal span{font:900 clamp(3.5rem,6vw,6rem)/1 var(--display);letter-spacing:-.06em;z-index:2}.rank-seal i{position:absolute;width:118%;height:2px;background:var(--accent);rotate:-22deg}.rank-seal b{position:absolute;bottom:22%;font-size:.62rem;letter-spacing:.25em;z-index:3}.metrics-foot{margin:18px 0 0;text-align:right;font-size:.62rem;letter-spacing:.13em;color:rgba(244,244,238,.58)}

/* Signature */
.scene--signature{align-content:end}.signature-video{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;z-index:-4;filter:grayscale(1) contrast(1.25);opacity:.66}.video-grid{position:absolute;inset:0;z-index:-2;background:linear-gradient(0deg,rgba(8,8,8,.94),transparent 62%),linear-gradient(rgba(234,255,0,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(234,255,0,.12) 1px,transparent 1px);background-size:auto,7vw 7vw,7vw 7vw}.signature-copy h2{font:900 clamp(5.7rem,13vw,13rem)/.7 var(--display);letter-spacing:-.055em;margin:10px 0 24px}.signature-copy>div{display:flex;gap:8px;flex-wrap:wrap}.signature-copy>div span{border:1px solid var(--white);padding:7px 10px;font-size:.67rem}.signature-copy>div span:first-child{color:var(--ink);background:var(--accent);border-color:var(--accent)}.video-toggle{position:absolute;right:var(--pad);bottom:var(--pad);border:1px solid var(--white);background:rgba(16,16,16,.7);color:var(--white);padding:10px 13px;font-size:.66rem;cursor:pointer}.advergame{margin:0;border:1px solid var(--ink);box-shadow:14px 14px 0 var(--accent)}.advergame img{width:100%;filter:grayscale(1);transition:filter .4s}.advergame:hover img{filter:none}.advergame figcaption{padding:9px 11px;font-size:.65rem;letter-spacing:.08em;background:var(--ink);color:var(--white)}

/* Campaign */
.scene--campaign{align-content:center}.campaign-copy{position:relative;z-index:4;width:54%}.campaign-copy h2{font:900 clamp(5rem,11vw,11rem)/.72 var(--display);letter-spacing:-.045em;margin:18px 0}.campaign-copy>span{font-size:.7rem;letter-spacing:.1em}.campaign-stack{position:absolute;right:2%;top:10%;bottom:7%;width:57%}.campaign-stack figure{position:absolute;margin:0;width:75%;height:62%;border:1px solid var(--ink);overflow:hidden;box-shadow:12px 12px 0 var(--accent);background:var(--paper)}.campaign-stack figure:first-child{right:0;top:0;rotate:3deg}.campaign-stack figure:last-child{left:0;bottom:0;rotate:-4deg}.campaign-stack img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.08);transition:filter .45s}.campaign-stack:hover img{filter:none}.color-register{grid-column:2;display:grid;grid-template-columns:repeat(4,1fr);width:min(100%,580px);height:min(52vh,510px);border:1px solid var(--ink);position:relative}.color-register span{border-right:1px solid var(--ink);filter:grayscale(1);transition:filter .4s}.color-register span:nth-child(1){background:#ff77b4}.color-register span:nth-child(2){background:#25a7ba}.color-register span:nth-child(3){background:#ff8329}.color-register span:nth-child(4){background:#6ead4f}.color-register:hover span{filter:none}.color-register b{position:absolute;left:15px;bottom:15px;background:var(--ink);color:var(--white);padding:8px 10px;font-size:.66rem;letter-spacing:.08em}

/* Koloro */
.scene--koloro{align-content:start;padding-top:9vh}.koloro-copy{position:relative;z-index:4}.koloro-copy h2{font:900 clamp(7rem,18vw,18rem)/.62 var(--display);letter-spacing:-.075em;margin:14px 0;color:var(--white)}.koloro-copy h2::first-line{color:var(--accent)}.koloro-frame{position:absolute;right:4%;bottom:6%;width:72%;height:53%;margin:0;border:1px solid var(--white);box-shadow:-14px 14px 0 var(--accent);overflow:hidden}.koloro-frame img{width:100%;height:calc(100% - 30px);object-fit:cover;filter:grayscale(1) contrast(1.2);transition:filter .45s}.koloro-frame:hover img{filter:none}.koloro-frame figcaption{height:30px;padding:8px 10px;font-size:.64rem;letter-spacing:.1em}.pixel-map{position:absolute;right:3%;top:6%;width:120px;height:120px;opacity:.45;background:repeating-conic-gradient(var(--accent) 0 25%,transparent 0 50%) 0/16px 16px}
.scene--final-project{align-content:center}.final-image{position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;filter:grayscale(1) contrast(1.4);z-index:-3}.final-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.95) 10%,rgba(8,8,8,.78) 48%,rgba(8,8,8,.13));z-index:-2}.final-project-copy{width:min(580px,78%)}.final-project-copy h2{font:900 clamp(5rem,10vw,10rem)/.73 var(--display);letter-spacing:-.045em;margin:18px 0}.final-project-copy p{font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.5}

/* Contact */
.contact{min-height:100svh;padding:var(--pad);background:var(--ink);color:var(--white);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.contact::before{content:"";position:absolute;width:min(50vw,720px);aspect-ratio:1;border:1px solid rgba(244,244,238,.3);border-radius:50%;right:-15%;top:10%;box-shadow:inset 0 0 0 7vw var(--ink),inset 0 0 0 calc(7vw + 1px) rgba(244,244,238,.2),inset 0 0 0 14vw var(--ink),inset 0 0 0 calc(14vw + 1px) rgba(244,244,238,.15)}.contact-top,.contact-bottom{position:absolute;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;gap:20px;font-size:.68rem;letter-spacing:.1em}.contact-top{top:var(--pad)}.contact-bottom{bottom:var(--pad)}.contact h2{position:relative;font:900 clamp(5rem,12.5vw,12rem)/.72 var(--display);letter-spacing:-.05em;margin:22px 0 40px;max-width:90%}.contact h2 span{color:var(--accent)}.contact-links{display:flex;gap:30px;flex-wrap:wrap;position:relative}.contact-links a{color:var(--white);font-size:clamp(.76rem,1vw,1rem);text-decoration:none;border-bottom:1px solid var(--white);padding-bottom:6px}.contact-links a:first-child{color:var(--accent);border-color:var(--accent)}
.scene-progress{position:fixed;right:0;top:0;bottom:0;width:4px;background:rgba(16,16,16,.12);z-index:80;pointer-events:none}.scene-progress span{display:block;width:100%;height:var(--page-progress,0%);background:var(--accent);border-left:1px solid var(--ink)}

/* Tactimon card deck */
.scene--cards{grid-template-columns:minmax(250px,.72fr) minmax(420px,1.28fr);gap:clamp(20px,4vw,72px);align-items:center;min-height:110svh}
.cards-copy{position:relative;z-index:30}.cards-copy h2{font:900 clamp(3.5rem,6.4vw,6.6rem)/.88 var(--display);letter-spacing:-.035em;margin:18px 0 24px}.cards-copy>p:last-child{font-size:clamp(1rem,1.15vw,1.12rem);line-height:1.55;max-width:35ch}
.card-table{position:relative;height:min(74vh,720px);perspective:1400px;transform-style:preserve-3d}
.card-table::before{content:"";position:absolute;left:3%;right:3%;bottom:2%;height:23%;border:1px solid rgba(244,244,238,.27);border-radius:50%;transform:rotateX(70deg);background:radial-gradient(ellipse,rgba(234,255,0,.22),transparent 68%);filter:blur(2px)}
.tactimon-card{position:absolute;left:50%;bottom:5%;width:clamp(150px,18vw,250px);aspect-ratio:5/7;padding:0;border:0;border-radius:clamp(9px,1.1vw,16px);background:#141414;cursor:pointer;overflow:hidden;box-shadow:-2px 4px 0 #050505,0 20px 32px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.18);z-index:var(--z);transform:translateX(calc(-50% + var(--x) + var(--focus-shift,0px))) translateY(var(--lift)) rotate(var(--rot));transform-origin:50% 112%;transition:transform .48s cubic-bezier(.2,.85,.2,1),box-shadow .35s,filter .35s;filter:saturate(.72) brightness(.8);will-change:transform}
.tactimon-card img{width:100%;height:100%;object-fit:cover;border-radius:inherit;pointer-events:none}.tactimon-card:hover,.tactimon-card:focus-visible{filter:saturate(1) brightness(1);box-shadow:0 28px 42px rgba(0,0,0,.62),0 0 0 2px var(--accent)}
.tactimon-card.is-selected{z-index:40;transform:translateX(-50%) translateY(-48px) rotate(0) scale(1.16);filter:saturate(1) brightness(1);box-shadow:0 42px 68px rgba(0,0,0,.72),0 0 0 3px var(--accent)}
.cards-hint{position:absolute;right:var(--pad);bottom:var(--pad);font-size:.67rem;letter-spacing:.09em;color:rgba(244,244,238,.7)}

/* Clickable PDF + page-turn reader */
.duo-figure--readable{overflow:visible}.pdf-launch{position:relative;width:100%;height:calc(100% - 30px);display:block;border:0;padding:0;background:transparent;cursor:pointer;overflow:hidden}.pdf-launch img{height:100%}.pdf-badge{position:absolute;right:-10px;bottom:22px;z-index:3;width:104px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--ink);border:1px solid var(--ink);font-size:.65rem;font-weight:700;line-height:1.35;letter-spacing:.06em;text-align:center;box-shadow:8px 8px 0 rgba(16,16,16,.85);transition:transform .3s}.pdf-launch:hover .pdf-badge,.pdf-launch:focus-visible .pdf-badge{transform:rotate(-8deg) scale(1.08)}
.pdf-reader{width:min(96vw,1280px);height:min(94svh,980px);padding:0;border:0;background:var(--ink);color:var(--white);overflow:hidden}
.reader-shell{height:100%;display:grid;grid-template-rows:auto 1fr auto;background-image:linear-gradient(rgba(244,244,238,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(244,244,238,.055) 1px,transparent 1px);background-size:46px 46px}
.reader-toolbar,.reader-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid rgba(244,244,238,.35);background:rgba(16,16,16,.88);position:relative;z-index:20}.reader-toolbar h2{font:900 clamp(1.7rem,3vw,3.4rem)/1 var(--display);letter-spacing:-.02em;margin:5px 0 0}.reader-kicker{font-size:.66rem;letter-spacing:.1em;color:var(--accent)}.reader-close,.reader-prev,.reader-next{border:1px solid currentColor;background:transparent;color:var(--white);padding:10px 13px;cursor:pointer;font-size:.7rem;letter-spacing:.08em}.reader-close:hover,.reader-prev:hover,.reader-next:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}.reader-stage{min-height:0;display:grid;place-items:center;perspective:1800px;padding:20px}.reader-book{position:relative;height:min(70svh,750px);aspect-ratio:523/773;transform-style:preserve-3d}.pdf-page{position:absolute;inset:0;z-index:var(--page-z);background:#fff;transform-origin:0 50%;transition:transform .72s cubic-bezier(.64,0,.22,1),filter .72s;backface-visibility:hidden;box-shadow:0 18px 45px rgba(0,0,0,.58),inset 10px 0 25px rgba(0,0,0,.08);overflow:hidden}.pdf-page::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.12),transparent 12%,transparent 88%,rgba(0,0,0,.08));pointer-events:none}.pdf-page img{width:100%;height:100%;object-fit:contain;background:#fff}.pdf-page.is-turned{transform:rotateY(-180deg);filter:brightness(.65)}.book-spine{position:absolute;left:-5px;top:0;bottom:0;width:10px;background:linear-gradient(90deg,#050505,#555,#050505);z-index:15;box-shadow:3px 0 12px rgba(0,0,0,.6)}
.reader-controls{border-top:1px solid rgba(244,244,238,.35);border-bottom:0}.reader-count{font:900 1.6rem/1 var(--display)}.reader-count span{font:400 .75rem/1 var(--mono);margin-left:5px;color:rgba(244,244,238,.64)}.reader-controls button:disabled{opacity:.3;cursor:not-allowed;background:transparent;color:var(--white);border-color:currentColor}

/* Credit Agricole format × color system */
.scene--ca-system{align-content:center;min-height:110svh}.ca-system-head{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(24px,5vw,80px);align-items:end}.ca-system-head .eyebrow{grid-column:1/-1}.ca-system-head h2{font:900 clamp(4rem,8.3vw,8.5rem)/.86 var(--display);letter-spacing:-.04em;margin:10px 0}.ca-system-head h2 span{color:var(--accent)}.ca-system-head>p:last-child{font-size:clamp(1rem,1.18vw,1.14rem);line-height:1.55;margin:0 0 14px;max-width:38ch}

@media(max-width:1100px){.scene--case{grid-template-columns:1fr 1fr}.case-copy h2{font-size:clamp(2.7rem,5.6vw,5rem)}.duo-title h2{font-size:clamp(4rem,8.5vw,7.5rem)}.scene--process{gap:32px}.process-track{margin-top:20px}}

@media(max-width:820px){
  :root{--rail:0px;--pad:clamp(20px,5.5vw,36px)}
  .rail{inset:0 0 auto 0;width:100%;height:76px;padding:12px 16px;display:flex;align-items:center;border-right:0;border-bottom:1px solid rgba(16,16,16,.4)}
  .rail-head{display:flex;align-items:center}.monogram{font-size:2.45rem}.rail-caption,.rail-foot{display:none}
  .timeline{margin-left:auto;flex-direction:row;gap:5px;padding:0}.timeline::before{left:4%;right:4%;top:50%;bottom:auto;width:auto;height:1px}.timeline-item{width:17px;height:34px}.timeline-item.active{height:42px;width:49px}.timeline-item.active .dot{width:48px;height:34px}.timeline-item.active .year{transform:translate(-50%,-50%) rotate(0) scale(1);font-size:1.35rem}.year{transform:translate(-50%,-50%) rotate(0) scale(.55);-webkit-text-stroke-width:1px}.year b{-webkit-text-stroke-width:1px}.dot{border-color:var(--paper)}
  .portfolio{margin-left:0;width:100%;padding-top:76px}.scene{min-height:max(760px,calc(100svh - 76px))}.scene-index{top:24px}.hero-copy h1{font-size:clamp(6.2rem,28vw,9rem)}.media-frame--hero{right:18px;bottom:10%;width:82%;height:40%;box-shadow:-10px 10px 0 var(--accent)}.scroll-cue{display:none}
  .scene--case{grid-template-columns:1fr;grid-template-rows:auto auto;align-content:center;gap:32px}.case-copy,.case-media{grid-column:1}.case-copy h2{font-size:clamp(3rem,11vw,5rem)}.case-copy>p:last-of-type{font-size:1rem}.case-media{height:48vh;min-height:370px}.miniature-shot{height:49%}.card-shot{width:40%;height:60%}.color-register{grid-column:1;height:38vh;min-height:300px}.case-number{font-size:18rem}
  .scene--manifesto{min-height:720px}.outline-title{font-size:clamp(4.6rem,18vw,8rem)}.manifesto-note{left:var(--pad);right:auto}
  .scene--duo{grid-template-columns:1fr;grid-template-rows:auto auto auto;padding-top:76px}.duo-title{flex-wrap:wrap}.duo-title .eyebrow{top:-30px}.duo-title h2{font-size:clamp(3.6rem,15vw,6rem)}.duo-figure--wide,.duo-figure--portrait{grid-column:1;grid-row:auto;height:30vh;min-height:220px}.duo-figure--portrait{width:65%;justify-self:end}.scene--split-copy{grid-template-columns:1fr;padding:0}.split-half{min-height:50svh;padding:70px 28px}.split-half h3{font-size:clamp(3.3rem,13vw,5.5rem)}
  .poster-copy h2{font-size:clamp(4rem,15vw,7rem)}.play-mark{bottom:28%}.scene--process{grid-template-columns:1fr;gap:18px}.process-track{grid-column:1;grid-template-columns:1fr 1fr}.process-track li{border-bottom:1px solid var(--ink)}.process-head h2{font-size:clamp(3.8rem,14vw,6rem)}
  .seo-stack span{font-size:clamp(4rem,17vw,7rem)}.search-orbit{width:75vw;right:-35%;top:24%}.seo-caption{left:var(--pad);right:auto;text-align:left}.editorial-title h2{font-size:clamp(6rem,25vw,11rem)}.editorial-grid{grid-template-columns:1fr}.keyword-cloud{justify-content:flex-start}
  .rank-copy h2{font-size:clamp(5rem,20vw,8.5rem)}.rank-one{font-size:clamp(12rem,52vw,19rem);bottom:12%}.rank-bars{bottom:13%}.signature-copy h2{font-size:clamp(5rem,19vw,8rem)}.video-toggle{bottom:28px}
  .campaign-copy{width:92%;align-self:start}.campaign-copy h2{font-size:clamp(5rem,19vw,8.5rem)}.campaign-stack{top:42%;bottom:6%;width:83%}.campaign-stack figure{height:55%}.koloro-copy h2{font-size:clamp(7rem,30vw,11rem)}.koloro-frame{width:84%;height:43%}.final-project-copy{width:92%}.final-project-copy h2{font-size:clamp(4.5rem,17vw,7rem)}
  .contact{min-height:calc(100svh - 76px)}.contact h2{font-size:clamp(4.2rem,17vw,7rem);max-width:100%}.contact-bottom{flex-direction:column}.contact::before{width:85vw;right:-46%;top:20%}.scene-progress{top:76px}
}

@media(max-width:460px){.timeline{gap:2px}.timeline-item{width:13px}.timeline-item.active{width:43px}.timeline-item.active .dot{width:41px}.hero-meta{flex-direction:column;gap:5px}.scene--duo{min-height:880px}.duo-figure--portrait{width:72%}.process-track li{padding-inline:8px}.process-track span{font-size:.62rem}.manifesto-note{grid-template-columns:1fr}.campaign-stack{top:48%;height:48%}.contact-top span:last-child,.contact-bottom span:last-child{display:none}}

@media(max-width:820px){
  .scene--cards{grid-template-columns:1fr;grid-template-rows:auto auto;align-content:center;gap:22px;min-height:1040px;padding-bottom:70px}.cards-copy h2{font-size:clamp(3.4rem,14vw,5.8rem)}.cards-copy>p:last-child{font-size:1rem}.card-table{height:430px;display:flex;align-items:center;gap:16px;overflow-x:auto;overflow-y:hidden;margin-inline:calc(var(--pad)*-1);padding:42px var(--pad) 34px;scroll-snap-type:x mandatory;perspective:none}.card-table::before{display:none}.tactimon-card,.tactimon-card.is-selected{position:relative;left:auto;bottom:auto;flex:0 0 218px;width:218px;transform:none;rotate:0;filter:saturate(.9) brightness(.9);scroll-snap-align:center}.tactimon-card.is-selected{transform:translateY(-12px) scale(1.025);filter:saturate(1) brightness(1)}.cards-hint{left:var(--pad);right:auto;bottom:28px}
  .pdf-reader{width:100vw;height:100svh;max-width:none;max-height:none;border:0}.reader-toolbar{padding:14px 16px}.reader-toolbar h2{font-size:1.65rem}.reader-kicker{font-size:.57rem}.reader-stage{padding:14px}.reader-book{width:min(82vw,390px);height:auto;aspect-ratio:523/773}.reader-controls{padding:13px 16px}.reader-close,.reader-prev,.reader-next{padding:9px 10px;font-size:.62rem}.pdf-badge{width:88px;font-size:.58rem}
  .scene--ca-system{min-height:1040px;align-content:start;padding-top:80px}.ca-system-head{grid-template-columns:1fr}.ca-system-head .eyebrow{grid-column:1}.ca-system-head h2{font-size:clamp(3.4rem,14vw,5.7rem)}.ca-system-head>p:last-child{font-size:1rem}
}

/* Legibility pass: open leading and tracking while preserving the condensed display voice. */
.hero-copy h1{line-height:.9;letter-spacing:-.025em}
.case-copy h2{line-height:.98;letter-spacing:-.015em}
.outline-title{line-height:.94;letter-spacing:-.015em}
.duo-title h2{line-height:.94;letter-spacing:-.02em}
.split-half h3{line-height:1;letter-spacing:-.015em}
.poster-copy h2{line-height:.94;letter-spacing:-.015em}
.process-head h2{line-height:.96;letter-spacing:-.02em}
.seo-stack span{line-height:.9;letter-spacing:-.02em}
.editorial-title h2{line-height:.92;letter-spacing:-.02em}
.rank-copy h2{line-height:.9;letter-spacing:-.025em}
.metrics-head h2{line-height:.92;letter-spacing:-.02em}
.signature-copy h2{line-height:.92;letter-spacing:-.02em}
.campaign-copy h2{line-height:.94;letter-spacing:-.02em}
.ca-system-head h2{line-height:.94;letter-spacing:-.015em}
.koloro-copy h2{line-height:.9;letter-spacing:-.02em}
.final-project-copy h2{line-height:.94;letter-spacing:-.02em}
.cards-copy h2{line-height:.96;letter-spacing:-.015em}
.contact h2{line-height:.9;letter-spacing:-.02em}

@media(max-width:820px){.scene--express-metrics{min-height:1280px;align-content:start;padding-top:82px;padding-bottom:70px}.scene--express-metrics::before{background-size:12vw 12vw}.metrics-head{display:block;margin-bottom:24px}.metrics-head h2{font-size:clamp(3.8rem,16vw,6.2rem)}.metrics-head .eyebrow{margin-bottom:14px}.metrics-dashboard{grid-template-columns:1fr;gap:10px}.metric-block{min-height:270px}.metric-block strong{font-size:clamp(5rem,22vw,8rem);margin-top:32px}.metric-graph{height:43%}.metric-bars{height:37%}.rank-seal{width:160px}.metrics-foot{text-align:left;line-height:1.6}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-layer,.js .reveal,.js .reveal--late{transform:none!important;opacity:1!important}.media-frame img,.duo-figure img,.campaign-stack img{transition:none}.metric-trace{stroke-dashoffset:0}.metric-bars i,.rank-seal,.metric-target{transform:none!important}}

/* Tactimon — scroll-controlled Mandralmier model study */
.scene--mandralmier{
  --mandralmier-progress:0;
  min-height:270svh;
  padding:0;
  display:block;
  align-content:start;
  overflow:visible;
  border-bottom:0;
  background:#0a0c0c;
}
.scene--mandralmier::before{display:none}
.mandralmier-stage{
  --mandralmier-compare:0;
  --mandralmier-physical:0;
  position:sticky;
  top:0;
  height:100svh;
  overflow:hidden;
  isolation:isolate;
  background:
    linear-gradient(rgba(234,255,0,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(234,255,0,.065) 1px,transparent 1px),
    radial-gradient(circle at 72% 50%,rgba(234,255,0,.055),transparent 35%),
    #0a0c0c;
  background-size:clamp(46px,5.5vw,82px) clamp(46px,5.5vw,82px),clamp(46px,5.5vw,82px) clamp(46px,5.5vw,82px),auto,auto;
}
.mandralmier-stage::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(10,12,12,.98) 0,rgba(10,12,12,.82) 29%,transparent 52%),linear-gradient(0deg,rgba(10,12,12,.74),transparent 23%)}
.mandralmier-canvas{position:absolute;inset:0;z-index:1;width:100%;height:100%;display:block;pointer-events:none;transform:translate3d(calc(var(--mandralmier-compare)*-18%),0,0) scale(calc(1 - var(--mandralmier-compare)*.18));transform-origin:center;will-change:transform}
.mandralmier-canvas--solid{z-index:2;clip-path:inset(0 100% 0 0);filter:saturate(.85) contrast(1.1) drop-shadow(0 0 26px rgba(234,255,0,.15))}
.mandralmier-head{position:absolute;z-index:5;left:var(--pad);top:clamp(66px,9vh,105px);width:min(41%,520px)}
.mandralmier-head .eyebrow{color:var(--accent)}
.mandralmier-head h2{font:900 clamp(5rem,10.5vw,11rem)/.86 var(--display);letter-spacing:-.025em;margin:15px 0 20px;color:transparent;-webkit-text-stroke:2px var(--white);paint-order:stroke fill}
.mandralmier-head>p:last-child{width:max-content;max-width:100%;padding-top:12px;border-top:1px solid rgba(244,244,238,.62);font-size:.69rem;letter-spacing:.1em}
.mandralmier-index{position:absolute;z-index:5;right:var(--pad);top:var(--pad);display:flex;align-items:baseline;gap:12px}.mandralmier-index b{font:900 2.3rem/1 var(--display);color:var(--accent)}.mandralmier-index span{font-size:.62rem;letter-spacing:.12em}
.mandralmier-stats{position:absolute;z-index:5;right:var(--pad);bottom:clamp(94px,13vh,140px);display:grid;grid-template-columns:repeat(3,auto);gap:0;border:1px solid rgba(244,244,238,.42);background:rgba(10,12,12,.72)}
.mandralmier-stats span{display:grid;gap:4px;min-width:128px;padding:12px 15px;border-right:1px solid rgba(244,244,238,.26);font-size:.57rem;letter-spacing:.09em;color:rgba(244,244,238,.65)}.mandralmier-stats span:last-child{border-right:0}.mandralmier-stats b{font:900 1.05rem/1 var(--display);letter-spacing:.02em;color:var(--white)}
.mandralmier-phases{position:absolute;z-index:5;left:var(--pad);right:var(--pad);bottom:44px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(244,244,238,.4)}
.mandralmier-phases span{padding:14px 10px 0;font-size:.61rem;letter-spacing:.1em;color:rgba(244,244,238,.3);transition:color .25s}.mandralmier-phases span.is-active{color:var(--white)}.mandralmier-phases b{font:900 1.55rem/1 var(--display);margin-right:7px}.mandralmier-phases span.is-active b{color:var(--accent)}
.mandralmier-meter{position:absolute;z-index:6;left:var(--pad);right:var(--pad);bottom:25px;height:2px;background:rgba(244,244,238,.2)}.mandralmier-meter span{display:block;width:calc(var(--mandralmier-progress)*100%);height:100%;background:var(--accent);box-shadow:0 0 15px rgba(234,255,0,.55)}.mandralmier-meter i{position:absolute;right:0;bottom:8px;font-style:normal;font-size:.55rem;letter-spacing:.1em;color:rgba(244,244,238,.58)}
.mandralmier-rings{position:absolute;z-index:0;right:5%;top:9%;width:min(48vw,670px);aspect-ratio:1;border:1px solid rgba(234,255,0,.22);border-radius:50%;transform:rotate(calc(var(--mandralmier-progress)*35deg))}.mandralmier-rings span{position:absolute;inset:14%;border:1px solid rgba(244,244,238,.12);border-radius:50%}.mandralmier-rings span:nth-child(2){inset:31%}.mandralmier-rings span:nth-child(3){inset:47%;background:var(--accent);box-shadow:0 0 22px rgba(234,255,0,.8)}
.mandralmier-loader{--load-progress:0%;position:absolute;z-index:20;left:55%;top:50%;translate:-50% -50%;width:min(330px,58vw);padding:15px;border:1px solid rgba(244,244,238,.5);background:rgba(10,12,12,.93);transition:opacity .35s,visibility .35s}.mandralmier-loader span{display:block;width:var(--load-progress);height:3px;margin-bottom:12px;background:var(--accent);box-shadow:0 0 12px var(--accent)}.mandralmier-loader b{font-size:.62rem;letter-spacing:.08em}.mandralmier-loader.is-loaded{opacity:0;visibility:hidden}
.mandralmier-fallback{position:absolute;z-index:20;left:58%;top:50%;translate:-50% -50%;padding:16px;border:1px solid var(--white);background:#080a0a;font-size:.72rem}

@media(max-width:820px){
  .scene--mandralmier{min-height:260svh}
  .mandralmier-stage{top:76px;height:calc(100svh - 76px)}
  .mandralmier-stage::after{background:linear-gradient(180deg,rgba(10,12,12,.96) 0,rgba(10,12,12,.7) 33%,transparent 55%),linear-gradient(0deg,rgba(10,12,12,.85),transparent 31%)}
  .mandralmier-head{top:24px;width:78%}.mandralmier-head h2{font-size:clamp(4.2rem,20vw,7rem);line-height:.84;margin:10px 0 12px}.mandralmier-head>p:last-child{font-size:.56rem}
  .mandralmier-index{top:22px}.mandralmier-index span{display:none}
  .mandralmier-stats{left:var(--pad);right:var(--pad);bottom:118px;grid-template-columns:repeat(3,1fr)}.mandralmier-stats span{min-width:0;padding:9px 7px;font-size:.48rem}.mandralmier-stats b{font-size:.8rem}
  .mandralmier-phases{bottom:47px}.mandralmier-phases span{font-size:.48rem;padding-inline:2px}.mandralmier-phases b{font-size:1.1rem;display:block;margin-bottom:4px}
  .mandralmier-rings{width:84vw;right:-24%;top:32%}.mandralmier-loader{left:50%}
  .mandralmier-canvas{transform:translate3d(calc(var(--mandralmier-compare)*-25%),0,0) scale(calc(1 - var(--mandralmier-compare)*.3))}
}

/* Holocorp — two-stage scroll-controlled WebGL assembly */
.scene--holocorp{
  --holo-progress:0;
  min-height:320svh;
  padding:0;
  display:block;
  align-content:start;
  overflow:visible;
  border-bottom:0;
  background:#080a0a;
}
.scene--holocorp::before{display:none}
.holocorp-stage{
  position:sticky;
  top:0;
  height:100svh;
  overflow:hidden;
  isolation:isolate;
  background:radial-gradient(circle at 61% 49%,#202829 0,#101415 32%,#080a0a 68%);
}
.holocorp-stage::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(8,10,10,.9) 0,rgba(8,10,10,.18) 34%,rgba(8,10,10,.08) 72%,rgba(8,10,10,.68) 100%);
  pointer-events:none;
}
.holocorp-canvas{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  display:block;
  pointer-events:none;
}
.holocorp-canvas--color{
  z-index:2;
  clip-path:inset(0 100% 0 0);
  filter:saturate(1.12) contrast(1.06) drop-shadow(0 0 18px rgba(105,130,255,.2));
}
.holocorp-grid{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  opacity:.45;
  background-image:
    linear-gradient(rgba(244,244,238,.1) 1px,transparent 1px),
    linear-gradient(90deg,rgba(244,244,238,.1) 1px,transparent 1px);
  background-size:clamp(46px,6vw,92px) clamp(46px,6vw,92px);
  -webkit-mask-image:linear-gradient(90deg,#000,transparent 82%);
  mask-image:linear-gradient(90deg,#000,transparent 82%);
}
.holocorp-scan{
  position:absolute;
  left:0;
  right:0;
  top:calc(var(--holo-progress)*100%);
  height:1px;
  z-index:5;
  opacity:.75;
  pointer-events:none;
  background:var(--accent);
  box-shadow:0 0 18px rgba(234,255,0,.75);
}
.holocorp-head{
  position:absolute;
  z-index:6;
  left:var(--pad);
  top:clamp(70px,10vh,118px);
  width:min(40%,440px);
  pointer-events:none;
}
.holocorp-head .eyebrow{color:var(--accent);line-height:1.55}
.holocorp-head h2{
  margin:16px 0 20px;
  color:transparent;
  -webkit-text-stroke:2px var(--white);
  paint-order:stroke fill;
  font:900 clamp(5.2rem,10vw,10.6rem)/.86 var(--display);
  letter-spacing:-.015em;
}
.holocorp-subtitle{
  max-width:30ch;
  margin:0;
  padding-top:12px;
  border-top:1px solid rgba(244,244,238,.65);
  color:rgba(244,244,238,.78);
  font-size:clamp(.62rem,.72vw,.72rem);
  line-height:1.55;
  letter-spacing:.1em;
}
.holocorp-index{
  position:absolute;
  z-index:6;
  top:var(--pad);
  right:var(--pad);
  display:flex;
  gap:10px;
  align-items:center;
  font-size:.67rem;
  letter-spacing:.13em;
}
.holocorp-index i{color:var(--accent);font-style:normal}
.holocorp-axis{
  position:absolute;
  z-index:6;
  right:var(--pad);
  top:44%;
  display:grid;
  gap:7px;
  font-size:.6rem;
  color:rgba(244,244,238,.7);
}
.holocorp-axis span{width:25px;height:25px;border:1px solid rgba(244,244,238,.4);display:grid;place-items:center}
.holocorp-axis span:nth-child(1){border-color:var(--accent);color:var(--accent)}
.holocorp-phases{
  position:absolute;
  z-index:6;
  left:var(--pad);
  right:var(--pad);
  bottom:var(--pad);
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid rgba(244,244,238,.35);
  pointer-events:none;
}
.holocorp-phase{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:center;
  padding:12px 12px 0 0;
  color:rgba(244,244,238,.4);
  font-size:.62rem;
  letter-spacing:.1em;
  transition:color .2s;
}
.holocorp-phase::before{content:"";position:absolute;left:0;right:10px;top:-2px;height:3px;transform:scaleX(0);transform-origin:left;background:var(--accent);transition:transform .24s}
.holocorp-phase b{font:900 1.6rem/1 var(--display);letter-spacing:0}
.holocorp-phase.is-active{color:var(--white)}
.holocorp-phase.is-active::before{transform:scaleX(1)}
.holocorp-meter{
  position:absolute;
  z-index:6;
  right:calc(var(--pad) + 46px);
  top:20%;
  bottom:20%;
  width:24px;
  border-left:1px solid rgba(244,244,238,.35);
  pointer-events:none;
}
.holocorp-meter span{position:absolute;left:-2px;top:0;width:3px;height:100%;transform:scaleY(var(--holo-progress));transform-origin:top;background:var(--accent);box-shadow:0 0 10px rgba(234,255,0,.55)}
.holocorp-meter i{position:absolute;left:9px;top:0;writing-mode:vertical-rl;font-style:normal;font-size:.54rem;letter-spacing:.12em;color:rgba(244,244,238,.55)}
.holocorp-loader{
  position:absolute;
  z-index:10;
  left:50%;
  top:50%;
  width:min(330px,64vw);
  transform:translate(-50%,-50%);
  padding:16px;
  border:1px solid rgba(244,244,238,.55);
  background:rgba(8,10,10,.88);
  transition:opacity .35s,visibility .35s;
}
.holocorp-loader span{display:block;height:3px;width:var(--load-progress,0%);margin-bottom:12px;background:var(--accent);box-shadow:0 0 12px var(--accent)}
.holocorp-loader b{font-size:.63rem;letter-spacing:.08em}
.holocorp-loader.is-loaded{opacity:0;visibility:hidden}
.holocorp-fallback{position:absolute;z-index:10;left:50%;top:50%;translate:-50% -50%;padding:16px;border:1px solid var(--white);background:#080a0a;font-size:.72rem}

@media(max-width:820px){
  .scene--holocorp{min-height:300svh}
  .holocorp-stage{top:76px;height:calc(100svh - 76px)}
  .holocorp-head{top:26px;width:70%}
  .holocorp-head h2{font-size:clamp(4.1rem,19vw,7rem);line-height:.88;margin:10px 0 12px;-webkit-text-stroke-width:1px}
  .holocorp-subtitle{display:none}
  .holocorp-index{top:24px}
  .holocorp-axis,.holocorp-meter{display:none}
  .holocorp-phases{bottom:22px;gap:5px}
  .holocorp-phase{grid-template-columns:1fr;gap:4px;padding-right:4px;font-size:.52rem}
  .holocorp-phase b{font-size:1.25rem}
}

@media(prefers-reduced-motion:reduce){
  .holocorp-phase,.holocorp-phase::before,.holocorp-loader{transition:none}
}

/* Tactimon team builder — five lineages, shown as a tactical roster instead of a card fan. */
.scene--cards{grid-template-columns:minmax(260px,.66fr) minmax(0,1.34fr);gap:clamp(28px,4vw,70px);align-items:center;min-height:110svh}
.cards-copy h2{font-size:clamp(3.2rem,5.7cqw,5.8rem);line-height:.98;letter-spacing:-.01em;margin:16px 0 22px}
.cards-copy>p:last-of-type{max-width:42ch;font-size:clamp(1rem,1.15cqw,1.12rem);line-height:1.62}
.tactimon-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:28px 0 18px;background:rgba(244,244,238,.24);border:1px solid rgba(244,244,238,.24)}
.tactimon-specs div{padding:12px;background:#101010}
.tactimon-specs dt{font-size:.59rem;letter-spacing:.12em;color:rgba(244,244,238,.55)}
.tactimon-specs dd{margin:5px 0 0;font:800 .79rem/1.25 var(--mono);letter-spacing:.04em;color:var(--accent)}
.rules-launch{border:1px solid var(--accent);background:transparent;color:var(--accent);padding:12px 14px;font:700 .67rem/1.2 var(--mono);letter-spacing:.08em;cursor:pointer;transition:background .25s,color .25s,transform .25s}
.rules-launch:hover,.rules-launch:focus-visible{background:var(--accent);color:var(--ink);transform:translateX(5px)}
.card-system{position:relative;display:grid;grid-template-columns:minmax(175px,.68fr) minmax(290px,1.32fr);gap:clamp(18px,2.2vw,34px);align-items:center;min-height:min(70vh,680px)}
.card-preview{--preview-progress:1;position:relative;margin:0;padding:clamp(10px,1.2vw,16px);border:1px solid rgba(244,244,238,.45);background-color:#0b0b0b;background-image:linear-gradient(rgba(244,244,238,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(244,244,238,.06) 1px,transparent 1px);background-size:28px 28px;box-shadow:10px 10px 0 rgba(234,255,0,.9);opacity:var(--preview-progress);transform:translateX(calc((1 - var(--preview-progress))*-38px)) scale(calc(.94 + var(--preview-progress)*.06));transition:transform .45s cubic-bezier(.2,.85,.2,1),opacity .35s}
.card-preview::before,.card-preview::after{content:"";position:absolute;z-index:2;width:18px;height:18px;border-color:var(--accent);pointer-events:none}
.card-preview::before{left:-1px;top:-1px;border-left:3px solid;border-top:3px solid}
.card-preview::after{right:-1px;bottom:-1px;border-right:3px solid;border-bottom:3px solid}
.card-preview-code{display:block;margin-bottom:9px;font-size:.57rem;letter-spacing:.12em;color:rgba(244,244,238,.65)}
.card-preview img{display:block;width:100%;max-height:53vh;aspect-ratio:5/7;object-fit:contain;background:#080808;filter:drop-shadow(0 18px 18px rgba(0,0,0,.45))}
.card-preview figcaption{display:grid;gap:4px;padding-top:12px;border-top:1px solid rgba(244,244,238,.3)}
.card-preview figcaption strong{font:900 clamp(1.3rem,2.3cqw,2.2rem)/1 var(--display);letter-spacing:.015em}
.card-preview figcaption span{font-size:.58rem;letter-spacing:.12em;color:var(--accent)}
.card-roster{--roster-progress:1;position:relative;display:grid;grid-template-columns:repeat(5,minmax(48px,1fr));grid-template-rows:repeat(2,auto);gap:clamp(7px,1vw,13px);padding:28px 0;opacity:calc(.28 + var(--roster-progress)*.72)}
.roster-axis{position:absolute;top:0;font-size:.55rem;letter-spacing:.13em;color:rgba(244,244,238,.55)}
.roster-axis--base{left:0}.roster-axis--asc{right:0;color:var(--accent)}
.card-roster .tactimon-card{--deploy:1;position:relative;left:auto;bottom:auto;width:100%;aspect-ratio:5/7;padding:0;border:1px solid rgba(244,244,238,.32);border-radius:clamp(5px,.65vw,9px);background:#111;overflow:hidden;cursor:pointer;z-index:1;transform:translateY(calc((1 - var(--deploy))*48px)) scale(calc(.82 + var(--deploy)*.18));transform-origin:50% 100%;opacity:var(--deploy);filter:grayscale(.68) saturate(.6) brightness(.62);box-shadow:0 12px 20px rgba(0,0,0,.35);transition:transform .34s cubic-bezier(.2,.85,.2,1),filter .28s,opacity .25s,border-color .25s,box-shadow .28s;will-change:transform,opacity}
.card-roster .tactimon-card:nth-of-type(1){grid-column:1;grid-row:1}.card-roster .tactimon-card:nth-of-type(2){grid-column:1;grid-row:2}
.card-roster .tactimon-card:nth-of-type(3){grid-column:2;grid-row:1}.card-roster .tactimon-card:nth-of-type(4){grid-column:2;grid-row:2}
.card-roster .tactimon-card:nth-of-type(5){grid-column:3;grid-row:1}.card-roster .tactimon-card:nth-of-type(6){grid-column:3;grid-row:2}
.card-roster .tactimon-card:nth-of-type(7){grid-column:4;grid-row:1}.card-roster .tactimon-card:nth-of-type(8){grid-column:4;grid-row:2}
.card-roster .tactimon-card:nth-of-type(9){grid-column:5;grid-row:1}.card-roster .tactimon-card:nth-of-type(10){grid-column:5;grid-row:2}
.card-roster .tactimon-card img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit;pointer-events:none}
.card-roster .tactimon-card:hover,.card-roster .tactimon-card:focus-visible,.card-roster .tactimon-card.is-selected{z-index:8;transform:translateY(-9px) scale(1.08);filter:grayscale(0) saturate(1) brightness(1);border-color:var(--accent);box-shadow:0 18px 30px rgba(0,0,0,.62),0 0 0 2px var(--accent)}
.card-system .cards-hint{position:absolute;right:0;bottom:0;margin:0;font-size:.6rem;letter-spacing:.1em;color:rgba(244,244,238,.58)}

.scene--rules{position:relative;display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:clamp(30px,5vw,84px);align-items:center;min-height:110svh;padding-block:100px;isolation:isolate}
.rules-image{position:absolute;z-index:-3;inset:-7%;width:114%;height:114%;object-fit:cover;filter:grayscale(1) contrast(1.35)}
.rules-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(8,8,8,.98) 7%,rgba(8,8,8,.84) 48%,rgba(8,8,8,.62)),linear-gradient(rgba(8,8,8,.18),rgba(8,8,8,.78))}
.rules-head h2{margin:17px 0 0;font:900 clamp(3.4rem,6.5cqw,7rem)/.96 var(--display);letter-spacing:.005em}
.rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(244,244,238,.28);border:1px solid rgba(244,244,238,.28)}
.rule-module{position:relative;min-height:245px;padding:22px;background:rgba(12,12,12,.92);overflow:hidden}
.rule-module>b{position:absolute;right:10px;top:3px;font:900 4.8rem/1 var(--display);color:rgba(244,244,238,.08)}
.rule-module>span{display:block;font-size:.62rem;letter-spacing:.13em;color:var(--accent)}
.rule-module>strong{display:block;margin:27px 0 16px;font:900 clamp(2.3rem,4.1cqw,4.5rem)/.9 var(--display);letter-spacing:.015em}
.rule-module>p{max-width:32ch;margin:0;font-size:.92rem;line-height:1.55;color:rgba(244,244,238,.78)}
.rules-flow{position:absolute;left:var(--pad);right:var(--pad);bottom:26px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:13px;border-top:1px solid rgba(244,244,238,.42);font-size:.61rem;letter-spacing:.11em;color:rgba(244,244,238,.7)}
.rules-flow i{font-style:normal;color:var(--accent);font-size:1rem}

@media(max-width:1099px){
  .scene--cards{grid-template-columns:1fr;min-height:1180px;align-content:center}
  .cards-copy{max-width:720px}
  .card-system{min-height:620px}
  .scene--rules{grid-template-columns:1fr;min-height:1180px;align-content:center}
  .rules-head{max-width:720px}.rules-grid{margin-bottom:35px}
}

@media(max-width:820px){
  .scene--cards{min-height:1320px;align-content:start;padding-top:82px;padding-bottom:80px}
  .cards-copy h2{font-size:clamp(3rem,12cqw,5rem)}
  .tactimon-specs{margin-top:22px}
  .card-system{grid-template-columns:1fr;gap:24px;min-height:0}
  .card-preview{width:min(270px,72vw);justify-self:center}
  .card-preview img{max-height:none}
  .card-roster{width:100%;grid-template-columns:repeat(5,minmax(54px,1fr));gap:5px;padding-bottom:36px}
  .card-roster .tactimon-card,.card-roster .tactimon-card.is-selected{width:100%;flex:auto;transform:translateY(calc((1 - var(--deploy))*32px)) scale(calc(.86 + var(--deploy)*.14))}
  .card-roster .tactimon-card:hover,.card-roster .tactimon-card:focus-visible,.card-roster .tactimon-card.is-selected{transform:translateY(-5px) scale(1.04)}
  .card-system .cards-hint{left:0;right:auto;bottom:0}
  .scene--rules{grid-template-columns:1fr;min-height:1450px;align-content:start;padding-top:88px;padding-bottom:100px}
  .rules-head h2{font-size:clamp(3rem,12cqw,5.2rem)}
  .rules-grid{grid-template-columns:1fr}.rule-module{min-height:210px}.rule-module>strong{font-size:clamp(2.8rem,13cqw,4.5rem)}
  .rules-flow{flex-wrap:wrap;justify-content:flex-start}.rules-flow i{display:none}
}

@media(prefers-reduced-motion:reduce){
  .card-preview,.card-roster .tactimon-card,.rules-launch{transition:none}
}

/* Tactimon v2 — a restrained five-card fan with physical base/ascension flips. */
.card-system--fan{display:block;position:relative;min-height:min(70vh,690px)}
.tactimon-fan{--fan:1;position:relative;height:min(63vh,610px);perspective:1600px;transform-style:preserve-3d}
.tactimon-fan::after{content:"";position:absolute;left:10%;right:10%;bottom:1%;height:20%;border-radius:50%;background:radial-gradient(ellipse,rgba(234,255,0,.18),rgba(234,255,0,0) 68%);transform:rotateX(72deg);filter:blur(8px);pointer-events:none}
.tactimon-fan .tactimon-card{--fan:1;--holo-x:50%;--holo-y:50%;position:absolute;left:50%;bottom:8%;width:clamp(150px,17cqw,230px);aspect-ratio:5/7;padding:0;border:0;border-radius:0;background:transparent;overflow:visible;cursor:pointer;z-index:var(--z);transform:translateX(calc(-50% + var(--x)*var(--fan))) translateY(calc(var(--y)*var(--fan))) rotate(calc(var(--rot)*var(--fan)));transform-origin:50% 112%;filter:drop-shadow(0 20px 20px rgba(0,0,0,.48));transition:transform .55s cubic-bezier(.2,.86,.2,1),filter .32s;will-change:transform}
.tactimon-fan .tactimon-card:hover,.tactimon-fan .tactimon-card:focus-visible{filter:drop-shadow(0 28px 24px rgba(0,0,0,.68)) brightness(1.05)}
.tactimon-fan .tactimon-card.is-selected{z-index:30;transform:translateX(-50%) translateY(-34px) rotate(0deg) scale(1.1);filter:drop-shadow(0 36px 34px rgba(0,0,0,.76))}
.card-inner{position:absolute;inset:0;display:block;transform-style:preserve-3d;transition:transform .78s cubic-bezier(.2,.72,.17,1);will-change:transform}
.tactimon-card.is-flipped .card-inner{transform:rotateY(180deg)}
.card-face{position:absolute;inset:0;display:block;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform-style:preserve-3d}
.card-face img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.card-face--ascension{transform:rotateY(180deg);isolation:isolate}
.card-face--ascension::before{content:"";position:absolute;z-index:2;inset:1.5%;border-radius:3.5%;background:radial-gradient(circle at var(--holo-x) var(--holo-y),rgba(255,255,255,.72),transparent 19%),conic-gradient(from 125deg at var(--holo-x) var(--holo-y),rgba(255,43,220,.15),rgba(31,226,255,.58),rgba(234,255,0,.2),rgba(255,105,38,.5),rgba(120,67,255,.46),rgba(31,226,255,.58));mix-blend-mode:color-dodge;opacity:.58;mask-image:linear-gradient(135deg,transparent 4%,#000 23%,#000 77%,transparent 96%);pointer-events:none;animation:holo-drift 4.6s linear infinite}
.card-face--ascension::after{content:"";position:absolute;z-index:3;inset:1.5%;border-radius:3.5%;background:repeating-linear-gradient(115deg,transparent 0 8px,rgba(255,255,255,.22) 9px,transparent 11px 18px);background-position:calc(var(--holo-x)*.2) calc(var(--holo-y)*.2);mix-blend-mode:screen;opacity:.34;pointer-events:none}
@keyframes holo-drift{0%{filter:hue-rotate(0deg);transform:translate3d(-2%,1%,0)}50%{filter:hue-rotate(110deg);transform:translate3d(2%,-1%,0)}100%{filter:hue-rotate(360deg);transform:translate3d(-2%,1%,0)}}
.fan-status{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:12px;border-top:1px solid rgba(244,244,238,.34);font-size:.58rem;letter-spacing:.1em;color:rgba(244,244,238,.64)}
.fan-status b{font:900 clamp(1.2rem,2cqw,2rem)/1 var(--display);letter-spacing:.03em;color:var(--white)}
.fan-status span{text-align:right;max-width:48ch;line-height:1.5}

/* Crédit Agricole — format-first selector, no modal frame. */
.format-selector{display:flex;align-items:center;justify-content:center;gap:clamp(12px,2vw,28px);height:clamp(300px,48vh,520px);margin-top:28px}
.format-card{position:relative;flex:1 1 0;max-width:31%;height:48%;padding:18px;border:1px solid rgba(244,244,238,.48);background:transparent;color:var(--white);overflow:hidden;cursor:pointer;text-align:left;transition:flex .62s cubic-bezier(.2,.82,.2,1),max-width .62s,height .62s,border-color .35s,background .35s;isolation:isolate}
.format-card--4x3{aspect-ratio:4/3;height:52%}.format-card--affiche{aspect-ratio:2/3;height:78%}.format-card--flyer{aspect-ratio:10/21;height:68%}
.format-card>span{position:absolute;z-index:3;top:12px;right:12px;font-size:.58rem;letter-spacing:.1em;color:var(--accent)}
.format-card>strong{position:relative;z-index:3;display:block;font:900 clamp(1.8rem,3.4cqw,3.8rem)/.92 var(--display);letter-spacing:.025em}
.format-card>small{position:absolute;z-index:3;left:18px;bottom:16px;font-size:.54rem;letter-spacing:.1em;color:rgba(244,244,238,.58)}
.format-card::before{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(8,8,8,.82),transparent 32%,transparent 68%,rgba(8,8,8,.78));opacity:0;transition:opacity .35s}
.format-card img{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:scale(.96);transition:opacity .5s,transform .65s cubic-bezier(.2,.82,.2,1)}
.format-card:hover,.format-card:focus-visible{border-color:var(--accent);background:rgba(234,255,0,.04)}
.format-selector:has(.is-active) .format-card:not(.is-active){flex:.38;max-width:13%;height:34%;padding:11px}
.format-selector:has(.is-active) .format-card:not(.is-active)>strong{font-size:1.05rem;writing-mode:vertical-rl}.format-selector:has(.is-active) .format-card:not(.is-active)>small{display:none}
.format-card.is-active{flex:4;max-width:74%;height:100%;aspect-ratio:auto;border-color:transparent;background:transparent}
.format-card.is-active::before{opacity:1}.format-card.has-visual img{opacity:1;transform:scale(1)}
.format-colors{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:14px}
.format-colors[hidden]{display:none}
.format-colors>span{margin-right:auto;font-size:.58rem;letter-spacing:.13em;color:rgba(244,244,238,.58)}
.format-colors button{position:relative;border:1px solid rgba(244,244,238,.38);background:transparent;color:var(--white);padding:9px 11px 9px 24px;font-size:.57rem;letter-spacing:.08em;cursor:pointer}
.format-colors button::before{content:"";position:absolute;left:8px;top:50%;width:9px;height:9px;border-radius:50%;translate:0 -50%;background:var(--swatch)}
.format-colors button:hover,.format-colors button:focus-visible,.format-colors button.is-active{border-color:var(--swatch);box-shadow:inset 0 -3px 0 var(--swatch)}

@media(max-width:820px){
  .scene--cards{min-height:1120px}.card-system--fan{min-height:520px}.tactimon-fan{height:450px;margin-inline:calc(var(--pad)*-1)}
  .tactimon-fan .tactimon-card{width:clamp(128px,38vw,170px);transform:translateX(calc(-50% + var(--x)*var(--fan)*.62)) translateY(calc(var(--y)*var(--fan))) rotate(calc(var(--rot)*var(--fan)))}
  .fan-status{left:var(--pad);right:var(--pad);display:grid}.fan-status span{text-align:left}
  .format-selector{height:520px;gap:8px}.format-card{padding:11px}.format-card>strong{font-size:clamp(1.2rem,6vw,2rem)}.format-card>small{left:11px;bottom:11px}
  .format-selector:has(.is-active) .format-card:not(.is-active){max-width:12%;min-width:42px}.format-card.is-active{max-width:78%}
  .format-colors{flex-wrap:wrap;justify-content:flex-start}.format-colors>span{flex:0 0 100%}
}

@media(prefers-reduced-motion:reduce){
  .card-inner,.tactimon-fan .tactimon-card,.format-card,.format-card img{transition:none}
  .card-face--ascension::before{animation:none}
}

/* Borderless reader overlay: the physical book floats above the current scene. */
.pdf-reader--overlay{position:fixed;z-index:1000;inset:0;display:block;width:100vw;max-width:none;height:100svh;max-height:none;margin:0;padding:0;border:0;background:rgba(7,7,7,.76);color:var(--white);overflow:hidden;backdrop-filter:blur(8px) saturate(.72)}
.pdf-reader--overlay[hidden]{display:none}
.pdf-reader--overlay .reader-shell{position:relative;display:block;width:100%;height:100%;background:none}
.pdf-reader--overlay .reader-toolbar{position:absolute;z-index:30;inset:22px 26px auto;display:flex;padding:0;border:0;background:transparent;pointer-events:none}
.pdf-reader--overlay .reader-toolbar>div{opacity:.72}.pdf-reader--overlay .reader-toolbar h2{font-size:clamp(1rem,1.8vw,1.65rem);margin-top:3px}.pdf-reader--overlay .reader-kicker{font-size:.58rem}
.pdf-reader--overlay .reader-close{pointer-events:auto;border:0;background:rgba(10,10,10,.5);backdrop-filter:blur(5px)}
.pdf-reader--overlay .reader-stage{position:absolute;inset:0;min-height:0;overflow:hidden;padding:7svh 5vw;display:grid;place-items:center}
.pdf-reader--overlay .reader-controls{position:absolute;z-index:30;left:50%;bottom:20px;translate:-50% 0;width:min(440px,calc(100vw - 40px));padding:0;border:0;background:transparent;pointer-events:none}
.pdf-reader--overlay .reader-controls button{pointer-events:auto;border:0;background:rgba(10,10,10,.5);backdrop-filter:blur(5px)}
.page-flip-book{position:relative;width:min(88vw,1046px);margin:auto;filter:drop-shadow(0 30px 34px rgba(0,0,0,.52));transform:translateZ(0);touch-action:none}
.page-flip-book.stf__parent{position:relative;display:block;box-sizing:border-box;background:transparent}
.page-flip-book .stf__wrapper{position:relative;width:100%;box-sizing:border-box;background:transparent;transform:translateX(0);clip-path:inset(0);transition:transform 720ms cubic-bezier(.22,.72,.18,1),clip-path 720ms cubic-bezier(.22,.72,.18,1)}
.page-flip-book canvas.stf__canvas{position:absolute;inset:0;width:100%;height:100%;display:block;background:transparent;border:0;outline:0}
.page-flip-book.is-loading{opacity:0}
.page-flip-book.is-cover .stf__wrapper{transform:translateX(-25%);clip-path:inset(0 0 0 calc(50% + 2px))}
.page-flip-book.is-cover-opening .stf__wrapper{transform:translateX(0);clip-path:inset(0);transition-duration:1050ms}
.page-flip-book.is-flipping{filter:drop-shadow(0 38px 42px rgba(0,0,0,.62))}

@media(max-width:820px){
  .pdf-reader--overlay{width:100vw;height:100svh}
  .pdf-reader--overlay .reader-toolbar{inset:14px 14px auto}.pdf-reader--overlay .reader-toolbar>div{display:none}
  .pdf-reader--overlay .reader-stage{min-height:0;overflow:auto;padding:68px 10px 72px;place-items:center}
  .page-flip-book{width:calc(100vw - 20px);min-width:300px!important;min-height:222px!important}
}

/* Recruitment-focused introduction and editorial completion pass. */
body:has(.site-intro){overflow:hidden}
.site-intro{position:fixed;inset:0;z-index:2000;display:grid;grid-template-rows:auto 1fr auto;padding:clamp(22px,3vw,50px);background:var(--ink);color:var(--white);overflow:hidden;transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .72s cubic-bezier(.2,.8,.2,1);isolation:isolate}
.site-intro.is-leaving{opacity:0;transform:translateY(-3%);pointer-events:none}
.site-intro-grid{position:absolute;inset:0;z-index:-1;background:linear-gradient(rgba(244,244,238,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(244,244,238,.1) 1px,transparent 1px);background-size:clamp(48px,6.25vw,110px) clamp(48px,6.25vw,110px);animation:intro-grid 2.8s cubic-bezier(.2,.8,.2,1) both}
.site-intro-grid::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 74% 42%,rgba(234,255,0,.16),transparent 28%)}
.site-intro-top,.site-intro-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;font-size:clamp(.68rem,.9vw,.85rem);line-height:1.5;letter-spacing:.13em;position:relative}
.site-intro-top::after{content:"";position:absolute;left:0;right:0;bottom:-15px;height:1px;background:rgba(244,244,238,.4);transform-origin:left;animation:intro-line 1.6s .15s both}
.site-intro-lockup{align-self:center;display:flex;align-items:center;gap:clamp(24px,5vw,90px);position:relative}
.site-intro-lockup>b{font:900 clamp(7rem,18vw,19rem)/.72 var(--display);letter-spacing:-.08em;color:transparent;-webkit-text-stroke:3px var(--white);animation:intro-mark 1.2s cubic-bezier(.2,.85,.2,1) both}
.site-intro-lockup sup{font:400 .07em/1 var(--mono);vertical-align:top;-webkit-text-stroke:0;color:var(--accent);letter-spacing:0}
.site-intro-lockup p{font:900 clamp(3.2rem,7.7vw,8.2rem)/.92 var(--display);letter-spacing:-.015em;margin:0;animation:intro-copy 1.15s .18s cubic-bezier(.2,.85,.2,1) both}
.site-intro-lockup p span{color:var(--accent)}
.site-intro-bottom{align-items:end}.site-intro-bottom button{border:1px solid var(--accent);background:var(--accent);color:var(--ink);padding:12px 16px;cursor:pointer;font-weight:700;letter-spacing:.1em}.site-intro-bottom button:hover{background:transparent;color:var(--accent)}
@keyframes intro-grid{from{opacity:0;transform:scale(1.22) rotate(1deg)}to{opacity:1;transform:scale(1.08)}}@keyframes intro-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes intro-mark{from{opacity:0;transform:translateX(-60px)}to{opacity:1;transform:none}}@keyframes intro-copy{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:none}}

.feature-mark{position:absolute;top:var(--pad);left:var(--pad);z-index:16;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--ink);background:rgba(184,184,177,.74);backdrop-filter:blur(6px);font-size:.57rem;line-height:1.35;letter-spacing:.1em}
.feature-mark b{display:grid;place-items:center;width:32px;aspect-ratio:1;background:var(--accent);color:var(--ink);font:900 1.45rem/1 var(--display)}
.feature-mark--light{color:var(--white);border-color:rgba(244,244,238,.55);background:rgba(16,16,16,.62)}
.feature-mark--holo{position:relative;top:auto;left:auto;width:max-content;margin-bottom:18px}
.scene--rank .feature-mark{top:52px;left:auto;right:var(--pad)}
.project-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:16px}.project-facts span{border-top:1px solid currentColor;padding-top:7px;font-size:.57rem;line-height:1.35;letter-spacing:.07em}.project-facts b{font:900 1.55rem/1 var(--display);margin-right:5px}

.scene--solo-project .duo-figure--wide{grid-column:1/-1;width:68%;justify-self:end;height:52vh}
.solo-project-note{position:absolute;left:var(--pad);bottom:9%;z-index:4;width:min(34%,430px);padding:18px;border-left:5px solid var(--accent);background:rgba(184,184,177,.9)}.solo-project-note b{font-size:.68rem;letter-spacing:.1em}.solo-project-note p{font-size:clamp(.92rem,1.1vw,1.08rem);line-height:1.5;margin:12px 0 0}
.split-half--full{grid-column:1/-1;padding-inline:clamp(40px,11vw,170px)}.split-half--full p{max-width:52ch}
.scene--green-squat{grid-template-columns:1fr .65fr}.scene--green-squat .duo-title{grid-column:1}.scene--green-squat .duo-figure--portrait{grid-column:2;grid-row:1/-1;align-self:center;width:min(100%,430px);height:72vh}.scene--green-squat .ghost-title{opacity:1;-webkit-text-stroke-color:var(--ink)}

.channel-metrics{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:-35px;background:var(--ink);border:1px solid var(--ink)}.channel-metrics span{display:flex;min-height:88px;flex-direction:column;justify-content:center;padding:12px;background:var(--paper);font-size:.57rem;line-height:1.4;letter-spacing:.08em}.channel-metrics b{font:900 clamp(1.8rem,3vw,3.2rem)/1 var(--display);letter-spacing:.01em;color:var(--ink);margin-bottom:6px}.channel-metrics span:nth-child(2){background:var(--accent)}

.uscreen-brand{position:absolute;right:var(--pad);top:var(--pad);display:flex;align-items:center;gap:9px;color:var(--white);z-index:5}.uscreen-brand i{width:28px;aspect-ratio:1;border-radius:50%;background:#016aff;position:relative}.uscreen-brand i::after{content:"";position:absolute;left:11px;top:8px;border-left:9px solid white;border-top:6px solid transparent;border-bottom:6px solid transparent}.uscreen-brand b{font:900 clamp(1.5rem,2.5vw,2.6rem)/1 Arial,sans-serif;letter-spacing:-.06em}.uscreen-product-shot{position:absolute;right:6%;bottom:8%;width:min(34vw,470px);height:min(34vh,330px);margin:0;border:1px solid rgba(244,244,238,.5);background:#016aff;overflow:hidden;box-shadow:14px 14px 0 var(--accent);z-index:2}.uscreen-product-shot img{width:100%;height:calc(100% - 28px);object-fit:cover;object-position:center}.uscreen-product-shot figcaption{height:28px;padding:8px 10px;font-size:.56rem;letter-spacing:.08em;background:var(--ink);color:var(--white)}

.signature-video--alt{z-index:-3;animation:signature-cut 12s steps(1,end) infinite}@keyframes signature-cut{0%,46%{opacity:0}50%,96%{opacity:.66}100%{opacity:0}}
.project-credit{display:inline-block;margin-top:22px;padding:8px 10px;border:1px solid rgba(244,244,238,.6);font-size:.64rem;letter-spacing:.1em;color:var(--accent)}

.reader-first,.reader-last,.reader-fullscreen,.reader-download{border:1px solid currentColor;background:transparent;color:var(--white);padding:10px 13px;cursor:pointer;font-size:.7rem;letter-spacing:.08em;text-decoration:none}
.reader-first:hover,.reader-last:hover,.reader-fullscreen:hover,.reader-download:hover{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.reader-first:disabled,.reader-last:disabled{opacity:.3;cursor:not-allowed}
.pdf-reader--overlay .reader-controls{width:min(920px,calc(100vw - 40px));justify-content:center;gap:6px;flex-wrap:wrap}
.pdf-reader--overlay .reader-controls :is(button,a){pointer-events:auto;border:0;background:rgba(10,10,10,.58);backdrop-filter:blur(5px);white-space:nowrap}
.pdf-reader--overlay:fullscreen{width:100vw;height:100vh;background:#070707}

@media(max-width:820px){
  .site-intro{padding:20px}.site-intro-lockup{display:block}.site-intro-lockup>b{font-size:clamp(7rem,38vw,11rem)}.site-intro-lockup p{font-size:clamp(2.7rem,12.5vw,5rem);margin-top:30px}.site-intro-top span:last-child{display:none}.site-intro-bottom>span{font-size:.58rem}
  .feature-mark{top:88px}.feature-mark--holo{top:auto}.scene--rank .feature-mark{top:88px;left:var(--pad);right:auto}.project-facts{grid-template-columns:1fr 1fr}
  .scene--solo-project .duo-figure--wide{grid-column:1;width:100%;height:42vh}.solo-project-note{position:relative;left:auto;bottom:auto;width:100%;grid-row:3;margin-top:14px}.scene--green-squat{grid-template-columns:1fr}.scene--green-squat .duo-title{grid-column:1}.scene--green-squat .duo-figure--portrait{grid-column:1;grid-row:2;width:min(74%,390px);height:58vh}.split-half--full{padding-inline:28px}
  .channel-metrics{grid-template-columns:1fr 1fr;margin-top:0}.channel-metrics span:last-child{grid-column:1/-1}
  .uscreen-product-shot{width:55vw;height:27vh;right:8%;bottom:10%}.uscreen-brand{top:94px}
  .pdf-reader--overlay .reader-controls{bottom:10px;width:calc(100vw - 20px);gap:3px}.reader-first,.reader-last{display:none}.reader-fullscreen,.reader-download,.reader-prev,.reader-next{padding:8px 9px;font-size:.56rem}.reader-count{font-size:1.2rem}
}

@media(prefers-reduced-motion:reduce){.site-intro-grid,.site-intro-lockup>b,.site-intro-lockup p,.site-intro-top::after,.signature-video--alt{animation:none}.site-intro{transition:none}.signature-video--alt{display:none}}

/* Source: experience.css */
/* Editorial rhythm and native scroll sequences. */
:root { --sticky-top:0px;--motion-stage-height:100svh; }
html { scroll-padding-top:var(--sticky-top); }
.scene { container-type:inline-size; }
.scene > *, .case-copy, .split-half, .cards-copy, .editorial-copy { min-width:0; }
.scene h1,.scene h2,.scene h3,.contact h2 { line-height:1.04;letter-spacing:.005em;text-wrap:balance; }
.scene .eyebrow,.scene .kicker { line-height:1.6; }
.scene p { overflow-wrap:break-word; }
.grain { opacity:.105; }
.timeline-item { flex-shrink:0; }
.timeline-item.active { height:var(--year-space,220px); }
.year { letter-spacing:.005em;gap:.03em;line-height:1; }
.timeline { gap:clamp(5px,1vh,12px); }
.rail { padding-block:22px; }
.rail-links,.coordinates { font-size:10px; }
.scene--hero { display:grid;grid-template-columns:.85fr 1.15fr;gap:32px;align-items:center;align-content:center;padding-block:90px;min-height:100svh; }
.hero-copy { align-self:center; }
.hero-copy h1 { font-size:clamp(5rem,13cqw,15rem);line-height:.99;max-width:100%;margin:22px 0; }
.hero-meta { flex-wrap:wrap;gap:10px 24px;margin-top:28px;line-height:1.5; }
.media-frame--hero { position:relative;right:auto;bottom:auto;width:100%;height:clamp(350px,66vh,820px); }
.media-frame--hero img { object-position:48% 50%; }
.media-frame { clip-path:none;box-shadow:10px 10px 0 var(--accent); }
.scene--case { gap:clamp(24px,4vw,64px);padding-block:90px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
.case-copy h2 { font-size:clamp(2.5rem,5.5cqw,6rem);margin:22px 0; }
.case-copy>p:last-of-type { font-size:clamp(1rem,1.4cqw,1.15rem);line-height:1.7; }
.case-media { min-width:0; }
.scene--duo { padding-block:85px; }
.duo-title h2 { font-size:clamp(3rem,7.4cqw,8rem); }
.duo-title { align-items:center;justify-content:space-between; }
.project-brief { position:relative;z-index:4;align-self:center;padding:clamp(20px,2.4vw,34px);border-left:6px solid var(--accent);background:rgba(184,184,177,.92); }
.project-brief > span { display:block;font:700 .72rem/1.5 var(--mono);letter-spacing:.08em; }
.project-brief h3 { max-width:12ch;margin:14px 0;font:900 clamp(2rem,3.5cqw,3.8rem)/1.02 var(--display);letter-spacing:.005em; }
.project-brief p { max-width:42ch;margin:0;font-size:clamp(1rem,1.14cqw,1.1rem);line-height:1.58; }
.project-brief > div { display:flex;flex-wrap:wrap;gap:6px;margin-top:20px; }
.project-brief b { padding:7px 9px;border:1px solid var(--ink);font:700 .66rem/1 var(--mono);letter-spacing:.06em; }
.scene--micro-profile { grid-template-columns:1.16fr .84fr; }
.scene--micro-profile .duo-figure { grid-column:1;grid-row:2;height:52vh; }
.scene--micro-profile .project-brief { grid-column:2;grid-row:2; }
.scene--green-squat .project-brief { grid-column:1;grid-row:2;max-width:640px; }
.split-half { padding:clamp(26px,4vw,65px); }
.split-half h3 { font-size:clamp(2.5rem,5.6cqw,6rem); }
.poster-copy h2 { font-size:clamp(3rem,9cqw,9rem);max-width:84%; }
.process-head h2 { font-size:clamp(3rem,6.5cqw,7rem); }
.editorial-title h2 { font-size:clamp(4rem,13cqw,14rem); }
.seo-stack span { line-height:1.06;letter-spacing:.015em;font-size:clamp(4rem,13cqw,13rem); }
.rank-copy h2 { font-size:clamp(5rem,13cqw,14rem); }
.signature-copy h2 { font-size:clamp(4rem,12cqw,12rem); }
.scene--signature { padding-bottom:95px; }
.campaign-copy h2 { font-size:clamp(4rem,10cqw,10rem); }
.campaign-stack { width:47%;right:4%; }
.ca-system-head h2 { font-size:clamp(3rem,6.5cqw,7rem); }
.cards-copy h2 { font-size:clamp(3rem,6cqw,6rem); }
.scene--cards { grid-template-columns:minmax(260px,.66fr) minmax(0,1.34fr); }
.tactimon-card { width:clamp(155px,17cqw,235px); }
.scene--koloro { display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:center;align-content:center;padding-block:90px; }
.koloro-copy h2 { font-size:clamp(5rem,14cqw,15rem); }
.koloro-frame { position:relative;right:auto;bottom:auto;width:100%;height:55vh;min-height:300px; }
.final-project-copy h2 { font-size:clamp(3rem,8cqw,8rem); }
.contact { padding-block:110px; }
.contact h2 { font-size:clamp(3.5rem,9vw,10rem);max-width:100%; }
.outline-title { font-size:clamp(4rem,10cqw,10rem); }
.scene--manifesto { padding-block:100px; }
.mandralmier-head h2 { font-size:clamp(4rem,7vw,8rem);line-height:1.05; }
.holocorp-head h2 { line-height:1.03; }
.scene--holo-system { position:relative;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(30px,5vw,84px);align-items:center;overflow:hidden; }
.scene--holo-system::after { content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.9%,rgba(15,15,15,.16) 50%,transparent 50.1%);background-size:72px 100%;opacity:.28; }
.holo-system-head { position:relative;z-index:2; }
.holo-system-head h2 { font:900 clamp(3rem,6.4cqw,6.8rem)/1.02 var(--display);letter-spacing:.005em;margin:18px 0 25px; }
.holo-system-head > p:last-child { max-width:39ch;font-size:clamp(1rem,1.15cqw,1.12rem);line-height:1.65; }
.holo-system-flow { position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;padding:0;margin:0;list-style:none;background:var(--ink);border:1px solid var(--ink); }
.holo-system-flow li { position:relative;min-height:390px;padding:24px 20px;display:flex;flex-direction:column;background:var(--paper);transition:background .35s,color .35s; }
.holo-system-flow li::after { content:'→';position:absolute;z-index:3;right:-17px;top:50%;width:32px;height:32px;display:grid;place-items:center;background:var(--accent);color:var(--ink);font:900 1rem/1 var(--mono); }
.holo-system-flow li:last-child::after { display:none; }
.holo-system-flow b,.holo-system-flow span { font:700 .72rem/1.4 var(--mono);letter-spacing:.08em; }
.holo-system-flow b { width:32px;height:32px;display:grid;place-items:center;margin-bottom:auto;border:1px solid currentColor; }
.holo-system-flow strong { font:900 clamp(1.5rem,2.7cqw,3rem)/.98 var(--display);overflow-wrap:anywhere;margin:42px 0 20px; }
.holo-system-flow p { font-size:.9rem;line-height:1.55;margin:0; }
.holo-system-flow li:hover { background:var(--ink);color:var(--white); }
.holo-system-signal { position:absolute;z-index:3;left:var(--pad);right:var(--pad);bottom:30px;display:flex;gap:6px;align-items:center;border-top:1px solid var(--ink);padding-top:12px; }
.holo-system-signal i { width:8px;height:8px;background:var(--accent);animation:signalPulse 1.4s ease-in-out infinite alternate; }
.holo-system-signal i:nth-child(2) { animation-delay:.2s; }.holo-system-signal i:nth-child(3) { animation-delay:.4s; }
.holo-system-signal span { margin-left:auto;font:700 .68rem/1 var(--mono);letter-spacing:.1em; }
@keyframes signalPulse { to { transform:scale(1.8);background:var(--ink); } }
.metric-block strong { position:relative;z-index:2;line-height:1;letter-spacing:0; }
.metric-block { min-height:370px; }
.metric-graph,.metric-bars { opacity:.6; }
.metrics-head h2 { font-size:clamp(3rem,6cqw,6rem); }
.metrics-head { gap:24px; }
.metrics-head .eyebrow { max-width:35ch; }
.metric-label { line-height:1.55; }
.rank-seal { margin:40px auto; }
.rank-seal span { font-family:var(--mono);font-size:clamp(2.4rem,4cqw,4rem);letter-spacing:-.03em; }
.duo-figure.reveal { clip-path:inset(0 0 calc((1 - var(--vis,1))*65%) 0); }
.process-track li { transition:background .4s,color .4s; }
.process-track li:hover { background:var(--ink);color:var(--white); }
.motion-pin:not(.is-pinned) .motion-navigation { display:none; }
.is-pinned { height:var(--sequence-height);position:relative; }
.is-pinned .motion-stage { position:sticky;top:0;height:var(--motion-stage-height);overflow:hidden;background:var(--ink); }
.is-pinned [data-scroll-copy],.is-pinned .scene[data-scroll-copy] { overflow-y:hidden!important;scroll-behavior:auto; }
.is-pinned .motion-track { height:100%; }
.motion-pin--horizontal.is-pinned .motion-track { display:flex;will-change:transform; }
.is-pinned .motion-track > .scene { flex:0 0 100%;width:100%;min-height:100%;height:100%;padding-block:80px 105px; }
.is-pinned .reveal,.is-pinned .reveal--late { opacity:1;transform:none; }
.motion-pin--horizontal.is-pinned .motion-track > .scene { --panel-in:0;isolation:isolate; }
.motion-pin--horizontal.is-pinned .duo-title,
.motion-pin--horizontal.is-pinned .split-half,
.motion-pin--horizontal.is-pinned .seo-stack,
.motion-pin--horizontal.is-pinned .editorial-title,
.motion-pin--horizontal.is-pinned .editorial-grid,
.motion-pin--horizontal.is-pinned .rank-copy,
.motion-pin--horizontal.is-pinned .case-copy,
.motion-pin--horizontal.is-pinned .metrics-head,
.motion-pin--horizontal.is-pinned .metrics-dashboard,
.motion-pin--horizontal.is-pinned .koloro-copy,
.motion-pin--horizontal.is-pinned .final-project-copy,
.motion-pin--horizontal.is-pinned .hero-copy,
.motion-pin--horizontal.is-pinned .cards-copy,
.motion-pin--horizontal.is-pinned .rules-head,
.motion-pin--horizontal.is-pinned .rules-grid,
.motion-pin--horizontal.is-pinned .rules-flow,
.motion-pin--horizontal.is-pinned .poster-copy,
.motion-pin--horizontal.is-pinned .process-head,
.motion-pin--horizontal.is-pinned .process-intro,
.motion-pin--horizontal.is-pinned .process-track,
.motion-pin--horizontal.is-pinned .channel-metrics,
.motion-pin--horizontal.is-pinned .signature-copy,
.motion-pin--horizontal.is-pinned .campaign-copy,
.motion-pin--horizontal.is-pinned .ca-system-head,
.motion-pin--horizontal.is-pinned .format-selector,
.motion-pin--horizontal.is-pinned .holo-system-head,
.motion-pin--horizontal.is-pinned .holo-system-flow,
.motion-pin--horizontal.is-pinned .holo-system-signal {
  opacity:clamp(.15,var(--panel-in),1);
  transform:translate3d(calc((1 - var(--panel-in))*54px),0,0);
}
.motion-pin--horizontal.is-pinned .duo-figure,
.motion-pin--horizontal.is-pinned .uscreen-product-shot,
.motion-pin--horizontal.is-pinned .koloro-frame,
.motion-pin--horizontal.is-pinned .final-image,
.motion-pin--horizontal.is-pinned .media-frame--hero,
.motion-pin--horizontal.is-pinned .case-media,
.motion-pin--horizontal.is-pinned .card-system--fan,
.motion-pin--horizontal.is-pinned .poster-image,
.motion-pin--horizontal.is-pinned .signature-video,
.motion-pin--horizontal.is-pinned .campaign-stack {
  opacity:clamp(.22,var(--panel-in),1);
  clip-path:inset(0 calc((1 - var(--panel-in))*46%) 0 0);
}
.motion-pin--horizontal.is-pinned .process-track li,
.motion-pin--horizontal.is-pinned .channel-metrics > span,
.motion-pin--horizontal.is-pinned .rule-module {
  transform:translateY(calc((1 - var(--panel-in))*28px));
  opacity:clamp(.18,var(--panel-in),1);
}
.motion-pin--horizontal.is-pinned .rank-bars i {
  transform-origin:bottom;
  transform:scaleY(clamp(0,calc(var(--panel-in)*1.45 - .18),1));
}
.motion-pin--horizontal.is-pinned .search-orbit {
  opacity:clamp(.15,var(--panel-in),1);
  transform:translate3d(calc((1 - var(--panel-in))*80px),calc((1 - var(--panel-in))*-35px),0) rotate(calc((1 - var(--panel-in))*-18deg));
}
.motion-navigation { position:absolute;z-index:25;left:var(--pad);right:var(--pad);bottom:24px;display:flex;gap:8px;align-items:center;color:var(--white);background:var(--ink);padding:12px 16px;border:1px solid rgba(244,244,238,.4); }
.motion-navigation::before { content:'';position:absolute;left:-1px;top:-2px;height:3px;background:var(--accent);width:calc(var(--sequence-progress,0)*100%); }
.motion-navigation > span { margin-right:auto;font-size:12px;letter-spacing:.08em; }
.motion-navigation button { border:1px solid #666;background:transparent;padding:8px 14px;cursor:pointer;font-size:12px; }
.motion-navigation button[aria-current=step],.motion-navigation button:hover { background:var(--accent);color:var(--ink);border-color:var(--accent); }
.is-pinned .scene--ca-system { align-content:center; }
.panel-current .color-register span,.panel-current .campaign-stack img { filter:grayscale(0);transition:filter 1s ease; }
.is-pinned .ca-system-head { gap:12px 32px; }
.is-pinned .ca-system-head h2 { font-size:clamp(3rem,5cqw,5.5rem); }
.is-pinned .ca-system-head p:last-child { font-size:1rem;line-height:1.55; }
.is-pinned .case-copy h2 { font-size:clamp(2.5rem,4.7cqw,5rem); }
.is-pinned .case-copy>p:last-of-type { font-size:1rem;line-height:1.6; }
.is-pinned .scene--cards { min-height:100%; }
.is-pinned .card-system--fan { min-height:min(66vh,650px); }
.is-pinned .tactimon-fan .tactimon-card:not(.is-selected) { transform:translateX(calc(-50% + var(--x)*var(--fan,0))) translateY(calc((1 - var(--fan,0))*58px + var(--y)*var(--fan,0))) rotate(calc(var(--rot)*var(--fan,0))); }
.is-pinned .scene--express-metrics .metric-block { transform:translateY(calc((1 - var(--metric-progress,1))*35px));border-color:rgba(234,255,0,var(--metric-progress,1)); }
.is-pinned .scene--express-metrics .metric-trace { stroke-dashoffset:calc(1 - var(--metric-progress,1)); }
.is-pinned .scene--express-metrics .metric-bars i { transform:scaleY(var(--metric-progress,1)); }
.is-pinned .scene--express-metrics .rank-seal { transform:rotate(calc((1 - var(--metric-progress,1))*-65deg)) scale(calc(.8 + var(--metric-progress,1)*.2)); }
.is-pinned .scene--express-metrics { align-content:start;padding-top:44px;padding-bottom:104px; }
.is-pinned .scene--express-metrics .metrics-head { margin-bottom:16px; }
.is-pinned .scene--express-metrics .metrics-head h2 { font-size:clamp(2.6rem,5cqw,4.8rem); }
.is-pinned .scene--express-metrics .metric-block { min-height:300px; }
.is-pinned .scene--express-metrics .metric-block strong { margin-top:20px; }
.is-pinned .scene--process { grid-template-rows:auto auto auto;gap:16px 34px;align-content:center;padding-top:62px; }
.is-pinned .scene--process .process-head h2 { font-size:clamp(3rem,5.2cqw,5.2rem);margin:10px 0; }
.is-pinned .scene--process .process-intro { font-size:1rem;line-height:1.48; }
.is-pinned .scene--process .process-track { margin-top:4px; }
.is-pinned .scene--process .process-track li { min-height:92px;padding-block:14px 9px; }
.is-pinned .scene--process .process-track b { font-size:1.75rem;margin-bottom:12px; }
.is-pinned .scene--process .channel-metrics { margin-top:0; }
.is-pinned .scene--process .channel-metrics span { min-height:70px; }
.is-pinned .scene--holo-system { align-content:center; }
.is-pinned .holo-system-flow li { min-height:350px; }
@media(max-width:959px) {
  .motion-pin--horizontal:not(.is-pinned):not(.motion-pin--complex) .motion-stage { overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none; }
  .motion-pin--horizontal:not(.is-pinned):not(.motion-pin--complex) .motion-stage::-webkit-scrollbar { display:none; }
  .motion-pin--horizontal:not(.is-pinned):not(.motion-pin--complex) .motion-track { display:flex;width:100%; }
  .motion-pin--horizontal:not(.is-pinned):not(.motion-pin--complex) .motion-track > .scene { flex:0 0 100%;width:100%;scroll-snap-align:start;scroll-snap-stop:always; }
  .motion-pin--horizontal:not(.is-pinned) .duo-title,
  .motion-pin--horizontal:not(.is-pinned) .split-half,
  .motion-pin--horizontal:not(.is-pinned) .seo-stack,
  .motion-pin--horizontal:not(.is-pinned) .editorial-title,
  .motion-pin--horizontal:not(.is-pinned) .editorial-grid,
  .motion-pin--horizontal:not(.is-pinned) .rank-copy,
  .motion-pin--horizontal:not(.is-pinned) .case-copy,
  .motion-pin--horizontal:not(.is-pinned) .metrics-head,
  .motion-pin--horizontal:not(.is-pinned) .metrics-dashboard,
  .motion-pin--horizontal:not(.is-pinned) .koloro-copy,
  .motion-pin--horizontal:not(.is-pinned) .final-project-copy { opacity:clamp(.2,var(--panel-in),1);transform:translate3d(calc((1 - var(--panel-in))*38px),0,0); }
  .motion-pin--horizontal:not(.is-pinned) .duo-figure,
  .motion-pin--horizontal:not(.is-pinned) .uscreen-product-shot,
  .motion-pin--horizontal:not(.is-pinned) .koloro-frame,
  .motion-pin--horizontal:not(.is-pinned) .final-image { opacity:clamp(.25,var(--panel-in),1);clip-path:inset(0 calc((1 - var(--panel-in))*35%) 0 0); }
}
@media(max-width:1099px) {
  .scene--cards { grid-template-columns:1fr;min-height:1100px; }
  .cards-copy { max-width:600px; }
  .metrics-dashboard { grid-template-columns:1fr; }
  .scene--express-metrics { padding-block:85px; }
  .rank-seal { width:190px; }
  .metrics-head { display:block; }
  .metric-block strong { font-size:6rem; }
}
@media(max-width:820px) {
  :root { --sticky-top:76px;--motion-stage-height:calc(100svh - 76px);--mobile-stage-height:var(--motion-stage-height); }
  .is-pinned .motion-stage { top:76px;height:var(--mobile-stage-height); }
  .is-pinned .motion-track>.scene { min-height:100%!important;height:100%;overflow:hidden;padding-bottom:74px!important; }
  .motion-navigation { left:12px;right:70px;bottom:10px;min-height:54px;padding:7px 8px;gap:6px; }
  .motion-navigation>span { display:none; }
  .motion-navigation button { flex:1 1 0;min-width:0;padding:8px 5px;font-size:11px; }
  .rail { padding:12px 16px; }
  .timeline-item.active { height:42px;width:max(60px,var(--year-space,60px)); }
  .timeline-item { width:13px; }
  .timeline { gap:3px; }
  .year { font-size:1.35rem; }
  .scene { min-height:100svh;padding-block:75px; }
  .scene--hero,.scene--koloro { grid-template-columns:1fr;gap:32px; }
  .hero-copy h1 { font-size:clamp(5rem,23cqw,9rem); }
  .media-frame--hero { width:100%;height:52vh;min-height:300px; }
  .scene--case { grid-template-columns:1fr;gap:35px; }
  .case-copy h2,.cards-copy h2 { font-size:clamp(2.5rem,10cqw,4.8rem); }
  .duo-title h2 { font-size:clamp(2.5rem,12cqw,5rem); }
  .scene--micro-profile { grid-template-columns:1fr;min-height:1050px;align-content:start; }
  .scene--micro-profile .duo-title,.scene--micro-profile .duo-figure,.scene--micro-profile .project-brief { grid-column:1;grid-row:auto; }
  .scene--micro-profile .duo-figure { height:34vh;min-height:240px; }
  .scene--green-squat { min-height:1180px;align-content:start; }
  .scene--green-squat .project-brief { grid-column:1;grid-row:3; }
  .project-brief h3 { font-size:clamp(2.2rem,10cqw,3.6rem); }
  .split-half h3 { font-size:clamp(2.4rem,11cqw,4rem); }
  .scene--split-copy { padding:0; }
  .split-half { padding:65px 26px; }
  .scene--campaign { min-height:1000px; }
  .campaign-stack { width:80%;right:5%; }
  .campaign-copy h2 { font-size:clamp(3.5rem,15cqw,6rem); }
  .scene--ca-system { min-height:0; }
  .ca-system-head h2 { font-size:clamp(2.5rem,11cqw,4rem); }
  .scene--cards { min-height:0; }
  .poster-copy h2 { max-width:100%;font-size:clamp(3rem,12cqw,6rem); }
  .play-mark { display:none; }
  .editorial-title h2 { font-size:clamp(3.4rem,16cqw,7rem); }
  .process-head h2 { font-size:clamp(3rem,12cqw,5rem); }
  .rank-copy h2,.signature-copy h2 { font-size:clamp(4rem,16cqw,7rem); }
  .koloro-copy h2 { font-size:clamp(5rem,23cqw,9rem); }
  .final-project-copy h2 { font-size:clamp(3rem,13cqw,5rem); }
  .contact h2 { font-size:clamp(3rem,11vw,6rem); }
  .contact-top,.contact-bottom { font-size:10px;line-height:1.6; }
  .outline-title { font-size:clamp(3rem,14cqw,6rem); }
  .scene--mandralmier,.scene--holocorp { padding:0; }
  .scene--mandralmier { min-height:260svh; }
  .scene--holocorp { min-height:300svh; }
  .mandralmier-head h2 { font-size:clamp(3rem,13vw,5rem); }
  .holocorp-head h2 { font-size:clamp(3rem,13vw,5rem); }
  .scene--holo-system { grid-template-columns:1fr;gap:32px;align-content:start;min-height:1180px;padding-top:92px; }
  .holo-system-head h2 { font-size:clamp(3rem,13cqw,5rem); }
  .holo-system-flow { grid-template-columns:1fr; }
  .holo-system-flow li { min-height:210px; }
  .holo-system-flow li::after { right:24px;top:auto;bottom:-17px;transform:rotate(90deg); }
  .holo-system-flow strong { margin:25px 0 14px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important;transition:none!important; }
  .scene--mandralmier,.scene--holocorp { min-height:100svh; }
  .holo-system-signal i { animation:none; }
}

@media(max-width:959px) and (prefers-reduced-motion:no-preference), (max-height:619px) and (prefers-reduced-motion:no-preference) {
  .motion-pin:not(.is-pinned) .motion-track>.scene {
    opacity:clamp(.35,var(--vis,1),1);
    transform:translate3d(0,calc((1 - var(--vis,1))*34px),0);
    transition:opacity .12s linear,transform .12s linear;
  }
}

/* Source: sector-themes.css */
/* Sector dialects — one visual system, ten professional contexts. */
:root { --active-accent:#eaff00; }

#tactimon { --accent:#eaff00;--sector-rgb:234 255 0;--sector-label:"TACTICAL / GAME SYSTEM"; }
#microwarfare { --accent:#ff6b22;--sector-rgb:255 107 34;--sector-label:"MICRO SCALE / FABRICATION"; }
#green-squat { --accent:#39e58c;--sector-rgb:57 229 140;--sector-label:"EDITORIAL / COLLECTIVE"; }
#chevelus { --accent:#ff4038;--sector-rgb:255 64 56;--sector-label:"FILM / DOCUMENTARY"; }
#uscreen { --accent:#4aa3ff;--sector-rgb:74 163 255;--sector-label:"SEARCH / CONTENT OPS"; }
#expressvpn { --accent:#ff3162;--sector-rgb:255 49 98;--sector-label:"OUTREACH / AUTHORITY"; }
#signaturegt { --accent:#ff4828;--sector-rgb:255 72 40;--sector-label:"AUTOMOTIVE / MOTION"; }
#credit-agricole { --accent:#ff841f;--sector-rgb:255 132 31;--sector-label:"CAMPAIGN / PRINT"; }
#holocorp { --accent:#2df5ff;--sector-rgb:45 245 255;--sector-label:"GESTURE / HOLOGRAPHY"; }
#koloro { --accent:#ffad1f;--sector-rgb:255 173 31;--sector-label:"PLATFORM / PIXEL WORLD"; }

.rail { --accent:var(--active-accent); }
.timeline-item.active::after { content:"";position:absolute;right:2px;top:50%;width:5px;height:34px;background:var(--active-accent);transform:translateY(-50%);box-shadow:0 0 18px color-mix(in srgb,var(--active-accent) 65%,transparent); }
.scene-index { padding:7px 9px;color:var(--ink);background:var(--accent);border:1px solid currentColor; }
.tone-dark .scene-index,.tone-smoke .scene-index { color:var(--ink); }
.chapter .eyebrow,.chapter .kicker { text-decoration-color:var(--accent);text-decoration-thickness:3px;text-underline-offset:7px; }
.chapter .panel-current .eyebrow,.chapter .panel-current .kicker { text-decoration-line:underline; }

.sector-motif { position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none;color:var(--accent);opacity:clamp(.2,var(--panel-in,1),.45);transform:translate3d(calc((var(--scan,.5) - .5)*-32px),0,0);transition:opacity .2s linear; }
.tone-dark .sector-motif,.tone-smoke .sector-motif { opacity:clamp(.28,var(--panel-in,1),.56); }
.sector-motif::before { content:var(--sector-label);position:absolute;left:13px;top:50%;writing-mode:vertical-rl;transform:translateY(-50%);font:700 .58rem/1 var(--mono);letter-spacing:.16em;color:currentColor;opacity:.75; }
.sector-motif::after { content:attr(data-panel);position:absolute;right:1.8%;bottom:-.08em;font:900 clamp(8rem,20vw,22rem)/.74 var(--display);letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px rgb(var(--sector-rgb) / .2); }
.sector-motif i { position:absolute;display:block;border-color:currentColor; }

.sector-console { position:absolute;z-index:16;top:var(--pad);right:calc(var(--pad) + 92px);width:clamp(245px,24vw,360px);min-height:48px;display:grid;grid-template-columns:1fr 86px;align-items:stretch;border:1px solid rgb(var(--sector-rgb) / .52);border-top:4px solid var(--accent);background:color-mix(in srgb,var(--paper) 88%,transparent);color:var(--ink);backdrop-filter:blur(9px);opacity:clamp(.18,var(--panel-in,1),1);transform:translateY(calc((1 - var(--panel-in,1))*-16px));transition:opacity .2s linear; }
.tone-dark .sector-console,.tone-smoke .sector-console { background:color-mix(in srgb,var(--ink) 84%,transparent);color:var(--white); }
.sector-console > span:first-child { display:flex;flex-direction:column;justify-content:center;gap:3px;padding:8px 10px;border-right:1px solid rgb(var(--sector-rgb) / .4); }
.sector-console b { font:700 .62rem/1.2 var(--mono);letter-spacing:.09em;color:var(--accent); }
.sector-console small { font:400 .56rem/1.25 var(--mono);letter-spacing:.055em;white-space:nowrap; }
.sector-console__signal { display:flex;align-items:flex-end;justify-content:center;gap:4px;height:47px;padding:8px;overflow:hidden; }
.sector-console__signal i { width:5px;height:var(--h,65%);display:block;background:var(--accent);transform-origin:bottom;transform:scaleY(clamp(.18,var(--panel-in,1),1)) translateY(calc((var(--scan,.5) - .5)*8px)); }
.sector-console__signal i:nth-child(1) { --h:28%; }.sector-console__signal i:nth-child(2) { --h:52%; }.sector-console__signal i:nth-child(3) { --h:88%; }.sector-console__signal i:nth-child(4) { --h:44%; }.sector-console__signal i:nth-child(5) { --h:72%; }.sector-console__signal i:nth-child(6) { --h:34%; }.sector-console__signal i:nth-child(7) { --h:96%; }.sector-console__signal i:nth-child(8) { --h:61%; }
.chapter .motion-stage { box-shadow:inset 0 4px 0 var(--accent); }
.motion-pin.is-pinned .motion-stage::after { content:"";position:absolute;z-index:13;top:0;bottom:0;left:calc(var(--sequence-progress,0)*100%);width:1px;pointer-events:none;background:linear-gradient(transparent 4%,var(--accent) 28%,var(--accent) 72%,transparent 96%);box-shadow:0 0 24px rgb(var(--sector-rgb) / .42);opacity:.34; }

.project-dna { position:absolute;z-index:21;top:var(--pad);right:calc(var(--pad) + 92px);width:min(420px,41cqw);display:grid;grid-template-columns:minmax(120px,1.05fr) minmax(130px,1fr) 64px;gap:10px;padding:10px;color:var(--white);background:color-mix(in srgb,var(--ink) 91%,transparent);border:1px solid rgb(var(--sector-rgb) / .65);border-top:5px solid var(--accent);box-shadow:8px 8px 0 rgb(var(--sector-rgb) / .17);clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);backdrop-filter:blur(11px);opacity:clamp(.35,var(--panel-in,1),1);transform:translate3d(calc((1 - var(--panel-in,1))*22px),0,0);pointer-events:none; }
.project-dna__heading { display:flex;min-width:0;flex-direction:column;gap:3px;justify-content:center;padding-right:9px;border-right:1px solid rgb(var(--sector-rgb) / .35); }
.project-dna__heading span { font:700 .58rem/1 var(--mono);letter-spacing:.13em;color:var(--accent); }
.project-dna__heading strong { font:900 clamp(.88rem,1.25cqw,1.12rem)/1.08 var(--display);letter-spacing:.025em; }
.project-dna__heading small { font:700 .6rem/1.2 var(--mono);letter-spacing:.07em;opacity:.72; }
.project-dna__skills { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:4px;margin:0;padding:0;list-style:none; }
.project-dna__skills li { min-width:0;padding:4px 5px;border-left:2px solid var(--accent);background:rgb(var(--sector-rgb) / .08);font:700 .54rem/1.2 var(--mono);letter-spacing:.045em;overflow-wrap:anywhere; }
.project-dna__glyph { position:relative;width:64px;height:64px;align-self:center;border:1px solid rgb(var(--sector-rgb) / .5);overflow:hidden;background:rgb(var(--sector-rgb) / .045); }
.project-dna__glyph i { position:absolute;display:block;border-color:var(--accent);background:var(--accent); }

.project-dna--tactimon .project-dna__glyph { background-image:linear-gradient(rgb(var(--sector-rgb) / .2) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--sector-rgb) / .2) 1px,transparent 1px);background-size:16px 16px; }
.project-dna--tactimon .project-dna__glyph i { width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 4px rgb(var(--sector-rgb) / .13); }
.project-dna--tactimon .project-dna__glyph i:nth-child(1) { left:13px;top:11px; }.project-dna--tactimon .project-dna__glyph i:nth-child(2) { right:11px;top:26px; }.project-dna--tactimon .project-dna__glyph i:nth-child(3) { left:27px;bottom:10px; }

.project-dna--microwarfare .project-dna__glyph { background:repeating-linear-gradient(90deg,transparent 0 7px,rgb(var(--sector-rgb) / .25) 7px 8px); }
.project-dna--microwarfare .project-dna__glyph i { bottom:7px;width:6px;transform-origin:bottom; }.project-dna--microwarfare .project-dna__glyph i:nth-child(1) { left:10px;height:18px; }.project-dna--microwarfare .project-dna__glyph i:nth-child(2) { left:21px;height:37px; }.project-dna--microwarfare .project-dna__glyph i:nth-child(3) { left:32px;height:25px; }.project-dna--microwarfare .project-dna__glyph i:nth-child(4) { left:43px;height:48px; }

.project-dna--green-squat .project-dna__glyph i { width:34px;height:43px;left:14px;top:10px;background:transparent;border:1px solid var(--accent);box-shadow:5px 5px 0 rgb(var(--sector-rgb) / .18); }.project-dna--green-squat .project-dna__glyph i:nth-child(2) { width:22px;height:2px;top:20px;background:var(--accent);box-shadow:0 7px 0 var(--accent),0 14px 0 var(--accent); }

.project-dna--chevelus .project-dna__glyph i { left:8px;bottom:12px;width:4px;height:var(--wave,20px);transform-origin:bottom; }.project-dna--chevelus .project-dna__glyph i:nth-child(1) { --wave:12px; }.project-dna--chevelus .project-dna__glyph i:nth-child(2) { left:18px;--wave:31px; }.project-dna--chevelus .project-dna__glyph i:nth-child(3) { left:28px;--wave:44px; }.project-dna--chevelus .project-dna__glyph i:nth-child(4) { left:38px;--wave:25px; }.project-dna--chevelus .project-dna__glyph i:nth-child(5) { left:48px;--wave:16px; }

.project-dna--uscreen .project-dna__glyph i:nth-child(1) { left:12px;top:12px;width:31px;height:31px;background:transparent;border:3px solid var(--accent);border-radius:50%; }.project-dna--uscreen .project-dna__glyph i:nth-child(2) { left:40px;top:40px;width:18px;height:3px;transform:rotate(45deg);transform-origin:left; }

.project-dna--expressvpn .project-dna__glyph i { width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 4px rgb(var(--sector-rgb) / .13); }.project-dna--expressvpn .project-dna__glyph i:nth-child(1) { left:9px;top:13px; }.project-dna--expressvpn .project-dna__glyph i:nth-child(2) { right:10px;top:23px; }.project-dna--expressvpn .project-dna__glyph i:nth-child(3) { left:25px;bottom:10px; }.project-dna--expressvpn .project-dna__glyph i:nth-child(4),.project-dna--expressvpn .project-dna__glyph i:nth-child(5) { left:15px;top:18px;width:35px;height:1px;border-radius:0;box-shadow:none;transform:rotate(17deg); }.project-dna--expressvpn .project-dna__glyph i:nth-child(5) { left:29px;top:34px;width:27px;transform:rotate(-55deg); }

.project-dna--signaturegt .project-dna__glyph { border-radius:50% 50% 0 0;clip-path:inset(0 0 31px); }
.project-dna--signaturegt .project-dna__glyph i:nth-child(1) { left:30px;bottom:31px;width:27px;height:3px;transform:rotate(-48deg);transform-origin:left; }.project-dna--signaturegt .project-dna__glyph i:nth-child(2) { left:28px;bottom:29px;width:7px;height:7px;border-radius:50%; }

.project-dna--credit-agricole .project-dna__glyph i { left:13px;top:13px;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--accent); }.project-dna--credit-agricole .project-dna__glyph i:nth-child(2) { left:22px;top:22px;width:18px;height:18px; }.project-dna--credit-agricole .project-dna__glyph i:nth-child(3) { left:30px;top:5px;width:1px;height:52px;border-radius:0;background:var(--accent); }.project-dna--credit-agricole .project-dna__glyph i:nth-child(4) { left:5px;top:30px;width:52px;height:1px;border-radius:0;background:var(--accent); }

.project-dna--holocorp .project-dna__glyph i:nth-child(1) { left:12px;right:12px;top:9px;height:38px;background:rgb(var(--sector-rgb) / .08);border:1px solid var(--accent);box-shadow:0 0 12px rgb(var(--sector-rgb) / .5); }.project-dna--holocorp .project-dna__glyph i:nth-child(2) { left:8px;right:8px;bottom:8px;height:3px;box-shadow:0 0 9px var(--accent); }

.project-dna--koloro .project-dna__glyph i { width:12px;height:12px; }.project-dna--koloro .project-dna__glyph i:nth-child(1) { left:8px;bottom:8px; }.project-dna--koloro .project-dna__glyph i:nth-child(2) { left:20px;bottom:20px; }.project-dna--koloro .project-dna__glyph i:nth-child(3) { left:32px;bottom:20px; }.project-dna--koloro .project-dna__glyph i:nth-child(4) { left:44px;bottom:32px; }.project-dna--koloro .project-dna__glyph i:nth-child(5) { left:44px;bottom:44px; }

/* Scroll gates — the last project panel stays pinned until its overlay is complete. */
.project-gate { --gate-cover:0;--gate-detail:0;--gate-progress:0;--gate-color:var(--accent);position:absolute;z-index:45;inset:0;overflow:hidden;pointer-events:none;visibility:hidden;isolation:isolate;color:var(--gate-color);clip-path:inset(50%);will-change:clip-path; }
.project-gate.is-active { visibility:visible; }
.project-gate::before { content:"";position:absolute;z-index:-2;inset:0;background:color-mix(in srgb,var(--ink) 92%,var(--gate-color)); }
.project-gate::after { content:"";position:absolute;z-index:8;inset:0;background:linear-gradient(90deg,transparent 0 49.9%,var(--gate-color) 50%,transparent 50.1%),linear-gradient(transparent 0 49.9%,color-mix(in srgb,var(--gate-color) 55%,transparent) 50%,transparent 50.1%);opacity:calc(var(--gate-detail)*.7);transform:rotate(calc((var(--gate-progress) - .5)*8deg)) scale(1.1); }
.project-gate i { position:absolute;display:block;border-color:currentColor;background:currentColor;box-shadow:0 0 18px color-mix(in srgb,currentColor 48%,transparent);opacity:var(--gate-detail);will-change:transform,opacity; }
.motion-pin:not(.is-pinned) .project-gate { display:none; }

/* Tactimon → MicroWarfare: a tactical aperture becomes a fabrication mesh. */
.project-gate--forge { --gate-color:#ff6b22;clip-path:polygon(50% calc(50% - var(--gate-cover)*110%),calc(50% + var(--gate-cover)*110%) 50%,50% calc(50% + var(--gate-cover)*110%),calc(50% - var(--gate-cover)*110%) 50%); }
.project-gate--forge::before { background-color:#111;background-image:linear-gradient(color-mix(in srgb,var(--gate-color) 18%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--gate-color) 18%,transparent) 1px,transparent 1px);background-size:34px 34px; }
.project-gate--forge i { left:50%;top:50%;width:74vmax;height:1px;transform-origin:left;transform:rotate(calc(var(--i)*30deg)) scaleX(var(--gate-detail)); }

/* MicroWarfare → Green Squat: imposed sheets slide over the manufactured object. */
.project-gate--pages { --gate-color:#39e58c;clip-path:inset(0 calc((1 - var(--gate-cover))*100%) 0 0); }
.project-gate--pages::before { background:color-mix(in srgb,#151715 90%,var(--gate-color)); }
.project-gate--pages i { left:calc(-8% + var(--i)*9.8%);top:calc(7% + (var(--i) - 5)*1.4%);width:13%;height:86%;background:transparent;border:1px solid currentColor;box-shadow:10px 10px 0 color-mix(in srgb,var(--gate-color) 11%,transparent);transform:translateX(calc((1 - var(--gate-detail))*52vw)) rotate(calc((var(--i) - 5)*1.4deg)); }

/* Green Squat → Les Chevelus: a film gate closes from the top and bottom. */
.project-gate--shutter { --gate-color:#ff4038;clip-path:inset(calc((1 - var(--gate-cover))*50%) 0); }
.project-gate--shutter::before { background:linear-gradient(#090909 0 49.8%,var(--gate-color) 49.9% 50.1%,#090909 50.2%); }
.project-gate--shutter i { left:calc(2% + var(--i)*8.35%);top:3%;width:5.5%;height:8%;background:transparent;border:1px solid currentColor;transform:translateY(calc((1 - var(--gate-detail))*-90px)); }
.project-gate--shutter i:nth-child(even) { top:auto;bottom:3%;transform:translateY(calc((1 - var(--gate-detail))*90px)); }

/* Les Chevelus → Uscreen: the image is digitised by a vertical raster scan. */
.project-gate--scan { --gate-color:#4aa3ff;clip-path:inset(0 0 calc((1 - var(--gate-cover))*100%) 0); }
.project-gate--scan::before { background-color:#08101a;background-image:linear-gradient(color-mix(in srgb,var(--gate-color) 20%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--gate-color) 9%,transparent) 1px,transparent 1px);background-size:100% 9px,42px 100%; }
.project-gate--scan i { left:0;top:calc(5% + var(--i)*8%);width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--gate-color),transparent);transform:scaleX(calc(.15 + var(--gate-detail)*.85)); }

/* Uscreen → ExpressVPN: indexed points connect into an authority network. */
.project-gate--network { --gate-color:#ff3162;clip-path:circle(calc(var(--gate-cover)*82%) at 50% 50%); }
.project-gate--network::before { background-color:#13080d;background-image:linear-gradient(27deg,transparent 49.85%,color-mix(in srgb,var(--gate-color) 22%,transparent) 50%,transparent 50.15%); }
.project-gate--network i { left:calc(7% + var(--i)*7.7%);top:calc(18% + (var(--i) - 5)*(var(--i) - 5)*1.5%);width:clamp(7px,1vw,15px);aspect-ratio:1;border-radius:50%;transform:scale(var(--gate-detail));box-shadow:0 0 0 calc(4px + var(--i)*1px) color-mix(in srgb,var(--gate-color) 12%,transparent),0 0 21px var(--gate-color); }

/* ExpressVPN → Signature GT: the network contracts into a velocity tunnel. */
.project-gate--tunnel { --gate-color:#ff4828;clip-path:inset(calc((1 - var(--gate-cover))*50%));perspective:900px; }
.project-gate--tunnel::before { background:radial-gradient(circle at center,color-mix(in srgb,var(--gate-color) 12%,#080808),#080808 68%); }
.project-gate--tunnel i { inset:calc(5% + var(--i)*3.6%);background:transparent;border:2px solid currentColor;transform:translateZ(calc((1 - var(--gate-detail))*-700px)) rotate(calc(var(--i)*2deg)); }

/* Signature GT → Crédit Agricole: telemetry resolves into print registration. */
.project-gate--register { --gate-color:#ff841f;clip-path:polygon(0 0,calc(var(--gate-cover)*100%) 0,calc(var(--gate-cover)*100%) 100%,0 100%); }
.project-gate--register::before { background:#101010; }
.project-gate--register i { inset:calc(4% + var(--i)*3.6%);background:transparent;border:1px solid currentColor;border-radius:50%;transform:rotate(calc(var(--gate-progress)*120deg)) scale(var(--gate-detail)); }
.project-gate--register i:nth-child(4n+1) { color:#00b7d7; }.project-gate--register i:nth-child(4n+2) { color:#ec2d8b; }.project-gate--register i:nth-child(4n+3) { color:#ffd526; }.project-gate--register i:nth-child(4n) { color:#ff841f; }

/* Crédit Agricole → Holocorp: printed planes rise into an emissive interface. */
.project-gate--hologram { --gate-color:#2df5ff;clip-path:inset(0 calc((1 - var(--gate-cover))*50%));perspective:1100px; }
.project-gate--hologram::before { background-color:#061012;background-image:linear-gradient(color-mix(in srgb,var(--gate-color) 16%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--gate-color) 16%,transparent) 1px,transparent 1px);background-size:28px 28px; }
.project-gate--hologram i { left:calc(2% + var(--i)*8.3%);top:12%;width:7%;height:76%;background:color-mix(in srgb,var(--gate-color) 7%,transparent);border:1px solid currentColor;transform-origin:bottom;transform:rotateX(calc((1 - var(--gate-detail))*88deg)) translateY(calc((1 - var(--gate-detail))*42%)); }

/* Holocorp → Koloro: the holographic plane resolves into a playable pixel grid. */
.project-gate--pixel { --gate-color:#ffad1f;clip-path:inset(calc((1 - var(--gate-cover))*50%) calc((1 - var(--gate-cover))*50%)); }
.project-gate--pixel::before { background-color:#120d05;background-image:linear-gradient(color-mix(in srgb,var(--gate-color) 16%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--gate-color) 16%,transparent) 1px,transparent 1px);background-size:48px 48px;image-rendering:pixelated; }
.project-gate--pixel i { left:calc(1% + var(--i)*8.3%);top:calc(12% + (var(--i) - 5)*(var(--i) - 5)*1.6%);width:8.4vw;max-width:126px;aspect-ratio:1;background:color-mix(in srgb,var(--gate-color) calc(18% + var(--i)*5%),transparent);border:1px solid currentColor;box-shadow:2vw 2vw 0 color-mix(in srgb,var(--gate-color) 17%,transparent);transform:translateY(calc((1 - var(--gate-detail))*90px)) scale(var(--gate-detail)); }

/* Sector glyphs are miniature instruments driven by the current panel progress. */
.project-dna--tactimon .project-dna__glyph i:nth-child(1) { transform:translate(calc(var(--scan,.5)*5px),calc(var(--scan,.5)*3px)); }
.project-dna--tactimon .project-dna__glyph i:nth-child(2) { transform:translate(calc(var(--scan,.5)*-7px),calc(var(--scan,.5)*6px)); }
.project-dna--tactimon .project-dna__glyph i:nth-child(3) { transform:translateY(calc(var(--scan,.5)*-7px)); }
.project-dna--microwarfare .project-dna__glyph i { transform:scaleY(clamp(.3,calc(.3 + var(--scan,.5)*.9),1)); }
.project-dna--green-squat .project-dna__glyph i:first-child { transform:translate(calc(var(--scan,.5)*-3px),calc(var(--scan,.5)*-3px)); }
.project-dna--green-squat .project-dna__glyph i:nth-child(2) { transform:scaleX(clamp(.35,calc(.35 + var(--scan,.5)),1));transform-origin:left; }
.project-dna--chevelus .project-dna__glyph i { transform:scaleY(clamp(.3,calc(.3 + var(--scan,.5)*1.1),1)); }
.project-dna--uscreen .project-dna__glyph i:first-child { transform:scale(clamp(.7,calc(.7 + var(--scan,.5)*.45),1));transform-origin:center; }
.project-dna--expressvpn .project-dna__glyph i:nth-child(-n+3) { transform:scale(clamp(.45,calc(.45 + var(--scan,.5)),1)); }
.project-dna--signaturegt .project-dna__glyph i:first-child { transform:rotate(calc(-70deg + var(--scan,.5)*94deg)); }
.project-dna--credit-agricole .project-dna__glyph { transform:rotate(calc((var(--scan,.5) - .5)*18deg)); }
.project-dna--holocorp .project-dna__glyph i:first-child { transform:scaleY(clamp(.1,var(--scan,.5),1));transform-origin:bottom; }
.project-dna--koloro .project-dna__glyph i { transform:translateY(calc((1 - var(--scan,.5))*8px)); }

/* Tactimon — board coordinates, targeting rings and modular rules. */
#tactimon .sector-motif { background-image:linear-gradient(30deg,rgb(var(--sector-rgb) / .045) 12%,transparent 12.5%,transparent 87%,rgb(var(--sector-rgb) / .045) 87.5%),linear-gradient(150deg,rgb(var(--sector-rgb) / .045) 12%,transparent 12.5%,transparent 87%,rgb(var(--sector-rgb) / .045) 87.5%);background-size:74px 128px; }
#tactimon .sector-motif i:nth-child(1) { width:34vw;aspect-ratio:1;right:-12vw;top:-16vw;border:1px solid rgb(var(--sector-rgb) / .34);border-radius:50%;box-shadow:0 0 0 5vw rgb(var(--sector-rgb) / .025),0 0 0 10vw rgb(var(--sector-rgb) / .018); }
#tactimon .sector-motif i:nth-child(2) { width:1px;height:72%;right:18%;top:14%;background:rgb(var(--sector-rgb) / .28); }
#tactimon .sector-motif i:nth-child(3) { width:72%;height:1px;right:4%;top:42%;background:rgb(var(--sector-rgb) / .22); }
#tactimon .scene--case .sector-motif { transform:translate3d(calc((var(--scan,.5) - .5)*-52px),0,0) rotate(-2deg); }
#tactimon .scene--cards .sector-motif i:nth-child(1) { left:41%;right:auto;top:8%;width:48vw;border-radius:0;transform:skewX(-18deg); }
#tactimon .scene--rules .sector-motif { background-image:linear-gradient(45deg,rgb(var(--sector-rgb) / .06) 25%,transparent 25%,transparent 75%,rgb(var(--sector-rgb) / .06) 75%);background-size:28px 28px; }
#tactimon .sector-console__signal { align-items:center; }
#tactimon .sector-console__signal i { width:7px;height:7px;border-radius:50%;transform:scale(clamp(.35,var(--panel-in,1),1));box-shadow:0 0 0 3px rgb(var(--sector-rgb) / .12); }

/* MicroWarfare — workshop metrology and additive manufacturing. */
#microwarfare .scene { background-image:linear-gradient(90deg,transparent 0 72%,rgb(var(--sector-rgb) / .08) 72% 72.2%,transparent 72.2%); }
#microwarfare .sector-motif { background-image:repeating-linear-gradient(90deg,transparent 0 19px,rgb(var(--sector-rgb) / .16) 19px 20px,transparent 20px 99px),linear-gradient(0deg,rgb(var(--sector-rgb) / .18) 1px,transparent 1px);background-size:100% 18px,100% 36px;background-position:0 calc(100% - 20px),0 100%;background-repeat:no-repeat; }
#microwarfare .sector-motif i:nth-child(1),#microwarfare .sector-motif i:nth-child(2) { width:32%;height:38%;border:1px solid rgb(var(--sector-rgb) / .42); }
#microwarfare .sector-motif i:nth-child(1) { left:5%;top:9%;border-right:0;border-bottom:0; }
#microwarfare .sector-motif i:nth-child(2) { right:5%;bottom:10%;border-left:0;border-top:0; }
#microwarfare .project-brief { background:color-mix(in srgb,var(--paper) 89%,var(--accent)); }
#microwarfare .sector-console__signal { background:repeating-linear-gradient(90deg,transparent 0 8px,rgb(var(--sector-rgb) / .22) 8px 9px); }
#microwarfare .sector-console__signal i { width:1px;height:100%;background:var(--accent); }

/* Green Squat — magazine grid, crop marks and registration. */
#green-squat .scene::before { background-size:36px 36px,16.666% 100%; }
#green-squat .sector-motif { background:linear-gradient(90deg,transparent 33%,rgb(var(--sector-rgb) / .13) 33% 33.15%,transparent 33.15% 66%,rgb(var(--sector-rgb) / .13) 66% 66.15%,transparent 66.15%); }
#green-squat .sector-motif i { width:36px;height:36px; }
#green-squat .sector-motif i:nth-child(1) { left:3%;top:6%;border-left:2px solid;border-top:2px solid; }
#green-squat .sector-motif i:nth-child(2) { right:3%;top:6%;border-right:2px solid;border-top:2px solid; }
#green-squat .sector-motif i:nth-child(3) { left:3%;bottom:6%;border-left:2px solid;border-bottom:2px solid; }
#green-squat .sector-motif i:nth-child(4) { right:3%;bottom:6%;border-right:2px solid;border-bottom:2px solid; }
#green-squat .ghost-title { -webkit-text-stroke-color:var(--accent); }
#green-squat .project-brief { background:color-mix(in srgb,var(--paper-soft) 88%,var(--accent)); }
#green-squat .sector-console__signal { align-items:center;gap:2px; }
#green-squat .sector-console__signal i { width:8px;height:27px;background:transparent;border:1px solid var(--accent);transform:translateX(calc((var(--scan,.5) - .5)*10px)); }

/* Les Chevelus — viewfinder, film strip and recording signal. */
#chevelus .sector-motif { background-image:repeating-linear-gradient(90deg,rgb(var(--sector-rgb) / .38) 0 18px,transparent 18px 34px),repeating-linear-gradient(90deg,rgb(var(--sector-rgb) / .38) 0 18px,transparent 18px 34px);background-size:100% 8px;background-position:0 16px,0 calc(100% - 16px);background-repeat:no-repeat; }
#chevelus .sector-motif i:nth-child(-n+4) { width:52px;height:52px; }
#chevelus .sector-motif i:nth-child(1) { left:5%;top:8%;border-left:2px solid;border-top:2px solid; }
#chevelus .sector-motif i:nth-child(2) { right:5%;top:8%;border-right:2px solid;border-top:2px solid; }
#chevelus .sector-motif i:nth-child(3) { left:5%;bottom:8%;border-left:2px solid;border-bottom:2px solid; }
#chevelus .sector-motif i:nth-child(4) { right:5%;bottom:8%;border-right:2px solid;border-bottom:2px solid; }
#chevelus .sector-motif i:nth-child(5) { left:50%;top:50%;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 16px rgb(var(--sector-rgb) / .12); }
#chevelus .process-track li::before { box-shadow:0 0 0 5px rgb(var(--sector-rgb) / .12); }
#chevelus .sector-console__signal i { width:4px;clip-path:polygon(0 50%,50% 0,100% 50%,50% 100%); }

/* Uscreen — crawl grid, browser window and search indexing. */
#uscreen .sector-motif { background-image:linear-gradient(rgb(var(--sector-rgb) / .08) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--sector-rgb) / .08) 1px,transparent 1px);background-size:28px 28px; }
#uscreen .sector-motif i:nth-child(1) { right:7%;top:9%;width:38%;height:31%;border:1px solid rgb(var(--sector-rgb) / .38);box-shadow:inset 0 24px rgb(var(--sector-rgb) / .08); }
#uscreen .sector-motif i:nth-child(2),#uscreen .sector-motif i:nth-child(3),#uscreen .sector-motif i:nth-child(4) { top:calc(9% + 9px);width:6px;height:6px;border-radius:50%;background:var(--accent); }
#uscreen .sector-motif i:nth-child(2) { right:calc(7% + 12px); }#uscreen .sector-motif i:nth-child(3) { right:calc(7% + 23px); }#uscreen .sector-motif i:nth-child(4) { right:calc(7% + 34px); }
#uscreen .keyword-cloud span:nth-child(3n+1) { box-shadow:inset 4px 0 var(--accent); }
#uscreen .sector-console__signal { align-items:center; }
#uscreen .sector-console__signal i { width:7px;height:7px;border:1px solid var(--accent);background:transparent; }
#uscreen .sector-console__signal i:nth-child(-n+5) { background:var(--accent); }

/* ExpressVPN — backlink network, SERP traces and authority nodes. */
#expressvpn .sector-motif { background-image:radial-gradient(circle at 16% 23%,var(--accent) 0 3px,transparent 4px),radial-gradient(circle at 72% 31%,var(--accent) 0 5px,transparent 6px),radial-gradient(circle at 48% 76%,var(--accent) 0 4px,transparent 5px),linear-gradient(24deg,transparent 49.8%,rgb(var(--sector-rgb) / .2) 50%,transparent 50.2%);background-size:auto,auto,auto,100% 100%; }
#expressvpn .sector-motif i:nth-child(1) { left:16%;top:23%;width:58%;height:1px;background:rgb(var(--sector-rgb) / .35);transform:rotate(8deg);transform-origin:left; }
#expressvpn .sector-motif i:nth-child(2) { left:48%;top:76%;width:33%;height:1px;background:rgb(var(--sector-rgb) / .25);transform:rotate(-58deg);transform-origin:left; }
#expressvpn .scene--express-metrics::before { background-image:linear-gradient(rgb(var(--sector-rgb) / .075) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--sector-rgb) / .075) 1px,transparent 1px); }
#expressvpn .scene--express-metrics::after { border-color:rgb(var(--sector-rgb) / .25);box-shadow:0 0 0 6vw rgb(var(--sector-rgb) / .03),0 0 0 12vw rgb(var(--sector-rgb) / .018); }
#expressvpn .sector-console__signal { align-items:center;gap:6px;background:linear-gradient(90deg,transparent 8%,rgb(var(--sector-rgb) / .48) 8% 92%,transparent 92%) center/100% 1px no-repeat; }
#expressvpn .sector-console__signal i { flex:0 0 7px;width:7px;height:7px;border-radius:50%;transform:scale(clamp(.35,var(--panel-in,1),1));box-shadow:0 0 0 3px rgb(var(--sector-rgb) / .14); }

/* Signature GT — speed, bodywork and motorsport telemetry. */
#signaturegt .sector-motif { background-image:repeating-linear-gradient(118deg,transparent 0 54px,rgb(var(--sector-rgb) / .12) 55px 57px,transparent 58px 102px); }
#signaturegt .sector-motif i:nth-child(1) { right:-8%;top:17%;width:55%;height:1px;background:var(--accent);transform:rotate(-8deg);box-shadow:0 18px rgb(var(--sector-rgb) / .55),0 36px rgb(var(--sector-rgb) / .28); }
#signaturegt .sector-motif i:nth-child(2) { left:5%;bottom:8%;width:180px;height:28px;background:repeating-conic-gradient(var(--accent) 0 25%,transparent 0 50%) 0/28px 28px; }
#signaturegt .signature-copy > div span:first-child { box-shadow:6px 6px 0 rgb(var(--sector-rgb) / .23); }
#signaturegt .sector-console__signal { transform:skewX(-14deg); }
#signaturegt .sector-console__signal i { width:7px; }

/* Crédit Agricole — print registration, format ratios and CMYK production. */
#credit-agricole .sector-motif { background-image:linear-gradient(90deg,rgb(var(--sector-rgb) / .08) 1px,transparent 1px),linear-gradient(rgb(var(--sector-rgb) / .08) 1px,transparent 1px);background-size:18px 100%,100% 18px; }
#credit-agricole .sector-motif i:nth-child(1) { right:7%;top:10%;width:96px;height:96px;border:1px solid rgb(var(--sector-rgb) / .5);border-radius:50%;box-shadow:inset 0 0 0 23px transparent,inset 0 0 0 24px rgb(var(--sector-rgb) / .34); }
#credit-agricole .sector-motif i:nth-child(2) { right:calc(7% + 47px);top:7%;width:1px;height:102px;background:rgb(var(--sector-rgb) / .36); }
#credit-agricole .sector-motif i:nth-child(3) { right:4%;top:calc(10% + 47px);width:102px;height:1px;background:rgb(var(--sector-rgb) / .36); }
#credit-agricole .format-card.is-active { box-shadow:12px 12px 0 var(--accent); }
#credit-agricole .sector-console__signal { display:grid;grid-template-columns:repeat(4,1fr);gap:3px;align-content:center; }
#credit-agricole .sector-console__signal i { width:auto;height:12px;transform:scaleX(clamp(.25,var(--panel-in,1),1)); }
#credit-agricole .sector-console__signal i:nth-child(n+5) { background:transparent;border:1px solid var(--accent); }

/* Holocorp — emissive blueprint, axes and scanning plane. */
#holocorp .sector-motif { background-image:linear-gradient(rgb(var(--sector-rgb) / .08) 1px,transparent 1px),linear-gradient(90deg,rgb(var(--sector-rgb) / .08) 1px,transparent 1px);background-size:24px 24px;filter:drop-shadow(0 0 7px rgb(var(--sector-rgb) / .22)); }
#holocorp .sector-motif i:nth-child(1) { left:50%;top:12%;width:1px;height:72%;background:rgb(var(--sector-rgb) / .38); }
#holocorp .sector-motif i:nth-child(2) { left:17%;top:50%;width:68%;height:1px;background:rgb(var(--sector-rgb) / .3); }
#holocorp .sector-motif i:nth-child(3) { right:9%;top:13%;width:23vw;aspect-ratio:1;border:1px solid rgb(var(--sector-rgb) / .34);border-radius:50%;box-shadow:inset 0 0 0 4vw transparent,inset 0 0 0 calc(4vw + 1px) rgb(var(--sector-rgb) / .2); }
#holocorp .scene--holo-system { background:linear-gradient(135deg,var(--paper-soft),color-mix(in srgb,var(--paper-soft) 90%,var(--accent))); }

/* Koloro — pixel cells, world tiles and level progression. */
#koloro .sector-motif { image-rendering:pixelated;background-image:linear-gradient(90deg,rgb(var(--sector-rgb) / .08) 1px,transparent 1px),linear-gradient(rgb(var(--sector-rgb) / .08) 1px,transparent 1px);background-size:32px 32px; }
#koloro .sector-motif i { width:32px;height:32px;background:rgb(var(--sector-rgb) / .34);box-shadow:32px 32px rgb(var(--sector-rgb) / .18),64px 0 rgb(var(--sector-rgb) / .24); }
#koloro .sector-motif i:nth-child(1) { left:8%;top:16%; }#koloro .sector-motif i:nth-child(2) { right:15%;bottom:19%;transform:scale(1.4); }#koloro .sector-motif i:nth-child(3) { right:36%;top:12%;transform:scale(.65); }
#koloro .pixel-map { color:var(--accent);filter:drop-shadow(0 0 10px rgb(var(--sector-rgb) / .2)); }
#koloro .sector-console__signal { align-items:flex-end;gap:2px; }
#koloro .sector-console__signal i { width:8px;clip-path:none;transform:scaleY(clamp(.2,var(--panel-in,1),1)); }

@media(max-width:820px) {
  .sector-console { display:none; }
  .scene--project-intro { padding-top:188px!important; }
  .project-dna { top:72px;left:var(--pad);right:var(--pad);width:auto;grid-template-columns:minmax(0,1fr) 58px;gap:8px;padding:8px; }
  .project-dna__heading { border-right:0;padding-right:4px; }
  .project-dna__heading strong { font-size:.82rem; }
  .project-dna__skills { grid-column:1/-1;display:flex;flex-wrap:wrap;gap:3px; }
  .project-dna__skills li { flex:1 1 calc(50% - 3px);font-size:.48rem; }
  .project-dna__glyph { grid-column:2;grid-row:1;width:52px;height:52px;justify-self:end;transform:scale(.8);transform-origin:center; }
  .sector-motif::before { display:none; }
  .sector-motif::after { right:-2%;font-size:8rem; }
  .timeline-item.active::after { right:-1px;height:22px; }
  #green-squat .sector-motif { background-position:center; }
  #signaturegt .sector-motif i:nth-child(2) { display:none; }
}

@media(prefers-reduced-motion:reduce) {
  .project-gate { display:none!important; }
  .project-dna,.project-dna__glyph,.project-dna__glyph i { transform:none!important;transition:none!important; }
  .sector-motif { transform:none;transition:none; }
  .motion-pin.is-pinned .motion-stage::after { display:none; }
}

/* Source: transitions.css */
/* The next project starts where the outgoing sticky viewport ends. */
.continuous-projects .chapter + .chapter { margin-top:-100svh; }
.continuous-projects .chapter { pointer-events:none; }
.continuous-projects .motion-stage { pointer-events:auto; }
.continuous-projects .waiting-project { visibility:hidden;pointer-events:none; }
.diegetic-transition { display:none;position:fixed;top:0;height:100svh;z-index:40;pointer-events:none;overflow:hidden;contain:strict;background:transparent; }
.diegetic-transition.is-active { display:block; }
.diegetic-transition canvas { display:block;width:100%;height:100%; }
.handoff-active .portfolio::after { content:'';position:fixed;inset:0 0 0 var(--rail);background:#080c13;z-index:29;pointer-events:none; }
.continuous-projects .motion-stage.handoff-source,
.continuous-projects .motion-stage.handoff-target { position:fixed;inset:0 0 auto var(--rail);width:calc(100% - var(--rail));height:100svh;visibility:visible;pointer-events:none;will-change:transform,opacity;transform-origin:center; }
.continuous-projects .motion-stage.handoff-source { z-index:31; }
.continuous-projects .motion-stage.handoff-target { z-index:32; }
.continuous-projects .motion-stage.handoff-turning { z-index:33;backface-visibility:hidden; }
.handoff-source *,.handoff-target * { animation-play-state:paused!important; }
@media(prefers-reduced-motion:reduce) { .diegetic-transition { display:none!important; } }
.sector-console,.project-dna { backdrop-filter:none; }
.project-gate { display:none!important; }
@media(max-width:820px) {
  .continuous-projects .chapter + .chapter { margin-top:calc(0px - var(--mobile-stage-height, calc(100svh - 76px))); }
  .diegetic-transition { top:76px;height:var(--mobile-stage-height, calc(100svh - 76px)); }
  .handoff-active .portfolio::after { inset:76px 0 0; }
  .continuous-projects .motion-stage.handoff-source,
  .continuous-projects .motion-stage.handoff-target { inset:76px 0 auto 0;width:100%;height:var(--mobile-stage-height, calc(100svh - 76px)); }
}

/* Source: editorial-refinements.css */
/* Green Squat: the publication is the visual identity, not a dashboard. */
#green-squat { --accent:#b6f04b; }
#green-squat .scene--green-squat { display:grid;grid-template-columns:42% 58%;grid-template-rows:auto 1fr auto;gap:0;padding:36px 4% 30px!important;background:#dadbd3;color:#17221a;isolation:isolate; }
#green-squat .scene::before { opacity:.16;background:radial-gradient(#233324 0.55px,transparent .65px);background-size:5px 5px; }
#green-squat .project-dna,#green-squat .sector-motif,#green-squat .sector-console,#green-squat .sector-readout,#green-squat .scene::after { display:none!important; }
.gs-masthead { grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding-bottom:17px;border-bottom:1px solid #17221a66;font:700 11px/1.5 var(--mono);letter-spacing:.13em; }
.gs-editorial { grid-column:1;grid-row:2;display:flex;min-height:0;flex-direction:column;justify-content:space-between;gap:clamp(28px,4vh,58px);padding:clamp(28px,5vh,58px) 0 clamp(24px,4vh,48px);z-index:3; }
.gs-title { padding:0;z-index:3; }
.gs-title>p { font:700 10px/1.6 var(--mono);letter-spacing:.1em;margin:0 0 20px; }
#green-squat .gs-title h2 { font:900 clamp(4.5rem,10.5cqw,10rem)/.92 var(--display);letter-spacing:.005em;margin:0; }
.gs-title em { font-style:normal;color:#315635; }
.gs-copy { max-width:42ch;z-index:3; }
.gs-copy h3 { font:normal italic clamp(1.55rem,2.5cqw,2.5rem)/1.12 Georgia,serif!important;letter-spacing:-.035em!important;margin:0 0 20px; }
.gs-copy p { font:400 clamp(.93rem,1.1cqw,1.05rem)/1.7 var(--mono);margin:0 0 22px; }
.gs-copy>button { display:flex;justify-content:space-between;align-items:center;gap:32px;width:100%;padding:14px 0;background:none;border:0;border-top:1px solid #17221a77;border-bottom:1px solid #17221a77;cursor:pointer;font:700 11px/1.5 var(--mono);letter-spacing:.04em; }
.gs-copy>button span { font:normal 26px/1 Georgia,serif;transition:transform .25s; }.gs-copy>button:hover span { transform:translate(3px,-3px); }
.gs-publication { grid-column:2;grid-row:2;position:relative;align-self:center;height:68vh;min-height:350px;perspective:1400px; }
.gs-cover { position:absolute;left:20%;top:9%;width:66%;height:81%;padding:0;border:0;background:none;cursor:pointer;transform:rotate(-5deg) rotateY(-9deg);transition:transform .65s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(18px 28px 22px #10201440); }
.gs-cover>img { width:100%;height:100%;object-fit:contain;filter:none!important; }
.gs-cover>span { position:absolute;left:6%;right:6%;bottom:5%;display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:#c7f164;color:#17221a;font:700 10px/1.4 var(--mono);letter-spacing:.06em;box-shadow:0 4px 12px #0003; }
.gs-cover>span b { font-size:23px; }
.gs-cover:hover,.gs-cover:focus-visible { transform:rotate(-1deg) rotateY(0deg) translateY(-8px); }
.gs-inside { position:absolute;width:50%;height:71%;object-fit:contain;top:15%;filter:drop-shadow(5px 14px 14px #16201935)!important; }
.gs-inside--left { left:1%;transform:rotate(-15deg) translateY(calc((var(--scan,.5) - .5)*-16px)); }
.gs-inside--right { right:-4%;transform:rotate(12deg) translateY(calc((var(--scan,.5) - .5)*16px)); }
.gs-colophon { grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;border-top:1px solid #17221a66;padding-top:17px;font:700 10px/1.5 var(--mono);letter-spacing:.07em; }
@media(max-height:750px) and (min-width:960px) { .gs-editorial { padding-block:3vh;gap:18px; }#green-squat .gs-title h2 { font-size:8.5cqw; }.gs-copy h3 { margin-bottom:10px;font-size:clamp(1.3rem,2.1cqw,2rem)!important; }.gs-copy p { font-size:14px;line-height:1.5; } }
@media(max-width:959px) { #green-squat .scene--green-squat { grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto;padding:28px 24px!important; }.gs-editorial { display:contents; }.gs-title { grid-column:1;grid-row:2;padding-top:32px; }#green-squat .gs-title h2 { font-size:clamp(5rem,20vw,9rem); }.gs-publication { grid-column:1;grid-row:3;height:60vh;min-height:360px;margin:15px 0; }.gs-copy { grid-column:1;grid-row:4;max-width:48ch;padding-bottom:32px; }.gs-colophon { grid-row:5;flex-wrap:wrap;font-size:9px;gap:12px; }.gs-inside--right { right:0; }.gs-cover { left:18%; } }
@media(prefers-reduced-motion:reduce) { .gs-inside,.gs-cover { transform:none;transition:none; } }

/* Source: missions.css */
/* Company first, then the mission: keep the existing art direction and stages. */
#alpha-routage { --accent:#eaff00; --sector-rgb:234 255 0; --sector-label:"COMMUNICATION / ADVERGAME"; }
.mission-summary { max-width:44ch; margin-top:24px; }
.mission-summary > span { display:block; font:700 .875rem/1.4 var(--mono); letter-spacing:.07em; }
.mission-summary h3 { margin:12px 0; font:700 clamp(1.3rem,2cqw,2rem)/1.2 var(--mono); letter-spacing:-.035em; }
.mission-summary p { margin:0; font:400 1rem/1.6 var(--mono); }
.mission-line { margin:20px 0; max-width:58ch; font:400 .9375rem/1.65 var(--mono); }
.company-overview .project-dna,.scene--alpha-profile .project-dna { display:none; }
.scene--tactimon.company-overview h1 { font-size:clamp(3rem,8.8cqw,10rem); line-height:1.06; letter-spacing:.02em; }
.scene--tactimon.company-overview .hero-meta { margin-top:26px; gap:16px; flex-wrap:wrap; }
.scene--tactimon.company-overview .hero-copy { min-width:0; }
.scene--tactimon.company-overview .feature-mark { display:none; }
.scene--seo.company-overview .seo-stack { max-width:52%; }
.scene--seo.company-overview .seo-stack h2 { font-size:clamp(3.5rem,10cqw,11rem); line-height:1.08; letter-spacing:.025em; margin:12px 0; }
.scene--seo.company-overview .mission-summary > span { font:700 .875rem/1.4 var(--mono); letter-spacing:.07em; color:var(--accent); -webkit-text-stroke:0; }
.scene--seo.company-overview .seo-code { display:none; }
.scene--seo.company-overview .uscreen-product-shot { width:40%; }
.mission-detail .editorial-title h2 { font-size:clamp(2.5rem,6cqw,7rem); line-height:1.08; letter-spacing:.015em; margin-bottom:28px; }
.mission-detail .editorial-grid { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:5cqw; }
.mission-steps { list-style:none; padding:0; margin:0; display:grid; gap:18px; }
.mission-steps li { display:grid; grid-template-columns:36px 1fr; gap:14px; padding-top:12px; border-top:1px solid currentColor; }
.mission-steps li > b { font:700 .875rem/1.5 var(--mono); }
.mission-steps h3 { margin:0 0 5px; font:700 1.125rem/1.3 var(--mono); }
.mission-steps p { margin:0; font:400 1rem/1.5 var(--mono); }
.outreach-steps { position:relative; z-index:3; color:var(--white); }
.outreach-steps li { border-color:#ffffff55; padding-block:20px; }
.outreach-steps li > b { color:var(--accent); }
.signature-deliverable { margin:0; min-width:0; }
.signature-deliverable video { display:block; width:100%; max-height:32vh; aspect-ratio:16/9; object-fit:contain; background:#111; }
.signature-deliverable figcaption,.alpha-visual figcaption { margin-top:12px; font:400 .875rem/1.4 var(--mono); }
#signaturegt .signature-copy h2 { font-size:clamp(3.5rem,9cqw,10rem); }
#signaturegt .signature-copy .mission-line { color:var(--white); }
#expressvpn .rank-copy h2 { font-size:clamp(3.5rem,10cqw,11rem); }
#expressvpn .rank-copy { position:relative; z-index:3; }
#expressvpn .metrics-head h2 { font-size:clamp(2.5rem,6cqw,6.5rem); }
.scene--campaign.company-overview .campaign-copy { width:48%; }
.scene--campaign.company-overview .campaign-copy h2 { font-size:clamp(3rem,7.2cqw,8rem); line-height:1.08; letter-spacing:.02em; }
.scene--campaign.company-overview .campaign-stack { width:44%; right:3%; }
.scene--alpha-profile { --sector-rgb:234 255 0; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:5cqw; align-items:center; }
.alpha-copy,.alpha-visual { position:relative; z-index:3; min-width:0; }
.alpha-copy h2 { font-size:clamp(3rem,8cqw,9rem); line-height:1.08; letter-spacing:.02em; margin:12px 0; }
.alpha-copy .tags { margin-top:24px; }
.alpha-visual { margin:0; }
.alpha-visual img { display:block; width:100%; height:auto; object-fit:contain; }
.scene--rules .rules-head h2 { font-size:clamp(2.5rem,6cqw,6rem); line-height:1.1; }
.scene--rules .rule-module > strong { font-size:clamp(1.7rem,3cqw,3.5rem); line-height:1.05; }
.scene--rules .rule-module > span { font-size:.75rem; }
.scene--rules .rule-module > p { font-size:1rem; }
.scene--koloro .koloro-copy .mission-line { max-width:38ch; }
.scene--koloro .koloro-copy h2 { font-size:clamp(4rem,10cqw,11rem); }
.scene--final-project .final-project-copy h2 { font-size:clamp(3rem,7cqw,8rem); line-height:1.08; }
.motion-navigation > span { font-size:.875rem; letter-spacing:.025em; line-height:1.35; }

@media (max-width:959px), (max-height:619px) {
  .scene--tactimon.company-overview h1 { font-size:clamp(3rem,13cqw,6.5rem); }
  .company-overview .mission-summary { margin-top:16px; }
  .scene--seo.company-overview .seo-stack { max-width:none; }
  .scene--seo.company-overview .seo-stack h2 { font-size:clamp(3rem,15cqw,7rem); }
  .scene--seo.company-overview .uscreen-product-shot { position:relative; inset:auto; width:100%; max-width:520px; height:auto; margin:28px 0 50px; order:2; }
  .scene--seo.company-overview .uscreen-product-shot img { height:auto; }
  .scene--seo.company-overview { display:flex; flex-direction:column; justify-content:center; align-items:stretch; padding-top:145px; }
  .scene--seo.company-overview .seo-caption { display:none; }
  .mission-detail .editorial-grid { grid-template-columns:1fr; gap:24px; }
  .mission-detail .editorial-title h2 { font-size:clamp(2.25rem,10cqw,5rem); }
  .signature-deliverable video { max-height:none; }
  .scene--campaign.company-overview .campaign-copy { width:100%; }
  .scene--campaign.company-overview .campaign-copy h2 { font-size:clamp(3rem,13cqw,6rem); }
  .scene--campaign.company-overview { display:flex; flex-direction:column; gap:30px; padding-top:110px; }
  .scene--campaign.company-overview .campaign-stack { position:relative; inset:auto; width:100%; height:420px; flex:none; }
  .scene--alpha-profile { grid-template-columns:1fr; gap:30px; padding-top:120px; }
  .alpha-copy h2 { font-size:clamp(3rem,14cqw,7rem); }
  .scene--koloro .koloro-copy .mission-line { max-width:28ch; font-size:.875rem; }
}

/* Source: browsing.css */
.book-cover { position:relative;min-height:100svh;padding:38px clamp(24px,5vw,80px) 44px;display:flex;flex-direction:column;justify-content:space-between;gap:28px;background:var(--paper);color:var(--ink);isolation:isolate; }
.book-cover::before { content:'';position:absolute;inset:0;z-index:-1;opacity:.22;background-image:linear-gradient(#1115 1px,transparent 1px),linear-gradient(90deg,#1115 1px,transparent 1px);background-size:80px 80px; }
.cover-top { display:flex;justify-content:space-between;gap:20px;font:400 .875rem/1.5 var(--mono);letter-spacing:.06em;padding-bottom:20px;border-bottom:1px solid #1115; }
.cover-title > p { font:700 .875rem/1.5 var(--mono);letter-spacing:.12em; }
.cover-title h1 { margin:20px 0;font:900 clamp(5rem,14vw,15rem)/1.02 var(--display);letter-spacing:.02em; }
.cover-title h1 span { color:transparent;-webkit-text-stroke:2px var(--ink); }
.cover-title h1 i { color:var(--accent);font-style:normal;-webkit-text-stroke:1px var(--ink); }
.cover-bottom { display:flex;align-items:end;justify-content:space-between;gap:24px; }
.cover-bottom p { max-width:46ch;font:400 1rem/1.65 var(--mono);margin:0; }
.cover-enter { display:flex;align-items:center;gap:24px;border-bottom:2px solid;padding:14px 0;text-decoration:none;font:700 .875rem/1.4 var(--mono); }
.cover-enter span { font-size:2rem; }
.cover-filters { display:flex;gap:8px;flex-wrap:wrap; }
.chapter[hidden],.timeline-item[hidden] { display:none!important; }
.continuous-projects .chapter.flow-first { margin-top:0; }
.skill-chip { display:inline-flex;justify-content:center;align-items:center;min-height:36px;padding:7px 11px;border:1px solid currentColor;background:transparent;color:inherit;font:700 .875rem/1.3 var(--mono);cursor:pointer;letter-spacing:.02em; }
.skill-chip:hover,.skill-chip[aria-pressed=true] { color:var(--ink);background:var(--accent);border-color:var(--accent); }
.skill-chip:focus-visible,.project-jump:focus-visible { outline:3px solid var(--accent);outline-offset:4px; }
.tags li:has(.skill-chip) { padding:0;border:0;background:none!important;color:inherit; }
.stage-skills { position:absolute;z-index:26;left:var(--pad);right:80px;top:12px;display:flex;flex-wrap:wrap;gap:6px;pointer-events:auto; }
.stage-skills .skill-chip { color:#f4f4ee;background:#111;border-color:#777; }
.stage-skills .skill-chip:hover,.stage-skills .skill-chip[aria-pressed=true] { background:var(--accent);color:#111; }
.project-dna { display:none!important; }
.project-jump { position:fixed;z-index:55;right:16px;display:grid;place-items:center;width:48px;height:48px;padding:0;background:transparent;color:#fff;border:1px solid currentColor;border-radius:50%;font:300 28px/1 Arial,sans-serif;cursor:pointer;opacity:.72;mix-blend-mode:difference;transition:opacity .2s,transform .2s; }
.project-jump:hover,.project-jump:focus-visible { opacity:1; }
.project-jump--top:hover { transform:translateY(-3px); }.project-jump--bottom:hover { transform:translateY(3px); }
.project-jump--top { top:12px; }.project-jump--bottom { bottom:20px; }
.project-jump[hidden] { display:none; }
.motion-navigation { right:80px;flex-wrap:wrap; }
.motion-navigation > span { flex:1 1 200px; }
.tactimon-fan .tactimon-card { transition:transform .55s cubic-bezier(.2,.86,.2,1),width .45s,left .45s,right .45s,bottom .45s,filter .32s; }
.tactimon-fan.has-selection .tactimon-card:not(.is-selected),.is-pinned .tactimon-fan.has-selection .tactimon-card:not(.is-selected) { left:22%;bottom:12%;width:20%;transform:translateX(calc(-50% + var(--rest-slot)*40%)) rotate(calc(var(--rest-slot)*6deg)); }
.tactimon-fan.has-selection .tactimon-card.is-selected { left:auto;right:0;bottom:12%;width:52%;max-width:min(360px,38vh);transform:none;z-index:30; }
.handoff-source .stage-skills,.handoff-target .stage-skills { pointer-events:none; }
.scene--express-metrics .metric-trace { stroke-dashoffset:calc(1 - var(--metric-progress,0)); }
.scene--express-metrics .metric-bars i { transform:scaleY(var(--metric-progress,0)); }
.scene--express-metrics .metric-target { transform:scale(var(--metric-progress,0)); }
.scene--express-metrics .rank-seal { transform:rotate(calc((1 - var(--metric-progress,0))*-65deg)) scale(calc(.8 + var(--metric-progress,0)*.2)); }
.tactimon-fan.has-selection::after { opacity:.3; }
.has-selection + .fan-status { max-width:100%; }
@media(max-width:959px),(max-height:619px) {
  .stage-skills { position:relative;inset:auto;padding:14px var(--pad);background:#111; }
  .project-jump--top { top:86px; }
  .tactimon-fan.has-selection .tactimon-card.is-selected { max-width:300px; }
}
@media(prefers-reduced-motion:reduce) { .tactimon-fan .tactimon-card { transition:none; } }
@media(max-width:959px) { .book-cover { padding-top:110px; }.cover-top { flex-wrap:wrap; }.cover-title h1 { font-size:clamp(4rem,18vw,9rem); }.cover-bottom { align-items:start;flex-direction:column; } }

/* Source: project-panels.css */
/* Project panels: proportions apply inside the existing timeline rail. */
#translated { --accent:#79b7ff;--sector-rgb:121 183 255; }
.portfolio { overflow-anchor:none; }
.scene h2[tabindex="-1"]:focus { outline:none; }
.project-overview,.project-detail,.project-choice,.project-metrics { --pad:clamp(24px,3.5cqw,64px); }
.scene.project-overview,.scene.project-detail,.scene.project-choice,.scene.project-metrics { border:0; }
.project-overview::before,.project-detail::before,.project-choice::before,.project-metrics::before { display:none; }
:is(.project-overview,.project-detail,.project-choice,.project-metrics) :is(.sector-motif,.sector-console,.project-dna) { display:none!important; }
.project-overview .panel-kicker,.project-detail .panel-kicker,.project-choice .panel-kicker,.project-metrics .panel-kicker { font:700 .875rem/1.5 var(--mono);letter-spacing:.06em;margin:0 0 24px;color:inherit; }
.scene.project-overview { display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:0;padding:clamp(70px,10vh,130px) clamp(32px,6cqw,100px) 100px; }
.project-overview h2 { max-width:16ch;margin:0 0 32px;font:900 clamp(3rem,7.8cqw,8.5rem)/1.02 var(--display);text-transform:uppercase;letter-spacing:0; }
.project-overview .overview-description { max-width:53ch;margin:0;font:400 clamp(1.05rem,1.65cqw,1.5rem)/1.6 Arial,sans-serif; }
.overview-bottom { width:100%;display:flex;align-items:end;justify-content:space-between;gap:36px;margin-top:clamp(40px,9vh,110px);padding-top:26px;border-top:1px solid #1116; }
.overview-skills { display:flex;flex-wrap:wrap;align-items:start;gap:8px;max-width:72%; }
.skill-chip { background:#969691;color:#101010;border-color:#747471;min-height:42px; }
.skill-chip:hover { background:#d1d1c9;border-color:currentColor; }
.skill-chip[aria-pressed=true] { background:var(--accent,var(--active-accent));color:#101010;border-color:var(--accent,var(--active-accent)); }
.company-brand { flex:0 0 180px;text-align:right;font:900 1.3rem/1.1 var(--display);letter-spacing:.04em; }
.company-brand img { max-width:190px;max-height:80px;object-fit:contain; }
.company-brand[data-brand=koloro] img { max-height:88px; }
.company-brand[data-brand=signaturegt] { display:flex;flex-direction:column;align-items:end;gap:14px; }
.company-brand[data-brand=signaturegt] img { max-width:165px;max-height:60px; }
.scene.project-detail,.is-pinned .motion-track>.scene.project-detail { padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:0;align-items:stretch;align-content:stretch;background:#101010;color:#f3f3ed; }
.scene.project-detail--reverse { grid-template-columns:minmax(0,2fr) minmax(0,1fr)!important; }
.detail-copy { position:relative;z-index:5;grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:72px clamp(22px,2.8cqw,46px) 96px;min-width:0;border-right:1px solid #ffffff30; }
.project-detail--reverse>.detail-copy { grid-column:2;border-right:0;border-left:1px solid #ffffff30; }
.detail-copy h2 { margin:0 0 24px;font:900 clamp(1.8rem,3cqw,3.4rem)/1.08 var(--display);text-wrap:balance;letter-spacing:.015em; }
.detail-copy .panel-kicker { font-size:.75rem;color:var(--accent);margin-bottom:22px; }
.detail-copy>p:not(.panel-kicker) { font:400 1rem/1.6 Arial,sans-serif;margin:0 0 18px; }
.detail-list { margin:0 0 24px;padding-left:18px;font:400 1rem/1.45 Arial,sans-serif; }
.detail-list li+li { margin-top:8px; }
.detail-media { position:relative;grid-column:2;grid-row:1;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden; }
.project-detail--reverse>.detail-media { grid-column:1; }
.detail-media .project-image,.detail-media .project-video { width:100%;margin:0;padding:clamp(24px,4cqw,60px); }
.project-image img { width:100%;max-height:68vh;object-fit:contain;transform:translateY(calc((1 - var(--media-progress,1))*30px)) scale(calc(.94 + var(--media-progress,1)*.06)); }
.project-image figcaption,.project-video figcaption,.media-caption { display:block;text-align:left;font:400 .75rem/1.5 var(--mono);letter-spacing:.04em;margin-top:18px;opacity:.7; }
.project-video video { display:block;width:100%;max-height:70vh; }
.software-list { display:flex;flex-wrap:wrap;gap:8px;margin-top:10px; }
.software { position:relative;display:grid;place-items:center;width:44px;height:44px;border:1px solid #666;background:#ddd;color:#101010;padding:6px;cursor:help; }
.software-icon { width:100%;height:100%;display:grid;place-items:center;font:700 .85rem var(--mono); }
.software-icon img { width:100%;height:100%;object-fit:contain; }
.software-tip { display:none;position:absolute;bottom:calc(100% + 12px);left:0;width:230px;padding:14px;background:#f3f3ed;color:#101010;box-shadow:0 4px 30px #0008;text-align:left;font:400 .875rem/1.5 Arial,sans-serif;z-index:80; }
.software-tip b { display:block;font-size:1rem;margin-bottom:5px; }
.software:hover .software-tip,.software:focus .software-tip,.software.is-open .software-tip { display:block; }
.software:focus-visible,.text-link:focus-visible,.game-choice:focus-visible,.game-switch:focus-visible { outline:3px solid var(--accent);outline-offset:5px; }
.tool-labels { list-style:none;padding:0;margin:16px 0;display:flex;flex-wrap:wrap;gap:6px; }
.tool-labels li { border:1px solid #777;padding:7px 10px;font:400 .8rem/1.4 var(--mono); }
.text-link { display:block;width:fit-content;padding:12px 0;border:0;border-bottom:1px solid #999;color:inherit;background:none;margin-top:20px;font:700 .875rem/1.4 var(--mono);cursor:pointer;text-decoration:none; }
.game-switch { width:fit-content;margin-top:22px;padding:8px 12px;border:1px solid #777;background:transparent;color:inherit;font:700 .75rem/1.3 var(--mono);letter-spacing:.04em;cursor:pointer;transition:background .2s,color .2s,border-color .2s; }
.game-switch:hover { background:var(--accent);border-color:var(--accent);color:#101010; }
.game-switch+.text-link { margin-top:8px; }
.scene.project-choice { display:flex;flex-direction:column;justify-content:center;padding:80px 0 100px; }
.project-choice header { width:84%;margin:0 auto 36px; }
.project-choice h2,.project-metrics h2 { margin:0;font:900 clamp(2.6rem,5cqw,5.8rem)/1.08 var(--display); }
.game-choices { display:grid;grid-template-columns:40% 40%;justify-content:center;gap:4%;width:100%; }
.game-choice { position:relative;padding:0;min-width:0;text-align:left;border:1px solid #666;background:transparent;color:var(--white);cursor:pointer;overflow:hidden; }
.game-choice>img { width:100%;height:44vh;object-fit:cover;transition:filter .3s,transform .5s; }
.game-choice:first-child>img { object-fit:contain;background:#191919; }
.choice-title { position:relative;display:flex;align-items:center;justify-content:space-between;padding:20px 24px;font:900 clamp(1.8rem,3cqw,3rem)/1 var(--display);border-top:1px solid #666; }
.choice-title b { font-family:Arial,sans-serif;font-weight:400;color:var(--accent); }
.choice-description { position:absolute;left:0;right:0;bottom:calc(1em + 63px);padding:24px;background:#101010ed;font:400 1rem/1.6 Arial,sans-serif;opacity:0;transform:translateY(12px);transition:.25s; }
.game-choice:hover .choice-description,.game-choice:focus-visible .choice-description { opacity:1;transform:none; }
.game-choice:hover>img { transform:scale(1.025); }
.game-choice>img.choice-logo { position:absolute;left:19%;top:10%;width:62%;height:25vh;max-height:240px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 3px 16px #082522);transform:none; }
.chevelus-gallery { width:100%;margin:0;padding:6%; }
.film-frames { position:relative;aspect-ratio:16/9;width:100%;background:#181818; }
.film-frames img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s; }
.film-frames img.is-active { opacity:1; }
.chevelus-gallery figcaption { display:flex;justify-content:space-between;gap:15px;margin:18px 0;font:400 .75rem/1.5 var(--mono); }
.film-strip { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }
.film-strip img { width:100%;aspect-ratio:16/9;object-fit:cover; }
#microwarfare .micro-logo { width:170px;max-width:18%;height:auto;object-fit:contain; }
#microwarfare .micro-carousel { width:100%;margin:0;padding:4%; }
.micro-frames { position:relative;width:100%;height:calc(100% - 36px);min-height:280px;background:#151515;overflow:hidden; }
.micro-frames img { position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .3s; }
.micro-frames img.is-active { opacity:1; }
.micro-carousel figcaption { display:flex;justify-content:space-between;gap:15px;margin:12px 0;font:400 .7rem/1.5 var(--mono); }
#microwarfare .micro-downloads { display:flex;align-items:center;gap:18px;border-top:1px solid #1116;margin-top:22px;padding-top:20px; }
.micro-downloads strong { font:900 clamp(2.8rem,5cqw,5rem)/1 var(--display);white-space:nowrap; }
.micro-downloads span { font:700 .875rem/1.5 var(--mono); }
.legacy-skills { display:flex;flex-wrap:wrap;gap:6px;margin-top:18px; }
.legacy-skills .skill-chip { min-height:34px;padding:6px 9px;font-size:.72rem; }
#microwarfare .project-brief>.legacy-skills { display:flex;margin-top:18px; }
#green-squat .legacy-skills { max-width:36rem;margin-top:4px; }
#green-squat .legacy-skills .skill-chip { background:transparent;color:#17221a;border-color:#17221a66; }
#green-squat .legacy-skills .skill-chip:hover,#green-squat .legacy-skills .skill-chip[aria-pressed=true] { background:var(--accent);border-color:#17221a;color:#17221a; }
#green-squat .gs-cover { margin:0;cursor:default; }
#green-squat .gs-cover:hover { transform:rotate(-5deg) rotateY(-9deg); }
.detail-media>.card-system { width:100%;height:100%;padding:0 5%;margin:0; }
.project-detail .tactimon-fan { width:100%;height:72vh;max-height:700px; }
.project-detail .fan-status { position:absolute;left:6%;right:6%;bottom:85px;font-size:.7rem;max-width:88%; }
.project-detail .tactimon-card { width:clamp(125px,14cqw,205px); }
.project-detail .mandralmier-stage,.project-detail .holocorp-stage { position:relative;width:100%;height:100%;min-height:70vh;overflow:hidden; }
.project-detail .mandralmier-stage::after { background:linear-gradient(0deg,#101010aa,transparent 18%); }
.project-detail .mandralmier-rings { left:50%;top:50%;width:70%;transform:translate(-50%,-50%); }
.project-detail .mandralmier-rings span:nth-child(3) { background:none;box-shadow:none; }
.project-detail .mandralmier-canvas,.project-detail .holocorp-canvas { position:absolute;inset:0;width:100%;height:100%; }
.tactimon-proof-row { display:flex;align-items:flex-end;gap:12px;width:100%;margin-top:12px; }
.tactimon-proof-actions { display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0; }
.tactimon-proof-actions .game-switch { margin-top:0; }
.tactimon-prototype-shot { position:relative;z-index:8;flex:0 0 min(42%,170px);width:min(42%,170px);margin:0;overflow:hidden;border:1px solid #f3f3ed88;background:#0a0c0c;box-shadow:0 12px 32px #000a;pointer-events:auto;cursor:zoom-in; }
.tactimon-prototype-shot img { display:block;width:100%;aspect-ratio:16/9;object-fit:cover; }
.tactimon-prototype-shot figcaption,.mandralmier-physical figcaption { position:absolute;left:0;right:0;bottom:0;padding:10px 12px;background:#0a0c0ce6;color:#f3f3ed;font:700 .62rem/1.3 var(--mono);letter-spacing:.08em; }
.tactimon-prototype-shot:focus-visible { outline:3px solid var(--accent);outline-offset:4px; }
body.prototype-preview-open { overflow:hidden; }
.prototype-lightbox { position:fixed;z-index:999;inset:0;display:grid;place-items:center;padding:5vh 5vw;background:#050606dc;cursor:zoom-out; }
.prototype-lightbox[hidden] { display:none; }
.prototype-lightbox figure { position:relative;width:100%;height:100%;margin:0;display:grid;place-items:center; }
.prototype-lightbox img { display:block;width:100%;height:100%;object-fit:contain;filter:none!important;opacity:1!important;transform:none!important;image-rendering:auto;background:transparent; }
.prototype-lightbox figcaption { position:absolute;left:0;bottom:0;padding:12px 16px;background:#0a0c0ce6;color:#f3f3ed;font:700 .62rem/1.3 var(--mono);letter-spacing:.08em; }
.mandralmier-physical { position:absolute;z-index:4;right:4%;top:8%;width:40%;height:74%;margin:0;overflow:hidden;border:1px solid #f3f3ed66;background:#0a0c0c;box-shadow:0 24px 70px #000b;pointer-events:none;opacity:var(--mandralmier-physical,0);transform:translate3d(calc((1 - var(--mandralmier-physical))*12%),0,0);will-change:opacity,transform; }
.mandralmier-physical img { display:block;width:100%;height:100%;object-fit:contain;transform:none; }
.project-detail .mandralmier-phases,.project-detail .holocorp-phases { left:6%;right:6%;bottom:110px;max-width:88%; }
.project-detail .mandralmier-phases { grid-template-columns:repeat(4,1fr); }
.project-detail .mandralmier-phases span,.project-detail .holocorp-phase { font-size:.7rem; }
.project-detail .mandralmier-meter,.project-detail .holocorp-meter { left:6%;right:6%;bottom:82px; }
.project-flow { width:100%;list-style:none;margin:0;padding:clamp(24px,5cqw,80px);display:flex;flex-direction:column;gap:0; }
.project-flow li { padding:26px 0 26px 60px;position:relative;border-top:1px solid #ffffff40;opacity:calc(.3 + .7*var(--media-progress,1));transform:translateY(calc((1 - var(--media-progress,1))*24px)); }
.project-flow li>span { position:absolute;left:0;top:30px;color:var(--accent);font:700 .875rem var(--mono); }
.project-flow h3 { font:900 clamp(2rem,3.3cqw,3.5rem)/1.1 var(--display);margin:0 0 12px; }
.project-flow p { font:400 1rem/1.6 Arial,sans-serif;margin:0;max-width:44ch; }
.lucioles-stage { width:100%;height:100%;min-height:65vh;position:relative;background:radial-gradient(ellipse at center,#113431 0%,#101010 72%); }
#lucioles-canvas { position:absolute;inset:0;width:100%;height:100%; }
.lucioles-fallback { width:76%;height:76%;object-fit:contain;position:absolute;left:12%;top:12%; }
.lucioles-stage.is-ready .lucioles-fallback { visibility:hidden; }
.lucioles-stage .media-caption { position:absolute;left:6%;bottom:85px; }
.lucioles-cards { width:100%;height:100%;min-height:60vh;display:flex;align-items:center;justify-content:center;perspective:1200px;padding:9%; }
.lucioles-cards img { width:27%;margin:0 -5%;border-radius:10px;box-shadow:0 16px 40px #0008;transform:translateY(calc((var(--i) - 2)*(var(--i) - 2)*12px)) rotate(calc((var(--i) - 2)*9deg*var(--media-progress,1)));transition:transform .15s linear; }
.koloro-gallery { display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center; }
.koloro-gallery img { width:100%;height:auto;max-height:58vh;object-fit:contain; }
.koloro-gallery figcaption { grid-column:1/-1; }
.scene.project-metrics { padding:90px 6% 110px; }
.project-metrics header { margin-bottom:clamp(32px,7vh,80px); }
.channel-dashboard { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0; }
.channel-stat { position:relative;min-width:0;border-top:1px solid #888;border-right:1px solid #444;padding:24px 18px; }
.channel-stat:last-child { border-right:0; }
.stat-index { color:var(--accent);font:400 .875rem var(--mono); }
.channel-stat strong { display:block;font:900 clamp(2.5rem,5.6cqw,6rem)/1.2 var(--display);white-space:nowrap;margin:40px 0 16px; }
.channel-stat p { font:400 1rem/1.5 Arial,sans-serif; }
.stat-line { width:100%;height:6px;background:var(--accent);transform:scaleX(var(--stat-progress,0));transform-origin:left; }
.metrics-source { font:400 .75rem/1.5 var(--mono);opacity:.65;margin:26px 0 0; }
.project-detail .metrics-dashboard { display:grid;grid-template-columns:1fr;width:100%;gap:0;padding:7%; }
.scene.project-detail .metric-block { min-height:0;padding:28px 12px;display:grid;grid-template-columns:1fr 1fr;align-items:center;column-gap:22px;border:0;border-bottom:1px solid #555;background:none;transform:none; }
.scene.project-detail .metric-block::before { display:none; }
.project-detail .metric-label { grid-column:2;font-size:.75rem; }
.scene.project-detail .metric-block>strong,.scene.project-detail .metric-block>.rank-seal { grid-column:1;grid-row:1/3;font-size:clamp(3.4rem,7cqw,7.5rem);margin:0; }
.project-detail .metric-block>p { position:static;grid-column:2;font-size:.875rem;line-height:1.5; }
.project-detail .rank-seal { width:100%;height:100px;border:0; }
.project-detail .rank-seal span { font-size:clamp(3.4rem,7cqw,7.5rem); }
.project-detail .rank-seal i,.project-detail .rank-seal b { display:none; }
.scene.project-detail .rank-seal::before,.scene.project-detail .rank-seal::after,.scene.project-detail.scene--express-metrics::after { display:none; }
.scene.project-detail .rank-seal { transform:scale(calc(.8 + var(--metric-progress,0)*.2));aspect-ratio:auto;display:flex;justify-content:start; }
.campaign-browser { width:100%;padding:6%; }
.project-detail .format-selector { width:100%;height:auto;position:relative;display:flex;gap:12px; }
.project-detail .format-card { min-width:0;flex:1;min-height:330px;padding:20px 12px; }
.project-detail .format-card strong { font-size:clamp(1.4rem,2.4cqw,2.6rem); }
.project-detail .format-card small { white-space:normal;font-size:.7rem; }
.project-detail .format-colors { position:relative;left:auto;bottom:auto;margin-top:22px;flex-wrap:wrap; }
.project-detail .format-colors[hidden] { display:none; }
.project-detail .format-card.is-active { flex:3; }
.language-map { width:85%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8%; }
.language-map>div { display:flex;flex-direction:column;gap:12px; }
.language-map>div span { font:700 2.4rem var(--mono);border-bottom:1px solid #666;padding:12px; }
.language-map>b { color:var(--accent);font:400 4rem Arial,sans-serif; }
.language-map>strong { color:var(--accent);font:900 clamp(5rem,15cqw,14rem)/1 var(--display); }
.language-map>p { grid-column:1/-1;font:400 1rem/1.5 var(--mono);margin-top:30px; }
.split-divider { display:none;position:absolute;z-index:15;top:0;bottom:0;width:1px;background:#ffffff50;pointer-events:none; }
.split-changing .split-divider { display:block; }
.split-changing .detail-copy { border-color:transparent; }
.is-pinned .project-detail { will-change:transform; }
.is-pinned .motion-stage { overflow:clip; }
.motion-stage:has(.project-detail)::after { display:none; }
.is-pinned .project-detail .detail-copy,.is-pinned .project-detail .detail-media { opacity:var(--content-opacity,1); }
.project-overview .stage-skills { display:none; }
.cover-filters { max-width:1000px; }
.cover-filters .skill-chip { font-size:.75rem;min-height:34px;padding:6px 9px; }
.scene[hidden] { display:none!important; }
@media(min-width:960px) and (min-height:620px) {
  .is-pinned .motion-track>.project-overview { padding:80px 6% 105px; }
  .is-pinned .motion-track>.project-choice { padding:75px 0 100px; }
  .is-pinned .motion-track>.project-metrics { padding:75px 6% 105px; }
}
@media(min-width:960px) and (max-height:800px) {
  .detail-copy { padding-top:56px;padding-bottom:85px; }
  .detail-copy h2 { font-size:clamp(1.6rem,2.65cqw,2.8rem);margin-bottom:16px; }
  .detail-copy .panel-kicker { margin-bottom:12px; }
  .detail-copy>p:not(.panel-kicker),.detail-list { font-size:1rem;line-height:1.4; }
  .detail-list li+li { margin-top:5px; }
  .detail-copy .text-link { margin-top:12px; }
}
@media(max-width:959px),(max-height:619px) {
  .project-jump--top { top:85px;right:auto;left:12px; }
  .scene.project-overview { min-height:85svh;padding:90px 7% 55px; }
  .project-overview h2 { font-size:clamp(2.6rem,9cqw,5rem); }
  .overview-bottom { align-items:start;flex-direction:column;margin-top:40px;gap:26px; }
  .overview-skills { max-width:100%; }
  .company-brand { flex:none;text-align:left; }
  .scene.project-detail,.scene.project-detail--reverse { display:flex!important;flex-direction:column;min-height:auto; }
  .detail-copy { order:0;border:0!important;padding:70px 7% 36px; }
  .detail-copy h2 { max-width:25ch;font-size:clamp(2rem,6cqw,3rem); }
  .detail-copy>p,.detail-list { max-width:60ch; }
  .detail-media { order:1;min-height:450px;width:100%;padding-bottom:35px; }
  .software-tip { width:190px;left:-16px; }
  .game-choices { grid-template-columns:42% 42%;gap:4%; }
  .game-choice>img { height:30vh; }
  .choice-title { padding:16px;font-size:1.8rem; }
  .choice-description { display:block;position:static;opacity:1;transform:none;padding:0 16px 20px;background:none;font-size:.875rem; }
  .project-detail .mandralmier-stage,.project-detail .holocorp-stage { height:65vh; }
  .motion-pin:not(.is-pinned) .scene.project-detail.scene--mandralmier,.motion-pin:not(.is-pinned) .scene.project-detail.scene--holocorp { min-height:300svh; }
  .motion-pin:not(.is-pinned) .scene--mandralmier>.detail-media,.motion-pin:not(.is-pinned) .scene--holocorp>.detail-media { flex:1 0 auto;min-height:220svh;align-items:flex-start;padding-bottom:0;overflow:visible; }
  .motion-pin:not(.is-pinned) .project-detail .mandralmier-stage,.motion-pin:not(.is-pinned) .project-detail .holocorp-stage { position:sticky;top:76px;height:calc(100svh - 76px);min-height:0; }
  .tactimon-prototype-shot { width:min(40%,150px);flex-basis:min(40%,150px); }
  .mandralmier-physical { left:13%;top:5%;width:74%;height:72%; }
  .project-detail .mandralmier-phases { left:4%;right:4%;max-width:92%; }
  .project-detail .mandralmier-phases span { padding-inline:2px;font-size:.52rem; }
  .project-detail .mandralmier-phases b { display:block;margin:0 0 3px;font-size:1rem; }
  .project-detail .fan-status { bottom:45px; }
  .channel-dashboard { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .channel-stat strong { margin-top:20px; }
  .channel-stat:nth-child(2) { border-right:0; }
  .project-detail .metrics-dashboard { padding:0 7% 40px; }
  .project-detail .metric-block>strong { font-size:4.5rem; }
  .project-detail .format-card { min-height:260px; }
  .motion-pin:not(.is-pinned) .motion-track { display:block!important; }
  .motion-pin:not(.is-pinned) .motion-stage { overflow:visible; }
  .motion-pin--horizontal:not(.is-pinned):not(.motion-pin--complex) .motion-stage { overflow:visible;scroll-snap-type:none; }
}
@media(max-width:540px) {
  .game-choices { grid-template-columns:84%;gap:26px; }
  .game-choice>img { height:35vh; }
  .project-choice header { margin-top:30px; }
  .project-metrics h2 { font-size:2.2rem; }
  .channel-stat { padding:22px 10px; }
  .channel-stat strong { font-size:2.6rem; }
  .project-detail .format-selector { flex-wrap:wrap; }
  .project-detail .format-card { flex:1 1 100%;min-height:160px; }
  .project-detail .format-card.is-active { min-height:380px;flex:1 1 100%; }
  .language-map { gap:5%; }
  .language-map>b { font-size:2.4rem; }
  .software:nth-child(5n) .software-tip { left:auto;right:0; }
  .game-choice>img.choice-logo { height:24vh;top:5%; }
  #microwarfare .micro-logo { width:120px;max-width:30%; }
  #microwarfare .micro-carousel { min-height:400px; }
  .koloro-gallery { grid-template-columns:1fr;padding:7%!important; }
  .koloro-gallery img { max-height:34vh; }
  .chevelus-gallery { padding:7%; }
}
@media(prefers-reduced-motion:reduce) {
  .project-image img,.lucioles-cards img,.project-flow li { transform:none;opacity:1; }
  .choice-description,.game-choice>img { transition:none; }
}
@media (prefers-reduced-motion:reduce) and (max-width:959px), (prefers-reduced-motion:reduce) and (max-height:619px) {
  .scene.project-detail.scene--mandralmier,.scene.project-detail.scene--holocorp { min-height:auto; }
  .scene--mandralmier>.detail-media,.scene--holocorp>.detail-media { flex:0 0 auto;min-height:450px;overflow:hidden; }
  .project-detail .mandralmier-stage,.project-detail .holocorp-stage { position:relative;top:auto;height:65vh; }
}

/* Compact phone composition. Every project remains one viewport high while the
   document scroll continues to drive the horizontal sequence and handoffs. */
@media(max-width:820px) and (prefers-reduced-motion:no-preference) {
  .is-pinned .motion-track>.scene { box-sizing:border-box; }
  .project-jump--top { top:auto;right:14px;bottom:78px;left:auto;width:38px;height:38px;font-size:22px; }

  .is-pinned .scene.project-overview {
    justify-content:center;
    min-height:100%!important;
    padding:24px 22px 78px!important;
  }
  .is-pinned .project-overview .panel-kicker { margin-bottom:12px;font-size:.65rem; }
  .is-pinned .project-overview h2 { margin-bottom:16px;font-size:clamp(2.45rem,12cqw,3.5rem);line-height:.95; }
  .is-pinned .project-overview .overview-description { font-size:.9rem;line-height:1.42; }
  .is-pinned .project-overview .overview-bottom { margin-top:22px;padding-top:14px;gap:14px; }
  .is-pinned .project-overview .overview-skills { gap:5px; }
  .is-pinned .project-overview .skill-chip { min-height:30px;padding:5px 7px;font-size:.62rem; }
  .is-pinned .project-overview .company-brand { max-width:145px;font-size:1rem; }
  .is-pinned .project-overview .company-brand img { max-width:145px;max-height:52px; }

  .is-pinned .scene.project-choice {
    justify-content:flex-start;
    min-height:100%!important;
    padding:20px 16px 78px!important;
  }
  .is-pinned .project-choice header { width:100%;margin:0 0 14px; }
  .is-pinned .project-choice .panel-kicker { margin-bottom:8px;font-size:.62rem; }
  .is-pinned .project-choice h2 { font-size:1.9rem; }
  .is-pinned .game-choices { grid-template-columns:1fr 1fr;gap:10px; }
  .is-pinned .game-choice>img { height:22vh;min-height:138px; }
  .is-pinned .game-choice>img.choice-logo { left:12%;top:5%;width:76%;height:16vh; }
  .is-pinned .choice-title { padding:10px;font-size:1.15rem; }
  .is-pinned .choice-description { padding:0 10px 12px;font-size:.72rem;line-height:1.35; }

  .is-pinned .scene.project-detail,
  .is-pinned .scene.project-detail--reverse {
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(0,auto) minmax(0,1fr);
    align-content:stretch;
    min-height:100%!important;
    padding:0 0 74px!important;
  }
  .is-pinned .project-detail>.detail-copy,
  .is-pinned .project-detail--reverse>.detail-copy {
    grid-column:1;
    grid-row:1;
    max-height:385px;
    overflow:auto;
    scrollbar-width:thin;
    justify-content:flex-start;
    padding:19px 22px 12px;
    border:0!important;
  }
  .is-pinned .project-detail>.detail-media,
  .is-pinned .project-detail--reverse>.detail-media {
    grid-column:1;
    grid-row:2;
    min-height:0;
    height:auto;
    padding:0;
    overflow:hidden;
  }
  .is-pinned .detail-copy .panel-kicker { margin-bottom:9px;font-size:.61rem; }
  .is-pinned .detail-copy h2 { max-width:none;margin-bottom:10px;font-size:clamp(1.65rem,8.2cqw,2.15rem);line-height:1; }
  .is-pinned .detail-copy>p:not(.panel-kicker) { margin-bottom:9px;font-size:.82rem;line-height:1.38; }
  .is-pinned .detail-list { margin:0 0 10px;padding-left:17px;font-size:.79rem;line-height:1.3; }
  .is-pinned .detail-list li+li { margin-top:3px; }
  .is-pinned .software-list { gap:5px;margin-top:5px; }
  .is-pinned .software { width:34px;height:34px;padding:4px; }
  .is-pinned .tool-labels { margin:8px 0;gap:4px; }
  .is-pinned .tool-labels li { padding:5px 7px;font-size:.64rem; }
  .is-pinned .game-switch { margin-top:8px;padding:6px 9px;font-size:.65rem; }
  .is-pinned .text-link { margin-top:5px;padding:7px 0;font-size:.68rem; }
  .is-pinned .game-switch+.text-link { margin-top:3px; }

  .is-pinned .project-image,
  .is-pinned .project-video { height:100%;padding:12px 22px 8px; }
  .is-pinned .project-image img,
  .is-pinned .project-video video { height:calc(100% - 24px);max-height:none;object-fit:contain; }
  .is-pinned .project-image figcaption,
  .is-pinned .project-video figcaption { margin-top:5px;font-size:.58rem; }
  .is-pinned .project-flow { height:100%;padding:8px 22px; }
  .is-pinned .project-flow li { flex:1;padding:9px 0 8px 38px; }
  .is-pinned .project-flow li>span { top:12px;font-size:.65rem; }
  .is-pinned .project-flow h3 { margin-bottom:3px;font-size:1.35rem; }
  .is-pinned .project-flow p { font-size:.72rem;line-height:1.3; }
  .is-pinned .chevelus-gallery { height:100%;padding:10px 22px; }
  .is-pinned .chevelus-gallery figcaption { margin:6px 0;font-size:.55rem; }
  .is-pinned .film-strip { gap:5px; }

  .is-pinned .scene--cards>.detail-media { padding:8px 14px 4px; }
  .is-pinned .scene--cards>.detail-copy { padding-top:15px;padding-bottom:7px; }
  .is-pinned .scene--cards>.detail-copy h2 { margin-bottom:7px;font-size:1.52rem; }
  .is-pinned .scene--cards>.detail-copy>p:not(.panel-kicker) { margin-bottom:6px; }
  .is-pinned .scene--cards>.detail-copy .detail-list { margin-bottom:7px;font-size:.74rem;line-height:1.25; }
  .is-pinned .scene--cards>.detail-copy .software { width:30px;height:30px; }
  .is-pinned .scene--cards>.detail-copy .game-switch { margin-top:5px; }
  .is-pinned .scene--cards>.detail-media>.card-system { width:100%;height:100%;min-height:0;padding:0; }
  .is-pinned .scene--cards .tactimon-proof-row { margin-top:7px;gap:8px; }
  .is-pinned .scene--cards .tactimon-prototype-shot { width:112px;flex-basis:112px; }
  .is-pinned .scene--cards .tactimon-prototype-shot figcaption { padding:5px;font-size:.46rem; }
  .is-pinned .scene--cards .tactimon-fan { width:100%;height:100%;max-height:none;margin:0; }
  .is-pinned .scene--cards .tactimon-fan .tactimon-card:not(.is-selected) {
    width:105px;
    transform:translateX(calc(-50% + var(--x)*var(--fan)*.34)) translateY(calc(var(--y)*var(--fan)*.45)) rotate(calc(var(--rot)*var(--fan)*.55));
  }
  .is-pinned .scene--cards .tactimon-fan .tactimon-card.is-selected { width:112px; }
  .is-pinned .scene--cards .fan-status { left:0;right:0;bottom:0;display:block;padding-top:5px; }
  .is-pinned .scene--cards .fan-status b { font-size:.85rem; }
  .is-pinned .scene--cards .fan-status span { display:none; }

  .is-pinned .project-detail .mandralmier-stage,
  .is-pinned .project-detail .holocorp-stage,
  .is-pinned .lucioles-stage,
  .is-pinned .lucioles-cards { width:100%;height:100%;min-height:0; }
  .is-pinned .mandralmier-physical { left:auto;right:2%;top:15%;width:48%;height:62%; }
  .is-pinned .project-detail .mandralmier-phases,
  .is-pinned .project-detail .holocorp-phases { bottom:42px; }
  .is-pinned .project-detail .mandralmier-meter,
  .is-pinned .project-detail .holocorp-meter { bottom:27px; }
  .is-pinned .lucioles-cards { padding:5%; }
  .is-pinned .lucioles-cards img { width:24%; }

  .is-pinned .scene.project-metrics {
    min-height:100%!important;
    padding:24px 20px 78px!important;
  }
  .is-pinned .project-metrics header { margin-bottom:18px; }
  .is-pinned .project-metrics .panel-kicker { margin-bottom:9px;font-size:.62rem; }
  .is-pinned .project-metrics h2 { font-size:clamp(1.85rem,8.8cqw,2.45rem);line-height:1; }
  .is-pinned .channel-dashboard { grid-template-columns:1fr 1fr; }
  .is-pinned .channel-stat { min-height:145px;padding:13px 10px; }
  .is-pinned .channel-stat strong { margin:12px 0 5px;font-size:clamp(2rem,12cqw,3.1rem); }
  .is-pinned .channel-stat p { margin:0;font-size:.72rem;line-height:1.25; }
  .is-pinned .channel-stat:nth-child(2) { border-right:0; }

  .is-pinned .scene--express-metrics .detail-copy { max-height:285px; }
  .is-pinned .scene--express-metrics .metrics-dashboard { height:100%;padding:0 22px 6px; }
  .is-pinned .scene--express-metrics .metric-block { min-height:0;padding:8px 4px; }
  .is-pinned .scene--express-metrics .metric-block>strong,
  .is-pinned .scene--express-metrics .metric-block>.rank-seal { font-size:2.6rem; }
  .is-pinned .scene--express-metrics .metric-label,
  .is-pinned .scene--express-metrics .metric-block>p { font-size:.6rem;line-height:1.3; }
  .is-pinned .scene--express-metrics .rank-seal { height:54px; }

  .is-pinned .koloro-gallery { grid-template-columns:1fr 1fr!important;grid-template-rows:minmax(0,1fr) auto;height:100%;gap:6px;padding:3px 8px!important; }
  .is-pinned .koloro-gallery img { width:100%;height:100%;min-height:0;max-height:none;object-fit:contain; }
  .is-pinned .koloro-gallery figcaption { margin:0;font-size:.55rem; }
  .is-pinned .campaign-browser { height:100%;padding:8px 18px; }
  .is-pinned .project-detail .format-selector { height:100%;gap:6px;flex-wrap:nowrap; }
  .is-pinned .project-detail .format-card,
  .is-pinned .project-detail .format-card.is-active { min-height:0;height:100%;padding:9px 6px; }
  .is-pinned .language-map { width:90%;height:100%;gap:4%; }
  .is-pinned .language-map>div { gap:4px; }
  .is-pinned .language-map>div span { padding:5px;font-size:1rem; }
  .is-pinned .language-map>strong { font-size:4.6rem; }
  .is-pinned .language-map>p { margin-top:8px;font-size:.7rem; }

  #microwarfare .is-pinned .scene--micro-profile {
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto minmax(200px,1fr) auto;
    gap:9px;
    align-content:stretch;
    min-height:100%!important;
    padding:18px 20px 78px!important;
  }
  #microwarfare .is-pinned .duo-title,
  #microwarfare .is-pinned .duo-figure,
  #microwarfare .is-pinned .project-brief { grid-column:1;grid-row:auto; }
  #microwarfare .is-pinned .duo-title { display:grid;grid-template-columns:1fr auto;align-items:end; }
  #microwarfare .is-pinned .duo-title .eyebrow { grid-column:1/-1;margin-bottom:4px;font-size:.59rem; }
  #microwarfare .is-pinned .duo-title h2 { margin:0;font-size:2.75rem;line-height:.82; }
  #microwarfare .is-pinned .micro-logo { width:96px;max-width:none;margin-bottom:3px; }
  #microwarfare .is-pinned .micro-carousel { width:100%;height:100%;min-height:0;padding:0; }
  #microwarfare .is-pinned .micro-frames { height:calc(100% - 25px);min-height:0; }
  #microwarfare .is-pinned .micro-carousel figcaption { margin:4px 0;font-size:.5rem; }
  #microwarfare .is-pinned .project-brief { align-self:auto;padding:11px 14px;border-left-width:4px; }
  #microwarfare .is-pinned .project-brief>span { font-size:.55rem; }
  #microwarfare .is-pinned .project-brief h3 { margin:5px 0;font-size:1.45rem; }
  #microwarfare .is-pinned .project-brief p { font-size:.75rem;line-height:1.3; }
  #microwarfare .is-pinned .micro-downloads { margin-top:7px;padding-top:7px;gap:10px; }
  #microwarfare .is-pinned .micro-downloads strong { font-size:2rem; }
  #microwarfare .is-pinned .micro-downloads span { font-size:.61rem; }

  #green-squat .is-pinned .scene--green-squat {
    display:grid!important;
    grid-template-columns:1fr;
    grid-template-rows:24px auto minmax(170px,1fr) auto 20px;
    gap:7px;
    align-content:stretch;
    min-height:100%!important;
    padding:14px 20px 78px!important;
  }
  #green-squat .is-pinned .gs-masthead { padding-bottom:5px;font-size:8px; }
  #green-squat .is-pinned .gs-title { padding-top:0; }
  #green-squat .is-pinned .gs-title h2 { font-size:clamp(3rem,16cqw,4rem);line-height:.82; }
  #green-squat .is-pinned .gs-publication { height:100%;min-height:0;margin:0; }
  #green-squat .is-pinned .gs-copy { max-width:none;padding:0; }
  #green-squat .is-pinned .gs-copy h3 { margin:0 0 5px;font-size:1.05rem!important;line-height:1.05!important; }
  #green-squat .is-pinned .gs-copy p { margin:0 0 6px;font-size:.68rem;line-height:1.34; }
  #green-squat .is-pinned .legacy-skills { gap:4px;margin:0; }
  #green-squat .is-pinned .legacy-skills .skill-chip { min-height:25px;padding:4px 6px;font-size:.56rem; }
  #green-squat .is-pinned .gs-colophon { padding-top:5px;gap:6px;font-size:7px;flex-wrap:nowrap; }
  #green-squat .is-pinned .gs-colophon span:nth-child(2),
  #green-squat .is-pinned .gs-colophon span:nth-child(3) { display:none; }
}

/* Source: responsive.css */
/* Pinned panels have a definite size: use both available axes for composition. */
.inactive-game-panels[hidden],.portfolio .chapter .scene[hidden] { display:none!important; }
.is-pinned .motion-track > .scene {
  container-type:size;
  --edge:clamp(16px,3vw,54px);
  --footer:76px;
  min-width:0;
  min-height:0!important;
}
.is-pinned .motion-navigation { left:var(--pad);right:76px;bottom:12px;min-height:46px;flex-wrap:nowrap; }
.is-pinned .motion-navigation > span { min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.is-pinned .motion-navigation button { flex-shrink:0; }
@media(min-width:821px) {
.is-pinned .motion-track > .scene.project-detail,
.is-pinned .motion-track > .scene.project-detail--reverse {
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,2fr)!important;
  grid-template-rows:minmax(0,1fr);padding:0 0 var(--footer)!important;
}
.is-pinned .motion-track > .scene.project-detail--reverse { grid-template-columns:minmax(0,2fr) minmax(0,1fr)!important; }
.is-pinned .project-detail > .detail-copy {
  grid-column:1;grid-row:1;min-height:0;max-height:none;
  padding:clamp(16px,4cqh,56px) clamp(18px,2.5cqw,46px);
  overflow:auto;scrollbar-width:thin;justify-content:safe center;
}
.is-pinned .project-detail--reverse > .detail-copy { grid-column:2; }
.is-pinned .project-detail > .detail-media {
  grid-column:2;grid-row:1;min-height:0;height:100%;padding:0;overflow:hidden;
}
.is-pinned .project-detail--reverse > .detail-media { grid-column:1; }
.is-pinned .detail-copy > * { flex-shrink:0; }
.is-pinned .detail-copy h2 { max-width:100%;font-size:clamp(1.4rem,min(3cqw,4.8cqh),3.4rem);line-height:1.1;margin-bottom:clamp(10px,2cqh,24px); }
.is-pinned .detail-copy .panel-kicker { font-size:clamp(.6rem,1.3cqh,.8rem);margin-bottom:clamp(8px,1.7cqh,22px); }
.is-pinned .detail-copy > p:not(.panel-kicker),.is-pinned .detail-list { font-size:clamp(.875rem,1.8cqh,1.05rem);line-height:1.42;margin-bottom:clamp(8px,1.6cqh,20px); }
.is-pinned .detail-list li + li { margin-top:clamp(3px,.65cqh,8px); }
.is-pinned .software-list { gap:6px;margin-top:4px; }
.is-pinned .software { width:clamp(32px,4.8cqh,44px);height:clamp(32px,4.8cqh,44px); }
.is-pinned .game-switch,.is-pinned .text-link { margin-top:10px;font-size:.75rem; }
.is-pinned .tactimon-proof-row { flex-wrap:wrap;align-items:center; }
.is-pinned .tactimon-proof-actions { min-width:110px; }
.is-pinned .tool-labels { gap:5px;margin-block:8px; }
.is-pinned .tool-labels li { font-size:.75rem;padding:5px 7px; }
.is-pinned .detail-media > :is(.mandralmier-stage,.holocorp-stage,.lucioles-stage,.lucioles-cards,.card-system) { width:100%;height:100%;min-height:0;padding-block:0; }
.is-pinned .project-detail .tactimon-fan { height:100%;min-height:0;max-height:none; }
.is-pinned .project-detail .tactimon-card { width:clamp(90px,min(14cqw,24cqh),205px); }
.is-pinned .scene--cards .tactimon-fan .tactimon-card { bottom:clamp(55px,calc(50% - 12cqh),40%); }
.is-pinned .scene--cards .tactimon-fan.has-selection .tactimon-card.is-selected { max-width:min(48%,30cqh); }
.is-pinned .project-detail .fan-status { bottom:12px; }
.is-pinned .project-detail .fan-status b { font-size:clamp(.85rem,2cqw,1.8rem); }
.is-pinned .project-detail :is(.mandralmier-phases,.holocorp-phases) { bottom:35px; }
.is-pinned .project-detail :is(.mandralmier-meter,.holocorp-meter) { bottom:18px; }
.is-pinned .detail-media :is(.project-image,.project-video) { height:100%;padding:clamp(12px,3cqh,40px) 5%;display:flex;flex-direction:column;justify-content:center;min-height:0; }
.is-pinned .detail-media :is(.project-image img,.project-video video) { flex:1;min-height:0;height:0;max-height:100%;width:100%;object-fit:contain; }
.is-pinned .detail-media :is(figcaption,.media-caption) { font-size:clamp(.6rem,1.25cqh,.8rem);margin-top:8px; }
.is-pinned .chevelus-gallery { height:100%;min-height:0;display:flex;flex-direction:column;justify-content:center;padding:3% 5%; }
.is-pinned .film-frames { flex:1;min-height:0;max-height:60cqh; }
.is-pinned .film-frames img { object-fit:contain; }
.is-pinned .film-strip { height:min(12cqh,100px);min-height:0; }
.is-pinned .film-strip img { height:100%;min-height:0;object-fit:contain; }
.is-pinned .project-flow { height:100%;padding:3% 6%;overflow:auto; }
.is-pinned .project-flow li { padding:clamp(10px,2.5cqh,26px) 0 clamp(10px,2.5cqh,26px) 38px; }
.is-pinned .project-flow li > span { top:clamp(14px,3cqh,30px); }
.is-pinned .project-flow h3 { font-size:clamp(1.3rem,min(3cqw,4cqh),3.5rem);margin-bottom:6px; }
.is-pinned .project-flow p { font-size:clamp(.8rem,1.7cqh,1rem); }
.is-pinned .motion-track > :is(.project-overview,.project-choice,.project-metrics) { padding:clamp(18px,5svh,70px) 6% var(--footer)!important;overflow:auto; }
.is-pinned .project-overview { justify-content:safe center; }
.is-pinned .project-overview h2 { font-size:clamp(2rem,min(8cqw,10cqh),8.5rem);margin-bottom:clamp(14px,3cqh,32px); }
.is-pinned .project-overview .panel-kicker { margin-bottom:clamp(12px,3cqh,28px);font-size:clamp(.65rem,1.5cqh,.875rem); }
.is-pinned .project-overview .overview-description { font-size:clamp(.95rem,min(1.65cqw,2.6cqh),1.5rem); }
.is-pinned .overview-bottom { margin-top:clamp(18px,5cqh,64px);padding-top:clamp(12px,2cqh,26px);gap:20px; }
.is-pinned .skill-chip { min-height:32px;font-size:clamp(.65rem,1.5cqh,.875rem);padding:6px 9px; }
.is-pinned .project-choice header { width:100%;margin:0 0 clamp(14px,3cqh,36px); }
.is-pinned :is(.project-choice,.project-metrics) h2 { font-size:clamp(1.75rem,min(5cqw,7cqh),5.8rem);line-height:1.1; }
.is-pinned .game-choices { grid-template-columns:1fr 1fr;gap:4%; }
.is-pinned .game-choice > img { height:40cqh;min-height:0; }
.is-pinned .game-choice > img.choice-logo { height:20cqh;min-height:0; }
.is-pinned .choice-title { font-size:clamp(1.15rem,min(3cqw,4cqh),3rem);padding:12px 16px; }
.is-pinned .project-metrics header { margin-bottom:clamp(18px,5cqh,64px); }
.is-pinned .channel-stat { min-height:0;padding:clamp(12px,2cqh,24px); }
.is-pinned .channel-stat strong { font-size:clamp(2rem,min(5.6cqw,9cqh),6rem);margin:clamp(12px,3cqh,40px) 0 10px; }
.is-pinned .channel-stat p { font-size:clamp(.8rem,1.8cqh,1rem);margin:8px 0; }
.is-pinned .project-detail .metrics-dashboard { height:100%;padding:3% 6%;grid-template-rows:repeat(3,minmax(0,1fr)); }
.is-pinned .project-detail .metric-block { padding:10px 6px;gap:8px; }
.is-pinned .project-detail .metric-block > strong,.is-pinned .project-detail .rank-seal span { font-size:clamp(2rem,min(7cqw,10cqh),7rem); }
.is-pinned .project-detail .rank-seal { min-height:0;height:100%; }
.is-pinned .koloro-gallery { height:100%;min-height:0;grid-template-columns:1fr 1fr!important;grid-auto-rows:minmax(0,1fr);gap:10px;padding:3%!important; }
.is-pinned .koloro-gallery img { min-height:0;height:100%;max-height:100%;object-fit:contain; }
.is-pinned .koloro-gallery figcaption { grid-row:auto; }
.is-pinned .campaign-browser { height:100%;padding:4%; }
.is-pinned .project-detail .format-selector { height:100%;margin:0;flex-wrap:nowrap; }
.is-pinned .project-detail .format-card,.is-pinned .project-detail .format-card.is-active { height:100%;min-height:0;overflow:auto;padding:16px 10px; }
.is-pinned .language-map { height:90%;gap:5%; }
.is-pinned .language-map > div { gap:8px; }
.is-pinned .language-map > div span { font-size:clamp(1rem,min(2.4cqw,4cqh),2.4rem);padding:6px; }
.is-pinned .language-map > strong { font-size:clamp(3rem,min(15cqw,22cqh),14rem); }
.is-pinned .language-map > p { font-size:clamp(.8rem,1.8cqh,1rem);margin-top:12px; }
#microwarfare .is-pinned .scene--micro-profile { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:clamp(12px,3svh,32px);padding:clamp(20px,4svh,64px) 4% 64px!important; }
#microwarfare .is-pinned .duo-title { grid-column:1/-1;grid-row:1; }
#microwarfare .is-pinned .duo-title h2 { font-size:clamp(2rem,min(7.4cqw,10cqh),8rem); }
#microwarfare .is-pinned .duo-figure { grid-column:1;grid-row:2;min-height:0;height:100%; }
#microwarfare .is-pinned .project-brief { grid-column:2;grid-row:2;min-height:0;max-height:100%;overflow:auto;padding:clamp(12px,2cqh,30px); }
#microwarfare .is-pinned .project-brief h3 { font-size:clamp(1.4rem,min(3.5cqw,5cqh),3.8rem);margin:12px 0; }
#microwarfare .is-pinned .project-brief p { font-size:clamp(.875rem,2cqh,1.1rem); }
#microwarfare .is-pinned .micro-carousel { height:100%;min-height:0;padding:0; }
#microwarfare .is-pinned .micro-frames { height:calc(100% - 34px);min-height:0; }
#microwarfare .is-pinned .micro-downloads { margin-top:14px;padding-top:12px; }
#microwarfare .is-pinned .micro-downloads strong { font-size:clamp(2rem,7cqh,5rem); }
#green-squat .is-pinned .scene--green-squat { grid-template-columns:42% 58%;grid-template-rows:auto minmax(0,1fr) auto;gap:12px 0;padding:clamp(16px,3svh,36px) 4% 64px!important; }
#green-squat .is-pinned .gs-editorial { display:flex;grid-column:1;grid-row:2;min-height:0;overflow:auto;padding:clamp(8px,2cqh,28px) 10px 0 0;gap:clamp(14px,3cqh,36px);justify-content:safe center; }
#green-squat .is-pinned .gs-title { padding:0; }
#green-squat .is-pinned .gs-title h2 { font-size:clamp(2.5rem,min(10.5cqw,14cqh),10rem);line-height:1; }
#green-squat .is-pinned .gs-copy { padding:0; }
#green-squat .is-pinned .gs-copy h3 { font-size:clamp(1.1rem,min(2.5cqw,3.8cqh),2.5rem)!important;margin-bottom:12px; }
#green-squat .is-pinned .gs-copy p { font-size:clamp(.875rem,min(1.1cqw,1.9cqh),1.05rem);line-height:1.5;margin-bottom:14px; }
#green-squat .is-pinned .gs-publication { grid-column:2;grid-row:2;min-height:0;width:90%;height:100%;justify-self:center;margin:0; }
#green-squat .is-pinned .gs-colophon { grid-row:3; }
}
.book-cover { gap:clamp(16px,3svh,28px); }
.cover-title h1 { font-size:clamp(3.5rem,min(14vw,24svh),15rem); }
.contact h2 { font-size:clamp(2.6rem,min(9vw,14svh),10rem); }
/* Portrait reserves real space for media; lengthy copy remains scrollable. */
@media(min-width:821px) and (max-width:1000px) and (orientation:portrait) {
  .is-pinned .motion-track > .scene.project-detail,.is-pinned .motion-track > .scene.project-detail--reverse { grid-template-columns:1fr!important;grid-template-rows:minmax(0,56fr) minmax(0,44fr); }
  .is-pinned .project-detail > .detail-copy,.is-pinned .project-detail--reverse > .detail-copy { grid-column:1;grid-row:1;padding:16px 22px 12px;justify-content:flex-start; }
  .is-pinned .project-detail > .detail-media,.is-pinned .project-detail--reverse > .detail-media { grid-column:1;grid-row:2; }
  .is-pinned .detail-copy h2 { font-size:clamp(1.4rem,min(6cqw,4cqh),2.8rem); }
  .is-pinned .detail-copy > p:not(.panel-kicker),.is-pinned .detail-list { font-size:clamp(.875rem,1.9cqh,1rem); }
  .is-pinned .scene--cards .tactimon-fan .tactimon-card:not(.is-selected) { width:clamp(75px,min(24cqw,18cqh),160px);transform:translateX(calc(-50% + var(--x)*var(--fan)*.34)) translateY(calc(var(--y)*var(--fan)*.4)) rotate(calc(var(--rot)*var(--fan)*.55)); }
  .is-pinned .scene--cards .tactimon-fan .tactimon-card.is-selected { width:min(32cqw,22cqh); }
  .is-pinned .overview-bottom { flex-direction:column;align-items:start;gap:16px; }
  .is-pinned .overview-skills { max-width:100%; }
  .is-pinned .company-brand { flex:none; }
  .is-pinned .game-choice > img { height:30cqh; }
  .is-pinned .choice-description { display:block;position:static;opacity:1;transform:none;background:none;padding:0 12px 12px;font-size:.8rem; }
  .is-pinned .channel-dashboard { grid-template-columns:1fr 1fr; }
  .is-pinned .channel-stat strong { font-size:clamp(2rem,min(12cqw,7cqh),5rem); }
  .is-pinned .split-changing .split-divider { display:none; }
  #microwarfare .is-pinned .scene--micro-profile { grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto;gap:10px; }
  #microwarfare .is-pinned .duo-title { grid-column:1;grid-row:1; }
  #microwarfare .is-pinned .duo-figure { grid-column:1;grid-row:2; }
  #microwarfare .is-pinned .project-brief { grid-column:1;grid-row:3;max-height:32cqh; }
  #microwarfare .is-pinned .project-brief h3 { font-size:1.4rem;max-width:none;margin:6px 0; }
  #microwarfare .is-pinned .micro-frames { height:calc(100% - 28px); }
  #green-squat .is-pinned .scene--green-squat { grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) minmax(0,auto) auto;gap:10px; }
  #green-squat .is-pinned .gs-editorial { display:contents; }
  #green-squat .is-pinned .gs-title { grid-column:1;grid-row:2; }
  #green-squat .is-pinned .gs-title h2 { font-size:clamp(2.5rem,min(13cqw,7cqh),5rem); }
  #green-squat .is-pinned .gs-publication { grid-column:1;grid-row:3; }
  #green-squat .is-pinned .gs-copy { grid-column:1;grid-row:4;max-height:37cqh;max-width:none;overflow:auto; }
  #green-squat .is-pinned .gs-copy h3 { font-size:clamp(1.1rem,2.5cqh,1.6rem)!important; }
  #green-squat .is-pinned .gs-colophon { grid-row:5; }
}
/* Compact landscape windows keep columns instead of stacking tall panels. */
@media(orientation:landscape) and (max-height:650px) {
  .is-pinned .motion-track > .scene { --footer:60px; }
  .is-pinned .motion-navigation { min-height:38px;padding:5px 8px;bottom:8px; }
  .is-pinned .motion-navigation > span { display:none; }
  .is-pinned .motion-navigation button { padding:6px 10px; }
  .is-pinned .motion-track > .scene.project-detail,.is-pinned .motion-track > .scene.project-detail--reverse { grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important; }
  .is-pinned .detail-copy h2 { font-size:clamp(1.25rem,4.8cqh,1.8rem); }
  .is-pinned .detail-copy { padding:12px 18px; }
  .is-pinned .project-detail .detail-copy .panel-kicker { font-size:.6rem; }
  .is-pinned .overview-bottom { flex-direction:row;align-items:center;margin-top:16px; }
  .is-pinned .overview-skills { max-width:75%; }
  .is-pinned .company-brand { flex:0 0 110px; }
  .is-pinned .company-brand img { max-width:110px;max-height:45px; }
  .is-pinned .channel-dashboard { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .is-pinned .channel-stat strong { font-size:clamp(1.5rem,8cqh,3rem); }
  .is-pinned .choice-description { font-size:.75rem; }
  .is-pinned .scene--cards .fan-status span { display:none; }
  .is-pinned .scene--cards .tactimon-fan .tactimon-card:not(.is-selected) { transform:translateX(calc(-50% + var(--x)*var(--fan)*.7)) translateY(calc(var(--y)*var(--fan)*.5)) rotate(calc(var(--rot)*var(--fan)*.7)); }
  .is-pinned .split-changing .split-divider { display:none; }
  .is-pinned .game-choice > img { height:28cqh; }
  #microwarfare .is-pinned .micro-frames { height:calc(100% - 26px); }
  #green-squat .is-pinned .gs-masthead,#green-squat .is-pinned .gs-colophon { padding-block:4px;font-size:8px; }
  .project-jump { width:36px;height:36px;font-size:22px;right:10px; }
  .project-jump--top { left:auto;top:auto;bottom:60px; }
  .project-jump--bottom { bottom:12px; }
}
@media(min-width:821px) and (max-width:1100px) {
  .is-pinned .scene--cards .tactimon-fan .tactimon-card:not(.is-selected) { transform:translateX(calc(-50% + var(--x)*var(--fan)*.5)) translateY(calc(var(--y)*var(--fan)*.4)) rotate(calc(var(--rot)*var(--fan)*.6)); }
}
@media(max-width:820px) {
  .is-pinned .motion-navigation { left:12px;right:62px; }
  .is-pinned .motion-navigation > span { display:none; }
  .is-pinned .motion-navigation button { flex:1;min-width:0; }
  .is-pinned .project-overview .company-brand img { max-height:48px; }
  .is-pinned .scene--cards .fan-status span { display:none; }
}
@media(min-width:821px) and (min-height:651px) {
  .project-jump--top { top:12px;left:auto;right:16px; }
}
@media(min-width:821px) and (max-height:650px) {
  .rail { padding-block:12px; }
  .rail .brand { max-height:42px; }
  .timeline { gap:4px; }
  .timeline-item.active { height:clamp(90px,24svh,170px); }
  .year { font-size:clamp(2rem,10svh,5rem); }
}

/* Source: immersive.css */
/* Finish the original immersive book. Scroll remains the timeline for every scene. */
:root{--motion-ease:cubic-bezier(.16,1,.3,1);scrollbar-gutter:stable}
.cover-stage{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:center;gap:clamp(20px,3vw,55px);flex:1;min-height:0;position:relative}
.book-cover{overflow:hidden;gap:22px;padding-top:28px;padding-bottom:28px}
.cover-title{position:relative;z-index:2;transform:translate3d(0,calc(var(--cover-progress,0)*-45px),0);opacity:calc(1 - var(--cover-progress,0)*.65)}
.cover-title h1{font-size:clamp(4rem,min(9.5vw,21svh),10.5rem);line-height:1.04;letter-spacing:-.015em;margin:22px 0}
.cover-title h1 .cover-name-line{display:block;color:var(--ink);-webkit-text-stroke:0;transform-origin:0 50%}
.cover-title h1 .cover-name-outline{color:transparent;-webkit-text-stroke:1.5px var(--ink)}
.cover-title h1 i{color:var(--ink);-webkit-text-stroke:0}
.cover-title>p{font-size:12px;line-height:1.6;letter-spacing:.07em;max-width:36ch}
.cover-title .cover-signature{font-size:12px;font-weight:400;letter-spacing:.1em;margin:20px 0 0}
.cover-artifacts{position:relative;isolation:isolate;height:clamp(280px,43svh,510px);perspective:1100px;transform:rotateX(calc(var(--cover-y,0)*-4deg)) rotateY(calc(var(--cover-x,0)*5deg));transform-style:preserve-3d}
.cover-artifact{position:absolute;display:block;text-decoration:none;box-shadow:0 25px 45px #131c1735;transition:filter .4s,box-shadow .4s;transform-style:preserve-3d;will-change:transform}
.cover-artifact>img{display:block;width:100%;height:100%;object-fit:cover;transition:filter .5s;filter:saturate(.7)}
.cover-artifact>span{position:absolute;inset:auto 0 0;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#111e;color:#f3f3ed;font:400 12px/1.3 var(--mono);letter-spacing:.025em}
.cover-artifact>span>b{font:400 18px Arial,sans-serif}
.cover-artifact:hover,.cover-artifact:focus-visible{z-index:5;box-shadow:0 28px 60px #131c1750;outline:2px solid var(--ink);outline-offset:5px}
.cover-artifact:hover>img,.cover-artifact:focus-visible>img{filter:saturate(1.15)}
.artifact--board{width:91%;height:66%;left:0;top:10%;transform:translate3d(calc(var(--cover-progress,0)*55px),calc(var(--cover-progress,0)*-70px),0) rotate(calc(-7deg - var(--cover-progress,0)*6deg))}
.artifact--edition{width:28%;height:57%;left:5%;bottom:-1%;transform:translate3d(calc(var(--cover-progress,0)*-35px),calc(var(--cover-progress,0)*40px),40px) rotate(calc(-13deg - var(--cover-progress,0)*10deg));z-index:2}
.artifact--edition>img{object-position:top}
.artifact--card{width:32%;height:66%;right:0;bottom:0;transform:translate3d(calc(var(--cover-progress,0)*60px),calc(var(--cover-progress,0)*70px),70px) rotate(calc(12deg + var(--cover-progress,0)*10deg));z-index:3}
.artifact--card>img{object-fit:cover;object-position:top}
.artifact-coordinate{position:absolute;font:400 10px/1.5 var(--mono);letter-spacing:.1em;color:#3c4138;pointer-events:none}
.artifact-coordinate--top{top:-8px;right:0}.artifact-coordinate--bottom{bottom:-28px;left:37%}
.cover-bottom{padding-block:15px 18px;border-bottom:1px solid #1115}
.cover-bottom p{max-width:40ch;font:400 16px/1.6 Arial,sans-serif}
.cover-enter{font-size:12px;letter-spacing:.055em;position:relative;overflow:hidden;flex-shrink:0;min-height:48px}
.cover-enter:after{content:'';position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--motion-ease)}
.cover-enter:hover:after{transform:scaleX(1)}.cover-enter>span{transition:transform .45s var(--motion-ease)}.cover-enter:hover>span{transform:translateY(5px)}
.cover-explore-label{display:flex;justify-content:space-between;gap:20px;font:400 12px/1.5 var(--mono);margin-bottom:12px}
.cover-filters{gap:6px}.cover-filters .skill-chip{font-size:12px;min-height:36px;padding:7px 10px;background:transparent;border-color:#1114;transition:color .2s,background .2s,border-color .2s}
.cover-filters .skill-chip[aria-pressed=true],.cover-filters .skill-chip:hover{background:var(--ink);color:var(--white);border-color:var(--ink)}
.index-toggle{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #1116;background:transparent;color:var(--ink);font:700 10px/1 var(--mono);letter-spacing:.04em;padding:7px;cursor:pointer;transition:background .25s}
.index-toggle:hover{background:var(--accent)}.index-toggle>span{font:400 22px Arial,sans-serif}
.timeline-label{position:absolute;left:calc(100% + 10px);top:50%;translate:0 -50%;min-width:170px;max-width:270px;padding:13px 17px;background:#101010;color:#f3f3ed;border-left:3px solid var(--active-accent,var(--accent));font:400 12px/1.5 var(--mono);letter-spacing:0;text-align:left;opacity:0;visibility:hidden;transform:translateX(-8px);transition:opacity .2s,transform .25s,visibility .2s;pointer-events:none;z-index:70}
.timeline-item:hover .timeline-label,.timeline-item:focus-visible .timeline-label{opacity:1;visibility:visible;transform:none}
.is-pinned .motion-navigation{border:1px solid #ffffff30;background:#111e;min-height:54px;padding:7px 10px;gap:7px}
.is-pinned .motion-navigation>span{font:400 12px/1.4 var(--mono);letter-spacing:.02em;padding-right:10px;color:#c9cabf}
.is-pinned .motion-navigation .chapter-step{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;flex:0 0 auto;min-height:38px;padding:8px 12px;border:1px solid #ffffff28;background:transparent;color:#d7d9cf;font-size:12px;overflow:hidden;transition:color .2s,background .2s,border-color .2s}
.chapter-step:after{content:'';position:absolute;left:0;bottom:0;width:calc(var(--step-progress,0)*100%);height:2px;background:var(--accent)}
.is-pinned .chapter-step[aria-current=step]{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.is-pinned .chapter-step[aria-current=step]:after{background:var(--ink)}
.chapter-step .step-number{font:400 12px/1.2 var(--mono);opacity:.65}.chapter-step .step-name{font:400 12px/1.2 Arial,sans-serif}
.is-pinned .chapter-step.is-complete{border-color:#ffffff55;color:#f3f3ed}
.is-pinned .motion-track>.project-overview{overflow:hidden}
.is-pinned .project-overview h2{transform:translate3d(calc((1 - var(--panel-in,1))*-30px),0,0);opacity:clamp(0,var(--copy-reveal,1),1)}
.is-pinned .project-overview .overview-description,.is-pinned .project-overview .overview-bottom{transform:translate3d(0,calc((1 - var(--copy-reveal,1))*30px),0);opacity:clamp(0,var(--copy-reveal,1),1)}
.is-pinned .project-detail .detail-copy>*{--entrance:clamp(0,calc(var(--copy-reveal,1)*1.35 - var(--reveal-order,0)*.05),1);opacity:var(--entrance);transform:translate3d(0,calc((1 - var(--entrance))*28px),0)}
.is-pinned .project-detail .detail-media>:is(.project-image,.project-video,.chevelus-gallery,.project-flow){clip-path:inset(0 calc((1 - var(--media-reveal,1))*25%) 0 0);transform:translate3d(calc((1 - var(--media-reveal,1))*24px),0,0)}
.is-pinned .project-detail--reverse .detail-media>:is(.project-image,.project-video,.project-flow){clip-path:inset(0 0 0 calc((1 - var(--media-reveal,1))*25%));transform:translate3d(calc((1 - var(--media-reveal,1))*-24px),0,0)}
.project-image img{transition:filter .4s}.project-image:hover img{filter:contrast(1.04)}
.game-choice{transition:border-color .35s,background .35s}.game-choice:hover,.game-choice:focus-visible{border-color:var(--accent);background:#1e2019}
.gallery-scrubber{display:flex;gap:5px;position:relative;z-index:5;margin:10px 0 0}.gallery-scrubber button{flex:1;min-height:30px;border:0;background:transparent;position:relative;cursor:pointer;padding:12px 0;color:inherit}.gallery-scrubber button:before{content:'';display:block;height:2px;background:currentColor;opacity:.25}.gallery-scrubber button:after{content:'';position:absolute;left:0;top:12px;height:2px;width:calc(var(--frame-progress,0)*100%);background:var(--accent)}.gallery-scrubber button[aria-current=true]:before{opacity:.7}.gallery-scrubber button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.project-index-dialog{position:fixed;inset:0;width:min(1200px,calc(100vw - 64px));height:min(790px,calc(100dvh - 64px));max-width:none;max-height:none;padding:0;border:1px solid #73786a;background:#131710;color:#f3f3ed;box-shadow:0 40px 140px #0009;overflow:hidden;z-index:200}
.project-index-dialog::backdrop{background:#090c09c9;backdrop-filter:blur(9px)}.project-index-dialog:not([open]){display:none}
.index-head{height:88px;display:flex;justify-content:space-between;align-items:center;padding:20px 32px;border-bottom:1px solid #ffffff28;gap:20px}.index-head h2{font:400 30px/1 var(--display);margin:0;letter-spacing:.02em}.index-head>div{display:flex;align-items:center;gap:18px}.index-head small{font:400 12px var(--mono);color:#b9c1ad}.index-close{width:44px;height:44px;background:transparent;border:1px solid #68735d;color:#f3f3ed;font:400 28px Arial,sans-serif;cursor:pointer}.index-close:hover{background:var(--accent);color:var(--ink)}
.index-layout{display:grid;grid-template-columns:1.12fr 1fr;height:calc(100% - 88px)}.index-list{padding:12px 30px 25px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#819273 #1d2419}.index-row{display:grid;grid-template-columns:26px 1fr auto;gap:16px;align-items:center;min-height:49px;padding:12px 0;border-bottom:1px solid #ffffff20;text-decoration:none;color:inherit;transition:padding .25s,color .25s}.index-row:hover,.index-row:focus-visible{color:var(--accent);padding-left:10px}.index-row>span{font:400 12px/1.5 var(--mono);opacity:.65}.index-row>strong{font:400 16px/1.3 Arial,sans-serif}.index-row>i{font:400 12px var(--mono);font-style:normal;opacity:.65}.index-row[hidden]{display:none}
.index-preview{border-left:1px solid #ffffff25;padding:30px;display:flex;flex-direction:column;justify-content:center;gap:22px;min-width:0;overflow:hidden}.index-preview-visual{background:#c0c6b8;width:100%;height:330px;position:relative;overflow:hidden;display:grid;place-items:center}.index-preview-visual img{width:100%;height:100%;object-fit:contain}.index-preview-visual[data-kind=logo] img{width:70%;height:70%}.index-preview h3{font:400 36px/1.1 var(--display);letter-spacing:.005em;margin:0}.index-preview p{font:400 14px/1.7 Arial,sans-serif;color:#c1cab6;margin:0}.index-preview-label{font:400 12px var(--mono);color:var(--accent)}.index-reset{margin-top:20px;padding:12px 0;border:0;border-bottom:1px solid #859476;background:transparent;color:#d6dccd;font:400 12px var(--mono);cursor:pointer}.index-reset[hidden]{display:none}
.prototype-close{position:absolute;top:24px;right:24px;z-index:2;min-height:44px;border:1px solid #fff8;background:#151515;color:#f5f5f0;padding:12px 20px;font:400 14px Arial,sans-serif;cursor:pointer}
.reader-feedback{font:400 14px/1.5 Arial,sans-serif;max-width:280px;color:#f3f3ed;margin:0}.reader-feedback:empty{display:none}
.gallery-scrubber{position:absolute;left:14px;right:14px;bottom:8px;margin:0;color:#fff;filter:drop-shadow(0 1px 2px #000)}.gallery-scrubber button{min-height:34px;padding-block:14px}.gallery-scrubber button:after{top:14px}.gallery-scrubber button:before{opacity:.55}
.mandralmier-phases [role=button],.holocorp-phases [role=button]{cursor:pointer;pointer-events:auto;padding-block:10px;min-height:40px;transition:color .2s,background .2s}.mandralmier-phases [role=button]:hover,.holocorp-phases [role=button]:hover{color:var(--accent);background:#ffffff10}.mandralmier-phases [role=button]:focus-visible,.holocorp-phases [role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.index-open{overflow:hidden}
@keyframes book-name-in{from{opacity:0;transform:translateY(45px) skewY(4deg)}to{opacity:1;transform:translateY(0) skewY(0)}}
@keyframes book-art-in{from{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}
@media(prefers-reduced-motion:no-preference){.book-ready .cover-name-line{animation:book-name-in .95s var(--motion-ease) both}.book-ready .cover-name-line:nth-child(2){animation-delay:.12s}.book-ready .cover-artifacts{animation:book-art-in 1.1s .2s var(--motion-ease) both}.project-index-dialog[open]{animation:book-name-in .35s var(--motion-ease) both}}
@media(max-width:1100px){.is-pinned .motion-navigation>span{max-width:220px}.is-pinned .motion-navigation .chapter-step{padding:8px 10px;gap:6px}.cover-title h1{font-size:10vw}.cover-artifact>span{font-size:10px}.index-toggle{font-size:9px;gap:4px}.artifact-coordinate{font-size:10px}.cover-top{font-size:12px}}
@media(max-width:820px){.book-cover{padding:100px 22px 26px;min-height:100svh;gap:23px}.cover-stage{grid-template-columns:1fr 1fr;gap:14px}.cover-title h1{font-size:clamp(3.8rem,10.8vw,6rem);margin:18px 0}.cover-title>p,.cover-title .cover-signature{font-size:10px;letter-spacing:.025em}.cover-artifacts{height:270px}.artifact--board{width:95%;height:52%;top:21%}.artifact--card{width:39%;height:53%;right:0;bottom:4%}.artifact--edition{width:35%;height:45%;bottom:0}.cover-artifact>span{font-size:9px;padding:6px}.artifact-coordinate{display:none}.cover-top{font-size:12px;padding-bottom:15px}.cover-bottom{flex-direction:row;align-items:center;gap:20px}.cover-bottom p{font-size:14px}.cover-enter{font-size:11px;gap:12px}.cover-filters .skill-chip{font-size:12px;min-height:38px}.cover-explore-label{font-size:11px}.rail .rail-foot{display:flex;align-items:center;gap:8px}.rail-foot .coordinates{display:none}.index-toggle{font-size:0;width:40px;height:40px;min-height:40px;padding:0;flex-shrink:0}.index-toggle>span{font-size:25px}.timeline-label{display:none}.is-pinned .motion-navigation{min-height:54px;padding:6px;gap:4px}.is-pinned .motion-navigation>span{display:none}.is-pinned .motion-navigation .chapter-step{flex:1;padding:8px 4px;min-width:0;flex-direction:column;gap:4px}.chapter-step .step-name{font-size:10px}.chapter-step .step-number{font-size:10px}.project-index-dialog{width:calc(100vw - 28px);height:calc(100dvh - 28px)}.index-head{padding:16px 20px;height:75px}.index-head h2{font-size:26px}.index-layout{height:calc(100% - 75px);grid-template-columns:1fr}.index-preview{display:none}.index-list{padding:8px 20px 24px}.index-row{min-height:52px;gap:12px}.index-row>strong{font-size:16px}.index-head small{font-size:11px}}
@media(max-width:520px){.cover-stage{grid-template-columns:1fr;gap:5px}.cover-title h1{font-size:clamp(4rem,20vw,7rem);line-height:1.02}.cover-title .cover-signature{font-size:11px;margin-top:13px}.cover-artifacts{height:230px;width:min(84%,340px);justify-self:center;margin-top:0;margin-bottom:10px}.artifact--board{width:90%;height:69%;top:6%}.artifact--edition{width:27%;height:62%;bottom:0}.artifact--card{width:31%;height:73%;bottom:0}.cover-artifact>span{font-size:9px}.cover-bottom{align-items:flex-start;flex-direction:column;gap:4px}.cover-enter{font-size:12px;width:100%;justify-content:space-between}.cover-explore-label{font-size:10px}.cover-filters .skill-chip{font-size:12px;padding:7px 8px;min-height:38px}.cover-title>p{font-size:12px;max-width:none}.rail .rail-foot .rail-links{display:none}.index-head>div{gap:10px}.index-head small{max-width:105px;line-height:1.5}.index-row>strong{font-size:15px}.index-row>i{font-size:11px}}
@media(max-height:700px) and (min-width:821px){.book-cover{gap:14px;padding-block:20px}.cover-artifacts{height:260px}.cover-stage{min-height:280px}.cover-title h1{font-size:min(8vw,110px)}.cover-title .cover-signature{margin-top:12px}.cover-bottom{padding-block:5px 12px}.cover-explore-label{margin-bottom:8px}.cover-filters .skill-chip{font-size:11px;min-height:32px;padding:5px 8px}}
@media(prefers-reduced-motion:reduce){.cover-title,.cover-artifacts,.cover-artifact,.cover-name-line{transform:none!important;opacity:1!important;animation:none!important;filter:none!important}.cover-artifact{will-change:auto}.is-pinned .project-detail .detail-copy>*,.is-pinned .project-detail .detail-media>*,.is-pinned .project-overview>*{transform:none!important;clip-path:none!important;opacity:1!important}.project-index-dialog[open]{animation:none}}

/* Source: art-direction.css */
/* Art direction: project-specific stages, driven by the existing scroll timeline. */
:root{--paper:#e2e4de;--paper-soft:#edf0e8;--rail:112px;--ink:#131613;--white:#f5f6ef;--ease-out:cubic-bezier(.16,1,.3,1)}
body{background:#131613}.grain{opacity:.035}.rail{background:#e2e4de;border-right:1px solid #13161325}.rail-caption{font-size:10px}.rail-links{font-size:12px}.coordinates{font-size:9px}.timeline-item.active::after{box-shadow:none}.chapter .motion-stage{box-shadow:none}.motion-stage::after{display:none!important}
.book-cover{background:#19201d;color:#f5f6ef;background-image:none;padding:32px 5%}.book-cover:before{display:none}.cover-top{color:#cad4c9;border-color:#f5f6ef35}.cover-title h1 .cover-name-line{color:#f5f6ef}.cover-title h1 .cover-name-outline{color:transparent;-webkit-text-stroke:1px #f5f6ef}.cover-title h1 i{color:#eaff00}.cover-title h1{font-size:clamp(5rem,min(11vw,23svh),12rem);letter-spacing:-.015em;line-height:1.03}.cover-title>p{color:#c8d3c8}.cover-title .cover-signature{color:#eaff00}.cover-stage{grid-template-columns:1fr 1fr}.cover-artifacts{height:clamp(300px,51svh,560px)}.cover-artifact>img{filter:none}.cover-artifact{box-shadow:0 30px 65px #0006}.cover-artifact>span{background:#e9f0e4;color:#131613}.artifact--board{width:102%;height:65%;left:-4%;top:8%}.artifact--edition{left:-3%;width:29%;height:60%}.artifact--card{width:33%;height:72%;right:-3%;bottom:-2%}.artifact-coordinate{color:#c2ceb7}.cover-bottom{border-color:#f5f6ef35}.cover-enter{color:#eaff00}.cover-enter:after{background:#eaff00}.cover-filters .skill-chip{color:#d2ddd1;border-color:#f5f6ef30;background:transparent}.cover-filters .skill-chip:hover,.cover-filters .skill-chip[aria-pressed=true]{color:#151b15;background:#eaff00;border-color:#eaff00}.cover-explore-label{color:#a8b9aa;font-size:12px}.cover-explore-label [data-filter-status]{color:#eaff00}
.is-pinned .motion-navigation{background:#111b;border-color:#ffffff25;backdrop-filter:blur(16px);left:24px;right:76px;bottom:14px;padding:5px 10px;min-height:46px;border-radius:3px;box-shadow:0 4px 24px #0002}.is-pinned .motion-navigation .chapter-step{border:0;min-height:36px;background:transparent;padding:8px 12px;border-radius:2px}.is-pinned .motion-navigation .chapter-step[aria-current=step]{background:var(--accent);color:#101510}.chapter-step .step-name{font-size:13px}.is-pinned .motion-navigation>span{font-size:11px;letter-spacing:.04em}.chapter-step:after{height:1px}.project-jump{border-radius:50%;background:#161b18e8;border-color:#ffffff45;color:#f3f5ec}
/* Opening posters: real work fills the stage; context stays readable. */
.scene.project-poster,.is-pinned .motion-track>.scene.project-poster{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:32px 5% 90px!important;background:var(--poster-background,#18231d);color:var(--poster-color,#f5f6ef);overflow:hidden;isolation:isolate}
.poster--digital{--poster-background:#dce8f0;--poster-color:#102a42}.poster--authority{--poster-background:#e7e5dc;--poster-color:#232620}.poster--print{--poster-background:#182930}.poster--lab{--poster-background:#062629}.poster--language{--poster-background:#113dd6}
.project-poster>.poster-art{position:absolute;inset:0;margin:0;z-index:-2;overflow:hidden}.poster-art img{width:100%;height:100%;object-fit:cover;object-position:70% center;transform:scale(calc(1.05 + (1 - var(--panel-in,1))*.1)) translateX(calc(var(--panel-delta,0)*-4%));}.project-poster:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101b16fa 0%,#101b16e8 32%,#101b1640 70%),linear-gradient(0deg,#101b16ed,transparent 38%);pointer-events:none}
.poster-label{display:flex;align-items:center;gap:24px;font:400 12px/1.4 var(--mono);letter-spacing:.1em;padding-bottom:22px;border-bottom:1px solid #ffffff45;position:relative;z-index:1}.poster-label>span{color:var(--accent)}.poster-label strong{font-weight:400}.poster-copy{position:relative;width:62%;flex:1;display:flex;flex-direction:column;justify-content:center;padding:26px 0 20px;min-height:0;z-index:1}.project-poster .poster-copy>.panel-kicker{font:400 12px/1.5 var(--mono);letter-spacing:.045em;color:#c6d6c6;margin:0 0 20px}.is-pinned .project-poster h2,.project-poster h2{font:400 clamp(3rem,min(7.8cqw,10cqh),8rem)/1.04 var(--display);margin:0 0 22px;max-width:none;letter-spacing:-.015em;text-transform:none;transform:translate3d(0,calc((1 - var(--copy-reveal,1))*40px),0);text-wrap:initial}.project-poster .overview-description{max-width:47ch;font:400 clamp(1rem,1.45cqw,1.15rem)/1.55 Arial,sans-serif;color:#d6e0d6;opacity:1;transform:none}.poster-enter{display:flex;align-items:center;justify-content:space-between;gap:25px;background:none;border:0;border-bottom:1px solid #cddbc370;color:#f5f6ef;width:fit-content;min-width:205px;min-height:44px;margin-top:20px;padding:8px 0;font:400 14px Arial,sans-serif;cursor:pointer}.poster-enter b{font:400 23px Arial,sans-serif;color:var(--accent);transition:transform .4s var(--ease-out)}.poster-enter:hover b{transform:translate(4px,-4px)}.poster-enter:hover{border-color:var(--accent)}.poster-enter:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.project-poster .overview-bottom{margin:0;padding-top:15px;border-color:#ffffff35;position:relative;z-index:1;align-items:center;transform:none;opacity:1;gap:20px}.project-poster .overview-skills{max-width:76%;gap:6px}.project-poster .skill-chip{background:#1115;border:1px solid #ffffff50;color:#e4eddf;min-height:32px;font:400 12px/1.3 var(--mono);padding:6px 9px}.project-poster .skill-chip:hover,.project-poster .skill-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#101710}.project-poster .company-brand{flex:0 0 130px;font-size:20px;filter:brightness(0) invert(1);opacity:.85}.project-poster .company-brand img{max-width:130px;max-height:44px}.poster-caption{position:absolute;right:5%;top:105px;writing-mode:vertical-rl;font:400 11px var(--mono);letter-spacing:.13em;color:#fff9;pointer-events:none}
.poster--atelier .poster-art img{object-position:center;filter:saturate(.8)}.poster--atelier:after{background:linear-gradient(90deg,#18251ef5,#18251ecc 34%,#101b1620 72%),linear-gradient(0deg,#101b16 1%,transparent 50%)}
.poster--cinema .poster-art img{object-position:85% center}.poster--cinema:after{background:linear-gradient(90deg,#160e16f2,#160e16cc 36%,#160e1600 86%),linear-gradient(0deg,#160e16,transparent 55%)}
.scene.poster--digital{background:#dce8f0;color:#102a42}.poster--digital:after{background:linear-gradient(90deg,#dce8f0 35%,#dce8f088 60%,#dce8f000)}.poster--digital .poster-art{inset:14% -16% 20% 42%;transform:rotate(-7deg);box-shadow:0 25px 90px #07284530}.poster--digital .poster-art img{object-fit:cover;object-position:top left}.poster--digital .poster-copy{width:65%}.poster--digital .poster-copy>.panel-kicker,.poster--digital .overview-description,.poster--digital .poster-enter{color:#193d57}.poster--digital .poster-label,.poster--digital .overview-bottom{border-color:#15334b40}.poster--digital .skill-chip{border-color:#15334b50;color:#15334b;background:#dce8f0bb}.poster--digital .company-brand{filter:none}.poster--digital .poster-caption{color:#193d57}
.scene.poster--authority{background:#e7e5dc;color:#232620}.poster--authority:after{display:none}.poster--authority .poster-copy>.panel-kicker,.poster--authority .overview-description,.poster--authority .poster-enter{color:#353b32}.poster--authority .poster-label,.poster--authority .overview-bottom{border-color:#252a2240}.poster--authority .skill-chip{color:#252a22;background:transparent;border-color:#252a2240}.poster--authority .company-brand{filter:none}.poster--authority .poster-caption{color:#454f41}.poster-type{position:absolute;right:4%;top:19%;width:44%;display:flex;flex-direction:column;color:var(--accent);z-index:-1;transform:translateY(calc((1 - var(--panel-in,1))*80px))}.poster-type>span{font:400 clamp(4rem,14cqw,14rem)/1.02 var(--display);letter-spacing:-.035em}.poster-type small{font:400 12px/1.4 var(--mono);margin:8px 0 28px;color:currentColor}.poster-type-outline{color:transparent;-webkit-text-stroke:1px currentColor}.poster--authority .poster-type{color:#b9273e;opacity:.8}.poster--authority .poster-type-outline{-webkit-text-stroke-color:#b9273e}.poster--authority .poster-copy{width:57%}
.poster--automotive .poster-art{inset:12% -10% 17% 42%;transform:rotate(-8deg);opacity:.65}.poster--automotive .poster-art img{object-fit:contain}.poster--automotive:after{background:linear-gradient(90deg,#13171bf9,#13171bcc 35%,#13171b10 75%)}
.scene.poster--print{background:#182930}.poster--print .poster-art{inset:10% 1% 15% 47%;transform:rotate(7deg)}.poster--print .poster-art img{object-fit:contain;filter:drop-shadow(0 30px 25px #0006)}.poster--print:after{background:linear-gradient(90deg,#182930 30%,#182930cc 47%,transparent 72%)}
.scene.poster--lab{background:#062629}.poster--lab:after{background:linear-gradient(90deg,#062629 33%,#06262900 80%)}.poster-type--lab{top:27%;right:1%;width:49%;color:#36c4cb}.poster-type--lab>span{font-size:15cqw}.poster-type--lab .poster-type-outline{-webkit-text-stroke-color:#4ff3ef}.poster-type--lab small{font-size:11px;letter-spacing:.1em}.poster--lab .poster-copy{width:65%}
.poster--play:after{background:linear-gradient(90deg,#142315f2,#142315b0 43%,transparent 80%),linear-gradient(0deg,#142315,transparent 55%)}
.scene.poster--language{background:#113dd6}.poster--language:after{background:linear-gradient(90deg,#113dd6 35%,#113dd600 75%)}.poster-type--languages{color:#a9c5ff;top:24%;width:44%;opacity:.65}.poster-type--languages>span{font-size:10cqw;margin-bottom:12px}.poster-type--languages .poster-type-outline{-webkit-text-stroke-color:#a9c5ff}
/* Shared typography, with individual compositions below. */
.scene.authored-scene,.is-pinned .motion-track>.scene.authored-scene{background:#17211c;color:#eef2e8}.authored-scene .detail-copy{border:0}.is-pinned .authored-scene .detail-copy{padding:36px 7%;justify-content:center}.authored-scene .detail-copy h2,.is-pinned .authored-scene .detail-copy h2{font:400 clamp(2.4rem,min(4.4cqw,6cqh),5rem)/1.07 var(--display);letter-spacing:-.01em;margin-bottom:24px}.authored-scene .detail-copy>.panel-kicker{font:400 12px/1.6 var(--mono);letter-spacing:.06em;margin-bottom:20px}.authored-scene .detail-copy>p:not(.panel-kicker),.authored-scene .detail-list,.is-pinned .authored-scene .detail-copy>p:not(.panel-kicker),.is-pinned .authored-scene .detail-list{font:400 16px/1.55 Arial,sans-serif;color:inherit}.authored-scene .detail-list{list-style:none;padding:0}.authored-scene .detail-list li{padding:9px 0;border-bottom:1px solid #ffffff25;margin:0}.authored-scene .software{background:#ecf0e3;width:36px;height:36px;padding:7px;border:0;border-radius:3px}.authored-scene .tool-labels li{font-size:12px;border-color:#b7c8b650;padding:8px 10px}.authored-scene .text-link{font-size:13px}.authored-scene .game-switch{padding:10px 12px;min-height:40px;font-size:12px}
.is-pinned .motion-track>.scene.stage-cards{grid-template-columns:minmax(0,38fr) minmax(0,62fr)!important;background:#dce6d4;color:#1a2b1f}.stage-cards .detail-copy>.panel-kicker{color:#3f6540}.stage-cards .detail-list li{border-color:#1b361f30}.stage-cards .detail-media{background:radial-gradient(ellipse at 55% 50%,#c1d1b6,#dce6d4 70%)}.stage-cards .card-system{background:none}.stage-cards .tactimon-card{filter:drop-shadow(0 20px 18px #20341d45)}.stage-cards .fan-status{color:#243524;left:7%;right:7%}.stage-cards .fan-status b{font:400 28px var(--display)}.stage-cards .fan-status span{font-size:11px;line-height:1.7}.stage-cards .software{background:#f6f9ed}.stage-cards .tactimon-proof-row{margin-top:20px}.stage-cards .tactimon-prototype-shot{box-shadow:none;border-color:#1b361f40}.stage-cards .game-switch,.stage-cards .text-link{border-color:#1b361f60}.stage-cards .detail-copy h2{font-size:clamp(2.5rem,min(4.5cqw,6.2cqh),5rem)}
.scene.stage-forest,.is-pinned .motion-track>.scene.stage-forest{background:#082d2b}.stage-forest .detail-media{background:#082d2b}.stage-forest .lucioles-stage{background:radial-gradient(ellipse,#15554d,#082d2b 70%)}
/* Full object stage: canvas gets the room, copy sits in a quiet margin. */
.is-pinned .motion-track>.scene.project-choice{background:#263b2c;color:#eff5e4;padding:32px 5% 90px!important;display:grid;grid-template-rows:auto minmax(0,1fr);gap:22px;align-content:stretch}.is-pinned .project-choice header{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:0;width:100%;border-bottom:1px solid #c9e0b640;padding-bottom:20px}.is-pinned .project-choice .panel-kicker{font-size:12px;line-height:1.5;margin:0;color:#c5d6bc;max-width:18ch}.is-pinned .project-choice h2{font:400 clamp(2.5rem,4.7cqw,5rem)/1 var(--display);max-width:17ch}.is-pinned .game-choices{height:100%;gap:20px;min-height:0;grid-template-columns:1fr 1fr}.is-pinned .game-choice{height:100%;border:0;background:#1a2c1f;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate}.is-pinned .game-choice>img:first-child{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;z-index:-2;transition:transform .8s var(--ease-out),filter .5s;filter:brightness(.9)}.is-pinned .game-choice:first-child>img:first-child{object-fit:contain;padding:3% 10% 20%;background:#d6e3c9;transform:rotate(-5deg) scale(.92)}.is-pinned .game-choice:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#10251cf0,transparent 52%);pointer-events:none}.is-pinned .game-choice .choice-title{font:400 clamp(2.5rem,4.5cqw,5rem)/1 var(--display);border:0;padding:18px 6% 8px;align-items:center}.is-pinned .game-choice .choice-description{position:static;opacity:1;transform:none;background:none;display:block;min-height:55px;padding:0 6% 22px;font:400 14px/1.5 Arial,sans-serif;max-width:40ch}.is-pinned .game-choice .choice-logo{top:12%;height:34%;z-index:-1}.is-pinned .game-choice:hover>img:first-child{filter:brightness(1.08);transform:scale(1.04)}.is-pinned .game-choice:first-child:hover>img:first-child{transform:rotate(0deg) scale(1)}.is-pinned .game-choice:focus-visible{outline:3px solid #eaff00;outline-offset:5px}
.is-pinned .motion-track>.scene.stage-object{display:block!important;padding:0 0 76px!important;background:#0d1b1b;overflow:hidden}.stage-object .object-word{position:absolute;left:4%;top:6%;right:3%;font:400 12cqw/1 var(--display);letter-spacing:-.02em;color:#bdd5bb10;white-space:nowrap;pointer-events:none;z-index:0;transform:translateX(calc(var(--panel-delta,0)*-80px))}.is-pinned .stage-object>.detail-copy{position:absolute;left:4%;bottom:100px;width:29%;height:auto;max-height:70%;padding:0;z-index:6;justify-content:flex-end;overflow:auto}.is-pinned .stage-object>.detail-media{position:absolute;inset:0 0 76px 26%;width:74%;height:auto;z-index:1}.stage-object .detail-copy h2{font-size:clamp(2.5rem,4.5cqw,5rem)}.stage-object .detail-copy>p{color:#b3c8ba!important}.stage-object .mandralmier-rings{opacity:.4}.stage-object .mandralmier-physical{border:0;box-shadow:none;background:#102121;top:14%;height:66%}.stage-object .mandralmier-physical figcaption{font-size:11px;background:#112a25e0}.stage-object .mandralmier-phases,.stage-object .holocorp-phases{left:10%;right:6%}.stage-object .mandralmier-phases [role=button],.stage-object .holocorp-phases [role=button]{font-size:12px}.stage-object .mandralmier-meter,.stage-object .holocorp-meter{opacity:.65}.stage-object .mandralmier-stage:after{background:none}.stage-object .holocorp-stage{background:none}.stage-object .holocorp-grid{opacity:.15}
/* Editorial media stages use a headline band and an image-led lower composition. */
.scene.stage-editorial,.is-pinned .motion-track>.scene.stage-editorial{display:grid!important;grid-template-columns:minmax(0,72fr) minmax(0,28fr)!important;grid-template-rows:auto minmax(0,1fr);gap:24px 30px;padding:32px 4% 90px!important;align-content:stretch;background:#16191a;color:#f5f4ec}.scene-heading{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:36px;position:relative;z-index:3}.scene-heading .panel-kicker{font:400 12px/1.5 var(--mono);letter-spacing:.07em;margin:0 0 15px;color:var(--accent)}.scene-heading h2{font:400 clamp(2.7rem,min(5.4cqw,7cqh),6rem)/1.05 var(--display);margin:0;letter-spacing:-.01em;text-wrap:initial}.scene-heading>p{font:400 16px/1.55 Arial,sans-serif;max-width:43ch;margin:0 0 3px;color:#b8c5bd}.is-pinned .stage-editorial>.detail-media{grid-column:1;grid-row:2;padding:0;min-height:0;overflow:hidden}.is-pinned .stage-editorial>.detail-copy{grid-column:2;grid-row:2;padding:0 0 15px;border:0;justify-content:flex-end;overflow:auto}.stage-editorial .detail-copy:empty{display:none}.stage-editorial .detail-list li{padding:12px 0}.stage-editorial .detail-list{margin:0 0 20px}.is-pinned .stage-editorial .detail-media>:is(.project-image,.project-video,.chevelus-gallery){height:100%;max-height:none;padding:0;clip-path:none;transform:none}.stage-editorial .detail-media :is(.project-image img,.project-video video){transform:none;max-height:100%;object-fit:contain}.stage-editorial .detail-media figcaption{font:400 11px/1.5 var(--mono);letter-spacing:.03em;color:inherit;opacity:.6}.is-pinned .stage-editorial--wide>.detail-media{grid-column:1/-1}
.is-pinned [data-panel=chevelus-production]{background:#1e151b}.is-pinned [data-panel=chevelus-production] .scene-heading h2{color:#f4edea}.is-pinned [data-panel=chevelus-production] .chevelus-gallery{justify-content:start;gap:0}.is-pinned [data-panel=chevelus-production] .film-frames{flex:1;max-height:none;background:#100e10}.is-pinned [data-panel=chevelus-production] .film-frames img{object-fit:contain;transform:scale(1.035);transition:opacity .4s,transform 1.2s var(--ease-out)}.is-pinned [data-panel=chevelus-production] .film-frames img.is-active{transform:scale(1)}.is-pinned [data-panel=chevelus-production] .film-strip{display:none}.is-pinned [data-panel=chevelus-production] .chevelus-gallery figcaption{margin:14px 0 0}.stage-editorial .gallery-scrubber{left:18px;right:18px;bottom:5px}
.is-pinned [data-panel=signature-communication]{background:#171b20}.is-pinned [data-panel=signature-communication] .project-video video{background:#080b0e}.is-pinned [data-panel=alpha-routage]{background:#253141}.is-pinned [data-panel=alpha-routage] .project-image img{object-fit:contain}
.is-pinned [data-panel=ca-communication],.is-pinned [data-panel=ca-declinaisons]{background:#e8e5dc;color:#20302d}.is-pinned [data-panel^=ca-] .scene-heading>p{color:#4a5650}.is-pinned [data-panel^=ca-] .scene-heading .panel-kicker{color:#395c46}.is-pinned [data-panel^=ca-] .detail-list li{border-color:#233d3330}.is-pinned [data-panel=ca-communication] .project-image{background:#d6d2c8;padding:3%}.is-pinned [data-panel=ca-communication] .project-image img{filter:drop-shadow(0 15px 12px #0002);transform:rotate(-3deg) scale(.96);transition:transform .7s var(--ease-out)}.is-pinned [data-panel=ca-communication] .project-image:hover img{transform:rotate(0) scale(1)}.is-pinned [data-panel=ca-declinaisons] .detail-media{grid-column:1/-1}.is-pinned [data-panel=ca-declinaisons] .campaign-browser{padding:0;height:100%}.is-pinned [data-panel=ca-declinaisons] .format-selector{transform:none;gap:20px;align-items:stretch;opacity:1}.is-pinned [data-panel=ca-declinaisons] .format-card{max-width:none;min-width:80px;background:#d0cdc2;border:1px solid #7b897d66;color:#23372b;padding:20px;flex:1;transition:flex .65s var(--ease-out),background .4s}.is-pinned [data-panel=ca-declinaisons] .format-card.is-active{flex:4;background:#e4e0d6}.is-pinned [data-panel=ca-declinaisons] .format-card:not(.is-active)>strong{writing-mode:initial;font-size:25px}.is-pinned [data-panel=ca-declinaisons] .format-card>span,.is-pinned [data-panel=ca-declinaisons] .format-card>small{color:inherit;font-size:12px}.is-pinned [data-panel=ca-declinaisons] .format-card img{padding:40px 14px 30px}.is-pinned [data-panel=ca-declinaisons] .format-card:before{display:none}.is-pinned [data-panel=ca-declinaisons] .format-card.is-active>strong{font-size:23px}.is-pinned [data-panel=ca-declinaisons] .format-colors{margin-top:10px;z-index:4}.is-pinned [data-panel=ca-declinaisons] .format-colors button{box-shadow:0 1px 4px #0003}
.is-pinned [data-panel^=koloro-]{background:#102c24}.is-pinned [data-panel^=koloro-] .scene-heading>p{color:#bfd2bc}.is-pinned [data-panel^=koloro-] .koloro-gallery{display:grid;padding:0!important;gap:14px;grid-template-columns:1fr 1fr!important;grid-template-rows:minmax(0,1fr) auto}.is-pinned [data-panel^=koloro-] .koloro-gallery img{height:100%;width:100%;object-fit:cover;transform:translateY(calc((1 - var(--media-reveal,1))*25px));transition:object-position .7s}.is-pinned [data-panel^=koloro-] .koloro-gallery img:hover{object-position:60% center}.is-pinned [data-panel=koloro-prototype] .koloro-gallery{grid-template-columns:1.5fr 1fr!important}.is-pinned [data-panel=koloro-prototype] .koloro-gallery img:nth-child(2){object-fit:contain;background:#0c211b}
/* Workflow steps are a readable, selectable sequence instead of a bullet wall. */
.is-pinned .motion-track>.scene.stage-process{grid-template-columns:38fr 62fr!important;background:#e1e7ec;color:#182d3d}.is-pinned .stage-process>.detail-copy{grid-column:1;padding:8%;border-right:1px solid #18364725}.is-pinned .stage-process>.detail-media{grid-column:2}.stage-process .detail-copy>.panel-kicker{color:#385775}.stage-process .project-flow{height:100%;justify-content:center;padding:6% 8%;overflow:auto}.stage-process .project-flow li{padding:20px 0 22px 45px;border-color:#18364735;opacity:1;transform:none;transition:padding .45s var(--ease-out)}.stage-process .project-flow li>span{top:29px;color:#486579;font-size:12px}.stage-process .project-flow h3{font:400 clamp(2.4rem,4.2cqw,4.7rem)/1.1 var(--display);margin:0}.process-step{display:block;width:100%;border:0;padding:0 30px 0 0;background:none;color:inherit;text-align:left;font:inherit;cursor:pointer;position:relative;opacity:.5;transition:opacity .3s}.process-step:after{content:'+';position:absolute;right:0;top:8px;font:300 24px Arial,sans-serif}.is-active .process-step{opacity:1}.is-active .process-step:after{content:'−'}.process-step:focus-visible{outline:2px solid currentColor;outline-offset:6px}.stage-process .project-flow p{font-size:16px;line-height:1.55;max-width:38ch;margin:14px 0 0;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s var(--ease-out),opacity .3s}.stage-process .project-flow .is-active{padding-block:28px 36px}.stage-process .project-flow .is-active p{max-height:160px;opacity:1}#expressvpn .is-pinned .stage-process{background:#e9dfdc;color:#442b2d}.is-pinned [data-panel=holocorp-interaction]{background:#092b2e;color:#d3f5ee}.is-pinned [data-panel=holocorp-interaction] .project-flow li{border-color:#b2f0e640}.is-pinned [data-panel=holocorp-interaction] .project-flow li>span,.is-pinned [data-panel=holocorp-interaction] .panel-kicker{color:#66d5ce}
/* Results: proportional type, no fabricated charts or time series. */
.is-pinned .motion-track>.scene.stage-score{display:flex!important;flex-direction:column;gap:24px;background:#f0e5df;color:#522b32;padding:40px 5% 90px!important}.is-pinned .stage-score>.detail-copy{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:8px 45px;padding:0;overflow:visible;width:100%;flex:none}.stage-score .detail-copy>.panel-kicker{grid-column:1/-1;color:#895160;margin:0}.is-pinned .stage-score .detail-copy h2{font:400 clamp(3rem,min(6cqw,8cqh),6rem)/1.05 var(--display);margin:0}.stage-score .detail-copy>p:not(.panel-kicker){max-width:47ch;margin:0}.is-pinned .stage-score>.detail-media{flex:1;min-height:0;width:100%}.is-pinned .stage-score .metrics-dashboard{display:grid;grid-template-columns:1.1fr 1fr .8fr;grid-template-rows:1fr;padding:0;height:100%;width:100%;gap:20px}.is-pinned .stage-score .metric-block{display:flex;flex-direction:column;justify-content:center;align-items:start;border:0;border-top:1px solid #522b3260;border-right:1px solid #522b3230;padding:25px 0;background:none;position:relative}.is-pinned .stage-score .metric-block:last-child{border-right:0}.stage-score .metric-label{font:400 11px/1.5 var(--mono);letter-spacing:.06em}.is-pinned .stage-score .metric-block>strong,.is-pinned .stage-score .rank-seal span{font:400 clamp(4rem,min(12cqw,20cqh),13rem)/1.15 var(--display);letter-spacing:-.025em;color:#ae294c;margin:12px 0 8px}.stage-score .metric-block>strong sup{font-size:.45em;vertical-align:super}.is-pinned .stage-score .rank-seal{height:auto;margin:12px 0 8px;min-height:0;transform:none;background:none;width:auto}.stage-score .metric-block>p{font:400 12px/1.6 var(--mono);margin:8px 0;max-width:22ch}.stage-score .rank-seal span{font-size:clamp(4rem,12cqw,13rem)}
.scene.stage-audience,.is-pinned .motion-track>.scene.stage-audience{background:#e9483c;color:#261711;padding:40px 5% 90px!important;display:flex;flex-direction:column;justify-content:center}.stage-audience .panel-kicker{font:400 12px var(--mono);margin-bottom:18px}.stage-audience h2,.is-pinned .stage-audience h2{font:400 clamp(3rem,min(6cqw,8cqh),6rem)/1.05 var(--display)}.stage-audience .channel-dashboard{grid-template-columns:1.5fr 1fr .7fr 1fr}.stage-audience .channel-stat{border-color:#35191255;padding:25px 18px}.is-pinned .stage-audience .channel-stat strong{font:400 clamp(2.5rem,min(6.5cqw,11cqh),7.5rem)/1.1 var(--display);letter-spacing:-.025em;color:#fff4d8;white-space:nowrap;margin:35px 0 15px}.stage-audience .stat-index{font-size:12px;color:#361c13}.stage-audience .stat-line{background:#371f18;height:2px}.stage-audience .channel-stat p{font-size:14px}
/* Miniatures: a light workshop counterpoint to the object lab. */
#microwarfare .is-pinned .scene--micro-profile{background:#e4e1d7;color:#342c24;grid-template-columns:minmax(0,70fr) minmax(0,30fr);padding:28px 4% 76px!important;gap:22px 32px}#microwarfare .scene--micro-profile:before{display:none}#microwarfare .is-pinned .duo-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #342c2440;padding:0 0 20px}#microwarfare .is-pinned .duo-title h2{font:400 clamp(3rem,min(8cqw,12cqh),9rem)/1 var(--display);letter-spacing:-.025em;margin:0}#microwarfare .duo-title .eyebrow{font-size:12px}#microwarfare .micro-logo{width:90px;max-width:15%}#microwarfare .is-pinned .duo-figure{background:#cbc8bd;border:0;box-shadow:none;clip-path:none;filter:none}#microwarfare .is-pinned .micro-frames{background:#cbc8bd}#microwarfare .is-pinned .micro-frames img{object-fit:contain;filter:none;transition:opacity .45s,transform .8s var(--ease-out);transform:scale(1.04)}#microwarfare .micro-frames img.is-active{transform:scale(1)}#microwarfare .is-pinned .project-brief{background:none;box-shadow:none;border:0;padding:0;align-self:center;transform:none}#microwarfare .is-pinned .project-brief h3{font:400 clamp(2rem,3.4cqw,4rem)/1.08 var(--display);letter-spacing:-.01em}#microwarfare .project-brief>span{font-size:11px;line-height:1.5}#microwarfare .is-pinned .project-brief p{font-size:16px;line-height:1.5}#microwarfare .micro-downloads{flex-direction:column;align-items:start;gap:10px}#microwarfare .is-pinned .micro-downloads strong{font:400 clamp(4rem,9cqw,9rem)/1 var(--display);color:#b94a25}#microwarfare .micro-downloads span{font-size:12px}#microwarfare .micro-carousel figcaption{padding:0 14px;font-size:11px}
/* Magazine: the artwork becomes a spread that opens with the scroll. */
#green-squat .is-pinned .scene--green-squat{background:#cedb58;color:#213019;padding:25px 4% 78px!important;grid-template-columns:36% 64%;gap:20px 0}#green-squat .scene--green-squat:before{display:none}#green-squat .gs-masthead{border-color:#21301960;font-size:12px;letter-spacing:.06em}#green-squat .is-pinned .gs-title h2{font:400 clamp(3.5rem,min(10cqw,13cqh),10rem)/.97 var(--display);letter-spacing:-.025em}#green-squat .gs-title h2 em{color:#cedb58;-webkit-text-stroke:1px #213019;font-style:normal}#green-squat .is-pinned .gs-copy h3{font:400 clamp(1.5rem,2.2cqw,2.7rem)/1.15 var(--display)!important}#green-squat .is-pinned .gs-copy p{font:400 16px/1.55 Arial,sans-serif}#green-squat .is-pinned .gs-editorial{padding-right:5%;gap:22px;overflow:auto}#green-squat .is-pinned .gs-publication{width:100%;height:100%;min-height:0;perspective:1800px;overflow:visible}#green-squat .gs-cover{left:20%;top:7%;height:78%;width:65%;z-index:3;transform:translateX(calc(var(--media-progress,0)*-8%)) rotate(calc(-8deg + var(--media-progress,0)*5deg));transition:transform .7s var(--ease-out),opacity .4s;filter:drop-shadow(8px 25px 20px #21301950)}#green-squat .gs-cover:hover{transform:translateY(-7px) rotate(-3deg)}#green-squat .gs-inside{height:74%;width:52%;top:10%;transition:transform .7s var(--ease-out),opacity .5s;filter:drop-shadow(8px 15px 12px #21301935)!important}#green-squat .gs-inside--left{left:2%;transform:translateX(calc(var(--media-progress,0)*-5%)) rotate(-13deg)}#green-squat .gs-inside--right{right:-2%;transform:translateX(calc(var(--media-progress,0)*4%)) rotate(12deg)}.edition-controls{position:absolute;bottom:0;left:5%;right:0;display:flex;justify-content:center;gap:6px;z-index:5}.edition-controls button{min-height:42px;border:1px solid #21301970;color:#213019;background:#cedb58;padding:10px 14px;font:400 12px var(--mono);cursor:pointer;transition:background .25s,color .25s}.edition-controls button[aria-pressed=true],.edition-controls button:hover{background:#213019;color:#e7efb5}#green-squat [data-edition-view=couverture] .gs-cover{transform:rotate(0);left:15%;width:80%;height:84%;top:0}#green-squat [data-edition-view=couverture] .gs-inside{opacity:.15;transform:scale(.85)}#green-squat [data-edition-view=pages] .gs-cover{opacity:0;transform:translateX(-35%) rotate(-12deg);pointer-events:none}#green-squat [data-edition-view=pages] .gs-inside--left{transform:rotate(-5deg) translateX(-5%);opacity:.3}#green-squat [data-edition-view=pages] .gs-inside--right{transform:rotate(0);right:0;width:94%;height:85%;top:0}#green-squat .gs-colophon{font-size:11px;border-color:#21301960}#green-squat .legacy-skills .skill-chip{font-size:12px;min-height:32px;border-color:#21301960}
/* Language is the visual material. Selection works with touch and keyboard. */
.is-pinned .motion-track>.scene.stage-language{background:#143dd3;color:#eef3ff;grid-template-columns:40fr 60fr!important}.stage-language .detail-copy>.panel-kicker{color:#a4c4ff}.stage-language .language-map{gap:5%;height:auto;width:86%}.stage-language .language-map>div{gap:0}.language-source{display:flex;align-items:center;justify-content:space-between;gap:18px;background:none;border:0;border-bottom:1px solid #ffffff40;color:#9fb9fb;padding:13px 4px;font:400 38px/1 var(--display);cursor:pointer;transition:color .25s,transform .35s var(--ease-out)}.language-source small{font:400 12px var(--mono)}.language-source[aria-pressed=true],.language-source:hover{color:#f1ff9e;transform:translateX(8px)}.language-source:focus-visible{outline:2px solid #f1ff9e;outline-offset:4px}.stage-language .language-map>strong{font:400 17cqw/1 var(--display);color:#f1ff9e}.stage-language .language-map>b{color:#a4c4ff}.stage-language .language-map>.language-caption{font:400 14px/1.5 var(--mono);color:#d0ddff;padding-top:20px;margin:0;border-top:1px solid #ffffff40;min-height:45px}
/* Motion always follows scroll or input, with no perpetual animation loops. */
.motion-stage.authored-changing{background:#101916}.panel-current .poster-art img{will-change:transform}
.is-pinned .scene-heading-title{transform:translateY(calc((1 - var(--copy-reveal,1))*32px));opacity:var(--copy-reveal,1)}.is-pinned .scene-heading>p{transform:translateY(calc((1 - var(--media-reveal,1))*20px));opacity:var(--media-reveal,1)}.is-pinned .stage-editorial>.detail-media{clip-path:inset(calc((1 - var(--media-reveal,1))*10%) 0 0);transform:translateY(calc((1 - var(--media-reveal,1))*35px))}.stage-cards .card-face:after{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,transparent 22%,#ffffff00 35%,#ffffff44 49%,#adffed28 54%,transparent 67%);background-size:220% 100%;background-position:calc(var(--card-light,.5)*100%) 0;mix-blend-mode:screen;opacity:0;pointer-events:none;transition:opacity .4s}.stage-cards .tactimon-card:hover .card-face:after,.stage-cards .tactimon-card:focus-visible .card-face:after{opacity:1}
.contact{background:#dfe7d5;color:#17261b}.contact h2{letter-spacing:-.015em;line-height:1.02;font-weight:400}.contact h2 span{color:#416946}.contact-links a{font-size:clamp(14px,1.6vw,22px)}
@media(min-width:821px) and (max-height:760px){
 .poster-copy{padding-block:18px 12px}.project-poster .poster-copy>.panel-kicker{margin-bottom:12px}.project-poster h2,.is-pinned .project-poster h2{font-size:min(6.7cqw,9cqh);margin-bottom:14px}.project-poster .overview-description{font-size:16px;line-height:1.4}.poster-enter{margin-top:10px}.poster-label{padding-bottom:15px}.project-poster .overview-bottom{padding-top:10px}.authored-scene .detail-copy h2,.is-pinned .authored-scene .detail-copy h2{font-size:min(3.7cqw,5.8cqh);margin-bottom:16px}.is-pinned .authored-scene .detail-copy{padding-top:20px;padding-bottom:20px}.authored-scene .detail-list li{padding-block:6px}.authored-scene .detail-copy>.panel-kicker{margin-bottom:12px}.is-pinned .motion-track>.scene.stage-editorial{gap:18px 24px;padding-top:24px!important}.scene-heading h2{font-size:6.5cqh}.scene-heading>p{font-size:14px}.scene-heading .panel-kicker{margin-bottom:10px}.is-pinned .stage-editorial>.detail-copy{padding:0 0 10px}.is-pinned .stage-object>.detail-copy{padding:0;bottom:100px}.stage-object .detail-copy>p{font-size:14px!important}.is-pinned .stage-score .detail-copy{padding:0}.is-pinned .stage-score .metric-block>strong,.is-pinned .stage-score .rank-seal span{font-size:min(11cqw,17cqh)}.stage-audience .channel-stat{padding-inline:12px}.is-pinned .stage-audience .channel-stat strong{font-size:min(6cqw,10cqh)}
}
@media(max-width:1100px) and (min-width:821px){
 :root{--rail:92px}.is-pinned .motion-navigation>span{display:none}.poster-copy{width:67%}.poster-type{opacity:.45}.project-poster .company-brand{flex-basis:100px}.project-poster .company-brand img{max-width:100px}.project-poster .overview-skills{max-width:80%}.is-pinned .motion-track>.scene.stage-editorial{grid-template-columns:65fr 35fr!important}.scene-heading{grid-template-columns:1.2fr 1fr;gap:24px}.stage-score .metric-label{font-size:10px}.edition-controls{gap:4px}.edition-controls button{padding:10px;font-size:11px}#green-squat .is-pinned .gs-copy p{font-size:14px}
}
/* Phone / portrait: same scenes, explicit room for touchable media. */
@media(max-width:820px),(min-width:821px) and (max-width:1000px) and (orientation:portrait){
 :root{--rail:0px}.rail{background:#e2e4de}.book-cover{padding:100px 22px 28px}.cover-title h1{font-size:clamp(4rem,16vw,7rem)}.cover-title>p{font-size:12px}.cover-title .cover-signature{font-size:11px}.cover-artifacts{height:260px}.cover-top{font-size:11px}.cover-bottom p{font-size:16px}.cover-stage{grid-template-columns:1fr}.cover-artifacts{width:85%;max-width:390px;margin:15px auto 10px}.cover-explore-label{font-size:11px}.cover-filters .skill-chip{font-size:12px}.artifact--card{width:30%;height:75%;right:0}.artifact--edition{width:27%;left:0}.artifact--board{width:94%;left:0}.is-pinned .motion-navigation{left:12px;right:62px;padding:4px;bottom:12px}.is-pinned .motion-navigation .chapter-step{padding:6px 4px;gap:3px;min-height:40px}.chapter-step .step-name{font-size:11px}.chapter-step .step-number{font-size:10px}.is-pinned .motion-navigation>span{display:none}
 .scene.project-poster,.is-pinned .motion-track>.scene.project-poster{padding:22px 6% 78px!important}.poster-label{font-size:11px;gap:15px;padding-bottom:15px}.poster-copy{width:100%;justify-content:center;padding:22px 0 16px}.is-pinned .project-poster h2,.project-poster h2{font-size:clamp(2.5rem,min(11cqw,7.5cqh),5rem);line-height:1.04;margin-bottom:18px}.project-poster .poster-copy>.panel-kicker{font-size:11px;margin-bottom:14px;max-width:31ch}.project-poster .overview-description{font-size:16px;line-height:1.45;max-width:34ch}.project-poster .poster-art img{object-position:60% center}.project-poster:after{background:linear-gradient(90deg,#122219eb,#122219a8),linear-gradient(0deg,#122219,transparent)}.project-poster .overview-bottom{gap:10px;align-items:start;margin:0;padding-top:12px}.project-poster .overview-skills{max-width:100%;gap:5px}.project-poster .skill-chip{font-size:11px;min-height:30px;padding:5px 7px}.project-poster .company-brand{display:none}.poster-enter{font-size:14px;min-height:42px;margin-top:14px}.poster-caption{display:none}.poster-type{right:-10%;width:72%;top:25%;opacity:.16!important}.poster-type>span{font-size:27cqw}.poster--authority .poster-copy,.poster--digital .poster-copy,.poster--lab .poster-copy{width:100%}.poster--authority:after{display:none}.poster--digital:after{background:#dce8f0d9}.poster--digital .poster-art{inset:20% -30% 20% 25%;opacity:.65}.poster--print .poster-art{inset:15% -10% 15% 35%;opacity:.55}.poster--language:after{background:linear-gradient(90deg,#113dd6cc,#113dd633)}.poster--lab:after{background:linear-gradient(90deg,#062629cc,#06262933)}
 .is-pinned .motion-track>.scene.authored-scene,.is-pinned .motion-track>.scene.stage-cards,.is-pinned .motion-track>.scene.stage-process,.is-pinned .motion-track>.scene.stage-language{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,48fr) minmax(0,52fr);padding:0 0 76px!important;gap:0}.is-pinned .authored-scene>.detail-copy,.is-pinned .stage-process>.detail-copy{position:relative;grid-column:1;grid-row:1;padding:22px 6% 14px;height:100%;width:auto;max-height:none;overflow:auto;justify-content:flex-start;left:auto;bottom:auto;border:0}.is-pinned .authored-scene>.detail-media,.is-pinned .stage-process>.detail-media{position:relative;grid-column:1;grid-row:2;height:100%;width:100%;inset:auto}.authored-scene .detail-copy h2,.is-pinned .authored-scene .detail-copy h2{font:400 clamp(2rem,min(8cqw,4.5cqh),3.5rem)/1.07 var(--display);margin:0 0 15px}.authored-scene .detail-copy>.panel-kicker{font-size:11px;margin:0 0 10px}.is-pinned .authored-scene .detail-copy>p:not(.panel-kicker),.is-pinned .authored-scene .detail-list{font-size:15px;line-height:1.5}.authored-scene .detail-list li{padding:6px 0}.is-pinned .authored-scene .detail-copy>*{flex-shrink:0}.authored-scene .software{min-width:36px;min-height:36px}.stage-cards .tactimon-proof-row{margin-top:10px}.is-pinned .stage-cards .detail-media{overflow:visible}.is-pinned .stage-cards .fan-status{bottom:8px}.is-pinned .stage-cards .fan-status b{font-size:18px}.is-pinned .stage-cards .tactimon-fan .tactimon-card:not(.is-selected){width:min(27cqw,20cqh);transform:translateX(calc(-50% + var(--x)*var(--fan)*.34)) translateY(calc(var(--y)*var(--fan)*.3)) rotate(calc(var(--rot)*var(--fan)*.6));bottom:25%}.is-pinned .stage-cards .tactimon-fan .tactimon-card.is-selected{width:min(34cqw,26cqh);max-width:none;bottom:20%}
 .is-pinned .motion-track>.scene.stage-object{grid-template-rows:minmax(0,37fr) minmax(0,63fr);background:#0d1b1b}.stage-object .object-word{top:34%;font-size:14cqw;color:#bdd5bb16}.is-pinned .stage-object>.detail-copy{z-index:5;padding:20px 6% 0}.is-pinned .stage-object .detail-copy>p{font-size:14px!important;line-height:1.5}.is-pinned .stage-object .detail-media{z-index:1}.is-pinned .stage-object .mandralmier-stage,.is-pinned .stage-object .holocorp-stage{min-height:0;height:100%}.stage-object .mandralmier-phases [role=button],.stage-object .holocorp-phases [role=button]{font-size:10px}.stage-object .mandralmier-phases,.stage-object .holocorp-phases{left:5%;right:5%;bottom:24px}.stage-object .mandralmier-meter,.stage-object .holocorp-meter{bottom:14px}.stage-object .mandralmier-physical{top:1%;height:75%;right:3%}
 .is-pinned .motion-track>.scene.stage-editorial{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr) minmax(0,24%);padding:20px 6% 76px!important;gap:16px}.scene-heading{grid-column:1;grid-row:1;grid-template-columns:1fr;gap:12px}.scene-heading .panel-kicker{font-size:11px;margin-bottom:10px}.scene-heading h2{font-size:clamp(2rem,min(8cqw,4.8cqh),3.5rem);line-height:1.06}.scene-heading>p{font-size:14px;line-height:1.45;max-width:none;margin:0}.is-pinned .stage-editorial>.detail-copy{grid-column:1;grid-row:3;padding:0;overflow:auto;justify-content:flex-start}.is-pinned .stage-editorial>.detail-media{grid-column:1;grid-row:2;min-height:0;height:100%;clip-path:none;transform:none}.is-pinned .stage-editorial .detail-list{display:flex;flex-wrap:wrap;gap:5px 14px;margin:0 0 8px;font-size:14px;line-height:1.4}.stage-editorial .detail-list li{padding:5px 0;flex:1 1 40%}.is-pinned .stage-editorial--wide{grid-template-rows:auto minmax(0,1fr)!important}.is-pinned .stage-editorial--wide>.detail-media{grid-column:1}.is-pinned [data-panel=ca-declinaisons]{grid-template-rows:auto minmax(0,1fr)!important}.is-pinned [data-panel=ca-declinaisons] .format-selector{gap:8px}.is-pinned [data-panel=ca-declinaisons] .format-card{min-width:40px;padding:10px;max-width:none}.is-pinned [data-panel=ca-declinaisons] .format-card:not(.is-active)>strong{writing-mode:vertical-rl;font-size:18px}.is-pinned [data-panel=ca-declinaisons] .format-card>span{font-size:10px}.is-pinned [data-panel=ca-declinaisons] .format-card.is-active>strong{font-size:21px}.is-pinned [data-panel=ca-declinaisons] .format-card img{padding:48px 4px 25px}.is-pinned [data-panel=ca-declinaisons] .format-card>small{font-size:10px}.is-pinned [data-panel=ca-declinaisons] .format-colors{gap:6px}.is-pinned [data-panel^=koloro-] .koloro-gallery{gap:8px}.is-pinned [data-panel=koloro-publication] .koloro-gallery{grid-template-columns:1fr!important;grid-template-rows:1fr 1fr}.is-pinned [data-panel=koloro-prototype] .koloro-gallery{grid-template-columns:1fr!important;grid-template-rows:1fr auto}.is-pinned [data-panel=koloro-prototype] .koloro-gallery img:nth-child(2){display:none}
 .is-pinned .stage-process .project-flow{padding:0 6%;justify-content:flex-start}.stage-process .project-flow li{padding:12px 0 12px 35px}.stage-process .project-flow .is-active{padding:12px 0 15px 35px}.stage-process .project-flow li>span{top:20px;font-size:11px}.stage-process .project-flow h3{font-size:29px}.stage-process .project-flow p{font-size:14px;margin-top:8px}.process-step:after{font-size:20px;top:2px}.stage-process .project-flow .is-active p{max-height:90px}
 .is-pinned .motion-track>.scene.stage-score{display:flex!important;gap:20px;padding:24px 6% 76px!important}.is-pinned .stage-score>.detail-copy{display:block;height:auto;padding:0;overflow:auto;max-height:43%;flex-shrink:0}.is-pinned .stage-score .detail-copy h2{font-size:clamp(2.5rem,9cqw,4rem);margin:14px 0}.is-pinned .stage-score .detail-copy>p{font-size:14px}.is-pinned .stage-score>.detail-media{min-height:0;flex:1}.is-pinned .stage-score .metrics-dashboard{grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:0}.is-pinned .stage-score .metric-block{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:2px 15px;padding:12px 0;border-right:0;align-content:center;align-items:center}.is-pinned .stage-score .metric-label{grid-column:2;font-size:10px}.is-pinned .stage-score .metric-block>strong,.is-pinned .stage-score .rank-seal span{font-size:clamp(3.5rem,min(17cqw,9cqh),6rem);margin:0}.is-pinned .stage-score .rank-seal{grid-column:1;grid-row:1/3;margin:0}.stage-score .metric-block>p{font-size:11px;grid-column:2;margin:0}.is-pinned .stage-audience{padding:24px 6% 76px!important}.stage-audience .channel-dashboard{grid-template-columns:1fr 1fr}.is-pinned .stage-audience .channel-stat strong{font-size:clamp(2.5rem,10cqw,4rem);margin:18px 0 10px}.stage-audience .channel-stat{padding:15px 10px}.stage-audience .channel-stat p{font-size:13px}.is-pinned .stage-audience h2{font-size:clamp(2rem,min(8cqw,6cqh),4rem)}
 #microwarfare .is-pinned .scene--micro-profile{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) minmax(0,27%);padding:20px 6% 76px!important;gap:16px}#microwarfare .is-pinned .duo-title{grid-column:1;grid-row:1;padding-bottom:15px}#microwarfare .is-pinned .duo-title h2{font-size:12cqw}#microwarfare .duo-title .eyebrow{font-size:10px}#microwarfare .is-pinned .duo-figure{grid-column:1;grid-row:2}#microwarfare .is-pinned .project-brief{grid-column:1;grid-row:3;padding:0;max-height:100%;align-self:start;overflow:auto}#microwarfare .is-pinned .project-brief h3{font-size:24px;margin:8px 0}#microwarfare .is-pinned .project-brief p{font-size:14px}#microwarfare .micro-downloads{flex-direction:row;align-items:center;gap:15px;margin-top:12px}#microwarfare .is-pinned .micro-downloads strong{font-size:44px}#microwarfare .micro-downloads span{font-size:11px}
 #green-squat .is-pinned .scene--green-squat{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) minmax(0,26%);padding:20px 6% 76px!important;gap:12px}#green-squat .is-pinned .gs-editorial{display:contents}#green-squat .is-pinned .gs-title{grid-column:1;grid-row:2}#green-squat .is-pinned .gs-title h2{font-size:clamp(2.5rem,min(12cqw,7cqh),5rem);line-height:1}#green-squat .gs-title br{display:none}#green-squat .gs-title em{margin-left:8px}#green-squat .is-pinned .gs-publication{grid-column:1;grid-row:3;width:100%;height:100%}#green-squat .is-pinned .gs-copy{grid-column:1;grid-row:4;overflow:auto;padding:0;max-height:none}#green-squat .is-pinned .gs-copy h3{font-size:22px!important;margin-bottom:10px}#green-squat .is-pinned .gs-copy p{font-size:14px;line-height:1.5}#green-squat .gs-colophon{display:none}#green-squat .gs-masthead{font-size:10px}#green-squat .gs-cover{height:calc(85% - 35px);top:0;width:65%;left:18%}#green-squat .gs-inside{height:calc(82% - 35px);top:3%}.edition-controls{left:0;bottom:0;gap:5px}.edition-controls button{min-height:38px;font-size:11px;padding:9px 10px}#green-squat [data-edition-view=couverture] .gs-cover,#green-squat [data-edition-view=pages] .gs-inside--right{height:calc(100% - 48px);top:0}
 .stage-language .language-map{height:100%;width:88%;grid-template-rows:minmax(0,1fr) auto;gap:12px 6%}.language-source{font-size:25px;padding:9px 0;min-height:38px}.language-source small{font-size:10px}.stage-language .language-map>strong{font-size:25cqw}.stage-language .language-map>.language-caption{font-size:12px;padding-top:12px;min-height:0}.stage-language .language-map>div{gap:0}
}
/* Native flow and reduced motion keep every artifact and control available. */
.motion-pin:not(.is-pinned) .project-poster{min-height:900px}.motion-pin:not(.is-pinned) .poster-copy{padding-block:60px}.motion-pin:not(.is-pinned) .stage-editorial{min-height:950px;grid-template-rows:auto minmax(500px,1fr)}.motion-pin:not(.is-pinned) .stage-editorial>.detail-media{grid-column:1;grid-row:2}.motion-pin:not(.is-pinned) .stage-editorial>.detail-copy{grid-column:2;grid-row:2}.motion-pin:not(.is-pinned) .stage-editorial--wide>.detail-media{grid-column:1/-1}.motion-pin:not(.is-pinned) .stage-object .object-word{display:none}
.stage-process .project-flow p{visibility:hidden}.stage-process .project-flow .is-active p{visibility:visible}
@media(max-width:820px){.is-pinned .motion-track>.scene.project-choice{padding:24px 6% 76px!important;gap:18px}.is-pinned .project-choice header{display:block;padding-bottom:18px}.is-pinned .project-choice .panel-kicker{max-width:none;font-size:12px;margin-bottom:12px}.is-pinned .project-choice h2{font-size:32px}.is-pinned .game-choices{gap:12px;grid-template-columns:1fr;grid-template-rows:1fr 1fr}.is-pinned .game-choice .choice-title{font-size:34px;padding:12px 5% 6px}.is-pinned .game-choice .choice-description{font-size:13px;min-height:0;padding:0 5% 14px;max-width:29ch}.is-pinned .game-choice:first-child>img:first-child{padding:0 0 0 43%;transform:rotate(5deg) scale(1.12)}.is-pinned .game-choice:first-child:after{background:linear-gradient(90deg,#10251ce8,#10251c50 60%,transparent)}.is-pinned .game-choice .choice-logo{left:42%;top:2%;height:70%;width:52%}.is-pinned .game-choice:after{background:linear-gradient(90deg,#10251ce8,#10251c50 75%,transparent)}.is-pinned .project-poster{overflow-y:auto}.authored-scene .detail-copy>.panel-kicker,.poster-label,.project-poster .poster-copy>.panel-kicker{font-size:12px}.is-pinned .authored-scene .detail-copy>p:not(.panel-kicker),.is-pinned .authored-scene .detail-list{font-size:16px}.edition-controls button{font-size:12px}.language-source small{font-size:12px}.scene-heading>p{font-size:15px}.scene-heading .panel-kicker{font-size:12px}}
@media(orientation:landscape) and (max-height:600px){.is-pinned .motion-track>.scene.project-poster{overflow-y:auto}.is-pinned .project-poster .poster-copy{flex-shrink:0;min-height:270px}.is-pinned .project-poster h2{font-size:42px}.is-pinned .project-poster .overview-bottom{flex-shrink:0}.is-pinned .motion-track>.scene.stage-editorial{grid-template-columns:minmax(0,2fr) minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr);gap:15px;padding:20px 4% 70px!important}.scene-heading{grid-template-columns:1fr 1fr;gap:20px}.scene-heading h2{font-size:30px}.scene-heading>p{font-size:13px}.is-pinned .stage-editorial>.detail-media{grid-column:1;grid-row:2}.is-pinned .stage-editorial>.detail-copy{grid-column:2;grid-row:2}.is-pinned .stage-editorial--wide>.detail-media{grid-column:1/-1}.is-pinned .motion-track>.scene.stage-object{grid-template-columns:minmax(0,1fr) minmax(0,2fr)!important;grid-template-rows:minmax(0,1fr)}.is-pinned .stage-object>.detail-copy{grid-column:1;grid-row:1}.is-pinned .stage-object>.detail-media{grid-column:2;grid-row:1}.is-pinned .stage-object .detail-copy h2{font-size:30px}.is-pinned .project-choice .game-choices{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.is-pinned .project-choice h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.poster-art img,.poster-copy,.project-poster h2,.object-word,.scene-heading-title,.scene-heading>p,.gs-cover,.gs-inside{transform:none!important;opacity:1!important;will-change:auto}.poster-art img,.stage-cards .card-face:after,.language-source,.process-step,.project-flow p{transition:none!important}.stage-editorial>.detail-media{clip-path:none!important;transform:none!important}.stage-cards .card-face:after{display:none}.project-flow p{max-height:none!important;opacity:1!important;visibility:visible!important}.process-step:after{display:none}}
@media(max-width:820px){.motion-pin:not(.is-pinned) .project-poster{min-height:820px}.motion-pin:not(.is-pinned) .stage-editorial{display:flex!important;flex-direction:column;padding:30px 6%!important;min-height:0}.motion-pin:not(.is-pinned) .stage-editorial>.detail-media{min-height:320px;order:2}.motion-pin:not(.is-pinned) .stage-editorial>.detail-copy{order:3;padding:24px 0}.motion-pin:not(.is-pinned) .stage-editorial .project-image{min-height:300px}.motion-pin:not(.is-pinned) .stage-editorial .project-image img{height:auto;max-height:500px}.motion-pin:not(.is-pinned) .stage-editorial .project-video{padding:0}.motion-pin:not(.is-pinned) .stage-editorial .project-video video{height:auto}}

/* Client refinements: square game tiles, non-link artifacts and reachable controls. */
.cover-artifact{margin:0;cursor:default}.cover-artifact:hover{outline:none;box-shadow:0 30px 65px #0006;z-index:auto}.cover-artifact.artifact--edition{z-index:2}.cover-artifact.artifact--card{z-index:3;width:30%;height:auto;aspect-ratio:650/910}.cover-artifact.artifact--card>img{width:100%;height:auto;object-fit:contain;border-radius:3%}.cover-artifact.artifact--card>span{position:static;background:#e9f0e4;font-size:11px}.cover-artifact.artifact--board>img{object-fit:cover}.fan-status [data-fan-name]:empty{display:none}
.is-pinned .game-choices{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;align-content:center;align-items:center;justify-items:center;gap:24px;height:100%}.is-pinned .game-choice{aspect-ratio:1;width:min(100%,calc(100cqh - 245px));height:auto;max-height:none}.is-pinned .game-choice:first-child>img:first-child{object-fit:cover;padding:0;background:transparent;transform:none;filter:brightness(.9)}.is-pinned .game-choice:first-child:hover>img:first-child{transform:scale(1.04)}.is-pinned .game-choice:first-child:after{background:linear-gradient(0deg,#10251cf0,transparent 60%)}.is-pinned .game-choice .choice-description{min-height:0;font-size:14px;padding-bottom:18px}.is-pinned .game-choice .choice-title{font-size:clamp(2rem,4cqw,4rem)}
.is-pinned [data-panel=ca-declinaisons] .campaign-browser{display:flex;flex-direction:column;gap:14px;min-height:0}.is-pinned [data-panel=ca-declinaisons] .format-selector{flex:1;min-height:0;height:auto}.is-pinned [data-panel=ca-declinaisons] .format-colors{flex:0 0 auto;min-height:44px;margin:0;display:flex;align-items:center;gap:8px;justify-content:flex-start;padding:0;position:relative;bottom:auto}.is-pinned [data-panel=ca-declinaisons] .format-colors[hidden]{display:none}.format-colors>span{font:400 12px var(--mono);color:#20302d;margin-right:12px}.format-colors button{color:#20302d;border-color:#20302d70;background:#f4f1e9;min-height:42px;padding:10px 12px 10px 27px;font-size:12px}.format-colors button.is-active{background:#20302d;color:#fff}.format-colors button:focus-visible{outline:2px solid #20302d;outline-offset:3px}
.contact .contact-links a,.contact .contact-links a:first-child{color:#234d39;border-color:#234d39}.contact .contact-links a:hover{color:#101e16;border-color:#101e16}.contact .contact-links a:focus-visible{outline:2px solid #234d39;outline-offset:6px}
#signaturegt .poster-art--brands{inset:20% 5% 22% 62%;transform:none;opacity:1;display:flex;flex-direction:column;justify-content:center;gap:55px;z-index:1;pointer-events:none}#signaturegt .poster-art--brands img{position:static;width:100%;height:auto;max-height:38%;object-fit:contain;transform:none;filter:none}#signaturegt .poster-art--brands .alpha-logo{filter:brightness(0) invert(1);opacity:.92}#signaturegt .poster--automotive:after{background:linear-gradient(90deg,#13171bf5,#13171b90)}.is-pinned .stage-alpha .alpha-gallery{display:grid;grid-template-columns:1fr 1.25fr;grid-template-rows:minmax(0,1fr) auto;gap:22px;align-items:center}.is-pinned .stage-alpha .alpha-gallery img{width:100%;height:100%;min-height:0;object-fit:contain}.stage-alpha .alpha-gallery figcaption{grid-column:1/-1}
#green-squat .gs-publication{isolation:isolate}#green-squat .edition-controls{z-index:10;pointer-events:auto}#green-squat [data-edition-view=couverture] .gs-cover{opacity:1!important}#green-squat [data-edition-view=couverture] .gs-inside{opacity:.15!important}#green-squat [data-edition-view=pages] .gs-cover{opacity:0!important;visibility:hidden}#green-squat [data-edition-view=pages] .gs-inside--left{opacity:.15!important}#green-squat [data-edition-view=pages] .gs-inside--right{opacity:1!important}#green-squat [data-edition-view=ensemble] .gs-cover,#green-squat [data-edition-view=ensemble] .gs-inside{opacity:1!important;visibility:inherit}
@media(max-width:820px){.is-pinned .game-choices{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:14px;align-content:center}.is-pinned .game-choice{width:100%;aspect-ratio:1;height:auto}.is-pinned .game-choice .choice-title{font-size:clamp(20px,5cqw,34px);padding:12px 6% 6px}.is-pinned .game-choice .choice-description{font-size:12px;padding:0 6% 12px;line-height:1.35}.is-pinned .game-choice .choice-logo{left:16%;width:68%;top:5%;height:42%}.is-pinned .game-choice:first-child>img:first-child{object-fit:cover;padding:0;transform:none}.is-pinned .game-choice:first-child:after{background:linear-gradient(0deg,#10251cf5,transparent 75%)}.is-pinned [data-panel=ca-declinaisons] .format-colors{gap:6px;flex-wrap:wrap}.is-pinned [data-panel=ca-declinaisons] .format-colors>span{display:none}.format-colors button{flex:1;font-size:11px;padding:10px 5px 10px 22px;min-height:42px}.cover-artifact.artifact--card{width:30%;height:auto;aspect-ratio:650/910}.cover-artifact.artifact--card>span{font-size:9px}#signaturegt .poster-art--brands{inset:10% 5% 28% 58%;opacity:.28;z-index:-1;gap:35px}#signaturegt .poster-art--brands img{max-height:38%}.is-pinned .stage-alpha .alpha-gallery{grid-template-columns:1fr;grid-template-rows:1fr 1fr auto;gap:12px}}
@media(max-width:420px){.is-pinned .motion-track>.scene.project-choice{overflow:auto}.is-pinned .game-choices{grid-template-columns:1fr;grid-template-rows:auto auto;align-content:start;height:auto}.is-pinned .game-choice{width:min(100%,265px);aspect-ratio:1;flex-shrink:0}.is-pinned .game-choice .choice-title{font-size:30px}.is-pinned .game-choice .choice-description{font-size:13px}}

/* Campaign headings retain contrast against their dark stage. */
#credit-agricole .stage-editorial .scene-heading>p{color:#c4d1c9}
#credit-agricole .stage-editorial .scene-heading .panel-kicker{color:#a4c6ad}

.is-pinned .motion-track>.scene.project-choice{grid-template-columns:minmax(0,1fr)!important}
#credit-agricole .format-colors>span{color:#c4d1c9}

/* Keep the introduction attached to its title at every breakpoint. */
.scene-heading{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;text-align:left}
.scene-heading>p{grid-column:1;max-width:78ch;margin:0;justify-self:start;text-align:left}
.is-pinned .stage-score>.detail-copy{grid-template-columns:minmax(0,1fr);gap:12px;text-align:left}
.is-pinned .stage-score>.detail-copy>p:not(.panel-kicker){grid-column:1;max-width:78ch;margin:0;text-align:left}

/* One full-size artwork at a time, without extending the scroll sequence. */
.is-pinned .stage-alpha .alpha-gallery,.stage-alpha .alpha-gallery{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;gap:12px;min-height:0;width:100%;height:100%}
.stage-alpha .alpha-gallery>img{grid-column:1;grid-row:1;width:100%;height:100%;min-height:0;object-fit:contain}
.stage-alpha .alpha-gallery>img[hidden]{display:none!important}
.stage-alpha .alpha-gallery>figcaption{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:8px;opacity:1!important}
.alpha-controls{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}
.alpha-controls button{min-height:40px;padding:8px 12px;border:1px solid #b8c5bd66;background:transparent;color:#dbe5de;font:400 12px var(--mono);cursor:pointer;transition:background .2s,color .2s}
.alpha-controls button[aria-pressed=true],.alpha-controls button:hover{background:#dbe5de;color:#17201c}
.alpha-controls button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.alpha-caption{text-align:center;font-size:11px;color:#b8c5bd}
@media(max-width:480px){.alpha-controls{display:grid;grid-template-columns:1fr 1fr;gap:5px}.alpha-controls button{min-height:36px;padding:6px;font-size:11px}.alpha-caption{font-size:10px}}
