:root { --ink:#14232d; --muted:#586874; --line:#d8e0e5; --bg:#f2f5f7; --teal:#0b6e6e; --red:#b8322a; --rail:#10202a;
  --font:"Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"Cascadia Mono",Consolas,monospace; }
* { box-sizing:border-box; }
body { margin:0; font:17px/1.55 var(--font); color:var(--ink); background:#fff; }
a { color:var(--teal); }
a:focus-visible { outline:2px solid var(--teal); outline-offset:3px; }
.top { display:flex; justify-content:space-between; align-items:center; padding:1rem clamp(1rem,5vw,4rem); }
.brand { display:flex; align-items:center; gap:.55rem; font-weight:650; font-size:1.15rem; color:var(--ink); text-decoration:none; }
.brand span { font-weight:400; color:var(--muted); font-size:.95rem; }
.signin { font-size:.95rem; }
main { padding:0 clamp(1rem,5vw,4rem); max-width:1240px; margin:0 auto; }
.hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); gap:clamp(2rem,5vw,4.5rem); align-items:center; padding:clamp(2rem,6vw,5rem) 0; }
h1 { font-size:clamp(2.1rem,4.6vw,3.6rem); line-height:1.06; letter-spacing:-.025em; margin:0 0 1.25rem; font-weight:700; max-width:14ch; }
h2 { font-size:1.6rem; letter-spacing:-.01em; margin:0 0 1rem; }
h3 { font-size:1.1rem; margin:2rem 0 .25rem; }
.lead { font-size:1.2rem; max-width:52ch; color:#2c3d48; }
.fine { color:var(--muted); font-size:.92rem; }
.button { display:inline-block; background:var(--teal); color:#fff; text-decoration:none; font-weight:650; padding:.8rem 1.4rem; border-radius:8px; }
.button:hover { background:#095b5b; }
/* The hero object is the product's moment: the page a user gets instead of the trap. */
.stopcard { margin:0; }
.stopcard .stopbar { background:var(--red); color:#fff; font-weight:650; padding:.75rem 1.25rem; border-radius:12px 12px 0 0; }
.stopcard .stopbody { border:1px solid var(--line); border-top:0; border-radius:0 0 12px 12px; padding:1.25rem; background:#fff; box-shadow:0 18px 40px -18px rgba(16,32,42,.45); }
.stopcard .addr { font-family:var(--mono); font-size:.95rem; background:var(--bg); padding:.5rem .7rem; border-radius:6px; margin:0 0 1rem; word-break:break-all; }
.stopcard .why { font-weight:650; margin:0 0 .3rem; }
.stopcard ul { margin:0 0 1rem; padding-left:1.1rem; font-size:.97rem; }
.stopcard .safe { margin:0; color:#2b7a4b; font-weight:650; }
.stopcard figcaption { color:var(--muted); font-size:.88rem; margin-top:.7rem; }
.what { padding:2.5rem 0; border-top:1px solid var(--line); }
.what dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1.5rem 2.5rem; margin:0; }
.what dt { font-weight:650; margin-bottom:.2rem; }
.what dd { margin:0; color:#33434e; font-size:.98rem; }
.download { padding:2.5rem 0 3rem; border-top:1px solid var(--line); }
.download > p { max-width:66ch; }
.files { border:1px solid var(--line); border-radius:10px; margin:1rem 0; }
.file { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.1rem 1rem; padding:.8rem 1.1rem; border-bottom:1px solid var(--line); }
.file:last-child { border-bottom:0; }
.file a { font-weight:650; }
.file span { color:var(--muted); font-size:.9rem; text-align:right; }
.file code { grid-column:1/-1; font:.74rem var(--mono); color:var(--muted); word-break:break-all; }
.files > .fine { padding:1rem 1.1rem; margin:0; }
.os { font-weight:650; margin:1rem 0 .2rem; }
pre { background:var(--rail); color:#e6eef2; padding:.85rem 1rem; border-radius:8px; font:.85rem/1.5 var(--mono); overflow-x:auto; margin:0; white-space:pre-wrap; word-break:break-all; }
footer { border-top:1px solid var(--line); padding:1.5rem clamp(1rem,5vw,4rem); color:var(--muted); font-size:.92rem; }
@media (max-width:820px) { .hero { grid-template-columns:1fr; } .file { grid-template-columns:1fr; } .file span { text-align:left; } }
