:root{
  --bg:#0b1020;
  --card:#0f172a;
  --muted:#0c1224;
  --text:#e5e7eb;
  --text-dim:#cbd5e1;
  --brand:#6366f1;
  --brand-2:#06b6d4;
  --border:rgba(255,255,255,0.08);
  --shadow:0 10px 30px rgba(0,0,0,0.35);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  background:radial-gradient(1200px 600px at 70% -10%, rgba(99,102,241,0.20), transparent 60%),
             radial-gradient(900px 500px at 10% -20%, rgba(6,182,212,0.20), transparent 60%),
             var(--bg);
  color:var(--text);
  line-height:1.55;
}
.container{max-width:1120px;margin:0 auto;padding:0 20px}

.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:16px;top:16px;width:auto;height:auto;background:#fff;color:#111;padding:8px 12px;border-radius:6px}

.site-header{position:sticky;top:0;backdrop-filter:saturate(140%) blur(8px);background:rgba(11,16,32,0.6);border-bottom:1px solid var(--border);z-index:50}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:0.2px}
.brand img{display:block;border-radius:6px}
.nav{display:flex;gap:18px;list-style:none;margin:0;padding:0}
.nav a{color:var(--text-dim);text-decoration:none;font-weight:500}
.nav a:hover{color:#fff}
.cta{display:flex;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,0.03);color:#fff;text-decoration:none;font-weight:600;transition:transform .12s ease, background .2s ease, border .2s ease;box-shadow:var(--shadow)}
.btn:hover{transform:translateY(-1px);background:rgba(255,255,255,0.06)}
.btn.primary{background:linear-gradient(135deg, var(--brand), var(--brand-2));border-color:transparent}
.btn.ghost{background:transparent}

.hero{padding:72px 0}
.hero .container{display:grid;grid-template-columns:1.1fr 0.9fr;gap:36px;align-items:center}
.hero-copy h1{margin:0 0 14px;font-size:42px;line-height:1.1;letter-spacing:-0.02em}
.hero-copy .lead{color:var(--text-dim);font-size:18px;margin:0 0 18px}
.actions{display:flex;gap:12px;margin:18px 0 10px}
.trust{display:flex;gap:16px;padding:0;margin:10px 0 0;list-style:none;color:var(--text-dim);font-size:14px}

.hero-visual .visual-frame{position:relative;aspect-ratio:3/2;border-radius:16px;border:1px solid var(--border);background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));overflow:hidden;box-shadow:var(--shadow)}
.fallback-pattern{position:absolute;inset:0}
#app-screenshot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}

/* Device mock framing + zoom-on-hover */
.device-mock{position:absolute;inset:0;display:block}
.device-mock__img{
  width:100%;height:100%;object-fit:cover;display:block;
  transform:scale(1) translateZ(0);
  transition:transform 180ms ease, filter 180ms ease, box-shadow 180ms ease;
  will-change:transform;
}
.visual-frame:hover .device-mock__img,
.visual-frame:focus-within .device-mock__img{
  transform:scale(1.03);
  filter:saturate(1.05);
}
@media (prefers-reduced-motion: reduce){
  .device-mock__img{transition:none}
}

.section{padding:64px 0}
.section.muted{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01))}
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{border:1px solid var(--border);background:rgba(255,255,255,0.03);border-radius:14px;padding:18px}
.card h3{margin:6px 0 8px}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.note{border-left:3px solid var(--brand);background:rgba(99,102,241,0.08);padding:12px 14px;border-radius:8px;margin:8px 0}

.faq details{border:1px solid var(--border);border-radius:10px;padding:12px 14px;background:rgba(255,255,255,0.02);margin:10px 0}
.faq summary{cursor:pointer;font-weight:600}

.site-footer{border-top:1px solid var(--border);padding:18px 0;background:rgba(0,0,0,0.2)}
.footer-inner{display:flex;align-items:center;justify-content:space-between}
.footer-links{display:flex;gap:12px}
.footer-links a{color:var(--text-dim);text-decoration:none}
.footer-links a:hover{color:#fff}

@media (max-width: 980px){
  .hero .container{grid-template-columns:1fr}
  .features{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 640px){
  .features{grid-template-columns:1fr}
  .hero{padding:46px 0}
  .hero-copy h1{font-size:32px}
}
