:root {
  --brand: #1d5c3f;
  --brand-strong: #154730;
  --gold: #b08742;
  --bg: #f9f8f6;
  --ink: #14181d;
  --ink-2: #41474f;
  --ink-3: #6b7280;
  --line: #e4e6e1;
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg: #111412;
    --surface: #1a1f1c;
    --ink: #ecefea;
    --ink-2: #c3c8c1;
    --line: #2b322d;
    --brand: #5fb48a;
  }
}

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

html {
  font-family: system-ui, sans-serif;
  background: var(--bg);
  color: var(--ink);
  line-height: 1.5;
}

html.js .about-panel[hidden] {
  display: none;
}

body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

body.page-home {
  grid-template-rows: auto 1fr auto;
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.skip {
  position: absolute;
  top: -40px;
  left: 6px;
  background: var(--brand);
  color: white;
  padding: 8px;
  z-index: 1000;
  text-decoration: none;
  border-radius: 4px;
}

.skip:focus {
  top: 6px;
}

.top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  height: 60px;
  position: relative;
  z-index: 10;
}

.brand {
  display: flex;
  align-items: center;
  text-decoration: none;
  gap: 8px;
}

.brand-mark {
  display: block;
}

.brand-name {
  font-weight: 600;
  color: var(--ink);
  font-size: 18px;
}

.top-actions {
  display: flex;
  gap: 12px;
  align-items: center;
}

.about-btn,
.pricing-link,
.mycases {
  background: none;
  border: none;
  color: var(--ink-2);
  text-decoration: none;
  font-size: 14px;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
}

.about-btn:hover,
.pricing-link:hover,
.mycases:hover {
  text-decoration: underline;
}

.ask {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0 16px;
  max-width: 760px;
  margin: 0 auto;
  width: 100%;
  flex-grow: 1;
  transform: translateY(-10%);
}

.ask-title {
  font-size: clamp(28px, 5vw, 36px);
  font-weight: 600;
  text-align: center;
  margin-bottom: 20px;
  color: var(--ink);
}

.ask-box {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: 24px;
  padding: 16px 16px 12px;
  width: 100%;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: box-shadow 0.2s ease;
}

.ask-input {
  width: 100%;
  border: none;
  background: transparent;
  font-size: 17px;
  line-height: 1.5;
  resize: none;
  padding: 0;
  margin: 0;
  color: var(--ink);
  outline: none;
  max-height: 40vh;
  overflow-y: auto;
}

.ask-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
}

.ask-hint {
  font-size: 14px;
  color: var(--ink-3);
}

.ask-send {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--brand);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: none;
  color: white;
  opacity: 0.4;
  pointer-events: none;
}

.ask-send:not([disabled]) {
  opacity: 1;
  pointer-events: auto;
}

.ask-send:not([disabled]):hover {
  background: var(--brand-strong);
}

.ask-arrow {
  width: 20px;
  height: 20px;
  stroke: currentColor;
}

.about-panel {
  position: absolute;
  right: 16px;
  top: 60px;
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: 8px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
  width: min(520px, calc(100vw - 32px));
  max-height: 80vh;
  overflow-y: auto;
  z-index: 20;
}

html.no-js .about-panel[hidden] {
  display: block;
  position: static;
}

html.js .about-panel[hidden] {
  display: none;
}

.about-inner {
  padding: 8px 0;
}

.about-item {
  border-bottom: 1px solid var(--line);
}

.about-item:last-child {
  border-bottom: none;
}

.about-sum {
  display: block;
  width: 100%;
  text-align: left;
  font-size: 16px;
  padding: 14px 16px;
  cursor: pointer;
  background: none;
  border: none;
  color: var(--ink);
  position: relative;
}

.about-sum::after {
  content: "›";
  position: absolute;
  right: 16px;
  transform: rotate(90deg);
  transition: transform 0.2s;
}

.about-item[open] > .about-sum::after {
  transform: rotate(-90deg);
}

.about-body {
  font-size: 15px;
  line-height: 1.6;
  padding: 0 16px 16px;
  color: var(--ink-2);
}

.case-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.case-list li {
  margin-bottom: 8px;
}

.case-list a {
  color: var(--brand);
  text-decoration: none;
}

.case-list a:hover {
  text-decoration: underline;
}

.article-main,
.info-main {
  max-width: 720px;
  margin: 40px auto;
  padding: 0 16px;
  font-size: 17px;
  line-height: 1.7;
  color: var(--ink);
}

.article-body,
.info-body {
  font-size: 17px;
  line-height: 1.7;
  color: var(--ink);
}

.article-body h1,
.article-body h2,
.article-body h3,
.article-body h4,
.article-body h5,
.article-body h6,
.info-body h1,
.info-body h2,
.info-body h3,
.info-body h4,
.info-body h5,
.info-body h6 {
  color: var(--ink);
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.article-body p,
.article-body ul,
.article-body ol,
.info-body p,
.info-body ul,
.info-body ol {
  margin: 1rem 0;
}

.article-body a,
.info-body a {
  color: var(--brand);
  text-decoration: none;
}

.article-body a:hover,
.info-body a:hover {
  text-decoration: underline;
}

.article-body img,
.info-body img {
  max-width: 100%;
  height: auto;
}

.article-body table,
.info-body table {
  width: 100%;
  display: block;
  overflow-x: auto;
  border-collapse: collapse;
  margin: 1rem 0;
}

.article-body th,
.article-body td,
.info-body th,
.info-body td {
  padding: 0.5rem;
  border: 1px solid var(--line);
  text-align: left;
}

.article-cta {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 20px;
  margin-top: 40px;
}

.article-cta-text {
  margin: 0 0 16px 0;
  font-size: 16px;
  color: var(--ink-2);
}

.cta-btn {
  display: inline-block;
  background: var(--brand);
  color: white;
  padding: 10px 20px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 500;
  border: none;
  cursor: pointer;
}

.cta-btn:hover {
  background: var(--brand-strong);
}

.foot {
  text-align: center;
  padding: 16px;
  font-size: 13px;
  color: var(--ink-3);
}

body.page-home .foot {
  position: sticky;
  bottom: 0;
  background: var(--bg);
}

.foot-line a {
  color: var(--ink-2);
  text-decoration: none;
}

.foot-line a:hover {
  text-decoration: underline;
}

/* --- V2 Additions --- */

.lead {
  background-color: color-mix(in srgb, var(--brand) 8%, var(--bg));
  border-radius: 20px;
  padding: 16px 20px;
  max-width: 760px;
  margin-bottom: 28px;
  width: 100%;
}

.lead-eyebrow {
  font-size: 12px;
  text-transform: uppercase;
  color: var(--brand);
  margin: 0 0 4px;
  letter-spacing: 0.05em;
  font-weight: 600;
}

.lead-title {
  font-size: clamp(20px, 4vw, 22px);
  font-weight: 600;
  margin: 0 0 8px;
  color: var(--ink);
}

.lead-text {
  font-size: 15px;
  color: var(--ink-2);
  margin: 0 0 16px;
  line-height: 1.5;
}

.lead-btn {
  display: inline-block;
  background: var(--brand);
  color: white;
  padding: 8px 16px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 12px;
}

.lead-btn:hover {
  background: var(--brand-strong);
  text-decoration: none;
}

.lead-soon {
  font-size: 13px;
  color: var(--ink-3);
  margin: 0;
  line-height: 1.4;
}

.lead-soon-label {
  margin-right: 6px;
}

.chip {
  display: inline-block;
  border: 1px solid var(--ink-3);
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 12px;
  margin-right: 6px;
  vertical-align: middle;
}

.pricing-link {
  text-decoration: none;
  color: var(--ink-2);
}

.plans {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin: 40px 0;
}

.plan {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  flex-direction: column;
}

.plan-name {
  font-size: 20px;
  font-weight: 600;
  margin: 0 0 8px;
  color: var(--ink);
}

.plan-price {
  font-size: 28px;
  font-weight: 700;
  margin: 0 0 8px;
  color: var(--ink);
}

.plan-alt {
  font-size: 14px;
  color: var(--ink-3);
  margin: 0 0 16px;
}

.plan-points {
  list-style: none;
  padding: 0;
  margin: 0 0 auto;
  font-size: 15px;
  line-height: 1.6;
}

.plan-points li {
  margin-bottom: 12px;
  position: relative;
  padding-left: 1.3em;
}

.plan-points li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--brand);
  font-weight: bold;
}

.plan-btn {
  display: inline-block;
  background: var(--brand);
  color: white;
  padding: 10px 16px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 500;
  text-align: center;
  margin-top: 16px;
  border: none;
  cursor: pointer;
  font-size: 15px;
}

.plan-btn:hover {
  background: var(--brand-strong);
  text-decoration: none;
}

.notify {
  background: var(--bg);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 24px;
  margin: 40px 0;
  max-width: 500px;
}

.notify-title {
  font-size: 20px;
  margin: 0 0 16px;
  color: var(--ink);
}

.notify-label {
  display: block;
  font-size: 14px;
  margin: 12px 0 4px;
  color: var(--ink-2);
}

.notify-input,
.notify-select {
  width: 100%;
  padding: 10px;
  font-size: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--bg);
  color: var(--ink);
}

.hp {
  display: none;
}

.notify-btn {
  background: var(--brand);
  color: white;
  padding: 10px 20px;
  border-radius: 8px;
  border: none;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  margin-top: 16px;
  display: block;
  width: 100%;
}

.notify-btn:hover {
  background: var(--brand-strong);
}

.notify-msg {
  margin-top: 12px;
  font-size: 15px;
  color: var(--ink-2);
}

.tm-note {
  font-size: 12px;
  color: var(--ink-3);
  text-align: center;
  margin-top: 40px;
}

@media (min-width: 900px) {
  .plans {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 600px) {
  .about-panel {
    width: 100%;
    right: 0;
    top: 60px;
    border-radius: 0;
    border-left: none;
    border-right: none;
  }

  .ask {
    padding: 0 12px;
  }

  .ask-title {
    font-size: 28px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

:focus-visible {
  outline: 3px solid rgba(29, 92, 63, 0.35);
  outline-offset: 2px;
}

@media (prefers-color-scheme: dark) {
  :focus-visible {
    outline-color: rgba(95, 180, 138, 0.5);
  }
}
/* HAND-FIX 8: form controls inherit the page font (browsers default textarea to monospace) */
.ask-input, button { font-family: inherit; }
.foot-line a + a::before, .foot-line span + a::before { content: "·"; margin: 0 .5em; color: var(--ink-3, #6b7280); }
/* HAND-FIX 9: links inside article prose are underlined (WCAG 1.4.1, Lighthouse link-in-text-block) */
.article-body a, .about-body a, .info-body a { text-decoration: underline; text-underline-offset: 2px; }
/* LEGACY COMPONENTS (HAND-FIX 10): old-site styles for classes still inside kept articles, scoped to .article-body */
.article-body{
  
  --ink:#14181d;            
  --ink-2:#41474f;          
  --ink-3:#6b7280;          
  --ink-inv:#f6f7f5;

  
  --bg:#ffffff;
  --bg-2:#f7f7f4;           
  --bg-3:#eef0ea;           
  --bg-dark:#101512;        
  --bg-dark-2:#18201b;

  
  --brand:#1d5c3f;
  --brand-strong:#154730;
  --brand-tint:#e8f1ec;
  --brand-ring:rgba(29,92,63,.28);

  
  --gold:#b08742;
  --gold-tint:#f6efe2;

  
  --ok:#1d6f42; --warn:#7a5314; --err:#8f2a20;
  --line:#e4e6e1; --line-strong:#cfd3cb;

  
  --sans:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:"SF Mono",SFMono-Regular,ui-monospace,Menlo,Consolas,monospace;

  
  --t-xs:.75rem; --t-sm:.875rem; --t-base:1rem; --t-lg:1.125rem;
  --t-xl:1.375rem; --t-2xl:1.75rem; --t-3xl:2.25rem; --t-4xl:3rem;
  --t-5xl:3.75rem; --t-6xl:4.75rem;

  
  --s-1:.25rem; --s-2:.5rem; --s-3:.75rem; --s-4:1rem; --s-5:1.5rem;
  --s-6:2rem; --s-7:3rem; --s-8:4rem; --s-9:6rem; --s-10:8rem;

  
  --r-s:8px; --r-m:12px; --r-l:18px; --r-pill:999px;
  --sh-1:0 1px 2px rgba(20,24,29,.06);
  --sh-2:0 4px 14px rgba(20,24,29,.07),0 1px 3px rgba(20,24,29,.05);
  --sh-3:0 24px 48px -12px rgba(20,24,29,.14);

  --container:1140px;
  --container-wide:1280px;
  --nav-h:64px;
}
.article-body .lead{font-size:clamp(var(--t-lg),1.9vw,var(--t-xl));line-height:1.5;color:var(--ink-2);max-width:44ch}
.article-body .wrap{max-width:var(--container);margin-inline:auto;padding-inline:clamp(var(--s-5),4vw,var(--s-7))}
.article-body .section{padding-block:clamp(var(--s-8),9vw,var(--s-10))}
.article-body .section-tight{padding-block:clamp(var(--s-7),6vw,var(--s-8))}
.article-body .section-alt{background:var(--bg-2)}
.article-body .eyebrow{display:block;font:600 var(--t-xs)/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-bottom:var(--s-4)}
.article-body .section-dark .eyebrow{color:var(--gold)}
.article-body .center .lead{margin-inline:auto}
.article-body .grid-2{display:grid;gap:var(--s-6);grid-template-columns:repeat(2,1fr)}
.article-body .grid-3{display:grid;gap:var(--s-5);grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.article-body .grid-2, .article-body .grid-3{grid-template-columns:1fr}}
.article-body .nav-links a.btn-primary{color:#fff}
.article-body .nav-links a.btn-primary:hover{color:#fff}
.article-body .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font:600 var(--t-sm)/1 var(--sans);letter-spacing:.01em;border-radius:var(--r-pill);
  padding:.85rem 1.5rem;cursor:pointer;border:1px solid transparent;transition:all .15s ease;white-space:nowrap}
.article-body .btn:hover{text-decoration:none;transform:translateY(-1px)}
.article-body .btn-primary{background:var(--brand);color:#fff}
.article-body .btn-primary:hover{background:var(--brand-strong);box-shadow:0 6px 18px var(--brand-ring)}
.article-body .btn-secondary{background:transparent;color:var(--ink);border-color:var(--line-strong)}
.article-body .btn-secondary:hover{border-color:var(--ink-3);background:var(--bg-2)}
.article-body .btn-lg{padding:1.05rem 1.9rem;font-size:var(--t-base)}
.article-body .section-dark .btn-secondary{color:#fff;border-color:#3a463e}
.article-body .section-dark .btn-secondary:hover{background:var(--bg-dark-2)}
.article-body .hero{padding-block:clamp(var(--s-8),10vw,var(--s-10)) clamp(var(--s-7),7vw,var(--s-9))}
.article-body .hero h1{max-width:17ch}
.article-body .hero .lead{max-width:52ch;margin-top:var(--s-4)}
.article-body .hero-ctas{display:flex;gap:var(--s-4);margin-top:var(--s-6);flex-wrap:wrap;align-items:center}
.article-body .hero-note{font-size:var(--t-sm);color:var(--ink-3);margin-top:var(--s-4)}
.article-body .card{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-l);
  padding:var(--s-6);box-shadow:var(--sh-1);transition:box-shadow .2s ease,transform .2s ease}
.article-body a.card{display:block;color:inherit}
.article-body a.card:hover{text-decoration:none;box-shadow:var(--sh-3);transform:translateY(-3px)}
.article-body .card h3{margin-bottom:var(--s-2)}
.article-body .card p{font-size:var(--t-sm);margin:0}
.article-body .card .go{display:inline-block;margin-top:var(--s-4);font:600 var(--t-sm)/1 var(--sans);color:var(--brand)}
.article-body .card-num{font:600 var(--t-xs)/1 var(--mono);color:var(--ink-3);letter-spacing:.1em;display:block;margin-bottom:var(--s-3)}
.article-body a.card:hover .card-media img{transform:scale(1.035)}
.article-body .photo-band{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--s-7);align-items:center}
.article-body .photo-band .shot{aspect-ratio:4/3}
.article-body .photo-band .shot img{width:100%;height:100%;object-fit:cover}
@media(max-width:860px){.article-body .photo-band{grid-template-columns:1fr}}
.article-body .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden}
.article-body .stat{background:var(--bg);padding:var(--s-6) var(--s-5)}
.article-body .stat b{display:block;font-size:clamp(var(--t-2xl),3vw,var(--t-3xl));font-weight:650;letter-spacing:-.03em;color:var(--ink)}
.article-body .stat span{font-size:var(--t-sm);color:var(--ink-3)}
@media(max-width:760px){.article-body .stats{grid-template-columns:1fr 1fr}}
.article-body .section-dark .stats{background:#2a332c;border-color:#2a332c}
.article-body .section-dark .stat{background:var(--bg-dark-2)}
.article-body .section-dark .stat b{color:#fff}
.article-body .section-dark .stat span{color:#93a096}
.article-body .tbl{width:100%;border-collapse:collapse;font-size:var(--t-sm)}
.article-body .tbl th{text-align:left;font-weight:600;color:var(--ink);border-bottom:2px solid var(--ink);padding:var(--s-3) var(--s-4)}
.article-body .tbl td{border-bottom:1px solid var(--line);padding:var(--s-3) var(--s-4);color:var(--ink-2)}
.article-body .tbl th[scope="row"]{border-bottom:1px solid var(--line);border-top:0;
  padding:var(--s-3) var(--s-4);font-weight:600;color:var(--ink);text-align:left}
.article-body .tbl tr:last-child td{border-bottom:0}
.article-body .tbl .yes{color:var(--ok);font-weight:600}
.article-body .tbl-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.article-body .article{max-width:760px;margin-inline:auto}
.article-body .article h1{font-size:clamp(var(--t-3xl),4.6vw,var(--t-5xl))}
.article-body .article h2{margin-top:var(--s-8)}
.article-body .article .lead{max-width:none}
.article-body .kv{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-4);margin:var(--s-6) 0;
  border-block:1px solid var(--line);padding-block:var(--s-5)}
.article-body .kv div b{display:block;font-size:var(--t-xl);letter-spacing:-.02em;color:var(--ink)}
.article-body .kv div span{font-size:var(--t-xs);color:var(--ink-3)}
@media(max-width:700px){.article-body .kv{grid-template-columns:repeat(2,1fr)}}
.article-body .report-frame{width:100%;aspect-ratio:8.5/11;max-height:720px;border:1px solid var(--line);border-radius:var(--r-m)}
.article-body .article > h2{
  margin-top:var(--s-9);padding-top:var(--s-6);border-top:1px solid var(--line);
  font-size:clamp(var(--t-2xl),3vw,var(--t-3xl));letter-spacing:-.026em}
.article-body .article > h2:first-of-type{border-top:0;padding-top:0}
.article-body .article > h3{margin-top:var(--s-7);font-size:var(--t-xl)}
.article-body .article > h4{margin-top:var(--s-6);color:var(--ink);font-size:var(--t-base);
  letter-spacing:.02em;text-transform:uppercase;font-weight:600}
.article-body .article > h1 + p{font-size:clamp(var(--t-lg),1.8vw,var(--t-xl));line-height:1.5;color:var(--ink-2)}
.article-body .article > p{max-width:68ch}
.article-body .article > ul, .article-body .article > ol{max-width:66ch;margin-block:var(--s-4) var(--s-5)}
.article-body .article > ul > li, .article-body .article > ol > li{margin-bottom:var(--s-2);padding-left:.15em}
.article-body .article > ul{list-style:none;padding-left:0}
.article-body .article > ul > li{position:relative;padding-left:1.35em}
.article-body .article > ul > li::before{content:"";position:absolute;left:.15em;top:.62em;
  width:6px;height:6px;border-radius:50%;background:var(--brand);opacity:.55}
.article-body .article > blockquote{margin:var(--s-6) 0;padding:var(--s-5) var(--s-6);
  background:var(--bg-2);border-left:3px solid var(--gold);border-radius:0 var(--r-m) var(--r-m) 0}
.article-body .article > blockquote p:last-child{margin-bottom:0}
.article-body .article strong{color:var(--ink)}
.article-body .article > p + h4{margin-top:var(--s-7)}
.article-body .article .tbl-scroll{margin-block:var(--s-6)}
.article-body .article > hr{margin-block:var(--s-8)}
.article-body .article iframe{margin-block:var(--s-6)}
.article-body .article img{border-radius:var(--r-m);margin-block:var(--s-5)}
.article-body p a, .article-body li a, .article-body .lead a, .article-body .dissent a, .article-body .article a, .article-body .form-note a, .article-body .figure-cap a{
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;
  text-decoration-color:color-mix(in srgb, currentColor 45%, transparent)}
.article-body p a:hover, .article-body li a:hover, .article-body .article a:hover{text-decoration-color:currentColor}
.article-body .on-dark{color:#fff!important}
.article-body .footnote{color:#8b968d;margin-top:var(--s-5)}
.article-body .jc-center{justify-content:center}
.article-body .h-hero{font-size:clamp(var(--t-3xl),5vw,var(--t-5xl))}
.article-body .mt-4{margin-top:var(--s-4)}
.article-body .mt-6{margin-top:var(--s-6)}
.article-body .mt-7{margin-top:var(--s-7)}
.article-body .xsmall{font-size:var(--t-xs)}
.article-body .maxw{max-width:64ch}
.article-body h1, .article-body .h-hero { font-size: clamp(28px, 4vw, 40px); line-height: 1.2; margin: .2em 0 .5em; }
.article-body .section, .article-body .hero { padding: 0; margin: 1.2em 0; }
.article-body .wrap, .article-body .maxw { max-width: 100%; padding: 0; }
/* HAND-FIX CSS1: button text must beat the body link colour; page titles */
.info-body a.plan-btn, .info-body a.plan-btn:visited, .lead a.lead-btn, .lead a.lead-btn:visited { color: #fff; text-decoration: none; }
.info-title { font-size: clamp(28px, 4vw, 40px); line-height: 1.2; margin: 0 0 .6em; }
/* END OF FILE */
