:root{--bg:#0A0E14;--panel:#141B26;--line:rgba(255,255,255,.08);--line2:rgba(255,255,255,.14);
  --ink:#EAF0F7;--mut:#8A97A8;--dim:#5B6675;--cyan:#22D3EE;--cyan2:#38BDF8;--glow:rgba(34,211,238,.35);}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--ink);font-family:'Space Grotesk',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px;position:relative;z-index:1;}
body::before{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(60% 50% at 50% -5%,rgba(34,211,238,.12),transparent 70%),
  linear-gradient(transparent 0 39px,rgba(255,255,255,.02) 39px 40px),
  linear-gradient(90deg,transparent 0 39px,rgba(255,255,255,.02) 39px 40px);background-size:auto,40px 40px,40px 40px;}
nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(12px);background:linear-gradient(180deg,rgba(10,14,20,.9),rgba(10,14,20,.6));border-bottom:1px solid var(--line);}
.nav-in{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1;}
.logo{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.05rem;letter-spacing:.02em;}
.mark{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(140deg,#0EA5C4,#22D3EE);box-shadow:0 0 0 1px rgba(34,211,238,.4),0 6px 20px var(--glow);font-family:'Space Mono',monospace;font-weight:700;color:#04121A;font-size:1.15rem;}
.logo b{color:var(--cyan);}.logo small{display:block;font-family:'Space Mono',monospace;font-weight:400;font-size:.56rem;letter-spacing:.32em;color:var(--mut);text-transform:uppercase;margin-top:2px;}
.cta{font-family:'Space Mono',monospace;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;padding:10px 20px;border-radius:999px;border:1px solid var(--cyan);color:var(--cyan);transition:.25s;display:inline-block;}
.cta:hover{background:var(--cyan);color:#04121A;box-shadow:0 6px 24px var(--glow);}
.cta.solid{background:var(--cyan);color:#04121A;}.cta.solid:hover{box-shadow:0 10px 40px var(--glow);transform:translateY(-2px);}
.mono{font-family:'Space Mono',monospace;}
/* hero */
header.hero{padding:82px 0 40px;text-align:center;}
.eyebrow{font-family:'Space Mono',monospace;font-size:.72rem;letter-spacing:.34em;text-transform:uppercase;color:var(--cyan);display:inline-flex;align-items:center;gap:9px;padding:7px 16px;border:1px solid var(--line2);border-radius:999px;background:var(--panel);}
.dot{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan);animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
h1{font-size:clamp(2.4rem,6vw,4.4rem);line-height:1.03;font-weight:700;letter-spacing:-.02em;margin:26px 0 0;}
h1 .g{background:linear-gradient(120deg,var(--cyan),var(--cyan2) 60%,#A78BFA);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero p.lede{max-width:60ch;margin:22px auto 0;color:var(--mut);font-size:clamp(1rem,2vw,1.18rem);line-height:1.7;}
.stats{display:flex;gap:34px;justify-content:center;flex-wrap:wrap;margin-top:40px;}
.stat b{display:block;font-size:1.9rem;font-weight:700;}.stat span{font-family:'Space Mono',monospace;font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);}
.chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:44px;}
.chip{font-family:'Space Mono',monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:9px 16px;border-radius:999px;border:1px solid var(--line2);color:var(--mut);background:var(--panel);transition:.2s;}
.chip:hover{color:var(--ink);border-color:var(--cyan);}.chip.soon{opacity:.5;}
/* sections + cards */
section.cat{padding:52px 0 8px;}
.cat-head{display:flex;align-items:baseline;gap:16px;margin-bottom:26px;flex-wrap:wrap;}
.cat-head h2{font-size:1.7rem;font-weight:600;letter-spacing:-.01em;}
.cat-head .n{font-family:'Space Mono',monospace;font-size:.7rem;color:var(--cyan);border:1px solid var(--line2);border-radius:999px;padding:3px 11px;}
.cat-head p{color:var(--dim);font-size:.92rem;margin-left:auto;}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;}
.card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--panel);transition:transform .3s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s;display:flex;flex-direction:column;}
.card:hover{transform:translateY(-6px);border-color:var(--line2);box-shadow:0 24px 50px rgba(0,0,0,.5),0 0 0 1px var(--line2);}
.screen{height:184px;position:relative;overflow:hidden;background:#0d131c;}
.screen img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s ease;}
.card:hover .screen img{transform:scale(1.05);}
.screen::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(10,14,20,.55));}
.s-nails{background:linear-gradient(135deg,#FF9EC7,#FF5FA2 55%,#C9457F);}.s-sched{background:linear-gradient(135deg,#6EE7F9,#38BDF8 50%,#6366F1);}
.s-book{background:linear-gradient(135deg,#6EE7B7,#10B981 55%,#0E7490);}.s-bant{background:linear-gradient(135deg,#93C5FD,#3B82F6 55%,#1E3A8A);}
.s-kingz{background:linear-gradient(135deg,#F5D77E,#B8860B 45%,#4A2E7A);}.s-snn{background:linear-gradient(135deg,#A7F3D0,#34D399 50%,#0EA5C4);}
.s-clean{background:linear-gradient(135deg,#CBD5E1,#64748B 55%,#22D3EE);}.s-lawn{background:linear-gradient(135deg,#86EFAC,#22C55E 45%,#38BDF8);}
.s-elec{background:linear-gradient(135deg,#FDE68A,#F59E0B 55%,#B45309);}.s-insulin{background:linear-gradient(135deg,#99F6E4,#2DD4BF 50%,#0EA5C4);}
.s-cari{background:linear-gradient(135deg,#FDBA74,#F97316 50%,#EA580C);}.s-rack{background:linear-gradient(135deg,#E8E6E1,#D8C6A6 55%,#71212E);}
.s-drop{background:linear-gradient(135deg,#FF57A5,#FF2E88 45%,#F5C542);}.s-chat{background:linear-gradient(135deg,#FFE3F1,#FF8CC6 60%,#FF4FA3);}
.s-os{background:linear-gradient(135deg,#C9A7FF,#8C6BFF 50%,#FF7AD9);}
.s-build{background:linear-gradient(135deg,#1a2238,#ff6b35 60%,#f4a300);}
.featured{padding:34px 0 8px;}
.feat-card{display:grid;grid-template-columns:1.05fr 1.25fr;gap:34px;align-items:center;border:1px solid var(--line2);border-radius:22px;padding:34px;background:radial-gradient(90% 140% at 0% 0%, rgba(34,211,238,.13), var(--panel) 62%);}
.feat-badge{font-family:'Space Mono',monospace;font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;color:var(--cyan);border:1px solid var(--line2);border-radius:999px;padding:6px 13px;display:inline-block;}
.feat-text h2{font-size:clamp(2rem,4vw,3rem);font-weight:700;letter-spacing:-.02em;margin:16px 0 0;}
.feat-text h2 .g{background:linear-gradient(120deg,var(--cyan),var(--cyan2) 60%,#A78BFA);-webkit-background-clip:text;background-clip:text;color:transparent;}
.feat-text p{color:var(--mut);font-size:1.02rem;line-height:1.7;margin-top:14px;max-width:54ch;}
.feat-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}
.feat-shot{position:relative;border:1px solid var(--line2);border-radius:14px;overflow:hidden;display:block;box-shadow:0 30px 60px rgba(0,0,0,.5);}
.feat-shot img{display:block;width:100%;transition:transform .5s;}
.feat-shot:hover img{transform:scale(1.03);}
.feat-shot .badge{position:absolute;top:12px;left:12px;z-index:2;font-family:'Space Mono',monospace;font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;background:rgba(4,12,20,.75);color:#cfeff6;border:1px solid rgba(34,211,238,.35);border-radius:999px;padding:5px 11px;}
@media(max-width:820px){.feat-card{grid-template-columns:1fr;}}
.screen .badge{position:absolute;top:12px;left:12px;z-index:3;font-family:'Space Mono',monospace;font-size:.54rem;letter-spacing:.16em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:rgba(4,12,20,.72);color:#cfeff6;backdrop-filter:blur(4px);border:1px solid rgba(34,211,238,.3);}
.card .body{padding:20px;display:flex;flex-direction:column;flex:1;}
.card h3{font-size:1.15rem;font-weight:600;}
.card .desc{color:var(--mut);font-size:.88rem;line-height:1.6;margin-top:8px;flex:1;}
.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px;}
.tag{font-family:'Space Mono',monospace;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line2);border-radius:6px;padding:3px 8px;}
.card .go{margin-top:18px;display:flex;align-items:center;justify-content:space-between;font-family:'Space Mono',monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);padding-top:16px;border-top:1px solid var(--line);}
.card .go .arrow{transition:transform .25s;}.card:hover .go .arrow{transform:translateX(5px);}
/* coming soon */
.soon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;}
.soon-tile{border:1px dashed var(--line2);border-radius:14px;padding:22px;background:linear-gradient(180deg,var(--panel),transparent);transition:.25s;}
.soon-tile:hover{border-color:var(--cyan);}.soon-tile .ic{font-size:1.5rem;}
.soon-tile h4{margin-top:10px;font-size:1.02rem;font-weight:600;}.soon-tile p{color:var(--dim);font-size:.82rem;margin-top:5px;line-height:1.5;}
.soon-tile .st{margin-top:12px;font-family:'Space Mono',monospace;font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);opacity:.8;}
/* final + footer */
.final{margin:80px 0 40px;border:1px solid var(--line2);border-radius:22px;padding:56px 32px;text-align:center;background:radial-gradient(80% 130% at 50% 0%,rgba(34,211,238,.1),var(--panel) 65%);}
.final h2{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700;letter-spacing:-.02em;}
.final p{color:var(--mut);max-width:52ch;margin:16px auto 0;line-height:1.7;}
.final .cta{margin-top:30px;padding:15px 34px;font-size:.8rem;}
footer{border-top:1px solid var(--line);padding:30px 0 60px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;color:var(--dim);font-family:'Space Mono',monospace;font-size:.72rem;letter-spacing:.06em;}
footer a:hover{color:var(--cyan);}
/* ---- detail page ---- */
.back{display:inline-block;margin-top:26px;font-family:'Space Mono',monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);}
.back:hover{color:var(--cyan);}
.dhero{padding:26px 0 22px;}
.dhero .kicker{font-family:'Space Mono',monospace;font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;color:var(--cyan);}
.dhero h1{font-size:clamp(2rem,5vw,3.3rem);margin-top:14px;}
.dhero .tagline{color:var(--mut);font-size:clamp(1.05rem,2.2vw,1.35rem);margin-top:14px;max-width:60ch;line-height:1.5;}
.dhero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;}
.shot{border:1px solid var(--line2);border-radius:16px;overflow:hidden;background:#0d131c;box-shadow:0 30px 70px rgba(0,0,0,.55);margin:14px 0;}
.shot .chrome{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid var(--line);background:#0f151d;}
.shot .chrome i{margin-left:12px;font-family:'Space Mono',monospace;font-style:normal;font-size:.66rem;color:var(--dim);letter-spacing:.04em;}
.shot .chrome span{width:11px;height:11px;border-radius:50%;background:#2a3543;}
.shot img{display:block;width:100%;}
.block{padding:44px 0 8px;}
.block h2{font-size:1.5rem;font-weight:600;margin-bottom:22px;}
.feats{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;}
.feat{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:15px 16px;background:var(--panel);}
.feat .ck{flex:0 0 auto;width:20px;height:20px;border-radius:6px;display:grid;place-items:center;background:rgba(34,211,238,.14);color:var(--cyan);font-size:.7rem;margin-top:1px;}
.feat span{font-size:.92rem;line-height:1.5;color:var(--ink);}
.bens{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;}
.ben{border-left:2px solid var(--cyan);padding:4px 0 4px 16px;}
.ben b{display:block;font-size:1.02rem;font-weight:600;}
.tagrow{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px;}
@media(max-width:640px){.cat-head p{margin-left:0;width:100%;}.nav-in .logo small{display:none;}header.hero{padding:56px 0 26px;}}