:root{
  --bg:#070a0e;--bg2:#0b0f14;--panel:#121922;--border:#223040;
  --text:#e6edf3;--dim:#8b98a5;--accent:#22d3ee;--accent-ink:#04252c;
  --amber:#fbbf24;--red:#f87171;--green:#34d399;
  --head:"Rajdhani",system-ui,sans-serif;--body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --wrap:1160px;--r:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)}
h1,h2,h3{font-family:var(--head);font-weight:700;line-height:1.05;margin:0 0 .4em;letter-spacing:.5px}
h1{font-size:clamp(2.6rem,7vw,5rem);text-transform:uppercase}
h2{font-size:clamp(2rem,4.5vw,3.2rem);text-transform:uppercase}
h3{font-size:1.45rem}
p{margin:0 0 1em;color:var(--dim)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.eyebrow{font:700 .8rem/1 var(--head);letter-spacing:4px;color:var(--accent);text-transform:uppercase;margin-bottom:14px;display:block}
.accent{color:var(--accent)}
.lead{font-size:1.15rem;color:#b9c4cf;max-width:620px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:10px;font:700 1.05rem var(--head);letter-spacing:2px;text-transform:uppercase;text-decoration:none;border:1px solid var(--border);color:var(--text);background:var(--panel);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-2px)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 0 30px rgba(34,211,238,.35)}
.btn.primary:hover{box-shadow:0 0 44px rgba(34,211,238,.55)}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(7,10,14,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.nav .wrap{display:flex;align-items:center;gap:28px;height:64px}
.brand{font:700 1.6rem var(--head);letter-spacing:6px;color:var(--text);text-decoration:none}
.brand span{color:var(--accent)}
.nav ul{display:flex;gap:24px;list-style:none;margin:0 0 0 auto;padding:0}
.nav ul a{color:var(--dim);text-decoration:none;font:600 .95rem var(--head);letter-spacing:2px;text-transform:uppercase}
.nav ul a:hover{color:var(--text)}
.nav .btn{padding:9px 18px;font-size:.9rem}
@media(max-width:760px){.nav ul{display:none}.nav .btn{margin-left:auto}}

/* hero */
.hero{position:relative;padding:80px 0 60px;overflow:hidden;
  background:radial-gradient(ellipse 70% 60% at 75% 40%,rgba(34,211,238,.14),transparent 70%),
             linear-gradient(180deg,var(--bg2),var(--bg))}
.hero::before{content:"";position:absolute;inset:0;opacity:.35;pointer-events:none;
  background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);
  background-size:56px 56px;mask-image:radial-gradient(ellipse at 70% 40%,#000 0%,transparent 70%)}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-img{border-radius:var(--r);border:1px solid var(--border);box-shadow:0 30px 80px rgba(0,0,0,.6)}
@media(max-width:900px){.hero{padding:48px 0}.hero .wrap{grid-template-columns:1fr}}

/* stat strip */
.strip{border-block:1px solid var(--border);background:var(--bg2)}
.strip .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.strip div{padding:26px 10px;text-align:center;border-right:1px solid var(--border)}
.strip div:last-child{border-right:0}
.strip b{display:block;font:700 2.4rem/1 var(--head);color:var(--accent)}
.strip span{font:600 .85rem var(--head);letter-spacing:2px;text-transform:uppercase;color:var(--dim)}
@media(max-width:700px){.strip .wrap{grid-template-columns:repeat(2,1fr)}.strip div:nth-child(2){border-right:0}.strip div:nth-child(-n+2){border-bottom:1px solid var(--border)}}

/* sections */
section{padding:90px 0}
section.alt{background:var(--bg2);border-block:1px solid var(--border)}
.head{max-width:720px;margin-bottom:44px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.split.flip > :first-child{order:2}
@media(max-width:900px){section{padding:64px 0}.split{grid-template-columns:1fr;gap:32px}.split.flip > :first-child{order:0}}

/* device screen frame */
.screen{background:#000;border:1px solid #2b3a4c;border-radius:16px;padding:10px;box-shadow:0 20px 50px rgba(0,0,0,.55),0 0 0 6px #0e141b}
.screen img{border-radius:8px;width:100%;image-rendering:auto}
.phone{max-width:300px;margin:0 auto;background:#000;border:1px solid #2b3a4c;border-radius:34px;padding:12px;box-shadow:0 20px 60px rgba(0,0,0,.6),0 0 0 6px #0e141b}
.phone img{border-radius:24px}

/* comparison */
.vs{width:100%;border-collapse:collapse;font-size:.98rem}
.vs th,.vs td{padding:16px 18px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
.vs thead th{font:700 1rem var(--head);letter-spacing:2px;text-transform:uppercase;color:var(--dim)}
.vs thead th.us{color:var(--accent)}
.vs td:first-child{color:var(--text);font-weight:600;width:24%}
.vs td.them{color:var(--dim)}
.vs td.us{color:var(--text);background:rgba(34,211,238,.06);border-left:2px solid var(--accent)}
.vs-wrap{border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
@media(max-width:700px){
  .vs thead{display:none}.vs,.vs tbody,.vs tr,.vs td{display:block;width:100%!important}
  .vs tr{border-bottom:1px solid var(--border);padding:8px 0}.vs td{border:0;padding:6px 16px}
  .vs td.them::before{content:"Typical prop: ";color:var(--dim);font-weight:600}
  .vs td.us::before{content:"TACT: ";color:var(--accent);font-weight:700}
}

/* gallery */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gallery figure{margin:0;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--panel)}
.gallery figcaption{padding:10px 14px;font:600 .85rem var(--head);letter-spacing:2px;text-transform:uppercase;color:var(--dim)}
@media(max-width:900px){.gallery{grid-template-columns:repeat(2,1fr)}}

/* video */
.video{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;border:1px solid var(--border);background:#000 center/cover no-repeat;cursor:pointer}
.video button{position:absolute;inset:0;margin:auto;width:92px;height:92px;border-radius:50%;border:0;background:var(--accent);color:var(--accent-ink);cursor:pointer;box-shadow:0 0 50px rgba(34,211,238,.6)}
.video button svg{width:34px;height:34px;margin-left:6px}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* modes */
.modes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.mode{background:var(--panel);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}
.mode:hover{border-color:var(--accent);transform:translateY(-3px)}
.mode img{border-bottom:1px solid var(--border)}
.mode div{padding:18px 20px 20px}
.mode h3{margin-bottom:6px}
.mode p{margin:0;font-size:.95rem}
.tag{display:inline-block;font:700 .7rem var(--head);letter-spacing:2px;padding:3px 8px;border-radius:5px;margin-bottom:8px;border:1px solid}
.tag.classified{color:var(--amber);border-color:var(--amber)}
.tag.team{color:var(--accent);border-color:var(--accent)}
.more-modes{margin-top:26px;color:var(--dim);text-align:center}
.more-modes b{color:var(--text);font-family:var(--head);letter-spacing:1px}
@media(max-width:900px){.modes{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.modes{grid-template-columns:1fr}}

/* feature list */
.ticks{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:14px}
.ticks li{padding-left:34px;position:relative;color:#c4ced8}
.ticks li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:5px;background:var(--accent);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat}
.ticks b{color:var(--text)}
.pair{display:grid;gap:22px;max-width:480px;margin-inline:auto;width:100%}

/* chips: games it suits */
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.chips span{padding:10px 18px;border:1px solid var(--border);border-radius:999px;font:600 1rem var(--head);letter-spacing:2px;text-transform:uppercase;background:var(--panel)}

/* faq */
.faq{max-width:820px;margin:0 auto}
.faq details{border-bottom:1px solid var(--border);padding:18px 0}
.faq summary{cursor:pointer;font:700 1.2rem var(--head);letter-spacing:.5px;list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq summary::after{content:"+";color:var(--accent);font-size:1.5rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:12px 0 0}

/* final cta */
.cta{text-align:center;background:radial-gradient(ellipse 60% 80% at 50% 100%,rgba(34,211,238,.18),transparent 70%),var(--bg2);border-top:1px solid var(--border)}
.cta .lead{margin:0 auto 28px}

/* footer */
footer{padding:40px 0;border-top:1px solid var(--border);font-size:.9rem;color:var(--dim)}
footer .wrap{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center}
footer nav{display:flex;flex-wrap:wrap;gap:20px;margin-left:auto}
footer a{color:var(--dim);text-decoration:none}footer a:hover{color:var(--text)}

/* press */
.press-list{display:grid;gap:16px}
.press-item{display:block;padding:24px;border:1px solid var(--border);border-radius:var(--r);background:var(--panel);text-decoration:none;color:var(--text);transition:border-color .2s}
.press-item:hover{border-color:var(--accent)}
.press-item time{font:600 .8rem var(--head);letter-spacing:2px;color:var(--accent);text-transform:uppercase}
.press-item h2{font-size:1.6rem;text-transform:none;margin:6px 0}
.press-item p{margin:0}
article.release{max-width:760px;margin:0 auto;padding:64px 20px 80px}
article.release h1{font-size:clamp(2rem,5vw,3rem);text-transform:none}
article.release .sub{font-size:1.2rem;color:#b9c4cf;margin-bottom:28px}
article.release p,article.release li{color:#c4ced8}
article.release h2{font-size:1.4rem;text-transform:uppercase;letter-spacing:2px;margin-top:36px;color:var(--text)}
article.release blockquote{margin:28px 0;padding:6px 0 6px 22px;border-left:3px solid var(--accent);font-size:1.15rem;color:var(--text)}
article.release .screen{margin:28px 0}
article.release .end{text-align:center;color:var(--dim);letter-spacing:6px;margin:36px 0}
.dateline{font-weight:700;color:var(--text)}
.mode .opts{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0;padding:0}
.mode .opts li{font:600 .78rem var(--head);letter-spacing:1px;text-transform:uppercase;color:#c4ced8;background:var(--bg2);border:1px solid var(--border);border-radius:6px;padding:4px 8px}
.brand img{height:30px;width:auto;display:block}
footer .brand img{height:24px}
.fine{font-size:.8rem;line-height:1.5;color:var(--dim);margin:14px 0 0}
.strip b{font-size:clamp(1.4rem,3vw,2.2rem);line-height:1.05}
.nfc-art{display:grid;place-items:center;gap:14px;color:var(--accent);max-width:320px;margin:0 auto}
.nfc-art svg{width:100%;filter:drop-shadow(0 0 30px rgba(34,211,238,.35))}
.nfc-art span{font:700 1rem var(--head);letter-spacing:6px}
