:root{
  --bg:#0f1115; --bg2:#151922; --card:#1a1f2b; --ink:#eef1f6; --mut:#9aa4b3;
  --line:#262d3a; --accent:#ff5a4d; --accent-ink:#2a0d0a;
  --radius:16px; --max:1040px;
  --font:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
}
@media (prefers-color-scheme:light){
  :root{ --bg:#f6f7f9; --bg2:#ffffff; --card:#ffffff; --ink:#141821; --mut:#5b6472;
    --line:#e6e9ef; --accent-ink:#fff; }
}
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{ margin:0; background:var(--bg); color:var(--ink); font-family:var(--font); line-height:1.55; }
.wrap{ max-width:var(--max); margin:0 auto; padding:0 20px; }
.wrap.narrow{ max-width:720px; } .wrap.center,.center{ text-align:center; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3{ line-height:1.15; text-wrap:balance; margin:0; }
h2{ font-size:clamp(1.5rem,4vw,2.1rem); margin-bottom:24px; letter-spacing:-.01em; }
.muted{ color:var(--mut); }

/* Header */
.site-head{ position:sticky; top:0; z-index:20; background:color-mix(in srgb,var(--bg) 86%,transparent);
  backdrop-filter:blur(10px); border-bottom:1px solid var(--line); }
.head-inner{ display:flex; align-items:center; justify-content:space-between; height:60px; }
.brand{ display:flex; align-items:center; gap:10px; font-weight:800; font-size:1.15rem; }
.logo{ width:30px; height:30px; border-radius:9px; display:grid; place-items:center;
  background:var(--accent); color:var(--accent-ink); font-weight:900; }

/* Buttons */
.btn{ display:inline-flex; align-items:center; gap:10px; font-weight:800; cursor:pointer;
  background:var(--accent); color:var(--accent-ink); padding:14px 22px; border-radius:12px; border:0;
  transition:transform .12s ease, filter .12s ease; }
.btn:hover{ filter:brightness(1.06); } .btn:active{ transform:translateY(1px); }
.btn-sm{ padding:9px 16px; border-radius:10px; font-size:.92rem; }
.btn-ghost{ background:transparent; color:var(--ink); border:1px solid var(--line); font-weight:700; padding:13px 20px; }
.btn-ghost:hover{ border-color:var(--accent); color:var(--accent); filter:none; }
.btn-play{ padding:13px 24px; }
.btn-play .pg{ font-size:1.4rem; line-height:1; }
.btn-play small{ display:block; font-size:.66rem; font-weight:600; opacity:.85; letter-spacing:.04em; }
.btn-play b{ display:block; font-size:1.1rem; letter-spacing:.03em; }
.cta-row{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:26px; }
.cta-note{ color:var(--mut); font-size:.9rem; }

/* Hero */
.hero{ padding:64px 0 40px; background:radial-gradient(90% 120% at 80% -10%, color-mix(in srgb,var(--accent) 22%,transparent), transparent 60%); }
.hero-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:40px; align-items:center; }
.hero h1{ font-size:clamp(2.6rem,8vw,4rem); letter-spacing:-.03em; }
.slogan{ font-size:clamp(1.1rem,3vw,1.35rem); font-weight:700; margin:14px 0 10px; }
.lead{ color:var(--mut); font-size:1.05rem; max-width:46ch; margin:0; }

/* Phone mockup */
.hero-phone{ display:flex; justify-content:center; }
.phone{ width:210px; height:420px; border-radius:34px;
  background:linear-gradient(160deg,#232a37,#12161e); padding:12px; border:1px solid var(--line);
  box-shadow:0 30px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.05); }
.screen{ width:100%; height:100%; border-radius:24px; background:linear-gradient(180deg,#0e1219,#171d28);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; position:relative; overflow:hidden; }
.screen-top{ position:absolute; top:14px; left:14px; font-size:.62rem; font-weight:800; color:#fff;
  display:flex; align-items:center; gap:6px; letter-spacing:.08em; }
.dot{ width:8px; height:8px; border-radius:50%; background:var(--accent); }
.dot.live{ animation:pulse 1.4s infinite; }
@keyframes pulse{ 0%,100%{opacity:1} 50%{opacity:.3} }
.screen-logo{ font-size:1.5rem; font-weight:900; color:var(--accent); letter-spacing:-.02em; }
.screen-bars{ display:flex; gap:6px; align-items:flex-end; height:40px; }
.screen-bars i{ width:8px; background:var(--accent); border-radius:3px; animation:eq 1s infinite ease-in-out; }
.screen-bars i:nth-child(1){ height:40%; animation-delay:0s }
.screen-bars i:nth-child(2){ height:80%; animation-delay:.2s }
.screen-bars i:nth-child(3){ height:55%; animation-delay:.4s }
.screen-bars i:nth-child(4){ height:95%; animation-delay:.1s }
@keyframes eq{ 0%,100%{ transform:scaleY(.5) } 50%{ transform:scaleY(1) } }

/* Sections */
.sec{ padding:56px 0; }
.sec.alt{ background:var(--bg2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; }
.card{ background:var(--card); border:1px solid var(--line); border-radius:var(--radius); padding:22px; }
.card .ico{ font-size:1.8rem; } .card h3{ font-size:1.1rem; margin:10px 0 6px; }
.card p{ color:var(--mut); margin:0; font-size:.95rem; }

/* Steps */
.steps{ list-style:none; padding:0; margin:0 auto 28px; max-width:620px; display:flex; flex-direction:column; gap:14px; }
.steps li{ display:flex; align-items:center; gap:16px; background:var(--card); border:1px solid var(--line);
  border-radius:14px; padding:16px 18px; }
.steps b{ flex:0 0 auto; width:34px; height:34px; border-radius:50%; background:var(--accent); color:var(--accent-ink);
  display:grid; place-items:center; font-weight:900; }

/* FAQ */
.faq{ border:1px solid var(--line); border-radius:12px; margin-bottom:10px; background:var(--card); overflow:hidden; }
.faq summary{ cursor:pointer; padding:16px 18px; font-weight:700; list-style:none; display:flex; justify-content:space-between; align-items:center; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:"+"; color:var(--accent); font-size:1.3rem; font-weight:800; }
.faq[open] summary::after{ content:"–"; }
.faq p{ padding:0 18px 16px; margin:0; color:var(--mut); }

/* Footer */
.site-foot{ border-top:1px solid var(--line); padding:30px 0; background:var(--bg2); }
.site-foot p{ margin:0 0 8px; } .site-foot .muted{ font-size:.88rem; }
.site-foot a{ color:var(--accent); }
.foot-links{ display:flex; gap:18px; flex-wrap:wrap; }
.foot-links a{ font-weight:700; }

@media (max-width:760px){
  .hero{ padding:40px 0 20px; }
  .hero-grid{ grid-template-columns:1fr; gap:26px; }
  .hero-phone{ order:-1; } .phone{ width:170px; height:340px; }
  .lead{ max-width:none; }
}
:focus-visible{ outline:3px solid var(--accent); outline-offset:3px; border-radius:6px; }
@media (prefers-reduced-motion:reduce){ *{ animation:none !important; scroll-behavior:auto; } }
