/* HDR to SDR Movie Converter — site styles. Windows (Fluent) look on a cream palette.
   Change the accent colour in one place: --accent / --accent-hover (light) and the dark block below. */
:root{
  --bg:#1B1A18; --surface:#242321; --surface2:#2D2B28; --raised:#3A3835;
  --border:#3C3A36; --border-soft:#2F2D2A;
  --txt:#F4F1EA; --txt-dim:#C0BBAE; --txt-faint:#928D81;
  --accent:#7FA3FF; --accent-hover:#9DB8FF; --on-accent:#0E1630; --accent-soft:rgba(127,163,255,.14);
  --kofi:#FF5E5B; --kofi-hover:#E84845;
  --ok:#3FCB86; --warn:#F0B429; --bad:#FF6B6B;
  --shadow-lo:var(--accent);
  --font:"Segoe UI Variable Text","Segoe UI Variable","Segoe UI",Inter,system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --display:"Segoe UI Variable Display","Segoe UI Variable","Segoe UI",Inter,system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --mono:"Cascadia Mono","Cascadia Code",Consolas,"SF Mono",ui-monospace,monospace;
  --r-card:8px; --r-ctl:6px;
  color-scheme:dark;
}
html.light{
  --bg:#F4F1EA; --surface:#FBFAF6; --surface2:#ECE8DD; --raised:#FFFFFF;
  --border:#DDD8CA; --border-soft:#E7E3D8;
  --txt:#1B1A17; --txt-dim:#4F4C44; --txt-faint:#757166;
  --accent:#2B54D9; --accent-hover:#2145B8; --on-accent:#FFFFFF; --accent-soft:rgba(43,84,217,.10);
  color-scheme:light;
}
html.neon{
  --bg:#0B0813; --surface:#151026; --surface2:#221A38; --raised:#2E224D;
  --border:#43326D; --border-soft:#2A1E46;
  --txt:#F4F1EA; --txt-dim:#C4BCDB; --txt-faint:#8E84A8;
  --accent:#00F0FF; --accent-hover:#57F4FF; --on-accent:#070E1A; --accent-soft:rgba(0,240,255,.16);
  --shadow-lo:var(--accent);
  color-scheme:dark;
}
html.neon body{
  background: radial-gradient(circle at 50% 0%, #1e1338 0%, #0b0813 65%);
}
html.neon .monitor{
  box-shadow: 0 0 0 1px rgba(0, 240, 255, 0.3), 0 0 35px rgba(185, 45, 255, 0.22), 0 24px 48px -16px rgba(0,0,0,.6);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto;} *{animation-duration:.01ms!important;transition-duration:.01ms!important;} }
body{ margin:0; background:var(--bg); color:var(--txt); font-family:var(--font); font-size:17px; line-height:1.6;
  -webkit-font-smoothing:antialiased; transition:background .25s ease,color .25s ease; }
::selection{ background:var(--accent); color:var(--on-accent); }
h1,h2,h3,h4{ font-family:var(--display); font-weight:600; letter-spacing:-.015em; line-height:1.18; margin:0; }
code,pre{ font-family:var(--mono); }
a{ color:inherit; text-decoration:none; }
p{ color:var(--txt-dim); margin:0; }
img{ max-width:100%; }
.wrap{ max-width:1180px; margin:0 auto; padding:0 28px; }
:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; border-radius:4px; }
section[id], .doc-block[id]{ scroll-margin-top:88px; }

/* ---------- header (Mica-like bar) ---------- */
header.topbar{ position:sticky; top:0; z-index:50; background:color-mix(in srgb,var(--bg) 86%,transparent);
  backdrop-filter:blur(24px) saturate(140%); -webkit-backdrop-filter:blur(24px) saturate(140%); border-bottom:1px solid var(--border-soft); }
.topbar-inner{ max-width:1720px; margin:0 auto; padding:12px 28px; display:flex; align-items:center; gap:14px; flex-wrap:nowrap; }
.brand{ display:flex; align-items:center; gap:10px; font-family:var(--display); font-weight:600; font-size:17px; white-space:nowrap; flex-shrink:0; margin-inline-end:auto; }
.brand-mark{ width:30px; height:30px; display:block; }
nav.topnav{ display:flex; align-items:center; gap:6px; min-width:0; }
.navlinks{ display:flex; align-items:center; gap:2px; }
.navlinks a{ font-size:15px; font-weight:500; color:var(--txt-dim); padding:7px 11px; border-radius:var(--r-ctl); white-space:nowrap; transition:background .15s,color .15s; }
.navlinks a:hover{ background:var(--surface2); color:var(--txt); }
.kofi-btn{ display:inline-flex; align-items:center; gap:8px; height:36px; padding:0 15px; border-radius:var(--r-ctl); background:var(--kofi);
  color:#fff!important; font-size:14.5px; font-weight:600; white-space:nowrap; transition:background .15s,transform .1s; }
.kofi-btn svg{ width:16px; height:16px; }
.kofi-btn:hover{ background:var(--kofi-hover); }
.kofi-btn:active{ transform:scale(.97); }
.icon-btn{ width:36px; height:36px; border-radius:var(--r-ctl); border:1px solid var(--border); background:var(--surface); color:var(--txt-dim);
  display:inline-flex; align-items:center; justify-content:center; cursor:pointer; transition:background .15s,border-color .15s,color .15s; flex:none; padding:0; }
.icon-btn:hover{ background:var(--surface2); color:var(--txt); }
.icon-btn svg{ width:19px; height:19px; }
.lang-switch{ position:relative; flex:none; }
.lang-menu{ position:absolute; inset-inline-end:0; top:calc(100% + 8px); background:var(--raised); border:1px solid var(--border); border-radius:var(--r-card);
  padding:6px; width:220px; max-height:340px; overflow-y:auto; box-shadow:0 16px 40px rgba(0,0,0,.28); }
.lang-menu a{ display:block; padding:8px 12px; border-radius:var(--r-ctl); font-size:15px; color:var(--txt-dim); }
.lang-menu a:hover{ background:var(--surface2); color:var(--txt); }
@media (max-width:1700px){ .navlinks a{ padding:7px 8px; font-size:14.5px; } .brand{ font-size:16px; } }
header.nav-wrap .topbar-inner{ flex-wrap:wrap; }
header.nav-wrap nav.topnav{ display:contents; }
header.nav-wrap .navlinks{ order:3; flex:1 0 100%; overflow-x:auto; margin:2px -4px 0; padding:0 4px 2px; scrollbar-width:none; }
header.nav-wrap .navlinks::-webkit-scrollbar{ display:none; }
header.nav-wrap .kofi-btn, header.nav-wrap .lang-switch{ order:2; }
@media (max-width:900px){ .topbar-inner{ padding:10px 20px; } }
@media (max-width:620px){ .brand{ font-size:0; gap:0; } .brand-mark{ width:34px; height:34px; } }
@media (max-width:520px){ .brand{ font-size:0; } .kofi-btn{ padding:0 11px; } .kofi-btn span{ display:none; } .kofi-btn{ width:36px; justify-content:center; padding:0; } }

/* ---------- buttons ---------- */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:0 24px; border-radius:var(--r-ctl);
  font-family:var(--font); font-size:16px; font-weight:600; cursor:pointer; border:1px solid transparent; transition:background .15s,border-color .15s,transform .1s; }
.btn:active{ transform:scale(.98); }
.btn-primary{ background:var(--accent); color:var(--on-accent); }
.btn-primary:hover{ background:var(--accent-hover); }
.btn-ghost{ background:var(--surface); color:var(--txt); border-color:var(--border); }
.btn-ghost:hover{ background:var(--surface2); }

/* ---------- hero ---------- */
.hero{ padding:56px 0 8px; display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.hero h1{ font-size:clamp(36px,4.3vw,56px); line-height:1.08; letter-spacing:-.025em; margin-bottom:20px; max-width:15ch; }
.hero .lead{ font-size:19px; line-height:1.6; max-width:46ch; margin-bottom:30px; }
.cta-row{ display:flex; gap:12px; flex-wrap:wrap; }
.shot-tabs-wrap{ display:flex; justify-content:center; width:100%; margin-bottom:14px; }
.shot-tabs{ display:flex; width:100%; max-width:none; gap:4px; background:var(--surface2); padding:4px; border-radius:var(--r-ctl); border:1px solid var(--border-soft); box-shadow:0 2px 8px rgba(0,0,0,.08); }
.shot-tab{ flex:1; justify-content:center; text-align:center; border:none; background:transparent; color:var(--txt-dim); padding:8px 14px; font-size:14.5px; font-weight:600; border-radius:calc(var(--r-ctl) - 2px); cursor:pointer; transition:all .15s ease; display:inline-flex; align-items:center; gap:8px; font-family:inherit; white-space:nowrap; }
.shot-tab:hover{ color:var(--txt); background:color-mix(in srgb,var(--raised) 60%,transparent); }
.shot-tab.active{ background:var(--raised); color:var(--txt); box-shadow:0 1px 4px rgba(0,0,0,.2); }
html.neon .shot-tab.active{ box-shadow:0 0 14px rgba(0,240,255,.35); color:#00F0FF; background:rgba(0,240,255,.1); }
.monitor{ border-radius:var(--r-card); box-shadow:0 0 0 1px color-mix(in srgb,var(--txt) 12%,transparent),0 24px 48px -16px rgba(0,0,0,.4); overflow:hidden; background:var(--surface); }
.monitor img{ display:block; width:100%; }
.stat-strip{ display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin:44px 0 0; }
.stat{ background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--r-card); padding:18px 20px; }
.stat .num{ font-family:var(--display); font-size:17px; font-weight:600; color:var(--txt); }
.stat .lbl{ font-size:15px; color:var(--txt-dim); margin-top:4px; line-height:1.45; }

/* ---------- sections ---------- */
section{ padding:76px 0; }
.section-head{ max-width:780px; margin-bottom:36px; }
.section-head .kicker{ display:flex; align-items:center; gap:10px; font-size:15px; font-weight:600; color:var(--accent); margin-bottom:12px; }
.section-head .kicker::before{ content:''; width:3px; height:16px; border-radius:2px; background:var(--accent); flex:none; }
.section-head h2{ font-size:clamp(28px,3.1vw,38px); margin-bottom:14px; }
.section-head p{ font-size:18px; max-width:64ch; }
.tag{ display:inline-block; font-size:12.5px; font-weight:600; letter-spacing:.05em; text-transform:uppercase; padding:4px 10px; border-radius:4px;
  background:var(--surface2); color:var(--txt-dim); margin-bottom:12px; }

/* ---------- comparison slider ---------- */
.led{ width:8px; height:8px; border-radius:50%; flex:none; background:#fff; }
.cs-frame{ position:relative; width:100%; aspect-ratio:16/9; border-radius:var(--r-card); overflow:hidden; background:#000; cursor:ew-resize; touch-action:none; user-select:none;
  box-shadow:0 0 0 1px var(--border),0 20px 44px -18px rgba(0,0,0,.4); }
.cs-img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; pointer-events:none; }
.cs-after-wrap{ position:absolute; inset:0; clip-path:inset(0 0 0 62%); }
.cs-after-wrap .cs-img{ position:absolute; inset:0; }
.cs-tag{ position:absolute; top:16px; display:flex; align-items:center; gap:8px; padding:7px 13px; border-radius:var(--r-ctl); background:rgba(14,14,13,.78);
  backdrop-filter:blur(8px); font-size:12.5px; font-weight:600; letter-spacing:.05em; text-transform:uppercase; color:#fff; pointer-events:none; }
.cs-tag:has(.led-bad){ background:#C93B3B; } .cs-tag:has(.led-mid){ background:#B7791F; } .cs-tag:has(.led-good){ background:#1E8E58; }
.cs-tag-left{ left:16px; } .cs-tag-right{ right:16px; }
.cs-handle{ position:absolute; top:0; bottom:0; left:62%; width:0; transform:translateX(-50%); pointer-events:none; }
.cs-handle-line{ position:absolute; top:0; bottom:0; left:50%; width:2px; background:#fff; transform:translateX(-50%); box-shadow:0 0 0 1px rgba(0,0,0,.25); }
.cs-handle-grip{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:42px; height:42px; border-radius:50%; background:#fff; color:#111;
  display:flex; align-items:center; justify-content:center; font-size:16px; box-shadow:0 6px 18px rgba(0,0,0,.35); }
.cs-controls{ display:flex; justify-content:center; align-items:center; gap:16px 40px; margin-top:20px; flex-wrap:wrap; width:100%; }
.cs-picker{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.cs-picker-lbl{ font-size:14.5px; font-weight:600; color:var(--txt-dim); white-space:nowrap; }
.chip-group{ display:inline-flex; flex-wrap:wrap; gap:2px; padding:3px; background:var(--surface2); border:1px solid var(--border-soft); border-radius:var(--r-card); }
.chip{ padding:7px 14px; border-radius:var(--r-ctl); border:0; background:transparent; color:var(--txt-dim); font-family:var(--font); font-size:15px; cursor:pointer; transition:background .15s,color .15s; }
.chip:hover{ color:var(--txt); background:color-mix(in srgb,var(--raised) 60%,transparent); }
.chip.active{ background:var(--raised); color:var(--txt); font-weight:600; box-shadow:0 1px 3px rgba(0,0,0,.14),inset 0 -2px 0 var(--accent); }
@media (max-width:620px){ .cs-tag{ font-size:11px; padding:5px 9px; top:10px; } .cs-tag-left{ left:10px; } .cs-tag-right{ right:10px; } .cs-handle-grip{ width:34px; height:34px; } }

/* ---------- backends ---------- */
.chain{ display:flex; flex-direction:column; gap:12px; }
.chain-row{ display:block; }
.chain-src{ display:none; }
.chain-box{ background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--r-card); padding:26px 30px; display:grid; grid-template-columns:1fr 1.7fr; gap:32px; align-items:center;
  transition:border-color .15s,box-shadow .15s; }
.chain-box:hover{ border-color:var(--border); box-shadow:0 6px 20px -10px rgba(0,0,0,.25); }
.chain-box h3{ font-size:22px; margin-bottom:4px; }
.chain-box p{ font-size:16.5px; margin-bottom:10px; }
.chain-box ul{ margin:0; padding-inline-start:20px; font-size:16px; color:var(--txt-dim); }
.chain-box li{ margin-bottom:4px; }
.chain-row:nth-child(2) .tag{ background:var(--accent-soft); color:var(--accent); }
.chain-row:nth-child(3) .tag{ background:color-mix(in srgb,var(--warn) 18%,transparent); color:#9A6A0B; }
html:not(.light) .chain-row:nth-child(3) .tag{ color:#F5C451; }
@media (max-width:760px){ .chain-box{ grid-template-columns:1fr; gap:14px; padding:22px; } }

/* ---------- controls: Windows-Settings style rows ---------- */
.spec-sheet{ display:flex; flex-direction:column; gap:6px; }
.spec-row{ display:grid; grid-template-columns:260px 1fr; gap:28px; padding:18px 22px; background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--r-card); }
.spec-row h4{ font-size:17px; font-family:var(--font); font-weight:600; color:var(--txt); }
.spec-row p{ font-size:16.5px; }
@media (max-width:760px){ .spec-row{ grid-template-columns:1fr; gap:6px; padding:16px 18px; } }

/* ---------- compare methods showcase ---------- */
#compare{ margin-top:20px; }
.compare-showcase{ display:grid; grid-template-columns:1fr 1.18fr; gap:36px; align-items:center; width:100%; }
.compare-features{ counter-reset:compare-step; display:flex; flex-direction:column; gap:14px; width:100%; }
.compare-card{ counter-increment:compare-step; background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--r-card); padding:20px 22px; display:flex; flex-direction:column; gap:6px;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease; position:relative; }
.compare-card::before{ content:counter(compare-step, decimal-leading-zero); font-family:'JetBrains Mono',ui-monospace,monospace; font-size:12px; font-weight:700; color:var(--accent); letter-spacing:.06em; }
.compare-card:hover{ transform:translateX(4px); border-color:var(--accent); }
[dir="rtl"] .compare-card:hover{ transform:translateX(-4px); }
html.neon .compare-card:hover{ border-color:var(--neon-cyan); box-shadow:0 0 20px rgba(0,240,255,.2); }
.compare-card h4{ font-size:17px; font-weight:600; color:var(--txt); margin:0; }
.compare-card p{ font-size:14.5px; color:var(--txt-dim); line-height:1.55; margin:0; }
.compare-window{ width:100%; border-radius:var(--r-card); border:1px solid var(--border-soft); background:var(--surface);
  box-shadow:0 0 0 1px rgba(0,0,0,.15),0 24px 48px -16px rgba(0,0,0,.45); overflow:hidden; transition:box-shadow .25s ease,border-color .25s ease; }
html.light .compare-window{ box-shadow:0 0 0 1px rgba(0,0,0,.08),0 20px 40px -12px rgba(0,0,0,.15); }
html.neon .compare-window{ box-shadow:0 0 0 1px rgba(0,240,255,.4),0 24px 60px -10px rgba(176,38,255,.4); border-color:rgba(0,240,255,.45); }
.compare-shot{ display:block; width:100%; height:auto; }
@media (max-width:920px){
  .compare-showcase{ grid-template-columns:1fr; gap:24px; }
  .compare-window{ order:-1; max-width:640px; margin:0 auto; }
  .compare-card:hover{ transform:none; }
}

/* ---------- download ---------- */
.download-head{ display:flex; align-items:center; gap:20px; max-width:none; margin-bottom:0; }
.download-mark{ width:64px; height:64px; flex:none; }
.grid2{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:28px; }
.dl-card{ background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--r-card); padding:30px; }
.dl-card .tag{ background:var(--accent-soft); color:var(--accent); }
.dl-card h3{ font-size:22px; margin:0 0 8px; }
.dl-card p{ font-size:16.5px; margin-bottom:20px; }
.fine{ margin-top:14px; font-size:14.5px; color:var(--txt-faint); }
@media (max-width:760px){ .grid2{ grid-template-columns:1fr; } .download-head{ gap:14px; } .download-mark{ width:48px; height:48px; } }

/* ---------- docs ---------- */
.docs-wrap{ display:grid; grid-template-columns:210px 1fr; gap:40px; align-items:start; }
.docs-nav{ position:sticky; top:92px; display:flex; flex-direction:column; gap:2px; }
.docs-nav a{ font-size:15.5px; color:var(--txt-dim); padding:8px 12px; border-radius:var(--r-ctl); transition:background .15s,color .15s; }
.docs-nav a:hover{ background:var(--surface2); color:var(--txt); }
.docs-wrap > *{ min-width:0; }
.doc-block{ margin-bottom:48px; }
.doc-block:last-child{ margin-bottom:0; }
.doc-block h3{ font-size:23px; margin-bottom:6px; }
.doc-block .sub{ font-size:16.5px; margin-bottom:18px; }
.reftable{ width:100%; border-collapse:separate; border-spacing:0; font-size:15.5px; border:1px solid var(--border-soft); border-radius:var(--r-card); overflow:hidden; background:var(--surface); }
.reftable th{ text-align:start; font-weight:600; font-size:14.5px; color:var(--txt-dim); padding:11px 16px; background:var(--surface2); border-bottom:1px solid var(--border-soft); }
.reftable td{ padding:12px 16px; border-bottom:1px solid var(--border-soft); color:var(--txt-dim); vertical-align:top; }
.reftable tr:last-child td{ border-bottom:none; }
.reftable tr:hover td{ background:color-mix(in srgb,var(--surface2) 55%,transparent); }
code{ background:var(--surface2); padding:1px 6px; border-radius:4px; font-size:.9em; }
pre{ position:relative; margin:0; background:#0C0C0C; border:1px solid #2B2B2B; border-radius:var(--r-card); overflow:hidden; font-size:14.5px; }
pre::before{ content:'Terminal'; display:block; height:34px; line-height:34px; padding:0 14px; background:#1F1F1F; color:#9A9A9A; font-family:var(--font); font-size:12.5px; border-bottom:1px solid #2B2B2B; }
pre code{ display:block; padding:16px 18px 18px; color:#CCCCCC; background:none; white-space:pre-wrap; font-size:inherit; }
.term-dots{ position:absolute; top:0; right:0; display:flex; height:34px; }
.term-dots span{ width:44px; height:34px; display:flex; align-items:center; justify-content:center; color:#9A9A9A; font-size:12px; font-family:var(--font); }
.term-dots span:nth-child(1)::before{ content:'\2014'; } .term-dots span:nth-child(2)::before{ content:'\25A1'; } .term-dots span:nth-child(3)::before{ content:'\2715'; }
.term-dots span:nth-child(3):hover{ background:#C42B1C; color:#fff; }
.note{ margin-top:16px; padding:14px 18px; border-radius:var(--r-card); background:var(--accent-soft); border:1px solid color-mix(in srgb,var(--accent) 28%,transparent); font-size:15.5px; color:var(--txt-dim); }
ol.steps{ margin:0; padding-inline-start:24px; font-size:16.5px; color:var(--txt-dim); }
ol.steps li{ margin-bottom:14px; padding-inline-start:4px; }
ol.steps li::marker{ color:var(--accent); font-weight:700; }
ol.steps strong{ color:var(--txt); }
.doc-list{ color:var(--txt-dim); font-size:16.5px; padding-inline-start:20px; margin:0; }
@media (max-width:880px){ .docs-wrap{ grid-template-columns:minmax(0,1fr); gap:20px; } .docs-nav{ position:static; flex-direction:row; flex-wrap:wrap; } .reftable{ display:block; overflow-x:auto; } }

footer{ padding:44px 0 40px; border-top:1px solid var(--border-soft); background:color-mix(in srgb,var(--surface) 45%,transparent); }
.footer-inner{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.footer-inner p{ font-size:15px; color:var(--txt-faint); }
.footer-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:32px; flex-wrap:wrap; padding-bottom:28px; border-bottom:1px solid var(--border-soft); }
.footer-brand-col{ max-width:440px; }
.footer-brand{ display:inline-flex; align-items:center; gap:10px; font-family:var(--display); font-weight:600; font-size:17px; color:var(--txt); margin-bottom:10px; }
.footer-brand img{ width:28px; height:28px; display:block; }
.footer-desc{ font-size:14.5px; color:var(--txt-dim); line-height:1.55; margin:0; }
.footer-nav-cols{ display:flex; gap:48px; flex-wrap:wrap; }
.footer-col{ display:flex; flex-direction:column; gap:8px; }
.footer-col h4{ font-size:13px; font-weight:600; text-transform:uppercase; letter-spacing:.05em; color:var(--txt); margin:0 0 4px; }
.footer-col a{ font-size:14.5px; color:var(--txt-dim); transition:color .15s; }
.footer-col a:hover{ color:var(--txt); }
.footer-bottom{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding-top:24px; }
.footer-meta{ display:flex; flex-direction:column; gap:6px; }
.footer-copy{ font-size:14px; color:var(--txt-faint); margin:0; }
.footer-legal{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; font-size:13.5px; color:var(--txt-faint); }
.footer-legal a{ color:var(--txt-dim); transition:color .15s; }
.footer-legal a:hover{ color:var(--txt); text-decoration:underline; }
.footer-sep{ color:var(--border); user-select:none; }
.legal-page{ padding:56px 0 72px; max-width:820px; }
.legal-page h1{ font-size:clamp(28px,3.2vw,40px); margin-bottom:10px; }
.legal-page .updated{ font-size:14.5px; color:var(--txt-faint); margin-bottom:32px; }
.legal-block{ background:var(--surface); border:1px solid var(--border-soft); border-radius:var(--r-card); padding:26px 30px; margin-bottom:18px; }
.legal-block h2{ font-size:20px; margin-bottom:10px; color:var(--txt); }
.legal-block p, .legal-block li{ font-size:15.5px; color:var(--txt-dim); line-height:1.65; }
.legal-block p + p{ margin-top:10px; }
.legal-block ul{ margin:8px 0 0; padding-inline-start:20px; }
.legal-block li{ margin-bottom:6px; }
.legal-block a{ color:var(--accent); text-decoration:underline; }

[data-reveal]{ opacity:0; transform:translateY(10px); transition:opacity .5s ease,transform .5s ease; }
[data-reveal].in{ opacity:1; transform:none; }

/* ---------- small screens ---------- */
@media (max-width:900px){
  .hero{ grid-template-columns:1fr; gap:36px; padding-top:36px; }
  .hero h1{ max-width:none; }
  .stat-strip{ grid-template-columns:1fr 1fr; }
  section{ padding:56px 0; }
  .wrap{ padding:0 20px; }
}
@media (max-width:480px){ .stat-strip{ grid-template-columns:1fr; } .btn{ width:100%; } }

/* ---------- right-to-left languages ---------- */
[dir="rtl"] pre, [dir="rtl"] code{ direction:ltr; unicode-bidi:isolate; }
[dir="rtl"] pre{ text-align:left; }
