@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Inter:wght@400;500;600;700&display=swap");
:root{
  --bg:#0c0d10; --panel:#131519; --panel2:#171a1f; --line:#23272e;
  --ink:#e8eaed; --mut:#9aa1ab; --dim:#6b727d;
  --red:#d33223; --red-dim:#a8271b; --red-ink:#ff5745;
  --ok:#3fae6b; --warn:#d9a441;
  --mono:'SFMono-Regular',ui-monospace,Menlo,Consolas,monospace;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit}
.wrap{max-width:1000px;margin:0 auto;padding:0 24px}
.mono{font-family:var(--mono)}
.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--red-ink);margin-bottom:14px}

/* top bar */
header.top{border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(12,13,16,.9);backdrop-filter:blur(10px) saturate(1.2);z-index:10;box-shadow:0 1px 0 rgba(211,50,35,.12)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-weight:600;letter-spacing:.02em}
.brand .mk{width:16px;height:16px;border:2px solid var(--red);border-radius:2px;position:relative;flex:none}
.brand .mk::after{content:"";position:absolute;inset:3px;background:var(--red)}
.top nav{display:flex;gap:26px;font-size:.9rem}
.top nav a{color:var(--mut);text-decoration:none}
.top nav a:hover{color:var(--ink)}
.cta{display:inline-block;background:var(--red);color:#fff;text-decoration:none;font-weight:600;padding:11px 20px;border-radius:4px;font-size:.95rem;border:1px solid var(--red)}
.cta:hover{background:var(--red-dim)}
.cta.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.cta.ghost:hover{border-color:var(--red);color:#fff}
@media(max-width:640px){.top nav{display:none}}

/* hero */
.hero{padding:96px 0 72px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;top:-40%;right:-10%;width:520px;height:520px;background:radial-gradient(circle,rgba(211,50,35,.14),transparent 68%);pointer-events:none}
.hero h1{font-family:var(--serif);font-size:clamp(2.3rem,5.2vw,3.7rem);line-height:1.04;letter-spacing:-.015em;font-weight:600;max-width:17ch}
.hero p.lede{font-size:1.22rem;color:var(--mut);max-width:56ch;margin-top:22px}
.hero .actions{margin-top:34px;display:flex;gap:14px;flex-wrap:wrap}
.hero .sig{margin-top:30px;font-family:var(--mono);font-size:.82rem;color:var(--dim)}

/* sections */
section{padding:74px 0;border-bottom:1px solid var(--line)}
h2{font-family:var(--serif);font-size:clamp(1.6rem,3.6vw,2.25rem);letter-spacing:-.01em;font-weight:600;max-width:24ch;line-height:1.12}
section>.wrap>p.sub{color:var(--mut);font-size:1.08rem;max-width:60ch;margin-top:14px}
.lead-para{font-size:1.12rem;color:var(--ink);max-width:64ch}
.lead-para+.lead-para{margin-top:18px;color:var(--mut)}

/* two-product cards */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:38px}
@media(max-width:720px){.grid2{grid-template-columns:1fr}}
.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:30px;transition:border-color .18s ease,transform .18s ease}
.card:hover{border-color:var(--line);transform:translateY(-2px)}
.card h3{font-family:var(--serif);font-weight:600;font-size:1.2rem;margin-bottom:6px;letter-spacing:-.005em}
.card .tag{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--red-ink);margin-bottom:14px}
.card p{color:var(--mut);font-size:.98rem}
.card ul{list-style:none;margin-top:14px;font-size:.95rem;color:var(--mut)}
.card ul li{padding:6px 0 6px 20px;position:relative}
.card ul li::before{content:"›";position:absolute;left:0;color:var(--red);font-weight:700}

/* verdict strip */
.verdicts{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.vd{font-family:var(--mono);font-size:.82rem;border:1px solid var(--line);border-radius:4px;padding:9px 14px;background:var(--panel2)}
.vd b{color:var(--ink);font-weight:600}
.vd.g{border-color:rgba(63,174,107,.4)} .vd.g b{color:var(--ok)}
.vd.r{border-color:rgba(211,50,35,.45)} .vd.r b{color:var(--red-ink)}
.vd.y{border-color:rgba(217,164,65,.4)} .vd.y b{color:var(--warn)}

/* the difference / rows */
.rows{margin-top:30px;border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:200px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--line)}
.row .k{font-family:var(--mono);font-size:.8rem;color:var(--red-ink);letter-spacing:.04em;padding-top:2px}
.row .v{color:var(--mut)}
.row .v b{color:var(--ink);font-weight:600}
@media(max-width:640px){.row{grid-template-columns:1fr;gap:6px}}

/* who / chips */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.chip{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:8px 16px;font-size:.9rem;color:var(--mut)}

/* boundary callout */
.callout{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--red);border-radius:6px;padding:24px 26px;margin-top:28px}
.callout p{color:var(--mut)}
.callout b{color:var(--ink)}

/* service area */
.area{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:720px){.area{grid-template-columns:1fr}}
.area .blk{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:22px}
.area .blk h4{font-family:var(--mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red-ink);margin-bottom:10px}
.area .blk p{color:var(--mut);font-size:.95rem}

/* founder */
.founder{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:34px;margin-top:8px}
.founder p{color:var(--mut);max-width:64ch}
.founder p+p{margin-top:14px}
.founder .name{font-family:var(--mono);color:var(--ink);margin-top:18px;font-size:.9rem}

/* final CTA */
.close{text-align:center;padding:88px 0}
.close h2{font-family:var(--serif);font-weight:600;margin:0 auto;max-width:20ch}
.close p{color:var(--mut);max-width:52ch;margin:16px auto 30px;font-size:1.08rem}
.close .email{font-family:var(--mono);color:var(--red-ink);font-size:1.05rem;display:inline-block;margin-top:22px}

footer{padding:40px 0;color:var(--dim);font-size:.85rem}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
footer a{color:var(--mut);text-decoration:none}
footer a:hover{color:var(--ink)}

/* data sources */
.sources{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:32px}
@media(max-width:720px){.sources{grid-template-columns:1fr}}
.src{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:24px}
.src h4{font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--red-ink);margin-bottom:14px}
.src ul{list-style:none}
.src ul li{padding:7px 0 7px 20px;position:relative;color:var(--mut);font-size:.95rem;border-top:1px solid var(--line)}
.src ul li:first-child{border-top:none}
.src ul li::before{content:"";position:absolute;left:2px;top:15px;width:6px;height:6px;background:var(--red);border-radius:1px}
.src ul li b{color:var(--ink);font-weight:600}
.prov{margin-top:26px;color:var(--mut);font-size:1.02rem;max-width:64ch}
.prov b{color:var(--ink)}

/* insights / articles */
.insights-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}
@media(max-width:720px){.insights-grid{grid-template-columns:1fr}}
.icard{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:26px;display:block;text-decoration:none;transition:border-color .18s ease,transform .18s ease}
.icard:hover{border-color:var(--red);transform:translateY(-2px)}
.icard .k{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red-ink);margin-bottom:12px}
.icard h3{font-family:var(--serif);font-weight:600;font-size:1.18rem;margin-bottom:8px;color:var(--ink);letter-spacing:-.005em}
.icard p{color:var(--mut);font-size:.95rem}
.soon{opacity:.5;pointer-events:none}
.article{max-width:70ch;margin:0 auto}
.article .eyebrow{margin-bottom:10px}
.article h1{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,4.2vw,2.7rem);line-height:1.06;letter-spacing:-.015em;margin-bottom:16px}
.article .dek{font-size:1.15rem;color:var(--mut);margin-bottom:10px}
.article .meta{font-family:var(--mono);font-size:.78rem;color:var(--dim);margin-bottom:34px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.article h2{font-family:var(--serif);font-weight:600;font-size:1.5rem;margin:36px 0 12px;max-width:none;letter-spacing:-.005em;line-height:1.15}
.article p{color:var(--mut);margin-bottom:16px;font-size:1.04rem}
.article p strong{color:var(--ink)}
.article ol,.article ul{color:var(--mut);margin:0 0 18px 22px;font-size:1.04rem}
.article li{margin-bottom:12px}
.article li strong{color:var(--ink)}
.article .backlink{font-family:var(--mono);font-size:.82rem;color:var(--mut);text-decoration:none;display:inline-block;margin-bottom:30px}
.article .backlink:hover{color:var(--red-ink)}
.article .endcta{margin-top:40px;padding:26px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--red);border-radius:6px}
.article .endcta p{margin-bottom:14px;color:var(--ink)}

/* insight card glyphs */
.icard .glyph{display:block;width:26px;height:26px;margin-bottom:14px}
.icard .glyph rect,.icard .glyph line,.icard .glyph path,.icard .glyph circle,.icard .glyph polyline{vector-effect:non-scaling-stroke}
.article-glyph{width:32px;height:32px;margin-bottom:16px;display:block}

/* locations */
.loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}
@media(max-width:820px){.loc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.loc-grid{grid-template-columns:1fr}}
.loc{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:18px 20px;text-decoration:none;display:block;transition:border-color .15s}
.loc:hover{border-color:var(--red)}
.loc .cty{color:var(--ink);font-weight:600;font-size:1.02rem}
.loc .st{font-family:var(--mono);font-size:.72rem;color:var(--red-ink);letter-spacing:.08em}
.loc-hero p.lede{max-width:60ch}

/* related reading */
.related{margin-top:40px;border-top:1px solid var(--line);padding-top:24px}
.related .rk{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--red-ink);margin-bottom:14px}
.related a{display:block;color:var(--mut);text-decoration:none;padding:9px 0 9px 18px;position:relative;border-top:1px solid var(--line);font-size:1rem}
.related a:first-of-type{border-top:none}
.related a:hover{color:var(--ink)}
.related a::before{content:"›";position:absolute;left:0;color:var(--red)}
