:root{--ink:#172a27;--cream:#f5efdf;--gold:#efd06b;--pink:#dfb9d0;--blue:#b8d6e3;--green:#c3d5ad}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.55 'DM Sans',system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #b76834;outline-offset:5px}[hidden]{display:none!important}.mast{padding:24px 5%;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #1b332730}.brand{text-decoration:none;font-weight:800}.brand span{font-size:11px;letter-spacing:2px;margin-left:18px}.hero{background:var(--ink);color:var(--cream);padding:65px 5% 70px;display:grid;grid-template-columns:1.15fr 1fr;gap:5%;position:relative}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;margin:0 0 20px}.hero h1{font:800 clamp(48px,6.4vw,94px)/.98 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0 0 30px}.hero em{color:var(--gold);font-style:normal}.intro{max-width:550px;font-size:19px}.actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:30px 0 18px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:14px 19px;border-radius:3px;border:1px solid transparent;text-decoration:none;font-weight:700}.primary{background:var(--gold);color:var(--ink)}.secondary{background:transparent;color:inherit;border-color:currentColor}.fine{font-size:13px;opacity:.78;max-width:540px}.hero-film{align-self:center;transform:rotate(1.5deg);background:#0b1514;padding:20px 20px 12px;border-block:14px dashed var(--cream);box-shadow:0 20px 50px #0005}.film-top{font-size:11px;letter-spacing:2px;margin-bottom:12px;color:var(--gold)}.hero-film video{width:100%;display:block;aspect-ratio:16/9;background:#000;object-fit:cover}.hero-film p{font-size:13px;margin-bottom:2px}.hero-film small{opacity:.65}.explore{max-width:1280px;padding:65px 5%;margin:auto;scroll-margin-top:20px}h2{font:700 clamp(29px,3vw,42px)/1.12 'Barlow Condensed',sans-serif;margin:0 0 18px}.section-title{margin-bottom:28px}.section-title .eyebrow{margin-bottom:8px}.tabs{display:flex;border-bottom:2px solid var(--ink);gap:6px;flex-wrap:wrap}.tabs button{padding:14px 20px;border:0;background:transparent;color:var(--ink);font-weight:700}.tabs button[aria-pressed=true]{background:var(--ink);color:var(--cream)}.panel{padding:35px 0 0}.panel-heading{max-width:760px}.tag{font-size:11px;letter-spacing:2px;font-weight:700;display:block;margin-bottom:12px}.panel-heading p{color:#52605a}.scene-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:30px;margin-top:30px}.storyboard{align-self:start;border-block:12px dashed var(--cream);background:var(--ink);padding:12px}.storyboard svg{display:block;width:100%}.storyboard-caption{display:block;font-size:12px;color:var(--cream);padding:8px 0 0;text-align:center}label{display:block;font-size:13px;font-weight:700;margin-bottom:17px}select{display:block;width:100%;padding:11px;border:1px solid #8c978b;background:#fffbef;color:var(--ink);margin-top:6px;border-radius:3px}#copy-status{display:block;font-size:13px;margin-top:8px}.brief{background:#e7e4d3;border-left:4px solid #af9360;padding:20px;font-size:18px}.source-note{font-size:13px;color:#536259}.choice-row{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.choice-row button{padding:11px 21px;border:1px solid #8c978b;background:transparent;border-radius:40px}.choice-row button[aria-pressed=true]{background:var(--ink);color:var(--cream)}.model-chain{display:flex;gap:15px;align-items:stretch;margin:28px 0}.node{background:var(--tint);border:1px solid #1b332730;padding:22px 16px;flex:1;position:relative}.node:not(:last-child):after{content:'→';position:absolute;right:-16px;top:40%;font-weight:bold}.node b{display:block;font-size:19px;margin-bottom:8px}.node span{font-size:14px;display:block}.model-summary{font-size:21px;max-width:800px}.connection{padding:24px 28px;border-left:4px solid #69836a;background:#e6e8d7;margin-top:30px}.connection p{margin:10px 0}.connection a{font-size:14px}.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:30px 0}.steps button{padding:18px 10px;background:var(--ink);color:var(--cream);border:3px solid var(--ink);border-block:10px dashed var(--cream);font-size:14px}.steps b{display:block;font:700 28px 'Barlow Condensed';color:var(--gold);margin-bottom:6px}.steps button[aria-pressed=true]{background:var(--gold);color:var(--ink)}.steps button[aria-pressed=true] b{color:var(--ink)}.step-detail,.case-detail{padding:28px;background:#e7e4d3;min-height:220px}.step-detail h3,.case-detail h3{font-size:24px;margin:0 0 15px}.step-detail dl{display:grid;grid-template-columns:80px 1fr;gap:10px}.step-detail dt{font-weight:700}.step-detail dd{margin:0}.step-detail p,.case-detail p{max-width:800px}.text-link{display:block;margin-top:20px}.case-options{display:flex;gap:10px;flex-wrap:wrap}.case-options button{padding:12px 18px;background:var(--cream);border:1px solid #8c978b}.case-options button[aria-pressed=true]{background:var(--ink);color:var(--cream)}.feedback{padding:18px;border-left:4px solid #69836a;background:#f5efdf;margin-top:20px}.scan-explain{padding:40px 5%;background:#e0d7bc;display:flex;gap:30px;justify-content:center}.scan-explain>div{max-width:720px}.big-number{font:800 100px 'Barlow Condensed'}.scan-explain .secondary{margin:10px 0}footer{padding:38px 5%;background:var(--ink);color:var(--cream);font-size:14px}footer strong{font:700 33px 'Kalam',cursive;color:var(--gold)}footer span{display:block;margin-top:20px;font-size:12px;opacity:.7}dialog{width:min(540px,96vw);max-height:95dvh;padding:0;border:0;background:var(--ink);color:var(--cream);border-radius:10px}dialog::backdrop{background:#071312dd}.scanner-top{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;font-size:12px;letter-spacing:2px}.scanner-top button{background:transparent;border:0;color:white;padding:9px;font-size:20px}.camera-stage{height:300px;background:#071312;position:relative}.camera-stage video{height:100%;width:100%;object-fit:cover}.finder{position:absolute;width:190px;height:190px;left:50%;top:50%;transform:translate(-50%,-50%);border:2px solid var(--gold);border-radius:10px}.scanner-controls{padding:18px 24px}.scanner-controls p{margin:0 0 14px}.scanner-controls .fine{margin-top:12px}.scanner-controls .secondary{font-size:13px;padding:8px 12px}#scan-result{position:absolute;inset:auto 14px 14px;background:var(--cream);color:var(--ink);padding:16px;border-radius:6px;box-shadow:0 5px 20px #0006}#scan-result strong{display:block;font-size:20px}#scan-result p{font-size:14px;margin:8px 0}#scan-result a{font-weight:700}#scenery{transform-origin:330px 250px}.push #scenery{animation:push 8s ease-in-out infinite alternate}.pan #scenery{animation:pan 8s ease-in-out infinite alternate}@keyframes push{to{transform:scale(1.22)}}@keyframes pan{from{transform:translateX(-20px)}to{transform:translateX(20px)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}@media(max-width:700px){.mast{padding:18px 5%;font-size:13px}.brand span{display:none}.hero{grid-template-columns:1fr;gap:35px;padding-top:35px}.hero h1{font-size:60px}.hero-film{margin:0 6px}.hero .intro{font-size:17px}.explore{padding:40px 5%}.tabs{gap:0}.tabs button{flex:1 1 45%;padding:12px 6px;font-size:14px}.scene-grid{grid-template-columns:1fr;gap:18px}.scene-grid form{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.scene-grid form label:nth-child(3){grid-column:1/-1}.model-chain{flex-direction:column;gap:17px}.node{padding:16px}.node:not(:last-child):after{content:'↓';right:50%;top:auto;bottom:-20px}.steps{grid-template-columns:repeat(3,1fr)}.step-detail,.case-detail,.connection{padding:20px}.scan-explain{gap:12px}.big-number{font-size:60px}.scan-explain h2{font-size:29px}footer strong{font-size:27px}.camera-stage{height:250px}.choice-row button{padding:10px 15px}.panel-heading p{font-size:16px}}
/* Full-screen, perspective-registered poster AR. */
#scanner{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0;overflow:hidden;background:#000}#scanner .ar-stage{position:absolute;inset:0;overflow:hidden}#camera-video{width:100%;height:100%;object-fit:contain;display:block}.ar-top,.ar-bottom{position:absolute;left:0;right:0;z-index:4;padding:18px max(20px,env(safe-area-inset-right)) 18px max(20px,env(safe-area-inset-left));pointer-events:none}.ar-top{top:0;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#000b,transparent);padding-top:max(18px,env(safe-area-inset-top))}.ar-top strong{font-size:13px;letter-spacing:2px}.ar-top span{display:block;font-size:11px;color:var(--gold);margin-top:4px}.ar-top button,.ar-bottom button{pointer-events:auto}.ar-top button,#close-ar-sheet{border:1px solid #ffffff60;background:#102420c9;color:#fff;border-radius:50%;width:44px;height:44px;font-size:20px}.ar-bottom{bottom:0;background:linear-gradient(transparent,#000e 35%);padding-top:40px;padding-bottom:max(20px,env(safe-area-inset-bottom));text-align:center}.ar-bottom p{margin:8px auto;font-size:14px;max-width:650px}.ar-bottom .fine{font-size:11px}.ar-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.ar-actions button{font-size:14px;padding:10px 14px}.ar-actions .secondary{background:#172a27a0}.ar-stage #ar-guide{position:absolute;left:15%;top:13%;width:70%;height:70%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;color:#efda84aa;font-size:50px;pointer-events:none}#ar-guide span:nth-child(even){text-align:right}#ar-guide span:nth-child(n+3){align-self:end}#poster-plane{position:absolute;left:0;top:0;width:1682px;height:2378px;transform-origin:0 0;will-change:transform;pointer-events:none}#poster-plane button{pointer-events:auto;background:#132e28ed;color:#f5efdf;border:3px solid #efd06b;padding:18px 30px;font-weight:800;box-shadow:0 0 35px #efd06b44;font-size:36px;border-radius:10px}#poster-plane .ar-outline{position:absolute;inset:100px 95px;border:5px solid #efd06b80;border-radius:12px;box-shadow:0 0 20px #efd06b55;pointer-events:none}.ar-models{position:absolute;top:270px;left:220px;width:1240px;text-align:center}.flow-light{display:flex;align-items:center;justify-content:center;gap:25px;background:#142c28ec;border-radius:12px;padding:20px;margin-top:14px;color:#f5efdf;font-size:28px}.flow-light i{font-style:normal;padding:12px 24px;background:#dfb9d0;color:#172a27;border-radius:6px}.flow-light i:nth-of-type(2){background:#b8d6e3}.flow-light i:nth-of-type(3){background:#c3d5ad}.flow-light i:nth-of-type(4){background:#e7d591}.flow-light span{animation:signal 1.5s ease-in-out infinite alternate}@keyframes signal{to{opacity:.25}}.ar-clip{position:absolute;left:1100px;top:1040px;width:440px;padding:12px;background:#172a27;border:4px solid var(--gold);box-shadow:0 12px 60px #0007;color:#f5efdf;border-radius:12px}.ar-clip>span{font-size:22px;letter-spacing:1px;display:block;margin:0 0 10px}.ar-clip video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}#poster-plane .ar-clip button{font-size:24px;padding:12px;border:0;box-shadow:none;width:100%}.ar-impact{position:absolute;left:390px;top:1800px;width:900px}#ar-sheet{position:absolute;z-index:6;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--cream);color:var(--ink);padding:28px;width:min(92vw,620px);max-height:78dvh;overflow:auto;border-radius:12px;box-shadow:0 0 0 100vmax #0008}#close-ar-sheet{float:right;margin:0 0 12px 15px}#ar-sheet h2{font-size:30px}#ar-sheet p{font-size:16px}#ar-sheet a{display:inline-block;margin-top:12px;font-weight:700}#ar-sheet video{width:100%;max-height:250px}#ar-quality.locked{color:#bde5a7}.ar-top .camera-running{color:#bde5a7}

.group-points{margin:30px 0}.group-points h3{font-size:23px}.group-points-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.group-points article{padding:18px;background:#e8ecdc}.group-points article:nth-child(n+6){background:#eadfdf}.group-points h4{margin:0 0 8px}.group-points p{font-size:15px;margin:0}@media(max-width:600px){.group-points-grid{grid-template-columns:1fr}}
