/* ─────────────────────────────────────────────────────────────────
   dental-v1.css — Cat 02 Dental component deltas.
   Loaded AFTER /css/main.css and /assets/css/state-page-v1.css. Adds only
   the components the Dental hub + state pages need on top of the shared
   state-page v1.0 grammar (.sp). Everything else — .slab, .free-card,
   .band-dark, .answers, .def-row, .disclaimer, .rrow, .guides, .dfig,
   .data-chip, timeline, accordions — is reused from state-page-v1.css.
   Token discipline (Design SoT v2/v2.1 · A2): accent is #893900 (var --sp-ac);
   no #E8650A text/fills; focus ring inherits main.css :focus-visible (#B84D00).
   ───────────────────────────────────────────────────────────────── */

/* hero measure */
.sp .hero h1{max-width:20ch}

/* short-answer (Speakable primary target) */
.sp .short-answer{background:var(--sp-surface);border:1px solid var(--sp-border);
  border-left:5px solid var(--sp-ac);border-radius:12px;padding:1.5rem 1.6rem;margin:1.5rem 0}
.sp .short-answer .lbl{font-size:.8125rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--sp-ac);margin:0 0 .5rem}
.sp .short-answer p{margin:0;max-width:66ch;font-size:1.0625rem}

/* section sub-lede */
.sp .sec-head .sub{margin:.6rem 0 0;max-width:60ch;color:var(--sp-sec);font-size:1rem}

/* decision-router choice cards (boxes are allowed for choice-cards, U5 exception).
   Plain <div> cards (2026-07-19, no link to a page that doesn't exist —
   these situations have no real destination page yet) get the same box
   styling as a real <a> card, minus the hover/focus affordance a
   non-interactive element must not imply. */
.sp .router{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}
.sp .router a,.sp .router>div{display:block;background:var(--sp-surface);border:1.5px solid var(--sp-border-dark);
  border-radius:14px;padding:1.5rem;text-decoration:none;min-height:44px}
.sp .router a:hover,.sp .router a:focus-visible{border-color:var(--sp-ac)}
.sp .router .q{font-family:var(--sp-display);font-weight:600;color:var(--sp-ink);font-size:1.2rem;
  display:block;margin-bottom:.5rem}
.sp .router p{margin:0;font-size:1rem;color:var(--sp-mid)}
.sp .router .go{color:var(--sp-ac);font-weight:700;margin-top:.75rem;display:inline-block}
.sp .router .go::after{content:" →"}

/* dark-band positioning headline + display figure (hub) */
.sp .band-dark .eyebrow{color:var(--sp-dk-eyebrow)}
.sp .band-dark h2{color:var(--sp-dk-text);font-size:clamp(1.5rem,1.15rem + 1vw,1.875rem);max-width:22ch}
.sp .band-dark p{max-width:60ch;color:var(--sp-dk-body)}
.sp .dfig-dark{display:grid;grid-template-columns:auto 1fr;gap:1.5rem;align-items:center;margin-top:2rem;
  border-left:5px solid var(--sp-dk-eyebrow);padding-left:1.5rem}
.sp .dfig-dark .n{font-family:var(--sp-display);font-weight:600;color:var(--sp-dk-text);
  font-size:clamp(2.5rem,2rem + 2vw,3.5rem);line-height:1}
.sp .dfig-dark p{margin:.25rem 0 0;max-width:40ch;color:var(--sp-dk-body)}
@media(max-width:640px){.sp .dfig-dark{grid-template-columns:1fr}}

/* honest illustrative-placeholder marker (unverified data pending) */
.sp .illus{border:1px dashed var(--sp-border-dark);border-radius:12px;padding:1.2rem 1.4rem;
  background:var(--sp-surface);margin:1.5rem 0}
.sp .illus .tag{display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:var(--sp-ac);border:1px solid var(--sp-ac);border-radius:999px;
  padding:.15rem .6rem;margin-bottom:.75rem}
.sp .illus p{margin:.3rem 0;max-width:64ch}

/* Editor's Recommendation (free-first) */
.sp .er{background:var(--sp-ac-lite);border:1px solid #E7C4B0;border-radius:14px;padding:2rem}
.sp .er h2{font-size:1.5rem;margin:.25rem 0 .6rem}
.sp .er ul{margin:1rem 0 0;padding:0;list-style:none}
.sp .er li{padding:.9rem 0;border-top:1px solid #E7C4B0}
.sp .er li .t{font-weight:700;color:var(--sp-ink)}
.sp .er li .s{font-size:.9375rem;color:var(--sp-sec);margin-top:.15rem}

/* non-licensed / no-CTA block (informational states + JS-off fallback) */
.sp .notlicensed{background:var(--sp-surface);border:1px solid var(--sp-border-dark);
  border-radius:14px;padding:1.75rem}
.sp .notlicensed h3{font-size:1.3rem;margin:0 0 .5rem}

/* Ameritas CTA: disclosure INSIDE the referral slab, above the button.
   NOTE: main.css sets a bare `p { color: var(--color-text-mid) }` (#444) that
   directly matches every <p> and beats the slab's INHERITED dark-body color.
   These rules re-assert the correct dark-surface text color on the slab's own
   paragraphs so contrast holds (≥7:1) — required because the shared slab in
   state-page-v1.css never scoped `.slab p` color. */
.sp .slab p{color:var(--sp-dk-body)}
.sp .slab .disc{color:var(--sp-dk-meta)}
.sp .slab .affiliate-disclosure{border:1px solid #3a3a38;border-radius:10px;background:#242422;
  padding:.9rem 1.1rem;margin:0 0 1.25rem;font-size:.9375rem;line-height:1.55;color:var(--sp-dk-meta)}
.sp .slab .affiliate-disclosure p{color:var(--sp-dk-meta)}
.sp .slab .affiliate-disclosure strong{color:var(--sp-dk-text)}
.sp .slab .producer-disc{font-size:.9375rem;color:var(--sp-dk-meta);margin:.6rem 0 0;line-height:1.55}
.sp .slab .btnrow{margin:1.4rem 0 0;display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap}

/* Redesigned Ameritas CTA (2026-07-14): headline + button carry the weight;
   the disclosure holds the 15px legal floor (CLAUDE.md §3.1 — never smaller,
   never evasive fine print) but is de-emphasized by tight spacing + muted color,
   and sits immediately BEFORE the button (FTC §4.3.1 — never after the link). */
.sp .ameritas-cta .cta-h{font-size:clamp(1.6rem,1.2rem + 1.5vw,2.1rem);line-height:1.12;margin:.15rem 0 .5rem}
.sp .ameritas-cta .cta-sub{color:var(--sp-dk-body);font-size:1.0625rem;max-width:54ch;margin:0 0 1rem}
.sp .ameritas-cta .cta-fine{color:var(--sp-dk-meta);font-size:.9375rem;line-height:1.5;max-width:60ch;margin:0 0 1.25rem}
.sp .ameritas-cta .cta-fine strong{color:var(--sp-dk-text)}
.sp .pill-lg{padding:1.05rem 2.25rem;font-size:1.1875rem}
.sp .ameritas-cta .cta-alt{color:var(--sp-dk-meta);font-size:.9375rem;text-decoration:underline}

/* Quiet, lighter-weight second placement — outline accent pill, jumps to the
   real CTA. Same brand accent for recognition; framing/copy differ. */
.sp .cta-inline-wrap{margin:1.5rem 0 0}
.sp .cta-inline{display:inline-flex;align-items:center;min-height:44px;border:1.5px solid var(--sp-ac);
  color:var(--sp-ac);border-radius:999px;padding:.5rem 1.15rem;font-weight:700;font-size:1rem;text-decoration:none}
.sp .cta-inline:hover,.sp .cta-inline:focus-visible{background:var(--sp-ac);color:#fff}

/* FTC footer disclosure (every Cat 02 page) */
.sp .ftc-disclosure{background:var(--sp-bg);border:1px solid var(--sp-border);border-radius:12px;
  padding:1.1rem 1.3rem;margin:0 0 1.5rem;line-height:1.6;font-size:.9375rem}
.sp .ftc-disclosure strong{color:var(--sp-ink)}
