:root {
  --paper: #f4efe7;
  --ink: #111111;
  --muted: #6d675f;
  --accent: #ff4b24;
  --line: #171717;
  --white: #fffdf8;
  --soft: #e6ded4;
  --max: 1180px;
  --shadow: 8px 8px 0 #111111;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
}

a { color: inherit; }
img { max-width: 100%; }
button, input { font: inherit; }

.wrap { width: min(calc(100% - 32px), var(--max)); margin-inline: auto; }
.site-header { position: sticky; top: 0; z-index: 20; background: rgba(244,239,231,.96); border-bottom: 3px solid var(--line); backdrop-filter: blur(10px); }
.header-inner { min-height: 74px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { text-decoration:none; font-family:Impact,"Arial Narrow","Helvetica Neue",sans-serif; font-size:clamp(1.45rem,3vw,2.15rem); letter-spacing:.015em; line-height:1; padding-top:.08em; text-transform:uppercase; }
.brand-dot { color:var(--accent); }
.nav { display:flex; gap:20px; align-items:center; flex-wrap:wrap; }
.nav a { text-decoration:none; font-weight:850; text-transform:uppercase; font-size:.8rem; letter-spacing:.08em; }
.nav a:hover { color:var(--accent); }
.hero { padding:clamp(54px,9vw,110px) 0 58px; border-bottom:3px solid var(--line); overflow:hidden; }
.eyebrow { display:inline-block; padding:7px 10px; background:var(--ink); color:var(--paper); font-weight:900; font-size:.76rem; text-transform:uppercase; letter-spacing:.11em; transform:rotate(-1deg); }
.display { margin:18px 0 14px; max-width:980px; font-family:Impact,"Arial Narrow","Helvetica Neue",sans-serif; font-size:clamp(3.6rem,11vw,9.8rem); line-height:.96; padding-top:.12em; letter-spacing:-.025em; text-transform:uppercase; }
.display .accent { color:var(--accent); }
.hero-copy { max-width:700px; margin:0 0 28px; font-size:clamp(1.1rem,2vw,1.35rem); font-weight:700; }
.search-shell { display:grid; grid-template-columns:1fr auto; max-width:760px; border:3px solid var(--line); background:var(--white); box-shadow:var(--shadow); }
.search-shell input { border:0; min-width:0; padding:18px; background:transparent; color:var(--ink); outline:none; font-weight:750; }
.search-shell button { border:0; border-left:3px solid var(--line); background:var(--accent); color:var(--ink); padding:0 22px; font-weight:950; text-transform:uppercase; cursor:pointer; }
.section { padding:64px 0; }
.section-dark { background:var(--ink); color:var(--paper); }
.section-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:26px; }
.kicker { margin:0 0 4px; color:var(--accent); font-weight:950; text-transform:uppercase; letter-spacing:.1em; font-size:.76rem; }
.h2 { margin:0; font-family:Impact,"Arial Narrow","Helvetica Neue",sans-serif; font-size:clamp(2.3rem,5vw,4.8rem); line-height:1.04; padding-top:.1em; text-transform:uppercase; letter-spacing:-.015em; }
.section-link { font-weight:900; text-transform:uppercase; font-size:.8rem; }
.card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.card { display:flex; flex-direction:column; min-height:250px; border:3px solid var(--line); background:var(--white); padding:22px; text-decoration:none; transition:transform .16s ease,box-shadow .16s ease; }
.card:hover { transform:translate(-3px,-3px); box-shadow:var(--shadow); }
.card-tag { margin-bottom:34px; font-size:.72rem; font-weight:950; text-transform:uppercase; letter-spacing:.1em; color:var(--accent); }
.card h3 { margin:0 0 10px; font-size:1.35rem; line-height:1.16; padding-top:.06em; text-transform:uppercase; }
.card p { margin:0; color:var(--muted); font-weight:650; }
.card-answer { margin-top:auto!important; padding-top:22px; color:var(--ink)!important; font-weight:950!important; }
.card-arrow { color:var(--accent); }
.topic-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:28px; }
.topic { border:2px solid currentColor; padding:18px; text-decoration:none; font-weight:900; text-transform:uppercase; transition:background .15s ease,color .15s ease; }
.topic:hover { background:var(--accent); color:var(--ink); }
.promises { display:grid; grid-template-columns:repeat(3,1fr); border:3px solid var(--line); }
.promise { padding:28px; min-height:170px; }
.promise + .promise { border-left:3px solid var(--line); }
.promise .num { color:var(--accent); font-family:Impact,"Arial Narrow",sans-serif; font-size:2.3rem; line-height:1.05; padding-top:.06em; }
.promise strong { display:block; font-family:Impact,"Arial Narrow",sans-serif; font-size:1.6rem; text-transform:uppercase; line-height:1.08; padding-top:.06em; margin:8px 0; }
.page-hero { padding:58px 0 34px; }
.breadcrumbs { font-size:.78rem; text-transform:uppercase; font-weight:900; color:var(--muted); }
.breadcrumbs a { text-decoration:none; }
.page-title { margin:18px 0 16px; max-width:980px; font-family:Impact,"Arial Narrow","Helvetica Neue",sans-serif; font-size:clamp(3.1rem,8vw,7.4rem); line-height:1; padding-top:.12em; text-transform:uppercase; }
.lead { max-width:760px; font-size:1.2rem; font-weight:650; }
.answer-box { margin:26px 0 34px; border:4px solid var(--line); background:var(--accent); box-shadow:var(--shadow); }
.answer-label { display:inline-block; background:var(--ink); color:var(--paper); padding:8px 12px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; font-size:.72rem; }
.answer-text { margin:0; padding:25px; font-size:clamp(1.5rem,3vw,2.4rem); line-height:1.12; font-weight:950; }
.fact-row { display:flex; flex-wrap:wrap; gap:10px; margin:18px 0; }
.fact { border:2px solid var(--line); padding:8px 10px; background:var(--white); font-size:.78rem; font-weight:900; text-transform:uppercase; }
.fact.verified::before { content:"● "; color:#169b52; }
.article-layout { display:grid; grid-template-columns:minmax(0,760px) minmax(220px,1fr); gap:54px; align-items:start; }
.article h2 { margin:46px 0 12px; font-family:Impact,"Arial Narrow",sans-serif; font-size:2.35rem; line-height:1.08; padding-top:.08em; text-transform:uppercase; }
.article p,.article li { font-size:1.04rem; }
.article a { text-decoration-thickness:2px; text-underline-offset:3px; }
.article table { width:100%; border-collapse:collapse; margin:20px 0; background:var(--white); }
.article th,.article td { border:2px solid var(--line); padding:12px; text-align:left; }
.article th { background:var(--ink); color:var(--paper); text-transform:uppercase; font-size:.78rem; }
.side-note { position:sticky; top:100px; border-left:5px solid var(--accent); padding-left:18px; }
.side-note strong { text-transform:uppercase; }
.side-note p { color:var(--muted); }
.source-list { padding-left:20px; }
.updated { color:var(--muted); font-size:.85rem; font-weight:700; }
.empty-state { display:none; border:3px dashed var(--line); padding:24px; margin-top:24px; font-weight:850; }
.site-footer { border-top:3px solid var(--line); padding:34px 0 48px; }
.footer-inner { display:flex; justify-content:space-between; gap:28px; flex-wrap:wrap; }
.footer-copy { color:var(--muted); max-width:520px; }
.footer-links { display:flex; gap:18px; flex-wrap:wrap; font-weight:850; font-size:.82rem; text-transform:uppercase; }
@media(max-width:820px){.header-inner{min-height:64px}.nav a:not(:first-child){display:none}.card-grid{grid-template-columns:1fr}.topic-grid{grid-template-columns:repeat(2,1fr)}.promises{grid-template-columns:1fr}.promise+.promise{border-left:0;border-top:3px solid var(--line)}.article-layout{grid-template-columns:1fr}.side-note{position:static}}
@media(max-width:540px){.wrap{width:min(calc(100% - 22px),var(--max))}.hero{padding-top:42px}.display{font-size:clamp(3.4rem,19vw,6rem);line-height:1}.search-shell{grid-template-columns:1fr;box-shadow:5px 5px 0 var(--ink)}.search-shell button{border-left:0;border-top:3px solid var(--line);padding:12px}.topic-grid{grid-template-columns:1fr}.answer-box{box-shadow:5px 5px 0 var(--ink)}}
