:root{
  --bg:#070B12; --panel:#0E1522; --line:rgba(255,255,255,.09);
  --ink:#F2F5FA; --muted:#8C97A9; --accent:#35D6A4; --accent2:#2FA9C6;
  --radius:18px;
}
*{box-sizing:border-box}
html,body{overflow-x:clip}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--accent); text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1080px; margin:0 auto; padding:0 24px}
.eyebrow{
  font-size:12px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--muted); margin:0 0 14px;
}
h1{font-size:clamp(34px,6vw,60px); line-height:1.08; letter-spacing:-.02em; margin:0 0 20px}
h2{font-size:clamp(24px,3.4vw,34px); line-height:1.2; letter-spacing:-.01em; margin:0 0 14px}
h3{font-size:17px; margin:0 0 6px}
p{margin:0 0 16px}
.lede{font-size:clamp(17px,2.1vw,20px); color:var(--muted); max-width:60ch}

.topbar{
  position:sticky; top:0; z-index:20;
  border-bottom:1px solid var(--line);
  background:rgba(7,11,18,.78);
  backdrop-filter:saturate(1.4) blur(16px);
  -webkit-backdrop-filter:saturate(1.4) blur(16px);
}
.topbar .wrap{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; min-height:64px; padding-top:8px; padding-bottom:8px;
}
.brand{
  color:var(--ink); font-weight:650; letter-spacing:-.02em;
  font-size:15px; white-space:nowrap; min-width:0;
}
.brand:hover{text-decoration:none; color:var(--accent)}
.topbar .btn img{height:40px}
.topbar .btn:focus-visible{outline:2px solid var(--accent); outline-offset:4px; border-radius:8px}

header.hero{
  position:relative; overflow:hidden;
  padding:72px 0 72px;
  background:
    radial-gradient(90rem 44rem at 50% -18rem, rgba(47,169,198,.30), transparent 62%),
    radial-gradient(60rem 34rem at 88% 8%, rgba(53,214,164,.16), transparent 60%);
}
.hero-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:start}
.hero-grid > div:first-child{padding-top:clamp(0px,4vw,56px)}
.cta-row{display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin-top:28px}
.btn{display:inline-flex; align-items:center}
.btn img{height:54px; width:auto; display:block}
.btn:hover{text-decoration:none; filter:brightness(1.07)}
.btn-ghost{
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid var(--line); color:var(--ink); font-weight:600;
  padding:14px 22px; border-radius:999px; font-size:15px;
}
.btn-ghost:hover{text-decoration:none; border-color:rgba(255,255,255,.24)}
.note{font-size:13px; color:var(--muted); margin:16px 0 0}

.shot{
  width:100%; height:auto; aspect-ratio:460 / 999;
  object-fit:contain; object-position:top;
  border-radius:26px; display:block;
  border:1px solid var(--line);
  box-shadow:0 40px 90px -30px rgba(0,0,0,.85);
}

section{padding:80px 0; border-top:1px solid var(--line)}
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:34px}
.step{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); padding:26px}
.step .n{
  display:inline-grid; place-items:center; width:30px; height:30px; border-radius:50%;
  background:rgba(53,214,164,.14); color:var(--accent);
  font-weight:700; font-size:14px; margin-bottom:14px;
}
.step p{margin:0; color:var(--muted); font-size:15px}

.features{display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:34px}
.feature{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); padding:24px}
.feature p{margin:0; color:var(--muted); font-size:15px}

.tiers{display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-top:34px; align-items:stretch}
.tier{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); padding:28px; position:relative}
.tier.pro{
  border-color:rgba(53,214,164,.55);
  background:
    radial-gradient(28rem 16rem at 90% -20%, rgba(53,214,164,.22), transparent 58%),
    linear-gradient(180deg,rgba(47,169,198,.12),var(--panel) 62%);
  box-shadow:
    0 0 0 1px rgba(53,214,164,.18),
    0 18px 50px -22px rgba(53,214,164,.55);
  animation: pro-glow 4.8s ease-in-out infinite;
}
.tier.pro .tag{color:var(--accent)}
.tier.pro .price{background:linear-gradient(92deg,var(--ink),var(--accent)); -webkit-background-clip:text; background-clip:text; color:transparent}
.pro-mark{
  position:absolute; top:18px; right:18px;
  font-size:11px; font-weight:700; letter-spacing:.14em;
  color:#04202B; background:linear-gradient(97deg,var(--accent),var(--accent2));
  padding:5px 9px; border-radius:999px;
}
@keyframes pro-glow{
  0%,100%{box-shadow:0 0 0 1px rgba(53,214,164,.18), 0 18px 50px -22px rgba(53,214,164,.45)}
  50%{box-shadow:0 0 0 1px rgba(53,214,164,.42), 0 22px 64px -18px rgba(53,214,164,.75)}
}
@media (prefers-reduced-motion:reduce){
  .tier.pro{animation:none}
}
.price{font-size:30px; font-weight:700; margin:2px 0 4px}
.tier ul{margin:16px 0 0; padding:0 0 0 20px; color:var(--muted); font-size:15px}
.tier li{margin:0 0 8px}
.tag{font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:var(--muted)}

.gallery{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-top:34px; align-items:start}
.gallery img{
  width:100%; height:auto; aspect-ratio:560 / 1218;
  object-fit:contain; object-position:top;
  border-radius:16px; border:1px solid var(--line); display:block;
}

details{
  background:var(--panel); border:1px solid var(--line);
  border-radius:14px; padding:18px 22px; margin-bottom:12px;
}
details summary{cursor:pointer; font-weight:600; list-style:none}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"+"; float:right; color:var(--muted)}
details[open] summary::after{content:"–"}
details p{margin:12px 0 0; color:var(--muted); font-size:15px}

footer{padding:56px 0 72px; border-top:1px solid var(--line); color:var(--muted); font-size:14px}
footer .links{display:flex; flex-wrap:wrap; gap:22px; margin-bottom:20px}
.disclaimer{
  margin-top:26px; padding:16px 18px; border-left:2px solid rgba(53,214,164,.4);
  background:rgba(53,214,164,.05); color:var(--muted); font-size:13px; border-radius:0 10px 10px 0;
}

.langs{
  display:flex; flex-wrap:wrap; gap:8px 14px;
  margin:18px 0 0; font-size:13px;
}
.langs a{color:var(--muted)}
.langs a[aria-current="page"]{color:var(--ink); font-weight:650}

.doc{max-width:680px; padding:56px 24px 48px}
.doc h1{font-size:clamp(28px,5vw,40px); line-height:1.15; margin:0 0 10px}
.doc h2{font-size:20px; letter-spacing:-.01em; margin:36px 0 10px}
.doc h3{font-size:16px; margin:22px 0 8px}
.doc p, .doc li{color:var(--muted)}
.doc .date{color:var(--muted); font-size:14px; margin:0 0 28px}
.doc ul, .doc ol{margin:0 0 16px; padding:0 0 0 20px}
.doc li{margin:0 0 8px}
.doc code{font-size:.92em; color:var(--ink)}
.doc strong{color:var(--ink); font-weight:650}
footer.doc-foot{max-width:680px; padding:0 24px 72px}

html[dir="rtl"] details summary::after{float:left}
html[dir="rtl"] .tier ul,
html[dir="rtl"] .doc ul,
html[dir="rtl"] .doc ol{padding:0 20px 0 0}
html[dir="rtl"] .disclaimer{
  border-left:none;
  border-right:2px solid rgba(53,214,164,.4);
  border-radius:10px 0 0 10px;
}
html[dir="rtl"] .pro-mark{right:auto; left:18px}

@media (max-width:880px){
  .hero-grid{grid-template-columns:1fr; gap:40px}
  .steps,.features,.tiers{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(2,1fr)}
  .topbar .wrap{min-height:56px}
  .topbar .btn img{height:36px}
  header.hero{padding:48px 0 48px}
  section{padding:60px 0}
  .doc{padding:40px 24px 40px}
}
