
:root { --red:#d11212; --navy:#0b1f4d; --blue:#1d4ed8; --ink:#050505; }
* { box-sizing: border-box; }
body { margin:0; background:#fff; color:var(--ink); font-family:Inter,Segoe UI,sans-serif; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }
.tld { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; justify-content:center; background:var(--navy); color:#fff; padding:10px 16px; text-align:center; }
.tld p { margin:0; font-size:14px; }
.gold { background:linear-gradient(110deg,#a16207,#e8b923 40%,#fff6c2 50%,#e8b923 60%,#a16207); color:#111; font-weight:700; padding:6px 10px; border-radius:999px; white-space:nowrap; font-size:12px; }
.demo-link { color:#fff; font-size:12px; font-weight:700; text-decoration:underline; white-space:nowrap; }
header { background:#050505; color:#fff; text-align:center; }
.mast { display:inline-flex; align-items:center; gap:12px; padding-top:16px; }
.mast img { width:72px; height:72px; border-radius:50%; object-fit:cover; box-shadow:0 0 0 2px var(--red); }
.mast span { font-family:"Playfair Display",Georgia,serif; font-size:clamp(32px,6vw,68px); letter-spacing:.04em; }
.mast b { color:var(--red); } .mast i { color:#fff; font-style:normal; } .mast em { color:var(--blue); font-style:normal; }
.tag { max-width:720px; margin:8px auto 0; color:rgba(255,255,255,.75); padding:0 16px 12px; }
nav { display:flex; gap:8px; justify-content:center; flex-wrap:wrap; padding:8px; }
nav a { padding:8px 10px; font-weight:700; text-transform:uppercase; font-size:14px; }
nav a.guest { background:var(--red); }
.sections { border-top:2px solid var(--red); }
.wrap { max-width:1100px; margin:0 auto; padding:32px 16px; }
h1,h2,h3 { font-family:"Playfair Display",Georgia,serif; line-height:1; }
.lead { font-size:clamp(40px,6vw,64px); color:var(--red); }
.cards { display:grid; gap:16px; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); }
.card { border:1px solid #111; background:#fff; }
.card img { width:100%; height:auto; max-height:360px; object-fit:contain; object-position:center center; background:#fff; }
#spot { border:1px solid #111; }
.rail { display:grid; grid-template-columns:1.5fr 1fr; }
.rail .card { border:0; }
.side { max-height:640px; overflow:auto; border-left:1px solid #111; }
.side a { display:grid; grid-template-columns:72px 1fr; gap:8px; align-items:center; padding:8px; border-bottom:1px solid #111; }
.side img { width:72px; height:88px; max-height:88px; object-fit:contain; object-position:center center; background:#fff; }
#spot img, .featured-cards img { width:100%; height:auto; max-height:460px; aspect-ratio:auto; object-fit:contain; object-position:center center; background:#fff; }
@media (max-width:800px) { .rail { grid-template-columns:1fr; } .side { border-left:0; border-top:1px solid #111; } }
.card div { padding:12px; border-top:4px solid var(--red); }
.card p { color:#5c6370; }
.story { max-width:760px; }
.story img.hero { width:100%; max-height:640px; object-fit:contain; object-position:center top; background:#fff; margin:16px 0; }
.keywords a, .keywords span { display:inline-block; margin:4px 6px 0 0; border:1px solid var(--red); color:var(--red); font-weight:700; font-size:12px; letter-spacing:.04em; text-transform:uppercase; padding:4px 8px; }
.story-body a { color:var(--red); font-weight:700; }
.related { margin-top:28px; }
.related a { color:var(--red); font-weight:700; }
.related ul { margin:8px 0 0; padding-left:18px; }
.grid3 { display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); }
.grid3 img { width:100%; height:auto; object-fit:contain; background:#fff; }
.issues { padding:32px 16px; text-align:center; }
.lockup { font-family:"Playfair Display",Georgia,serif; font-size:32px; }
.lockup b { color:var(--red); } .lockup i { color:var(--navy); font-style:normal; } .lockup em { color:var(--blue); font-style:normal; }
.kicker { letter-spacing:.28em; text-transform:uppercase; color:var(--blue); font-weight:700; font-size:13px; }
.demo img { width:min(1100px,100%); margin:0 auto; }
footer { padding:8px 16px 0; text-align:center; }
.partners { display:grid; grid-template-columns:1fr 1fr; gap:24px; max-width:720px; margin:18px auto; text-align:center; }
.partners a { display:block; margin-top:8px; color:#0b1f4d; text-decoration:underline; }
footer .stripe { height:8px; background:linear-gradient(#d11212 0 33%, #fff 33% 66%, #1d4ed8 66%); }
.plans { display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); }
.plan { border:1px solid #e5e7eb; padding:16px; }
label { display:grid; gap:6px; font-weight:700; font-size:14px; margin-top:12px; }
input,textarea,select { font:inherit; padding:10px; border:1px solid #111; }
button,.btn { background:var(--red); color:#fff; border:0; padding:12px 16px; font-weight:800; text-transform:uppercase; cursor:pointer; display:inline-block; }
.dots { display:flex; gap:8px; flex-wrap:wrap; padding:8px 0 16px; }
.dots button { width:10px; height:10px; border-radius:99px; padding:0; background:#ddd; }
.dots button.on { width:32px; background:var(--red); }
