:root{
  --ink:#111111;
  --paper:#f7f5ef;
  --paper-2:#efeae0;
  --line:#111111;
  --mut:#5c574d;
  --err:#b23a2e;
  --ok:#2f6b4f;
  --maxw:1120px;
  --nav-h:60px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"Source Serif 4",Georgia,serif;
  font-size:18px;
  line-height:1.6;
  padding-top:var(--nav-h);
  overflow-x:hidden;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
}
img{max-width:100%;display:block;}
code{
  font-family:"JetBrains Mono",monospace;font-size:.82em;
  background:#e7e2d6;padding:.1em .4em;
}

/* Skip link */
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.6em 1em;z-index:200;}
.skip:focus{left:8px;top:8px;}

/* Focus visible */
:focus-visible{outline:3px solid var(--err);outline-offset:3px;}

/* ─── NAV ─── */
.nav{
  position:fixed;top:0;left:0;right:0;height:var(--nav-h);
  background:var(--paper);
  border-bottom:4px solid var(--line);
  z-index:100;
}
.nav__inner{
  max-width:var(--maxw);margin:0 auto;height:100%;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 18px;gap:12px;
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);}
.brand__mark{
  font-family:"JetBrains Mono",monospace;font-weight:700;
  background:var(--ink);color:var(--paper);
  width:34px;height:34px;display:grid;place-items:center;font-size:14px;
  transition:background .15s,color .15s;
}
.brand:hover .brand__mark{background:var(--err);}
.brand__txt{font-family:"JetBrains Mono",monospace;font-weight:700;font-size:13px;letter-spacing:.04em;}

.nav__toggle{
  display:none;border:3px solid var(--line);background:var(--paper);
  font-family:"JetBrains Mono",monospace;font-weight:700;font-size:13px;
  height:44px;padding:0 14px;cursor:pointer;color:var(--ink);
  transition:background .1s,color .1s;
}
.nav__toggle:hover,.nav__toggle:active{background:var(--ink);color:var(--paper);}

.nav__menu{display:flex;align-items:center;gap:22px;}
.nav__menu a{
  text-decoration:none;color:var(--ink);
  font-family:"JetBrains Mono",monospace;font-weight:500;font-size:13px;letter-spacing:.03em;
  padding:.4em 0;border-bottom:2px solid transparent;
  transition:border-color .15s;
}
.nav__menu a:hover{border-bottom-color:var(--ink);}
.nav__cta{
  border:3px solid var(--line)!important;padding:.55em .9em!important;font-weight:700!important;
  transition:background .1s,color .1s!important;
}
.nav__cta:hover,.nav__cta:active{background:var(--ink)!important;color:var(--paper)!important;}

/* ─── STATUS DOT ─── */
.status-dot{
  display:inline-block;width:8px;height:8px;
  background:var(--err);border-radius:50%;
  flex:0 0 auto;
  animation:blink 2s ease infinite;
}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:.2;}}

/* ─── HERO ─── */
.hero{
  max-width:var(--maxw);margin:0 auto;
  display:grid;grid-template-columns:1.1fr .9fr;gap:48px;
  align-items:center;padding:64px 18px 80px;
  position:relative;
}

.eyebrow{
  font-family:"JetBrains Mono",monospace;font-weight:700;font-size:13px;
  letter-spacing:.12em;color:var(--mut);margin:0 0 16px;
  display:flex;align-items:center;gap:9px;
}
.hero__title{
  font-family:"Playfair Display",serif;font-weight:800;
  font-size:clamp(3.2rem,11vw,6.5rem);line-height:.9;margin:0 0 24px;
}
.hero__title span{display:block;}
.hero__title span:first-child{color:var(--err);}
.hero__sub{font-size:1.1rem;max-width:46ch;color:#2a261d;margin:0 0 30px;line-height:1.65;}
.hero__actions{display:flex;flex-wrap:wrap;gap:14px;}

/* ─── BUTTONS ─── */
.btn{
  font-family:"JetBrains Mono",monospace;font-weight:700;font-size:14px;
  text-decoration:none;padding:.85em 1.35em;border:3px solid var(--line);
  display:inline-block;min-height:44px;line-height:1.3;cursor:pointer;
  transition:box-shadow .12s,transform .12s;
}
.btn--solid{background:var(--ink);color:var(--paper);}
.btn--solid:hover{box-shadow:4px 4px 0 #555;transform:translate(-2px,-2px);}
.btn--solid:active{box-shadow:none;transform:translate(0,0);background:var(--paper);color:var(--ink);}

.btn--ghost{background:var(--paper);color:var(--ink);}
.btn--ghost:hover{box-shadow:4px 4px 0 var(--ink);transform:translate(-2px,-2px);}
.btn--ghost:active{box-shadow:none;transform:translate(0,0);background:var(--ink);color:var(--paper);}

/* Inverted button used inside dark CTA band */
.btn--invert{background:var(--paper);color:var(--ink);border-color:var(--paper);}
.btn--invert:hover{box-shadow:4px 4px 0 rgba(247,245,239,.35);transform:translate(-2px,-2px);}
.btn--invert:active{box-shadow:none;transform:translate(0,0);}

/* ─── TERMINAL PANEL ─── */
.hero__panel{
  border:4px solid var(--line);
  background:#fff;
  box-shadow:8px 8px 0 var(--line);
}
.termbar{
  display:flex;align-items:center;gap:8px;padding:10px 14px;
  border-bottom:3px solid var(--line);background:#e9e4d8;
}
.termbar__dot{width:12px;height:12px;border:2px solid var(--line);display:inline-block;}
.termbar__title{
  margin-left:8px;font-family:"JetBrains Mono",monospace;font-size:12px;font-weight:700;
}
.term{
  margin:0;padding:18px 16px;font-family:"JetBrains Mono",monospace;
  font-size:13px;line-height:1.75;overflow-x:auto;color:var(--ink);
}
.c-err{color:var(--err);font-weight:700;}
.c-dim{color:var(--mut);}
.c-mut{color:#9a9486;}

/* ─── DIVIDERS + SECTION WRAPPERS ─── */
.rule{height:4px;background:var(--line);}
.block{max-width:var(--maxw);margin:0 auto;padding:68px 18px;}
.block--alt{background:var(--paper-2);max-width:none;}
.block--alt > *{max-width:var(--maxw);margin-left:auto;margin-right:auto;}

.block__head{display:flex;align-items:baseline;gap:18px;margin-bottom:36px;}
.kicker{
  font-family:"JetBrains Mono",monospace;font-weight:700;font-size:13px;
  color:var(--mut);margin:0;letter-spacing:.06em;
}
.block__head h2{
  font-family:"Playfair Display",serif;font-weight:800;
  font-size:clamp(2rem,6vw,3.2rem);line-height:1;margin:0;
}
.block__intro{font-size:1.1rem;margin:0 0 28px;max-width:60ch;}

/* ─── 3-CARD GRID ─── */
.grid{display:grid;gap:0;border:4px solid var(--line);}
.grid--3{grid-template-columns:repeat(3,1fr);}
.card{
  padding:28px 26px;border-right:4px solid var(--line);background:#fff;
  transition:transform .15s ease;
  position:relative;
}
.card:last-child{border-right:0;}
.card:hover{transform:translateY(-4px);z-index:1;}
.card h3{
  font-family:"Playfair Display",serif;font-weight:600;font-size:1.4rem;margin:0 0 10px;
}
.card p{margin:0;color:#2a261d;max-width:34ch;}

/* ─── TRUTH SECTION ─── */
.truth{max-width:72ch;}
.truth__lead{
  font-family:"Playfair Display",serif;font-size:clamp(1.35rem,3.8vw,1.9rem);
  line-height:1.35;font-weight:600;margin:0 0 24px;
  border-left:6px solid var(--ink);padding-left:22px;
}
.truth p{margin:0 0 18px;max-width:65ch;}
.checklist{list-style:none;padding:0;margin:28px 0 0;border-top:4px solid var(--line);}
.checklist li{
  display:flex;align-items:center;gap:14px;padding:16px 4px;
  border-bottom:2px solid var(--line);
  font-family:"JetBrains Mono",monospace;font-size:14px;font-weight:500;
}
.tick{
  font-weight:700;width:30px;height:30px;display:grid;place-items:center;
  border:3px solid var(--line);flex:0 0 auto;
}
.checklist li:last-child .tick{color:var(--ok);}
.checklist li:not(:last-child) .tick{color:var(--err);}

/* ─── OPTIONS LIST ─── */
.options{list-style:none;padding:0;margin:0;border:4px solid var(--line);}
.opt{
  display:flex;gap:0;border-bottom:4px solid var(--line);background:#fff;
  transition:background .1s;
}
.opt:last-child{border-bottom:0;}
.opt:hover{background:#fdfcf9;}
.opt__num{
  flex:0 0 80px;display:grid;place-items:center;
  background:var(--ink);color:var(--paper);
  font-family:"Playfair Display",serif;font-weight:800;font-size:2rem;
  border-right:4px solid var(--line);
  transition:background .1s;
}
.opt:hover .opt__num{background:#222;}
.opt__body{padding:24px 26px;}
.opt__body h3{
  font-family:"Playfair Display",serif;font-weight:600;font-size:1.45rem;margin:0 0 8px;
}
.opt__body p{margin:0;color:#2a261d;max-width:62ch;}

/* ─── CTA BAND ─── */
.cta-band{
  margin-top:38px;border:4px solid var(--line);background:var(--ink);color:var(--paper);
  padding:36px 32px;display:flex;flex-direction:column;gap:22px;align-items:flex-start;
}
.cta-band p{margin:0;max-width:58ch;font-size:1.08rem;}

/* ─── FOOTER ─── */
.footer{border-top:4px solid var(--line);background:var(--paper);}
.footer__inner{
  max-width:var(--maxw);margin:0 auto;padding:26px 18px;
  display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;align-items:center;
  font-family:"JetBrains Mono",monospace;font-size:12px;font-weight:500;
}
.footer__note{color:var(--mut);}

/* ─── SCROLL ANIMATION ─── */
[data-anim]{opacity:0;transform:translateY(16px);transition:opacity .55s ease,transform .55s ease;}
[data-anim].in{opacity:1;transform:none;}

/* ─── RESPONSIVE: 880px ─── */
@media(max-width:880px){
  .hero{
    grid-template-columns:1fr;gap:40px;
    padding:44px 18px 60px;
  }
  .hero__panel{box-shadow:5px 5px 0 var(--line);}
  .grid--3{grid-template-columns:1fr;}
  .card{border-right:0;border-bottom:4px solid var(--line);}
  .card:last-child{border-bottom:0;}
}

/* ─── RESPONSIVE: 680px ─── */
@media(max-width:680px){
  .nav__toggle{display:inline-block;}
  .nav__menu{
    position:absolute;top:var(--nav-h);left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:var(--paper);border-bottom:4px solid var(--line);
    padding:8px 18px 16px;display:none;
  }
  .nav__menu.open{display:flex;}
  .nav__menu a{padding:14px 0;border-bottom:2px solid #d8d2c4;}
  .nav__menu a:last-child{border-bottom:0;}
  .nav__cta{margin-top:8px;text-align:center;}

  body{font-size:17px;}
  .hero__panel{box-shadow:none;}
  .btn:hover{box-shadow:none;transform:none;}
  .card:hover{transform:none;}

  .opt{flex-direction:column;}
  .opt__num{
    flex:none;height:56px;width:100%;
    border-right:0;border-bottom:4px solid var(--line);
    font-size:1.75rem;
  }
  .opt__body{padding:20px 22px;}
  .cta-band{padding:28px 22px;}
}

/* ─── REDUCED MOTION ─── */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  [data-anim]{opacity:1;transform:none;transition:none;}
  .status-dot{animation:none;}
  .btn{transition:none;}
  .card{transition:none;}
  .opt,.opt__num{transition:none;}
}