/* RadonZoneReport — Pulp-Paperback Science
   Mid-grey paperback cream · Plus Jakarta Sans + Roboto Mono · safety-orange accent · trefoil iconography */

:root {
  --cream: #f1ead8;
  --cream-deep: #e6dec6;
  --cream-shadow: #d8cfb4;
  --ink: #1f1c17;
  --ink-soft: #3a342a;
  --ink-faint: #6b6354;
  --rule: #c9bf9f;
  --orange: #ec5a1c;
  --orange-deep: #c34614;
  --grey: #58544a;
  --paper-shadow: rgba(31, 28, 23, 0.08);
  --paper-grain: #ebe3cd;
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  background: var(--cream);
  color: var(--ink);
  font-size: 17px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(31,28,23,0.025) 0, transparent 40%),
    radial-gradient(circle at 88% 72%, rgba(31,28,23,0.03) 0, transparent 45%),
    repeating-linear-gradient(0deg, transparent 0, transparent 3px, rgba(31,28,23,0.012) 3px, rgba(31,28,23,0.012) 4px);
}

.wrap {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 28px;
}

a { color: var(--ink); text-decoration: none; }
a:hover { color: var(--orange-deep); }

h1, h2, h3, h4 { font-weight: 700; letter-spacing: -0.01em; }

.serif-h {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 800;
  font-size: 2.1rem;
  line-height: 1.1;
  letter-spacing: -0.025em;
}

/* MASTHEAD */
.masthead {
  border-bottom: 1px solid var(--rule);
  background: var(--cream);
  position: sticky;
  top: 0;
  z-index: 50;
}
.masthead .wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 18px;
  padding-bottom: 18px;
}
.brand { display: flex; align-items: center; gap: 10px; }
.brand-name {
  font-weight: 800;
  font-size: 1.05rem;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.trefoil { width: 28px; height: 28px; color: var(--orange); }
.masthead nav { display: flex; gap: 28px; }
.masthead nav a {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--ink-soft);
}
.masthead nav a:hover { color: var(--orange-deep); }

/* HERO */
.hero {
  padding: 100px 0 80px;
  border-bottom: 1px solid var(--rule);
  position: relative;
  background:
    radial-gradient(circle at 90% 20%, rgba(236,90,28,0.06) 0, transparent 50%),
    var(--cream);
}
.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(90deg, transparent 0, transparent 80px, rgba(31,28,23,0.02) 80px, rgba(31,28,23,0.02) 81px);
  pointer-events: none;
}
.stamp {
  display: inline-block;
  font-family: 'Roboto Mono', monospace;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  color: var(--orange-deep);
  border: 1px solid var(--orange);
  padding: 5px 12px;
  border-radius: 2px;
  margin-bottom: 28px;
  background: rgba(236,90,28,0.04);
}
.hero h1 {
  font-size: clamp(3rem, 7vw, 5.6rem);
  line-height: 0.96;
  letter-spacing: -0.04em;
  margin: 0 0 26px;
  font-weight: 800;
  max-width: 12ch;
}
.hero h1 em {
  font-style: italic;
  color: var(--orange);
  font-weight: 700;
}
.lede {
  font-size: 1.22rem;
  line-height: 1.5;
  max-width: 58ch;
  color: var(--ink-soft);
  margin: 0 0 40px;
}
.cta-row {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
  margin-bottom: 36px;
}
.subnote {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.78rem;
  color: var(--ink-faint);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.btn {
  display: inline-block;
  background: var(--ink);
  color: var(--cream);
  padding: 16px 26px;
  font-weight: 700;
  font-size: 0.98rem;
  letter-spacing: 0.01em;
  border-radius: 2px;
  border: 1px solid var(--ink);
  transition: transform 0.12s ease, background 0.12s ease;
  position: relative;
}
.btn::after {
  content: '';
  position: absolute;
  inset: 3px -4px -4px 3px;
  background: var(--orange);
  z-index: -1;
  border-radius: 2px;
}
.btn:hover { background: var(--orange); color: var(--cream); transform: translate(-1px, -1px); }
.btn.big { padding: 20px 34px; font-size: 1.08rem; }
.kicker {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--ink-faint);
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

/* PITCH */
.pitch { padding: 90px 0; border-bottom: 1px solid var(--rule); }
.two { display: grid; grid-template-columns: 1.4fr 1fr; gap: 70px; align-items: start; }
.pitch p { color: var(--ink-soft); margin-bottom: 22px; max-width: 56ch; }
.ticks {
  list-style: none;
  padding: 0;
  margin: 0;
}
.ticks li {
  padding: 12px 0 12px 32px;
  position: relative;
  border-top: 1px solid var(--rule);
  font-size: 1rem;
  color: var(--ink-soft);
}
.ticks li:last-child { border-bottom: 1px solid var(--rule); }
.ticks li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 18px;
  width: 16px;
  height: 16px;
  background: var(--orange);
  clip-path: polygon(20% 50%, 0% 70%, 40% 100%, 100% 30%, 80% 20%, 40% 70%);
}
.ticks.tight li { padding-top: 9px; padding-bottom: 9px; font-size: 0.95rem; }
.ticks.tight li::before { top: 15px; }
.panel {
  background: var(--cream-deep);
  border: 1px solid var(--rule);
  padding: 36px 34px;
  border-radius: 3px;
  box-shadow: 6px 6px 0 var(--cream-shadow);
  position: relative;
}
.panel::before {
  content: '☢';
  position: absolute;
  top: 18px;
  right: 18px;
  font-size: 1.2rem;
  color: var(--orange);
  opacity: 0.55;
}
.panel-label {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--ink-faint);
  margin-bottom: 18px;
}
.big-num {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 5.2rem;
  font-weight: 800;
  line-height: 1;
  color: var(--orange);
  letter-spacing: -0.04em;
  margin-bottom: 16px;
}
.big-num span {
  font-size: 1.2rem;
  color: var(--ink);
  font-weight: 600;
  margin-left: 6px;
  letter-spacing: 0;
}
.panel p {
  color: var(--ink-soft);
  font-size: 0.96rem;
  margin: 0;
}

/* SAMPLE / DOSSIER */
.sample {
  padding: 90px 0;
  background: linear-gradient(180deg, var(--cream) 0%, var(--cream-deep) 100%);
  border-bottom: 1px solid var(--rule);
}
.section-head { margin-bottom: 50px; max-width: 60ch; }
.section-head .num,
.science .num {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.78rem;
  letter-spacing: 0.2em;
  color: var(--orange-deep);
  display: inline-block;
  margin-bottom: 12px;
  text-transform: uppercase;
}
.section-head p { color: var(--ink-soft); margin: 14px 0 0; font-size: 1.06rem; }

.dossier {
  background: #f7f1de;
  border: 1px solid var(--ink);
  border-radius: 3px;
  box-shadow:
    8px 8px 0 var(--cream-shadow),
    8px 8px 0 1px var(--ink);
  overflow: hidden;
}
.dossier-head {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 30px;
  padding: 36px 40px;
  border-bottom: 1px solid var(--rule);
  background:
    repeating-linear-gradient(90deg, transparent 0, transparent 40px, rgba(31,28,23,0.03) 40px, rgba(31,28,23,0.03) 41px),
    #f7f1de;
}
.kicker-mono {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--ink-faint);
  margin-bottom: 10px;
}
.dossier-head h3 {
  font-size: 2rem;
  margin: 0 0 8px;
  letter-spacing: -0.02em;
  font-weight: 800;
}
.meta {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.85rem;
  color: var(--ink-soft);
}
.zone {
  text-align: center;
  border: 2px solid var(--orange);
  padding: 14px 22px;
  border-radius: 3px;
  background: rgba(236,90,28,0.05);
  min-width: 130px;
}
.zone-label {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--ink-soft);
}
.zone-num {
  font-size: 3.2rem;
  font-weight: 800;
  color: var(--orange);
  line-height: 1;
  margin: 4px 0;
}
.zone-tag {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--orange-deep);
  font-weight: 600;
}

.dossier-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-bottom: 1px solid var(--rule);
}
.stat {
  padding: 28px 24px;
  border-right: 1px solid var(--rule);
}
.stat:last-child { border-right: 0; }
.stat-label {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--ink-faint);
  margin-bottom: 10px;
}
.stat-value {
  font-size: 1.85rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--ink);
  line-height: 1.05;
  margin-bottom: 8px;
}
.stat-value span {
  font-size: 0.95rem;
  color: var(--ink-faint);
  font-weight: 500;
  margin-left: 2px;
}
.stat-note {
  font-size: 0.82rem;
  color: var(--ink-soft);
  line-height: 1.4;
}

.dossier-body {
  padding: 36px 40px;
}
.dossier-body h4 {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--orange-deep);
  margin: 0 0 14px;
  font-weight: 600;
}
.dossier-body h4 + p { margin-top: 0; }
.dossier-body p {
  font-size: 1.02rem;
  color: var(--ink-soft);
  line-height: 1.65;
  margin: 0 0 28px;
}
.dossier-body p strong { color: var(--ink); }
.dossier-body p em { color: var(--orange-deep); font-style: italic; }
.srcs {
  list-style: none;
  padding: 0;
  margin: 0;
  font-family: 'Roboto Mono', monospace;
  font-size: 0.82rem;
  color: var(--ink-soft);
}
.srcs li {
  padding: 6px 0;
  border-top: 1px dashed var(--rule);
}
.srcs li:first-child { border-top: 0; }

.dossier-foot {
  padding: 22px 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--cream-deep);
  border-top: 1px solid var(--ink);
  font-family: 'Roboto Mono', monospace;
  font-size: 0.78rem;
  color: var(--ink-soft);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.dossier-cta a {
  color: var(--orange-deep);
  font-weight: 600;
}

/* SCIENCE */
.science { padding: 90px 0; border-bottom: 1px solid var(--rule); }
.science .two { gap: 60px; grid-template-columns: 1fr 1fr; }
.science h2 { margin-top: 6px; }
.science p { color: var(--ink-soft); }

/* METHODOLOGY (EEAT) */
.methodology {
  padding: 90px 0;
  background: var(--cream-deep);
  border-bottom: 1px solid var(--rule);
}
.methodology .section-head { margin-bottom: 44px; }
.methodology .section-head .num { color: var(--orange-deep); }
.method-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
}
.method-block {
  background: #f7f1de;
  border: 1px solid var(--rule);
  padding: 30px 32px;
  border-radius: 3px;
  box-shadow: 4px 4px 0 var(--cream-shadow);
}
.method-block.full { grid-column: 1 / -1; }
.method-block h3 {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--orange-deep);
  font-weight: 600;
  margin: 0 0 18px;
}
.method-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.method-list li {
  padding: 10px 0;
  border-top: 1px dashed var(--rule);
  font-size: 0.96rem;
  color: var(--ink-soft);
  line-height: 1.55;
}
.method-list li:first-child { border-top: 0; padding-top: 0; }
.method-list li strong { color: var(--ink); font-weight: 700; }
.method-block.full p {
  font-size: 1rem;
  color: var(--ink-soft);
  line-height: 1.65;
  margin: 0 0 18px;
  max-width: 70ch;
}
.method-block.full p strong { color: var(--ink); }
.method-block.full p em { font-style: italic; color: var(--orange-deep); }
.method-meta {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid var(--rule);
  font-size: 0.9rem;
  color: var(--ink-soft);
}
.method-meta span { line-height: 1.5; }
.meta-label {
  display: block;
  font-family: 'Roboto Mono', monospace;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--ink-faint);
  margin-bottom: 4px;
}

/* CLOSER */
.closer {
  padding: 110px 0 90px;
  text-align: center;
  background:
    radial-gradient(circle at 50% 0%, rgba(236,90,28,0.08) 0, transparent 50%),
    var(--cream);
  border-bottom: 1px solid var(--rule);
}
.closer h2 {
  font-size: clamp(2.4rem, 5vw, 3.6rem);
  margin: 0 0 16px;
  letter-spacing: -0.03em;
  font-weight: 800;
}
.closer p {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.92rem;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--ink-soft);
  margin: 0 0 36px;
}
.trefoil-mark {
  margin-top: 60px;
  color: var(--orange);
  opacity: 0.4;
}
.trefoil-mark svg { width: 56px; height: 56px; }

/* FOOTER */
.footer { padding: 60px 0 40px; background: var(--cream-deep); }
.foot-cols {
  display: grid;
  grid-template-columns: 2fr 1fr 1.5fr;
  gap: 50px;
  margin-bottom: 50px;
}
.foot-brand {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
.foot-cols p, .foot-cols span, .foot-cols a {
  font-size: 0.92rem;
  color: var(--ink-soft);
  display: block;
}
.foot-label {
  font-family: 'Roboto Mono', monospace;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  color: var(--ink-faint);
  margin-bottom: 10px;
}
.foot-bottom {
  border-top: 1px solid var(--rule);
  padding-top: 22px;
  display: flex;
  justify-content: space-between;
  font-family: 'Roboto Mono', monospace;
  font-size: 0.74rem;
  color: var(--ink-faint);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  flex-wrap: wrap;
  gap: 12px;
}

/* RESPONSIVE */
@media (max-width: 880px) {
  .two, .science .two { grid-template-columns: 1fr; gap: 50px; }
  .dossier-head { grid-template-columns: 1fr; }
  .dossier-grid { grid-template-columns: 1fr 1fr; }
  .stat:nth-child(2) { border-right: 0; }
  .stat:nth-child(1), .stat:nth-child(2) { border-bottom: 1px solid var(--rule); }
  .foot-cols { grid-template-columns: 1fr; gap: 32px; }
  .hero { padding: 70px 0 60px; }
  .pitch, .sample, .science, .methodology { padding: 70px 0; }
  .method-grid { grid-template-columns: 1fr; gap: 24px; }
  .method-meta { grid-template-columns: 1fr; gap: 14px; }
}
@media (max-width: 520px) {
  body { font-size: 16px; }
  .wrap { padding: 0 20px; }
  .dossier-grid { grid-template-columns: 1fr; }
  .stat { border-right: 0; border-bottom: 1px solid var(--rule); }
  .stat:last-child { border-bottom: 0; }
  .masthead nav { gap: 14px; }
  .masthead nav a { font-size: 0.72rem; }
  .dossier-head, .dossier-body, .dossier-foot { padding-left: 22px; padding-right: 22px; }
  .method-block { padding: 24px 22px; }
  .hero h1 { letter-spacing: -0.035em; }
  .lede { font-size: 1.1rem; }
  .closer { padding: 80px 0 60px; }
}

/* ---- blog layout (appended by scaffold) ---- */


/* === BLOG LAYOUT (added by scaffold_blogs_v2.py) ============================ */
/* Blog inherits all of the site's :root vars, body font, and h1/h2/p baselines. */
/* These classes add layout only — colour comes from the site's accent var.     */
.blog-wrap{max-width:46rem;margin:0 auto;padding:3.5rem 2rem 4rem;}
.blog-back{font-size:12px;letter-spacing:0.18em;text-transform:uppercase;color:var(--ink);text-decoration:none;font-weight:600;display:inline-block;margin-bottom:2rem;}
.blog-back:hover{text-decoration:underline;text-underline-offset:4px;}
.blog-kicker{font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:var(--ink);font-weight:600;}
.blog-h1{font-size:clamp(2.4rem,5vw,3.8rem);line-height:1.05;margin:0.6rem 0 1rem;letter-spacing:-0.02em;}
.blog-h1 em{color:var(--ink);}
.blog-intro{font-size:1.15rem;opacity:0.78;margin:0 0 2.5rem;max-width:34rem;}
.blog-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0 0 3rem;padding:1.5rem 0;border-top:1px solid currentColor;border-bottom:1px solid currentColor;border-color:rgba(0,0,0,0.12);}
.blog-pillar h3{font-size:11px;letter-spacing:0.22em;text-transform:uppercase;color:var(--ink);margin:0 0 0.3rem;font-weight:600;}
.blog-pillar p{font-size:13.5px;line-height:1.5;margin:0;opacity:0.78;}
.blog-list{margin:0;padding:0;list-style:none;}
.blog-post{padding:1.6rem 0;border-bottom:1px solid rgba(0,0,0,0.12);}
.blog-post:last-child{border-bottom:none;}
.blog-post .blog-meta{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;opacity:0.55;}
.blog-post .blog-meta em{color:var(--ink);font-style:normal;font-weight:600;}
.blog-post h2{font-size:1.7rem;line-height:1.2;letter-spacing:-0.015em;margin:0.3rem 0 0.4rem;}
.blog-post h2 a{color:inherit;text-decoration:none;}
.blog-post h2 a:hover{color:var(--ink);}
.blog-post .blog-deck{margin:0;opacity:0.7;font-size:1rem;}
.blog-post.coming h2{opacity:0.6;}
.blog-subscribe{margin-top:3rem;padding:2rem;text-align:center;border:1px solid rgba(0,0,0,0.16);}
.blog-subscribe h3{font-size:1.3rem;margin:0 0 0.4rem;}
.blog-subscribe h3 em{color:var(--ink);}
.blog-subscribe form{display:inline-flex;gap:0.4rem;margin-top:0.6rem;flex-wrap:wrap;justify-content:center;}
.blog-subscribe input{padding:0.6rem 0.9rem;border:1px solid rgba(0,0,0,0.2);background:transparent;color:inherit;font:inherit;min-width:14rem;}
.blog-subscribe button{padding:0.6rem 1rem;border:none;background:var(--ink);color:#fff;font:inherit;font-weight:600;cursor:pointer;letter-spacing:0.04em;}
@media(max-width:700px){.blog-pillars{grid-template-columns:1fr;}}

/* Article layout for individual posts at /blog/<slug>/ */
.blog-article{max-width:38rem;margin:0 auto;padding:3rem 2rem 4rem;}
.blog-article .post-meta{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;opacity:0.55;margin:0 0 0.6rem;}
.blog-article .post-meta em{color:var(--ink);font-style:normal;font-weight:600;}
.blog-article h1{font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.1;letter-spacing:-0.02em;margin:0 0 1rem;max-width:none;}
.blog-article h1 em{color:var(--ink);}
.blog-article .post-deck{font-size:1.2rem;opacity:0.8;margin:0 0 2.5rem;line-height:1.5;font-style:italic;}
.blog-article .post-body{font-size:1.08rem;line-height:1.75;}
.blog-article .post-body p{margin:0 0 1.2rem;}
.blog-article .post-body h2{font-size:1.6rem;margin:2.5rem 0 0.8rem;letter-spacing:-0.015em;}
.blog-article .post-body h2 em{color:var(--ink);}
.blog-article .post-body h3{font-size:1.25rem;margin:2rem 0 0.6rem;}
.blog-article .post-body blockquote{margin:1.2rem 0;padding:0.8rem 1.2rem;border-left:3px solid var(--ink);font-style:italic;opacity:0.85;}
.blog-article .post-body code{font-family:ui-monospace,monospace;font-size:0.92em;padding:0.1em 0.3em;background:rgba(0,0,0,0.06);border-radius:3px;}
.blog-article .post-body pre{padding:1rem;border-radius:6px;overflow:auto;font-size:0.88em;line-height:1.55;background:rgba(0,0,0,0.85);color:#F8F4EE;}
.blog-article .post-body pre code{background:none;padding:0;}
.blog-article .post-body ul,.blog-article .post-body ol{padding-left:1.4rem;margin:0 0 1.2rem;}
.blog-article .post-body li{margin:0.4rem 0;}
.blog-article .post-body a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;}
.blog-article .post-cta{margin-top:3rem;padding:1.6rem;border:1px solid var(--ink);text-align:center;}
.blog-article .post-cta h3{margin:0 0 0.4rem;font-size:1.3rem;}
.blog-article .post-cta a.cta-btn{display:inline-block;margin-top:0.6rem;padding:0.7rem 1.4rem;background:var(--ink);color:#fff;text-decoration:none;font-weight:600;letter-spacing:0.04em;font-size:14px;}
.blog-article .post-nav{margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,0.12);display:flex;justify-content:space-between;font-size:12px;letter-spacing:0.18em;text-transform:uppercase;}
.blog-article .post-nav a{color:inherit;text-decoration:none;opacity:0.7;}
.blog-article .post-nav a:hover{opacity:1;color:var(--ink);}

/* Order form section */
.order{padding:6rem 0;background:#ece3c8;border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(0,0,0,0.1);}
.order .section-head{margin-bottom:2.5rem;}
.orderform{max-width:36rem;margin:0 auto;background:#f5efd9;padding:2.2rem 2rem;border:1px solid var(--ink);}
.orderform .row{margin-bottom:1.2rem;}
.orderform .row.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.orderform label{display:block;font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(0,0,0,0.7);font-weight:600;}
.orderform input[type=email],.orderform input[type=text],.orderform select{display:block;width:100%;margin-top:0.4rem;padding:0.78rem 0.85rem;font:inherit;font-size:1rem;border:1px solid rgba(0,0,0,0.25);background:#fff;border-radius:0;transition:border-color 0.12s ease, box-shadow 0.12s ease;}
.orderform input:focus,.orderform select:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px rgba(236,90,28,0.18);}
.orderform label.check{display:flex;align-items:center;gap:0.6rem;text-transform:none;letter-spacing:0;font-weight:400;font-size:0.95rem;color:var(--ink);margin-top:1.7rem;}
.orderform label.check input{width:18px;height:18px;margin:0;}
.orderform .submit{margin-top:1.6rem;margin-bottom:0;display:flex;flex-direction:column;align-items:center;gap:0.8rem;}
.orderform button.btn{cursor:pointer;border:none;font:inherit;}
.orderform .subnote{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(0,0,0,0.55);}
.order-status{margin-top:1rem;padding:0.8rem 1rem;background:#fff;border:1px solid rgba(0,0,0,0.2);font-size:0.95rem;}
.order-status.err{border-color:#a33;color:#a33;background:#fff3f0;}
@media (max-width:560px){.orderform .row.two{grid-template-columns:1fr;}}

/* ZIP-first form additions */
.orderform .hero-row{margin-bottom:1.6rem;}
.orderform .big-label{font-size:13px;letter-spacing:0.16em;text-transform:uppercase;font-weight:700;color:rgba(0,0,0,0.7);margin-bottom:0.5rem;display:block;}
.orderform input[name=zip]{width:100%;font-size:2.4rem;font-weight:700;letter-spacing:0.08em;padding:0.7rem 1rem;text-align:center;border:2px solid var(--ink);background:#fff;font-family:'Roboto Mono',ui-monospace,monospace;transition:border-color 0.12s ease, background 0.12s ease, box-shadow 0.12s ease;}
.orderform input[name=zip]:focus{outline:none;background:#fffceb;border-color:var(--orange);box-shadow:0 0 0 3px rgba(236,90,28,0.22);}
.orderform details.advanced{margin:0.5rem 0 1.2rem 0;}
.orderform details.advanced > summary{cursor:pointer;font-size:13px;letter-spacing:0.1em;text-transform:uppercase;color:rgba(0,0,0,0.55);font-weight:600;padding:0.4rem 0;}
.orderform details.advanced > summary:hover{color:var(--ink);}
.orderform details.advanced[open] > summary{margin-bottom:0.6rem;}
.orderform details.advanced label{font-size:12px;}

/* === SITE FOOTER UPGRADE (Tier 1 EEAT) ====================================== */
.site-foot-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-bottom:36px;}
.site-foot-nav h4{font-family:'Roboto Mono',monospace;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.18em;color:var(--ink-faint);margin:0 0 14px;font-weight:600;}
.site-foot-nav ul{list-style:none;padding:0;margin:0;}
.site-foot-nav li{padding:5px 0;}
.site-foot-nav a{color:var(--ink-soft);font-size:0.94rem;}
.site-foot-nav a:hover{color:var(--orange-deep);}
.site-foot-disclaimer{padding:18px 0;border-top:1px dashed var(--rule);font-size:0.86rem;color:var(--ink-faint);line-height:1.55;max-width:78ch;}
@media (max-width:760px){.site-foot-nav{grid-template-columns:1fr 1fr;gap:28px;}}
@media (max-width:480px){.site-foot-nav{grid-template-columns:1fr;}}

/* === TIER 1 + ARTICLE PAGE LAYOUT =========================================== */
.page-hero{padding:90px 0 50px;border-bottom:1px solid var(--rule);background:var(--cream);}
.page-hero .crumbs{font-family:'Roboto Mono',monospace;font-size:0.74rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--ink-faint);margin-bottom:18px;}
.page-hero .crumbs a{color:var(--orange-deep);}
.page-hero h1{font-size:clamp(2.6rem,5.4vw,4.2rem);line-height:1.02;letter-spacing:-0.035em;margin:0 0 18px;font-weight:800;max-width:18ch;}
.page-hero .dek{font-size:1.18rem;line-height:1.55;color:var(--ink-soft);max-width:60ch;margin:0;}
.page-hero .review-stamp{font-family:'Roboto Mono',monospace;font-size:0.74rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-faint);margin-top:22px;}

.prose{max-width:680px;margin:0 auto;padding:60px 28px 80px;font-size:1.08rem;line-height:1.72;color:var(--ink-soft);}
.prose > p,.prose > ul,.prose > ol,.prose > table,.prose > blockquote,.prose > figure{margin:0 0 1.35em;}
.prose h2{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.85rem;line-height:1.18;letter-spacing:-0.02em;color:var(--ink);font-weight:800;margin:2.4em 0 0.7em;}
.prose h3{font-size:1.25rem;line-height:1.25;color:var(--ink);font-weight:700;margin:2em 0 0.5em;letter-spacing:-0.015em;}
.prose h4{font-family:'Roboto Mono',monospace;font-size:0.78rem;text-transform:uppercase;letter-spacing:0.18em;color:var(--orange-deep);margin:1.8em 0 0.5em;font-weight:600;}
.prose strong{color:var(--ink);}
.prose em{color:var(--orange-deep);font-style:italic;}
.prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:3px;text-decoration-thickness:1.5px;}
.prose a:hover{color:var(--orange-deep);}
.prose ul,.prose ol{padding-left:1.4em;}
.prose ul li,.prose ol li{margin:0.4em 0;}
.prose ul li::marker{color:var(--orange);}
.prose blockquote{margin:1.5em 0;padding:0.6em 1.2em;border-left:3px solid var(--orange);background:rgba(236,90,28,0.04);font-style:italic;color:var(--ink);}
.prose hr{border:0;border-top:1px solid var(--rule);margin:2.6em 0;}
.prose .lede-graf{font-size:1.24rem;line-height:1.55;color:var(--ink);font-weight:500;border-left:3px solid var(--orange);padding-left:18px;margin:0 0 2em;}

/* article tables */
.prose table{width:100%;border-collapse:collapse;font-size:0.94rem;background:#f7f1de;border:1px solid var(--rule);box-shadow:4px 4px 0 var(--cream-shadow);}
.prose table caption{caption-side:top;text-align:left;font-family:'Roboto Mono',monospace;font-size:0.74rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--ink-faint);margin-bottom:10px;}
.prose table th,.prose table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;}
.prose table thead th{background:var(--cream-deep);font-family:'Roboto Mono',monospace;font-size:0.74rem;text-transform:uppercase;letter-spacing:0.12em;color:var(--ink);font-weight:600;}
.prose table tr:last-child td{border-bottom:0;}

/* article callout */
.prose .callout{background:var(--cream-deep);border:1px solid var(--rule);border-left:4px solid var(--orange);padding:18px 22px;margin:1.5em 0;border-radius:2px;}
.prose .callout h4{margin-top:0;}
.prose .callout p:last-child{margin-bottom:0;}

/* source citations block at end of article */
.prose .source-cite{font-family:'Roboto Mono',monospace;font-size:0.84rem;color:var(--ink-soft);}
.prose .source-cite li{padding:8px 0;border-top:1px dashed var(--rule);list-style:none;margin:0;}
.prose .source-cite{list-style:none;padding:0;}
.prose .source-cite li:first-child{border-top:0;}
.prose .source-cite a{text-decoration:none;color:var(--ink);}
.prose .source-cite a:hover{color:var(--orange-deep);}

/* article footer / CTA */
.article-cta{background:var(--cream-deep);border:1px solid var(--ink);padding:28px 32px;margin:2.5em 0 1.5em;border-radius:2px;box-shadow:6px 6px 0 var(--cream-shadow);}
.article-cta h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.5rem;margin:0 0 10px;letter-spacing:-0.02em;color:var(--ink);}
.article-cta p{margin:0 0 18px;color:var(--ink-soft);font-size:1rem;}
.article-cta .btn{margin-top:4px;}

.article-meta-foot{margin-top:2.5em;padding-top:18px;border-top:1px solid var(--rule);font-family:'Roboto Mono',monospace;font-size:0.78rem;text-transform:uppercase;letter-spacing:0.12em;color:var(--ink-faint);}
.article-meta-foot a{color:var(--orange-deep);text-decoration:none;}

.related-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:1em 0 2em;list-style:none;padding:0;}
.related-list li{padding:0;}
.related-list a{display:block;padding:16px 18px;border:1px solid var(--rule);background:#f7f1de;color:var(--ink);text-decoration:none;border-radius:2px;font-weight:600;line-height:1.35;transition:transform 0.12s ease,border-color 0.12s ease;}
.related-list a:hover{border-color:var(--orange);transform:translate(-1px,-1px);color:var(--ink);}
.related-list .rl-kicker{display:block;font-family:'Roboto Mono',monospace;font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--orange-deep);margin-bottom:6px;font-weight:600;}
@media (max-width:640px){.related-list{grid-template-columns:1fr;}}

/* === GUIDE HUB ============================================================== */
.guide-hub{padding:40px 0 90px;background:linear-gradient(180deg,var(--cream) 0%,var(--cream-deep) 100%);}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:0;}
.guide-card{display:block;background:#f7f1de;border:1px solid var(--rule);padding:28px 30px;border-radius:3px;box-shadow:4px 4px 0 var(--cream-shadow);text-decoration:none;color:var(--ink);transition:transform 0.12s ease, box-shadow 0.12s ease, border-color 0.12s ease;}
.guide-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--cream-shadow);border-color:var(--ink);color:var(--ink);}
.guide-card .gc-num{font-family:'Roboto Mono',monospace;font-size:0.74rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--orange-deep);font-weight:600;}
.guide-card h3{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.3rem;line-height:1.22;letter-spacing:-0.015em;margin:8px 0 10px;font-weight:800;color:var(--ink);}
.guide-card p{font-size:0.96rem;line-height:1.5;color:var(--ink-soft);margin:0 0 14px;}
.guide-card .gc-read{font-family:'Roboto Mono',monospace;font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-faint);}
@media (max-width:780px){.guide-grid{grid-template-columns:1fr;}}

/* sources page layout */
.src-section{margin:2.6em 0;}
.src-section h2{margin-bottom:0.6em;}
.src-list{list-style:none;padding:0;margin:0;}
.src-list li{padding:14px 0;border-top:1px dashed var(--rule);}
.src-list li:first-child{border-top:1px solid var(--rule);}
.src-list .src-title{display:block;font-weight:700;color:var(--ink);margin-bottom:4px;}
.src-list .src-meta{font-family:'Roboto Mono',monospace;font-size:0.78rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:0.1em;margin-bottom:6px;}
.src-list .src-blurb{font-size:0.96rem;color:var(--ink-soft);margin:0;}

/* faq layout */
.faq-list{list-style:none;padding:0;margin:0;}
.faq-item{padding:24px 0;border-top:1px solid var(--rule);}
.faq-item:first-child{border-top:0;}
.faq-item h3{font-size:1.2rem;line-height:1.3;color:var(--ink);margin:0 0 10px;font-weight:700;letter-spacing:-0.01em;}
.faq-item p{margin:0 0 10px;color:var(--ink-soft);}
.faq-item p:last-child{margin-bottom:0;}

/* corrections page */
.corrections-empty{padding:40px 32px;border:1px dashed var(--rule);background:#f7f1de;text-align:center;font-family:'Roboto Mono',monospace;font-size:0.92rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:0.14em;}

