:root{--bg-primary:#0B0B0B;--bg-panel:#000000;--text-primary:#FFFFFF;--text-muted:#8A8A8E;--body-copy:#C9C9CD;--accent:#FFE135;--line:rgba(255,255,255,.07)}*{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-archivo)}a{color:var(--accent);text-decoration:none}a:hover{color:var(--text-primary)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.grid-overlay{position:fixed;inset:0;pointer-events:none;z-index:1;display:grid;grid-template-columns:repeat(7,1fr);max-width:1560px;margin:0 auto;padding:0 clamp(20px,5vw,80px)}.grid-overlay span{border-left:1px solid var(--line)}.grid-overlay span:last-child{border-right:1px solid var(--line)}.wrap{position:relative;z-index:2;max-width:1560px;margin:0 auto;padding:0 clamp(24px,5.5vw,88px)}.label{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);font-weight:600}.label.lime{color:var(--accent)}.disp{font-family:var(--font-anton);text-transform:uppercase;letter-spacing:-.01em;line-height:.86;margin:0;font-weight:400}.script{font-family:var(--font-caveat);text-transform:none;letter-spacing:0}.echo{position:relative;display:block;line-height:1.2}.echo .e{position:absolute;left:0;top:0;width:100%;color:transparent;-webkit-text-stroke:1px var(--accent);pointer-events:none}.echo .e1{transform:translateY(.05em);opacity:.55}.echo .e2{transform:translateY(.1em);opacity:.3}.echo .e3{transform:translateY(.15em);opacity:.14}.outline{color:transparent;-webkit-text-stroke:1.5px var(--accent)}.body{font-size:clamp(15px,1.05vw,17px);line-height:1.75;color:var(--body-copy);max-width:66ch;margin:0;text-wrap:pretty}.muted{color:var(--text-muted)}.util{position:fixed;top:clamp(16px,2.2vw,28px);right:clamp(16px,2.2vw,28px);z-index:60;display:flex;align-items:center;gap:14px;background:var(--bg-panel);border:1px solid var(--line);border-radius:999px;padding:8px 8px 8px 22px}.util .label{color:var(--text-primary)}.dots{width:44px;height:44px;border-radius:999px;background:var(--accent);border:0;display:grid;place-items:center;cursor:pointer;transition:transform .24s cubic-bezier(.22,.61,.36,1)}.dots:hover{transform:rotate(90deg)}.dots i{display:block;width:5px;height:5px;border-radius:999px;background:#000;box-shadow:-9px 0 #000,9px 0 #000}body.nav-open .dots{transform:rotate(45deg)}body.nav-open .dots i{box-shadow:none;width:18px;height:1.5px;border-radius:0;position:relative}body.nav-open .dots i:after{content:"";position:absolute;inset:0;background:#000;transform:rotate(90deg)}.brandmark{position:fixed;top:clamp(16px,2.2vw,28px);left:clamp(24px,5.5vw,88px);z-index:60;font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:12px}.brandmark:hover{color:var(--accent)}.brandmark b{font-weight:600}.panel{position:fixed;top:clamp(16px,2.2vw,28px);right:clamp(16px,2.2vw,28px);width:min(420px,calc(100vw - 32px));max-height:calc(100vh - (2*clamp(16px,2.2vw,28px)));overflow-y:auto;background:var(--bg-panel);border:1px solid var(--line);border-radius:28px;padding:88px 36px 32px;z-index:55;opacity:0;transform:translate(24px);pointer-events:none;transition:opacity .28s cubic-bezier(.22,.61,.36,1),transform .28s cubic-bezier(.22,.61,.36,1)}body.nav-open .panel{opacity:1;transform:none;pointer-events:auto}.panel ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.panel li a{display:flex;align-items:center;gap:14px;font-family:var(--font-anton);text-transform:uppercase;font-size:26px;letter-spacing:.01em;color:var(--text-primary);padding:8px 0;transition:color .16s}.panel li a:before{content:"";width:8px;height:8px;background:var(--accent);flex:none}.panel li a:hover{color:var(--accent)}.panel li.active a{color:var(--text-muted);text-decoration:line-through;text-decoration-color:var(--accent);text-decoration-thickness:3px}.panel li a em{font-style:normal;font-family:var(--font-archivo);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin-left:auto}.panel li a:hover em{color:var(--accent)}.panel .gl{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--text-muted);padding:16px 0 6px;border-bottom:1px solid var(--line);margin-bottom:6px}.panel .gl:first-child{padding-top:0}.panel .socials{display:flex;gap:20px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line);flex-wrap:wrap}.panel .socials a{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted)}.panel .socials a:hover{color:var(--accent)}.badge{position:fixed;right:12px;bottom:clamp(24px,3vw,40px);width:104px;height:104px;z-index:50;pointer-events:none}.badge svg{width:100%;height:100%;animation:spin 18s linear infinite}.badge text{font-family:var(--font-archivo);font-size:10.5px;letter-spacing:.24em;fill:var(--accent);text-transform:uppercase;font-weight:600}.badge .core{position:absolute;inset:0;display:grid;place-items:center}.badge .core b{display:block;width:9px;height:9px;border:1.5px solid var(--accent);border-top:0;border-left:0;transform:rotate(45deg) translate(-2px,-2px)}@keyframes spin{to{transform:rotate(360deg)}}.vcopy{position:fixed;right:6px;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--text-muted);z-index:40;pointer-events:none}.btn{display:inline-flex;align-items:center;gap:12px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;padding:18px 30px;border-radius:999px;border:1px solid var(--accent);background:var(--accent);color:#000;transition:background .16s,color .16s}.btn:hover{background:transparent;color:var(--accent)}.btn.ghost{background:transparent;color:var(--text-primary);border-color:#ffffff38}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}.cta-row{display:flex;gap:16px;flex-wrap:wrap}body.is-index .badge{display:none}.index-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px,5vw,96px);align-items:center;padding:clamp(88px,12vh,132px) clamp(24px,5.5vw,88px) clamp(48px,8vh,92px)}.index-intro{display:flex;flex-direction:column;gap:clamp(14px,2.2vh,26px)}.index-intro h1{font-size:clamp(30px,4.6vw,78px)}.index-intro .body{max-width:52ch}.index-intro .script{font-size:clamp(22px,3.1vw,50px);color:var(--accent);display:block;transform:rotate(-3deg);margin:.12em 0 0 .08em}.kicker{font-size:clamp(11px,.9vw,13px);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin:0;max-width:52ch;line-height:1.9}.index-foot{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.index-portrait{position:relative;max-width:100%;border:1px solid var(--line);overflow:hidden;display:flex;justify-self:end}.index-portrait img,.index-portrait .portrait-empty{display:block;width:min(432px,100%);height:552px;max-height:min(74vh,660px);object-fit:cover}.index-portrait .portrait-empty{background:var(--bg-panel);display:grid;place-items:center;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted)}.index-portrait .cap{position:absolute;left:0;bottom:0;z-index:3;background:var(--accent);color:#000;font-size:10px;letter-spacing:.22em;text-transform:uppercase;font-weight:600;padding:10px 16px;pointer-events:none}@media(max-height:760px){.index-intro .body{font-size:14px;line-height:1.6}.index-intro{gap:12px}.index-shell{padding-top:92px;padding-bottom:40px}}@media(max-height:600px){.index-intro .body{font-size:13px;line-height:1.55}.index-foot{font-size:10px;letter-spacing:.1em}.index-shell{min-height:0}}@media(max-height:780px){.panel{padding:74px 28px 24px}.panel li a{font-size:20px;padding:5px 0}.panel .gl{padding:10px 0 4px}.panel .socials{margin-top:20px;padding-top:16px}}.page-head{padding:150px 0 clamp(40px,6vh,72px);border-bottom:1px solid var(--line)}.page-head .disp{font-size:clamp(38px,6.4vw,104px)}.page-head .label{margin-bottom:24px}.page-body{padding:clamp(48px,7vh,88px) 0 clamp(60px,9vh,120px)}.stack{display:flex;flex-direction:column;gap:clamp(32px,4vh,48px)}.section-label{margin-bottom:16px}.two{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,80px)}.thread{display:flex;flex-direction:column;gap:16px}.note{border-left:2px solid var(--accent);padding-left:24px}.idx{font-family:var(--font-anton);font-size:52px;line-height:1;color:transparent;-webkit-text-stroke:1px var(--accent)}.rec{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.rec>div{background:var(--bg-primary);padding:40px 32px;display:flex;flex-direction:column;gap:28px}.rec-head{display:flex;flex-direction:column;gap:10px}.rec h3{font-family:var(--font-anton);text-transform:uppercase;font-size:clamp(24px,2.6vw,38px);line-height:1;margin:0;font-weight:400}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.stat-grid .n{font-family:var(--font-anton);font-size:34px;line-height:1;color:var(--accent)}.stat-grid .t{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin-top:8px}.stack-tags{display:flex;flex-wrap:wrap;gap:8px}.stack-tags span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--line);border-radius:999px;padding:8px 14px}.pager{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}.pager a{background:var(--bg-primary);padding:36px clamp(16px,2vw,32px);display:flex;flex-direction:column;gap:10px;color:var(--text-primary);transition:background .2s,color .2s}.pager a:hover{background:var(--accent);color:#000}.pager a:hover .label{color:#000}.pager .nm{font-family:var(--font-anton);text-transform:uppercase;font-size:clamp(20px,2.2vw,34px);line-height:1}.pager a.next{text-align:right;align-items:flex-end}.footer{border-top:1px solid var(--line);padding:28px 0 40px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.caselist{display:flex;flex-direction:column;border-top:1px solid var(--line)}.case{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,2.1fr) minmax(190px,.9fr);gap:clamp(20px,3vw,56px);padding:clamp(24px,3.2vh,38px) 0;border-bottom:1px solid var(--line);align-items:start}.case h3{font-family:var(--font-anton);text-transform:uppercase;font-size:clamp(26px,3vw,46px);line-height:.95;margin:0 0 10px;font-weight:400;transition:color .2s,-webkit-text-stroke-color .2s}.case:hover h3{color:transparent;-webkit-text-stroke:1px var(--accent)}.case .res{display:flex;flex-direction:column;gap:8px;border-left:2px solid var(--accent);padding-left:20px}.case .res span{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);line-height:1.5}.case .res span.sub{color:var(--text-muted);letter-spacing:.16em}.timeline{border-top:0}.timeline .case{grid-template-columns:150px 1fr}.timeline .case h3{font-size:clamp(20px,2vw,28px)}.skillcols{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.skillcols>div{background:var(--bg-primary);padding:32px 28px;display:flex;flex-direction:column;gap:16px}.disc{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.disc>div{background:var(--bg-primary);padding:32px 28px;display:flex;flex-direction:column;gap:10px}.disc h4{font-family:var(--font-anton);text-transform:uppercase;font-size:19px;line-height:1.1;margin:0;font-weight:400;color:var(--accent)}.q4{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.q4>div{background:var(--bg-primary);padding:clamp(28px,3.4vw,44px);display:flex;flex-direction:column;gap:14px;transition:background .24s}.q4>div:hover{background:var(--bg-panel)}.q4 h3{font-family:var(--font-anton);text-transform:uppercase;font-size:clamp(22px,2.2vw,32px);line-height:1.05;margin:0;font-weight:400}.lede{font-size:clamp(17px,1.5vw,23px);line-height:1.5;color:var(--text-primary);max-width:44ch;margin:0;text-wrap:pretty}.linkrow{display:flex;flex-direction:column;border-top:1px solid var(--line)}.linkrow a{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 8px;border-bottom:1px solid var(--line);color:var(--text-primary);font-family:var(--font-anton);text-transform:uppercase;font-size:clamp(20px,2.2vw,32px);transition:background .2s,color .2s,padding .2s}.linkrow a small{font-family:var(--font-archivo);font-size:11px;letter-spacing:.2em;color:var(--text-muted);text-transform:uppercase}.linkrow a:hover{background:var(--accent);color:#000;padding-left:18px}.linkrow a:hover small{color:#000}@media(min-width:901px){.page-body .wrap{padding-right:clamp(140px,5.5vw,200px)}}@media(max-width:900px){.grid-overlay{grid-template-columns:repeat(3,1fr)}.index-shell,.two,.rec,.pager{grid-template-columns:1fr}.index-shell{padding-top:clamp(96px,14vh,120px);gap:40px}.badge,.vcopy{display:none}.pager a.next{text-align:left;align-items:flex-start}.case,.timeline .case{grid-template-columns:1fr;gap:16px}.skillcols,.disc,.q4{grid-template-columns:1fr}.index-portrait{height:52vh}.index-portrait img,.index-portrait .portrait-empty{width:100%;height:100%}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.has-media{cursor:pointer}.media-btn{align-self:flex-start;margin-top:14px;font-family:var(--font-archivo);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);background:transparent;border:1px solid var(--line);border-radius:999px;padding:8px 14px;cursor:pointer;transition:color .2s,border-color .2s}.has-media:hover .media-btn,.media-btn:hover{color:var(--accent);border-color:var(--accent)}.case.has-media>div:first-child{display:flex;flex-direction:column;align-items:flex-start}.rec .media-btn{margin-top:0}.media-dialog{margin:auto;padding:0;width:max-content;min-width:min(420px,92vw);max-width:min(1100px,92vw);max-height:94vh;transition:width .2s cubic-bezier(.22,.61,.36,1);background:var(--bg-panel);color:var(--text-primary);border:1px solid var(--line);border-radius:28px;overflow:hidden}.media-dialog::backdrop{background:#000000d1}.media-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px clamp(20px,3vw,28px);border-bottom:1px solid var(--line)}.media-close{background:none;border:0;color:var(--text-muted);font-size:28px;line-height:1;padding:0 4px;cursor:pointer;transition:color .16s}.media-close:hover{color:var(--accent)}.media-stage{display:grid;place-items:center;padding:clamp(20px,3vw,28px);min-height:min(52vh,480px)}.media-stage img,.media-stage video{display:block;width:auto;height:auto;max-width:100%;max-height:min(calc(94vh - 200px),720px);object-fit:contain}.media-foot{display:flex;align-items:center;justify-content:center;gap:clamp(20px,3vw,32px);padding:18px clamp(20px,3vw,28px);border-top:1px solid var(--line)}.media-step{width:40px;height:40px;border-radius:999px;background:transparent;border:1px solid var(--line);color:var(--text-primary);font-size:15px;cursor:pointer;transition:background .16s,color .16s,border-color .16s}.media-step:hover{background:var(--accent);border-color:var(--accent);color:#000}.media-counter{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);min-width:66px;text-align:center}body:has(.media-dialog[open]){overflow:hidden}.media-set,.media-slide{display:contents}.media-set[hidden],.media-slide[hidden]{display:none}.stack-tight{display:flex;flex-direction:column;gap:20px}.page-head.long .disp{font-size:clamp(32px,4.4vw,72px)}.media-embed{aspect-ratio:16/9;width:100%;max-width:min(1040px,calc(min(calc(94vh - 200px),720px) * 16 / 9));margin:0 auto;background:#000}.media-embed iframe{display:block;width:100%;height:100%;border:0}.q4>div:last-child:nth-child(odd){grid-column:1 / -1}
