:root{--bg: #0b0c0e;--bg-elev: #14161a;--bg-elev-2: #1c1f24;--text: #e8eaed;--text-dim: #9aa1aa;--text-faint: #666d76;--accent: #ff5a1f;--accent-soft: rgba(255, 90, 31, .16);--line: rgba(255, 255, 255, .08);--radius: 14px;--font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--maxw: 1240px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}#app{min-height:100vh}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}img,video{display:block;max-width:100%}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#chrome{position:fixed;right:14px;bottom:14px;z-index:40;display:flex;gap:10px;align-items:center;pointer-events:none}#chrome button{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;height:40px;min-width:40px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#14161a8c;color:var(--text-dim);backdrop-filter:blur(6px);transition:color .2s,border-color .2s,background .2s}#chrome button:hover{color:var(--text);border-color:#fff3;background:#1c1f24bf}#sound-toggle{width:40px}#sound-toggle svg{width:18px;height:18px}#sound-toggle .ic-on{display:none}#sound-toggle[aria-pressed=true] .ic-on{display:block}#sound-toggle[aria-pressed=true] .ic-off{display:none}#sound-toggle[aria-pressed=true]{color:var(--accent);border-color:#ff5a1f66}#skip-intro{position:relative;visibility:hidden;opacity:0;transition:opacity .3s;font-size:13px;letter-spacing:.04em}#skip-intro.show{visibility:visible;opacity:1}@media(max-width:640px){#chrome{right:10px;bottom:10px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.ic-intro{position:fixed;inset:0;z-index:30;background:var(--bg);overflow:hidden;transition:opacity .7s ease;cursor:none}.ic-intro.dismiss{opacity:0;pointer-events:none}body.ic-no-scroll{overflow:hidden}.ic-stage{position:absolute;inset:0;background:var(--bg)}.ic-fog,.ic-fade,.ic-ring,.ic-clip-video,.ic-fog-text-canvas,.ic-fog-blur-canvas,.ic-fog-canvas,.ic-shatter-canvas,.ic-flame-canvas{position:absolute;inset:0}.ic-preload-video{position:absolute;inset:0;width:1px;height:1px;opacity:0;pointer-events:none}.ic-clip-video video{object-fit:cover;width:100%;height:100%}.ic-fade{background:#05060a;opacity:0;transition:opacity .14s ease}.ic-fade.hold{opacity:1}.ic-ring{pointer-events:none}@media(prefers-reduced-motion:reduce){.ic-intro{display:none}}.view-grid{padding:clamp(20px,5vw,56px);max-width:var(--maxw);margin:0 auto}.grid-head{margin-bottom:28px}.grid-title{font-size:clamp(1.8rem,4.5vw,3rem);font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.grid-lead{color:var(--text-dim);margin:0;font-size:1rem}.filters{display:flex;flex-direction:column;gap:10px;margin-bottom:26px}.filter-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.filter-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);min-width:74px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:6px 14px;border-radius:999px;border:1px solid var(--line);color:var(--text-dim);font-size:13.5px;background:var(--bg-elev);transition:color .18s,background .18s,border-color .18s}.chip:hover{color:var(--text);border-color:#fff3}.chip.is-active{color:#fff;background:var(--accent-soft);border-color:#ff5a1f80}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.card{position:relative;display:block;border-radius:var(--radius);overflow:hidden;background:var(--bg-elev);border:1px solid var(--line);transition:transform .25s ease,border-color .25s ease}.card:hover{transform:translateY(-3px);border-color:#ffffff2e}.card-media{position:relative;display:block;aspect-ratio:16 / 9;background:var(--bg-elev-2);overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.card:hover .card-media img{transform:scale(1.04)}.card-tags{position:absolute;left:10px;bottom:10px;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 20px)}.chip-tag{font-size:11px;color:#fff;background:#0a0c0e8c;backdrop-filter:blur(4px);padding:3px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.12)}.card-body{display:block;padding:14px 16px 16px}.card-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:4px}.card-title{font-size:1.15rem;font-weight:700;margin:0;letter-spacing:-.01em}.card-year{font-size:13px;color:var(--text-faint)}.card-client{font-size:14px;color:var(--text-dim)}.nothing{grid-column:1 / -1;color:var(--text-dim);text-align:center;padding:40px 0}.grid-foot{margin-top:34px;text-align:center}.replay-link{font-size:13px;color:var(--text-faint);letter-spacing:.02em;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.replay-link:hover{color:var(--text-dim);border-color:var(--text-faint)}.project{max-width:var(--maxw);margin:0 auto;padding:clamp(18px,4vw,40px)}.back-link{display:inline-block;margin-bottom:20px;font-size:14px;color:var(--text-dim);transition:color .2s}.back-link:hover{color:var(--text)}.hero{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:16 / 9;background:#000;border:1px solid var(--line)}.hero-video{position:absolute;inset:0}.hero-vid{width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;left:0;right:0;bottom:0;padding:clamp(18px,4vw,40px);background:linear-gradient(to top,#040507bf,#04050700)}.hero-title{margin:0 0 6px;font-size:clamp(1.8rem,5vw,3.4rem);font-weight:800;letter-spacing:-.02em}.hero-client{margin:0;font-size:clamp(.95rem,2vw,1.2rem);color:var(--text-dim)}.nda{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.meta{display:flex;flex-wrap:wrap;gap:16px 34px;padding:26px 0;margin-top:4px;border-bottom:1px solid var(--line)}.meta-item{display:flex;flex-direction:column;gap:4px;font-size:15px}.meta-label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.body{padding:26px 0;max-width:68ch}.body p{font-size:1.05rem;line-height:1.7;color:var(--text);margin:0 0 16px}.extended{padding-top:8px}.extended-title{font-size:1.5rem;font-weight:700;margin:0 0 6px}.extended-note{color:var(--text-dim);max-width:60ch}.extended-placeholder{height:120px;margin-top:16px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--bg-elev);display:flex;align-items:center;justify-content:center;color:var(--text-faint);font-size:14px}.extended-placeholder:after{content:"Narrated cut — TBD"}.project-missing{max-width:var(--maxw);margin:0 auto;padding:clamp(18px,4vw,40px)}.xr-lock{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(120% 120% at 50% 30%,#14171c,#0b0c0f 70%);color:var(--text)}.xr-lock-card{width:100%;max-width:380px;text-align:center;padding:40px 32px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-elev);transition:transform .18s ease,opacity .3s ease}.xr-lock-out{opacity:0;transform:translateY(-8px)}.xr-lock-kicker{margin:0 0 8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.xr-lock-title{margin:0 0 10px;font-size:1.6rem;font-weight:800;letter-spacing:-.02em}.xr-lock-note{margin:0 0 22px;color:var(--text-dim);font-size:14.5px}.xr-lock-form{display:flex;gap:10px}.xr-lock-input{flex:1;min-width:0;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-size:15px}.xr-lock-btn{padding:12px 18px;border-radius:10px;border:1px solid rgba(255,90,31,.5);background:var(--accent-soft);color:var(--text);font-weight:600;cursor:pointer}.xr-lock-btn:hover{background:var(--accent);color:#fff}.xr-lock-err{margin:12px 0 0;font-size:13px;color:#ff6b5e}.xr-lock-card.shake{animation:xr-shake .35s ease}@keyframes xr-shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)}50%{transform:translate(6px)}75%{transform:translate(-4px)}}@media(max-width:480px){.xr-lock-form{flex-direction:column}}
