.hero.cam{background-color:#0D0F12;color:#EDEAE2;border-bottom:0;background-image:linear-gradient(rgba(237,234,226,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(237,234,226,.05) 1px,transparent 1px);background-size:48px 48px}
.hero.cam::before{background:radial-gradient(560px circle at var(--mx) var(--my),rgba(255,79,18,.16),transparent 62%)}
.hero.cam .wrap{grid-template-columns:.92fr 1.08fr;padding-top:80px;padding-bottom:88px}
.hero.cam .lead{color:#A9ADB4}.hero.cam .hero-k{color:var(--signal)}.hero.cam .hero-k i{background:var(--signal)}
.hero.cam .btn-primary{background:var(--signal);border-color:var(--signal);color:#fff}.hero.cam .btn-primary:hover{background:#fff;border-color:#fff;color:var(--ink)}
.hero.cam .btn-ghost{color:#EDEAE2;border-color:#4A5059}.hero.cam .btn-ghost:hover{background:#EDEAE2;color:var(--ink);border-color:#EDEAE2}
.kx{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;color:#7B8088;font-size:10px}.kx b{display:block;color:#EDEAE2;font:600 20px/1.1 var(--sans);letter-spacing:-.01em;text-transform:none;margin-bottom:4px}
.vfw{opacity:0;animation:fadeUp 1s cubic-bezier(.2,.75,.2,1) 1.3s forwards}.no-intro .vfw{animation-delay:.2s}
.vf{position:relative;aspect-ratio:16/10;border-radius:14px;overflow:hidden;background:#15181C;box-shadow:0 0 0 1px #2A2F36,0 40px 120px -30px rgba(255,79,18,.4);cursor:crosshair;touch-action:pan-y;--sx:.5;--sy:.56;--bx:.5;--by:.5;--z:1}
.vf .scene{position:absolute;inset:0;transform:scale(var(--z));transform-origin:calc(var(--sx)*100%) calc(var(--sy)*100%);transition:transform 1.2s cubic-bezier(.2,.75,.2,1)}
.vf .room{position:absolute;inset:0;background:radial-gradient(38% 55% at 80% 28%,rgba(255,160,80,.30),transparent 70%),radial-gradient(30% 40% at 16% 22%,rgba(110,150,255,.14),transparent 70%),linear-gradient(180deg,#252a31,#111316)}
.vf .win{position:absolute;left:7%;top:11%;width:25%;height:46%;border:2px solid #333941;background:linear-gradient(160deg,#2d3644,#191e26)}.vf .win::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 49%,#333941 49% 51%,transparent 51%),linear-gradient(transparent 49%,#333941 49% 51%,transparent 51%)}
.vf .lamp{position:absolute;right:15%;top:16%;width:7%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#ffd7a8,#ff8a3d 55%,transparent 72%)}
.vf .shelf{position:absolute;right:5%;top:55%;width:30%;height:2px;background:#353a42}.vf .shelf i{position:absolute;bottom:2px;width:9%;background:#3b4149;border-radius:1px 1px 0 0}
.vf .desk{position:absolute;left:0;right:0;bottom:0;height:14%;background:linear-gradient(180deg,#2b2f35,#1a1d21);border-top:1px solid #3a3f46}
.vf .subj{position:absolute;left:calc(var(--sx)*100%);top:calc(var(--sy)*100%);width:36%;transform:translate(-50%,-31.8%);pointer-events:none}.vf .subj svg{width:100%;height:auto;display:block}
.vf .thirds{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 33.2%,rgba(255,255,255,.09) 33.2% 33.45%,transparent 33.45% 66.55%,rgba(255,255,255,.09) 66.55% 66.8%,transparent 66.8%),linear-gradient(transparent 33.2%,rgba(255,255,255,.09) 33.2% 33.45%,transparent 33.45% 66.55%,rgba(255,255,255,.09) 66.55% 66.8%,transparent 66.8%)}
.vf .trk{position:absolute;left:calc(var(--bx)*100%);top:calc(var(--by)*100%);width:calc(21% * var(--z));aspect-ratio:1/1.15;transform:translate(-50%,-50%);pointer-events:none;transition:width 1.2s cubic-bezier(.2,.75,.2,1)}
.vf .trk i{position:absolute;width:20%;height:18%;border:2px solid #fff;transition:border-color .3s}.vf .trk i:nth-child(1){left:0;top:0;border-right:0;border-bottom:0}.vf .trk i:nth-child(2){right:0;top:0;border-left:0;border-bottom:0}.vf .trk i:nth-child(3){left:0;bottom:0;border-right:0;border-top:0}.vf .trk i:nth-child(4){right:0;bottom:0;border-left:0;border-top:0}
.vf .trk span{position:absolute;left:0;top:-24px;font:500 10px/1 var(--mono);letter-spacing:.08em;color:#fff;background:rgba(0,0,0,.5);padding:5px 7px;white-space:nowrap;transition:background .3s}
.vf.lock .trk i{border-color:var(--signal)}.vf.lock .trk span{background:var(--signal)}
.vf .fr{position:absolute;inset:12px;pointer-events:none;opacity:.75;z-index:3;background:linear-gradient(#fff,#fff) 0 0/22px 2px no-repeat,linear-gradient(#fff,#fff) 0 0/2px 22px no-repeat,linear-gradient(#fff,#fff) 100% 0/22px 2px no-repeat,linear-gradient(#fff,#fff) 100% 0/2px 22px no-repeat,linear-gradient(#fff,#fff) 0 100%/22px 2px no-repeat,linear-gradient(#fff,#fff) 0 100%/2px 22px no-repeat,linear-gradient(#fff,#fff) 100% 100%/22px 2px no-repeat,linear-gradient(#fff,#fff) 100% 100%/2px 22px no-repeat}
.vf .bar{position:absolute;top:0;bottom:0;width:0;background:rgba(8,9,11,.93);transition:width .9s cubic-bezier(.7,0,.2,1);z-index:2}.vf .bar.l{left:0}.vf .bar.r{right:0}.vf.portrait .bar{width:32.4%}
.vf .noise{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0 1px,transparent 1px 3px)}
.vf .hud{position:absolute;inset:0;z-index:4;padding:24px 26px;display:flex;flex-direction:column;justify-content:space-between;font:500 11px/1 var(--mono);letter-spacing:.08em;color:#fff;text-transform:uppercase;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.5)}.vf .hud .r{display:flex;justify-content:space-between;align-items:center;gap:12px}
.vf .rec{display:flex;align-items:center;gap:8px}.vf .rec i{width:9px;height:9px;border-radius:50%;background:#ff3b30;animation:blink 1.2s steps(2,jump-none) infinite}
.vf .af{color:#fff;transition:color .3s}.vf.lock .af{color:var(--signal)}
.vfc{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap;align-items:center}.vfc button{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#EDEAE2;background:transparent;border:1px solid #3A3F46;padding:9px 13px;border-radius:99px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.vfc button:hover{border-color:#EDEAE2}.vfc button[aria-pressed=true]{background:#EDEAE2;color:var(--ink);border-color:#EDEAE2}.vfc .hint{margin-left:auto;color:#6B7079;font-size:10px}
@media(max-width:900px){.hero.cam .wrap{grid-template-columns:1fr;padding-top:48px}.vfc .hint{display:none}.vf .hud{padding:18px;font-size:9px}}
.cats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--rule);border-left:1px solid var(--rule)}.cat{position:relative;overflow:hidden;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:26px;min-height:310px;display:flex;flex-direction:column;text-decoration:none;transition:background .35s,color .35s}.cat:hover{background:var(--ink);color:var(--paper)}.cat .num{color:var(--signal-ink)}.cat:hover .num{color:var(--signal)}.cat h3{font-size:26px;letter-spacing:-.02em;margin:12px 0 8px;font-weight:600;transition:transform .4s cubic-bezier(.2,.75,.2,1)}.cat:hover h3{transform:translateX(6px)}.cat p{margin:0;color:var(--graphite);font-size:15px;transition:color .35s}.cat:hover p{color:#A9ADB4}.cat .ic{margin-top:auto;height:92px;display:flex;align-items:end}.cat svg{height:86px;width:auto;overflow:visible}.cat .lens{transform-box:fill-box;transform-origin:center;transition:transform .6s cubic-bezier(.2,.75,.2,1)}.cat:hover .lens{transform:scale(1.3)}.cat .beam{opacity:0;transition:opacity .45s}.cat:hover .beam{opacity:1}.cat .go{display:flex;justify-content:space-between;margin-top:18px;padding-top:12px;border-top:1px solid var(--rule);transition:border-color .35s}.cat:hover .go{border-color:#2A2F36}.cat .go span:last-child{transition:transform .4s}.cat:hover .go span:last-child{transform:translateX(8px);color:var(--signal)}
@media(max-width:1000px){.cats{grid-template-columns:1fr 1fr}}@media(max-width:560px){.cats{grid-template-columns:1fr}.cat{min-height:auto}}
.spot{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.spot .img{position:relative;background:#0D0F12;border-radius:14px;aspect-ratio:1;overflow:hidden;display:grid;place-items:center;text-decoration:none}.spot .img img{width:70%;height:auto;border-radius:10px;transition:transform 1.2s cubic-bezier(.2,.75,.2,1);position:relative;z-index:1}.spot .img:hover img{transform:scale(1.06) rotate(-1.5deg)}.spot .ring{position:absolute;inset:9%;border:1px dashed rgba(255,79,18,.55);border-radius:50%;animation:spin 40s linear infinite}.spot .ring.b{inset:20%;border-color:rgba(237,234,226,.15);animation-direction:reverse;animation-duration:26s}@keyframes spin{to{transform:rotate(360deg)}}.spot .tg{position:absolute;z-index:2;font:500 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#EDEAE2;background:rgba(21,24,28,.85);border:1px solid #2A2F36;padding:7px 10px;border-radius:99px}.spot h2{font-size:clamp(34px,4vw,56px);letter-spacing:-.03em;line-height:1;margin:12px 0 16px;font-weight:600}.spot p{color:var(--graphite);font-size:18px;margin:0}.spot .specs{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink);margin:26px 0 28px}.spot .specs div{padding:14px 0;border-bottom:1px solid var(--rule)}.spot .specs span{display:block;color:var(--muted);font:400 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.spot .specs b{font-size:19px;font-weight:600}@media(max-width:900px){.spot{grid-template-columns:1fr;gap:28px}}
.finder{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:start}.fpanel{position:sticky;top:96px;border:1px solid var(--ink);background:var(--card);padding:20px}.fpanel h4{margin:0 0 12px;font:400 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.fchips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}.fchips button{font:500 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--ink);background:transparent;padding:8px 10px;cursor:pointer;color:var(--ink);transition:background .2s,color .2s}.fchips button[aria-pressed=true],.fchips button:hover{background:var(--ink);color:var(--paper)}.wedge{width:100%;height:auto;display:block;margin-bottom:6px}.wedge path{transition:d .25s}.fpanel input[type=range]{width:100%;accent-color:#FF4F12}.fval{display:flex;justify-content:space-between;align-items:baseline;margin-top:6px}.fval b{font-size:30px;letter-spacing:-.03em}.fcount{margin-top:16px;padding-top:14px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline}.fcount b{font-size:22px}.finder .grid{grid-template-columns:repeat(3,1fr)}.cell.off{display:none}@media(max-width:1000px){.finder{grid-template-columns:1fr}.fpanel{position:static}.finder .grid{grid-template-columns:repeat(2,1fr)}}
.vfx{position:relative}.vfx::before{content:'';position:absolute;inset:14px;z-index:2;pointer-events:none;background:linear-gradient(#FF4F12,#FF4F12) 0 0/26px 2px no-repeat,linear-gradient(#FF4F12,#FF4F12) 0 0/2px 26px no-repeat,linear-gradient(#FF4F12,#FF4F12) 100% 0/26px 2px no-repeat,linear-gradient(#FF4F12,#FF4F12) 100% 0/2px 26px no-repeat,linear-gradient(#FF4F12,#FF4F12) 0 100%/26px 2px no-repeat,linear-gradient(#FF4F12,#FF4F12) 0 100%/2px 26px no-repeat,linear-gradient(#FF4F12,#FF4F12) 100% 100%/26px 2px no-repeat,linear-gradient(#FF4F12,#FF4F12) 100% 100%/2px 26px no-repeat}.vfx .rtag{position:absolute;left:26px;top:26px;z-index:3;display:flex;align-items:center;gap:7px;font:500 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;background:rgba(17,19,22,.85);color:#fff;padding:6px 9px}.vfx .rtag i{width:7px;height:7px;border-radius:50%;background:#ff3b30;animation:blink 1.2s steps(2,jump-none) infinite}
.prose .tn-lede{font-size:18px;color:var(--ink);margin-top:0}.tn-specs th{width:38%;color:var(--muted);font:400 11px var(--mono)!important;letter-spacing:.06em;text-transform:uppercase;vertical-align:top}.tn-specs td{color:var(--ink)}
.stock.ship i{background:var(--ok);animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(47,122,74,.55)}70%{box-shadow:0 0 0 8px rgba(47,122,74,0)}100%{box-shadow:0 0 0 0 rgba(47,122,74,0)}}.card .badge.ship{background:var(--ink);color:var(--paper);border-color:var(--ink)}
@media(prefers-reduced-motion:reduce){.vfw{animation:none;opacity:1}.vf .scene,.vf .trk{transition:none}.spot .ring{animation:none}.vf .rec i,.vfx .rtag i,.stock.ship i{animation:none}}
