/* p7 — Step Guide (lane A, public-agency look). Deep blue with a gold rule on white. Rubik.
   The page IS the procedure: a continuous gold rail down the left of the home page connects five big
   numbered markers, one per step. Friendly-utilitarian: 6px corners, blue header bars, hairline rules,
   gold used only as rules and markers (never as text on white). No photographs on the home page. */
:root {
  --rx-bg: #ffffff; --rx-surface: #f2f6fa; --rx-surface-2: #dfe8f1; --rx-ink: #14202c; --rx-muted: #4f5c6b; --rx-line: #d2dae3;
  --rx-brand: #123c69; --rx-brand-ink: #ffffff; --rx-accent: #123c69; --rx-accent-ink: #ffffff; --rx-link: #15558c;
  --rx-ok: #1d6b42; --rx-warn: #96601a; --rx-danger: #b02a1f;
  --rx-radius: 6px; --rx-radius-lg: 6px; --rx-shadow: 0 2px 10px rgba(18,60,105,.10); --rx-shadow-lg: 0 20px 56px rgba(8,28,50,.30);
  --rx-font-display: 'Rubik', system-ui, sans-serif; --rx-font-body: 'Rubik', system-ui, sans-serif;
  --rx-header-bg: #ffffff; --rx-header-ink: #14202c; --rx-header-h: 68px;
  --rx-footer-bg: #0c2b4c; --rx-footer-ink: #cfdced; --sr-ident-bg: #e7eef6; --sr-ident-ink: #14202c; --rx-max: 1180px;
  --p7-blue: #123c69; --p7-blue-dk: #0c2b4c; --p7-blue-2: #2f6fa8; --p7-tint: #eaf1f8; --p7-gold: #c9962c; --p7-gold-lt: #f0e0bb;
}
body.rx { font-size: 16.5px; }
.rx-sec { padding: clamp(36px, 4.4vw, 62px) 0; } .rx-sec--tight { padding: clamp(24px, 3vw, 40px) 0; }
h1, h2, h3, h4 { font-weight: 700; letter-spacing: -.012em; }
h1 { font-size: clamp(1.95rem, 3.1vw, 2.6rem); line-height: 1.14; }
h2 { font-size: clamp(1.4rem, 2.1vw, 1.8rem); } h3 { font-size: 1.08rem; }
.rx-kicker { color: var(--p7-blue-2); letter-spacing: .12em; font-size: .74rem; }
a:hover { text-decoration: underline; text-underline-offset: 3px; }
.rx-btn { border-radius: 6px; font-weight: 600; letter-spacing: .01em; }
.rx-btn--solid:hover { background: #0e3159; } .rx-btn--line { color: var(--p7-blue); } .rx-btn--line:hover { background: var(--p7-tint); text-decoration: none; }
.rx-btn:hover { text-decoration: none; }
.p7-hide { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- header: blue utility row, white brand row, white nav row, gold closing rule ---------- */
.rx-header { border-bottom: 4px solid var(--p7-gold); }
.rx-util { background: var(--p7-blue-dk); color: #d7e4f1; }
.rx-util a:hover { color: #fff; }
.rx-brandrow { border-bottom: 1px solid var(--rx-line); }
.rx-logo { color: var(--p7-blue); } .rx-logo__word { font-weight: 700; font-size: 1.2rem; letter-spacing: -.02em; }
.rx-logo__word span { color: var(--p7-blue-2); } .rx-logo__word small { color: var(--rx-muted); opacity: 1; letter-spacing: .1em; }
.rx-navrow { background: #fff; }
@media (min-width: 1024px) {
  .rx-navrow .fy-nav__list { margin-left: -12px; gap: 0; }
  .rx-navrow .fy-nav__item > a { padding: 13px 12px; color: var(--rx-ink); border-bottom: 4px solid transparent; margin-bottom: -4px; }
  .rx-navrow .fy-nav__item > a:hover { background: var(--p7-tint); text-decoration: none; }
  .rx-navrow .fy-nav__item > a[aria-current] { color: var(--p7-blue); font-weight: 700; border-bottom-color: var(--p7-blue); }
  .fy-nav__sub { border-radius: 0 0 6px 6px; border-top: 4px solid var(--p7-gold); }
}
.fy-header.is-scrolled { box-shadow: 0 3px 14px rgba(12,43,76,.16); }
.sr-ident { border-bottom: 1px solid #cfdcea; } .sr-ident__col svg { color: var(--p7-blue); }

/* ---------- intro band (compact, not a marketing hero) ---------- */
.p7-intro { background: var(--p7-blue); color: #fff; }
.p7-intro__grid { display: grid; grid-template-columns: minmax(0, 1fr) 336px; gap: clamp(26px, 4vw, 56px); align-items: start; padding-top: clamp(26px, 2.8vw, 34px); padding-bottom: clamp(26px, 2.8vw, 34px); }
.p7-intro .rx-kicker { color: var(--p7-gold-lt); }
.p7-intro h1 { margin: 0 0 12px; max-width: 21ch; }
.p7-intro__sub { margin: 0; color: #d5e3f1; font-size: 1.04rem; max-width: 62ch; }
.p7-intro .rx-actions { margin-top: 20px; }
.p7-intro .rx-btn--solid { background: #fff; color: var(--p7-blue); } .p7-intro .rx-btn--solid:hover { background: var(--p7-gold-lt); }
.p7-intro .rx-btn--line { color: #fff; } .p7-intro .rx-btn--line:hover { background: rgba(255,255,255,.12); }
.p7-index { background: #fff; color: var(--rx-ink); border-top: 4px solid var(--p7-gold); border-radius: 0 0 6px 6px; padding: 13px 16px 4px; }
.p7-index__h { font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--rx-muted); margin: 0 0 6px; }
.p7-index ol { list-style: none; margin: 0; padding: 0; counter-reset: none; }
.p7-index li { border-top: 1px solid var(--rx-line); } .p7-index li:first-child { border-top: 0; }
.p7-index a { display: grid; grid-template-columns: 26px 1fr; gap: 10px; align-items: center; padding: 8px 0; font-size: 1rem; font-weight: 600; color: var(--rx-link); }
.p7-index__n { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--p7-tint); color: var(--p7-blue); font-size: .8rem; font-weight: 700; }
.p7-index a:hover .p7-index__n { background: var(--p7-gold); color: #fff; }
@media (max-width: 960px) { .p7-intro__grid { grid-template-columns: minmax(0, 1fr); } .p7-index { max-width: 520px; } }

/* ---------- the guide: five steps on one gold rail ---------- */
.p7-guide { padding: clamp(14px, 2vw, 24px) 0 clamp(20px, 2.6vw, 34px); }
.p7-step { --mk: 68px; --pad: 32px; position: relative; display: grid; grid-template-columns: var(--mk) minmax(0, 1fr); gap: 0 28px; padding: var(--pad) 0; scroll-margin-top: 210px; }
.p7-step::before { content: ''; position: absolute; left: calc(var(--mk) / 2 - 2px); top: 0; bottom: 0; width: 4px; background: var(--p7-gold); }
.p7-step:first-child::before { top: calc(var(--pad) + var(--mk) / 2); }
.p7-step:last-child::before { top: 0; bottom: auto; height: calc(var(--pad) + var(--mk) / 2); }
.p7-step__rail { position: relative; z-index: 1; }
.p7-step__mark { width: var(--mk); height: var(--mk); border-radius: 50%; display: grid; place-items: center; background: var(--p7-blue); color: #fff; font-size: 1.7rem; font-weight: 700; box-shadow: 0 0 0 5px var(--p7-gold); }
.p7-step__label { font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--rx-muted); margin: 0 0 6px; }
.p7-step__body > h2 { margin: 0 0 8px; color: var(--p7-blue); }
.p7-step__sub { margin: 0; color: var(--rx-muted); max-width: 66ch; }
.p7-step__tool { margin-top: 20px; } .p7-step__tool--wide { margin-top: 22px; }
@media (max-width: 700px) { .p7-step { --mk: 44px; --pad: 24px; gap: 0 16px; scroll-margin-top: 150px; } .p7-step__mark { font-size: 1.15rem; box-shadow: 0 0 0 4px var(--p7-gold); } }

/* step 1: the paper picker (tabs as a filing index) */
.rx-docpicker { display: grid; grid-template-columns: 290px minmax(0, 1fr); border: 1px solid var(--rx-line); border-radius: 6px; overflow: hidden; background: #fff; }
.rx-docpicker .rx-tablist { grid-area: 1 / 1; flex-direction: column; flex-wrap: nowrap; gap: 0; margin: 0; background: var(--p7-tint); border-right: 1px solid var(--rx-line); }
.rx-docpicker .rx-tab { border: 0; border-bottom: 1px solid var(--rx-line); border-left: 4px solid transparent; border-radius: 0; background: none; padding: 14px 16px; font-size: .92rem; font-weight: 600; color: var(--rx-ink); }
.rx-docpicker .rx-tab:hover { background: #fff; }
.rx-docpicker .rx-tab[aria-selected=true] { background: #fff; color: var(--p7-blue); border-left-color: var(--p7-gold); font-weight: 700; }
.rx-docpicker .rx-tabpanel { grid-area: 1 / 2; background: #fff; border-radius: 0; padding: 24px 26px; }
.rx-docpicker .rx-tabpanel > p { max-width: 62ch; font-size: 1.02rem; }
.rx-docpicker .rx-paper__from { color: var(--p7-blue-2); margin-bottom: 8px; }
.rx-doc__clock, .rx-paper__clock { color: var(--rx-warn) !important; align-items: flex-start; }
.rx-docpicker .rx-btn { margin-top: 14px; }
@media (max-width: 860px) { .rx-docpicker { grid-template-columns: minmax(0, 1fr); } .rx-docpicker .rx-tablist { grid-area: 1 / 1; border-right: 0; border-bottom: 1px solid var(--rx-line); } .rx-docpicker .rx-tabpanel { grid-area: 2 / 1; padding: 20px; } }

/* step 2: the two clocks */
.rx-tracks { gap: 18px; }
.rx-track { border: 1px solid var(--rx-line); border-radius: 6px; padding: 0 0 20px; background: #fff; }
.rx-track__head { background: var(--p7-blue); color: #fff; padding: 12px 20px; margin: 0 0 14px; border-radius: 5px 5px 0 0; }
.rx-track__head svg { color: var(--p7-gold-lt); } .rx-track__head h3 { font-size: 1.04rem; }
.rx-track > p, .rx-track > ol, .rx-track > .rx-more { padding-left: 20px; padding-right: 20px; }
.rx-track > p { color: var(--rx-muted); font-size: 1rem; }
.rx-track li { grid-template-columns: 130px minmax(0, 1fr); padding: 11px 0; font-size: 1rem; }
.rx-track li b { color: var(--p7-blue); letter-spacing: .06em; }
.rx-track .rx-more { display: inline-flex; margin-top: 12px; }
@media (max-width: 520px) { .rx-track li { grid-template-columns: minmax(0, 1fr); gap: 2px; } }

/* step 3: the situation chooser */
.p7-triage { display: grid; grid-template-columns: 300px minmax(0, 1fr); border: 1px solid var(--rx-line); border-radius: 6px; overflow: hidden; background: #fff; }
.p7-triage__opts { background: var(--p7-tint); border-right: 1px solid var(--rx-line); }
.p7-triage__opt { display: flex; gap: 11px; align-items: center; padding: 13px 16px; border-bottom: 1px solid var(--rx-line); border-left: 4px solid transparent; cursor: pointer; font-size: .95rem; font-weight: 600; }
.p7-triage__opt input { width: 17px; height: 17px; flex: none; accent-color: var(--p7-blue); margin: 0; }
.p7-triage__ic { display: inline-flex; color: var(--p7-blue-2); }
.p7-triage__opt:hover { background: #fff; }
.p7-triage__opt.is-selected, .p7-triage__opt:has(input:checked) { background: #fff; border-left-color: var(--p7-gold); color: var(--p7-blue); }
.p7-triage__opt:focus-within { outline: 3px solid var(--p7-blue-2); outline-offset: -3px; }
.p7-triage__panel { padding: 24px 26px; }
.p7-triage__panel h3 { font-size: 1.22rem; color: var(--p7-blue); margin: 0 0 14px; max-width: 34ch; }
.p7-triage__panel ul { list-style: none; margin: 0 0 18px; padding: 0; display: grid; gap: 10px; }
.p7-triage__panel li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 11px; font-size: 1.02rem; max-width: 70ch; }
.p7-triage__panel li svg { color: var(--rx-ok); margin-top: 4px; }
@media (max-width: 860px) { .p7-triage { grid-template-columns: minmax(0, 1fr); } .p7-triage__opts { border-right: 0; border-bottom: 1px solid var(--rx-line); } .p7-triage__panel { padding: 20px; } }

/* step 4: what to have in front of you */
.rx-checkwrap { border: 1px solid var(--rx-line); border-radius: 6px; border-top: 4px solid var(--p7-gold); padding: 20px 22px; }
.rx-check__count { font-size: .82rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--p7-blue); }
.rx-check__meter { background: var(--rx-surface-2); border-radius: 0; height: 6px; } .rx-check__meter i { background: var(--p7-blue); }
.rx-check label { border-radius: 4px; font-size: 1rem; } .rx-check label:has(input:checked) { background: var(--p7-tint); }
@media (min-width: 820px) { .rx-check { grid-template-columns: 1fr 1fr; gap: 8px 12px; } }

/* step 5: talk to a specialist */
.p7-talk { display: grid; gap: 14px; justify-items: start; max-width: 620px; }
.p7-talk__phone { margin: 0; }
.rx-formcard { border-radius: 6px; border: 1px solid var(--rx-line); border-top: 4px solid var(--p7-gold); width: 100%; }
.rx-formcard__h { color: var(--p7-blue); font-size: 1.24rem; }
.rx-formcard__sub, .rx-form__fine { font-size: 1rem; }
.rx-field label { color: var(--rx-ink); } .rx-consent { font-size: .95rem; }

/* ---------- section heads ---------- */
.p7-head { max-width: 780px; margin-bottom: clamp(20px, 2.6vw, 30px); }
.p7-head h2 { margin: 0 0 8px; color: var(--p7-blue); padding-bottom: 10px; border-bottom: 4px solid var(--p7-gold); display: inline-block; }
.p7-head p { margin: 0; color: var(--rx-muted); font-size: 1.02rem; }
.p7-two { display: grid; grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr); gap: clamp(26px, 3.4vw, 52px); align-items: start; }
.p7-two--tasks { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
@media (max-width: 1000px) { .p7-two, .p7-two--tasks { grid-template-columns: minmax(0, 1fr); } }

/* ---------- forms and services table ---------- */
.p7-forms { border: 1px solid var(--rx-line); border-radius: 6px; margin: 0; }
.p7-forms table { min-width: 620px; font-size: 1rem; }
.p7-forms thead th { background: var(--p7-blue); color: #fff; font-size: .72rem; letter-spacing: .1em; border-bottom: 0; }
.p7-forms__group th { background: var(--p7-tint); color: var(--p7-blue); font-size: .76rem; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; padding: 9px 14px; border-bottom: 1px solid var(--rx-line); }
.p7-forms tbody th[scope=row] { width: 27%; font-weight: 700; } .p7-forms tbody th[scope=row] a { color: var(--rx-link); }
.p7-forms td { color: var(--rx-muted); }
.p7-forms tbody tr:hover > * { background: #f7fafd; }
.p7-forms__go { width: 1%; white-space: nowrap; } .p7-forms__go a { display: inline-flex; gap: 6px; align-items: center; font-weight: 700; color: var(--rx-link); }
@media (max-width: 720px) {
  .p7-forms table { min-width: 0; } .p7-forms thead { display: none; }
  .p7-forms tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; padding: 12px 14px; border-bottom: 1px solid var(--rx-line); }
  .p7-forms th, .p7-forms td { border: 0; padding: 0; }
  .p7-forms tbody th[scope=row] { width: auto; grid-column: 1 / -1; } .p7-forms td:not(.p7-forms__go) { grid-column: 1 / -1; }
  .p7-forms__group { display: block; padding: 0; } .p7-forms__group th { display: block; padding: 9px 14px; }
  .p7-forms__go { display: none; }
}

/* ---------- "I need to" list + the four promises ---------- */
.p7-tasks { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rx-line); }
.p7-tasks li { border-bottom: 1px solid var(--rx-line); }
.p7-tasks a { display: grid; grid-template-columns: 24px minmax(0, 1fr) 18px; gap: 14px; align-items: center; padding: 13px 4px; }
.p7-tasks a:hover { text-decoration: none; } .p7-tasks a:hover b { text-decoration: underline; text-underline-offset: 3px; }
.p7-tasks__ic { color: var(--p7-blue-2); display: inline-flex; }
.p7-tasks__txt b { display: block; color: var(--rx-link); font-weight: 600; }
.p7-tasks__txt span { display: block; color: var(--rx-muted); font-size: 1rem; }
.p7-tasks svg:last-child { color: var(--rx-muted); }
.p7-deflist { margin: 0; border-top: 3px solid var(--p7-blue); }
.p7-deflist > div { display: grid; grid-template-columns: minmax(0, 10rem) minmax(0, 1fr); gap: 6px 20px; padding: 15px 0; border-bottom: 1px solid var(--rx-line); }
.p7-deflist dt { font-weight: 700; color: var(--p7-blue); }
.p7-deflist dd { margin: 0; color: var(--rx-muted); font-size: 1rem; }
@media (max-width: 560px) { .p7-deflist > div { grid-template-columns: minmax(0, 1fr); gap: 3px; } }

/* ---------- by state ---------- */
.p7-states-sec { padding-top: 0; }
.p7-states { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: clamp(22px, 3vw, 48px); align-items: center; background: var(--p7-blue); color: #fff; border-radius: 6px; padding: clamp(24px, 3vw, 34px) clamp(22px, 3vw, 38px); }
.p7-states .rx-kicker { color: var(--p7-gold-lt); } .p7-states h2 { margin: 0 0 8px; }
.p7-states__copy p { margin: 0; color: #d5e3f1; max-width: 62ch; }
.p7-states__tool { display: grid; gap: 14px; justify-items: stretch; }
.p7-states .rx-statejump label { color: #fff; margin-bottom: 6px; display: block; }
.p7-states .rx-statejump select { border-color: transparent; }
.p7-states .rx-btn--line { color: #fff; } .p7-states .rx-btn--line:hover { background: rgba(255,255,255,.12); }
@media (max-width: 860px) { .p7-states { grid-template-columns: minmax(0, 1fr); align-items: start; } }

/* ---------- worklist + comparison ---------- */
.rx-worklist { grid-template-columns: minmax(0, 1fr); gap: 0; }
.rx-worklist li { padding: 12px 0; border-bottom: 1px solid var(--rx-line); } .rx-worklist li:first-child { border-top: 1px solid var(--rx-line); }
.rx-worklist svg { color: var(--p7-blue); } .rx-worklist b { font-weight: 600; } .rx-worklist span { font-size: 1rem; }
.rx-table { border-radius: 6px; } .rx-table table { font-size: 1rem; }
.rx-table thead th { background: var(--p7-blue); color: #fff; letter-spacing: .08em; font-size: .78rem; }
.rx-compare table { min-width: 420px; } .rx-compare tbody th { width: 28%; font-weight: 600; font-size: 1rem; }
.rx-compare thead td { background: var(--p7-blue); } .rx-compare__a { background: var(--p7-tint); } .rx-compare td { font-size: 1rem; }

/* ---------- the small stepper (not the guide rail) ---------- */
.p7-stepper { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; border-top: 3px solid var(--p7-blue); background: #fff; }
.p7-stepper li { padding: 18px 20px 20px; border-right: 1px solid var(--rx-line); border-bottom: 1px solid var(--rx-line); }
.p7-stepper li:last-child { border-right: 0; }
.p7-stepper__n { display: inline-block; min-width: 26px; padding: 1px 0 3px; border-bottom: 3px solid var(--p7-gold); font-weight: 700; color: var(--p7-blue); font-size: .95rem; margin-bottom: 10px; }
.p7-stepper h3 { font-size: 1.04rem; margin: 0 0 6px; } .p7-stepper p { margin: 0; color: var(--rx-muted); font-size: 1rem; }
@media (max-width: 900px) { .p7-stepper { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .p7-stepper li:nth-child(2n) { border-right: 0; } }
@media (max-width: 560px) { .p7-stepper { grid-template-columns: minmax(0, 1fr); } .p7-stepper li { border-right: 0; } }

/* ---------- the read: prose + who we are ---------- */
.p7-read { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: clamp(26px, 3.6vw, 56px); align-items: start; }
.p7-read__body .rx-prose { max-width: 68ch; }
.p7-read__side { position: sticky; top: 220px; }
.p7-read__side .p7-head { margin-bottom: 16px; } .p7-read__side .p7-head h2 { font-size: 1.24rem; }
.p7-identity { display: grid; gap: 0; border: 1px solid var(--rx-line); border-top: 4px solid var(--p7-gold); border-radius: 6px; }
.p7-identity > div { padding: 16px 18px; border-bottom: 1px solid var(--rx-line); } .p7-identity > div:last-child { border-bottom: 0; }
.p7-identity__ic { float: left; margin: 2px 10px 0 0; color: var(--p7-blue-2); }
.p7-identity h3 { font-size: 1rem; margin: 0 0 5px; color: var(--p7-blue); }
.p7-identity p { margin: 0; color: var(--rx-muted); font-size: 1rem; }
@media (max-width: 1000px) { .p7-read { grid-template-columns: minmax(0, 1fr); } .p7-read__side { position: static; } }
@media (min-width: 701px) and (max-width: 1000px) { .p7-identity { grid-template-columns: repeat(3, minmax(0, 1fr)); } .p7-identity > div { border-bottom: 0; border-right: 1px solid var(--rx-line); } .p7-identity > div:last-child { border-right: 0; } }
.rx-prose h2 { color: var(--p7-blue); font-size: 1.3rem; margin-top: 1.8em; }
.rx-prose a:not(.rx-btn) { color: var(--rx-link); }
.rx-callout { background: var(--p7-blue); border-radius: 6px; border-left: 6px solid var(--p7-gold); }
.rx-callout .rx-btn { background: #fff; color: var(--p7-blue); }
.rx-notice { border-left-width: 6px; background: var(--rx-surface); } .rx-notice--warn { background: #fdf5e8; border-left-color: var(--p7-gold); }

/* ---------- glossary + FAQ ---------- */
.rx-glossary { gap: 0 48px; border-top: 3px solid var(--p7-blue); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 860px) { .rx-glossary { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
.rx-glossary > div { border-top: 0; border-bottom: 1px solid var(--rx-line); padding: 14px 0; }
.rx-glossary dt { color: var(--p7-blue); font-weight: 700; } .rx-glossary dd { font-size: 1rem; }
.fy-faq { gap: 0; border-top: 3px solid var(--p7-blue); }
.fy-faq__item { border: 0; border-bottom: 1px solid var(--rx-line); border-radius: 0; }
.fy-faq__q { padding: 16px 4px; font-weight: 600; color: var(--p7-blue); font-size: 1.02rem; }
.fy-faq__q svg { color: var(--p7-blue-2); } .fy-faq__a { padding: 0 4px 18px; max-width: 80ch; }
.p7-faq-sec { padding-bottom: clamp(30px, 4vw, 54px); }

/* ---------- closing call to action: white box, gold top rule, blue text ---------- */
.rx-cta { background: #fff; color: var(--p7-blue); text-align: left; padding: 0 0 clamp(44px, 6vw, 76px); }
.rx-cta .rx-wrap { border: 1px solid var(--rx-line); border-top: 6px solid var(--p7-gold); border-radius: 0 0 6px 6px; padding: clamp(26px, 3vw, 38px) clamp(22px, 3vw, 38px); max-width: calc(var(--rx-max) - 2 * var(--rx-gutter)); }
.rx-cta h2 { margin: 0 0 10px; max-width: 26ch; } .rx-cta p { margin: 0; color: var(--rx-muted); max-width: 72ch; }
.rx-cta .rx-actions { justify-content: flex-start; margin-top: 22px; }
.rx-cta__fine { font-size: 1rem; color: var(--rx-muted); margin: 18px 0 0 !important; max-width: 92ch; }

/* ---------- interior pages (doc frame) ---------- */
.rx-pagehead { background: var(--p7-blue); color: #fff; border-bottom: 4px solid var(--p7-gold); }
.rx-pagehead h1 { font-size: clamp(1.8rem, 3vw, 2.5rem); }
.rx-pagehead .rx-kicker { color: var(--p7-gold-lt); } .rx-pagehead__sub, .rx-pagehead__meta { color: #d5e3f1; }
.rx-pagehead .rx-crumbs { color: #bed2e6; margin-bottom: 16px; } .rx-pagehead .rx-crumbs a:hover { color: #fff; }
.rx-pagehead .rx-wrap { padding-top: clamp(22px, 3vw, 38px); padding-bottom: clamp(24px, 3.2vw, 40px); }
.rx-pagehead .rx-btn--solid { background: #fff; color: var(--p7-blue); } .rx-pagehead .rx-btn--solid:hover { background: var(--p7-gold-lt); }
.rx-pagehead .rx-btn--line { color: #fff; } .rx-pagehead .rx-btn--line:hover { background: rgba(255,255,255,.12); }
@media (min-width: 1201px) { .rx-doc { grid-template-columns: 228px minmax(0, 1fr) 286px; } }
.rx-doc__main .rx-table table { min-width: 0; }
.rx-refs h3 svg, .rx-identity h3 svg { display: none; }  /* shared blocks.legal_refs / blocks.identity emit the scales glyph: a law-firm cue on these sites */
.rx-identity h3 { display: block; } .rx-identity { border-radius: 6px; border-top: 4px solid var(--p7-gold); }
.rx-identity h3 { color: var(--p7-blue); } .rx-identity p { font-size: 1rem; }
.rx-sidenav__h { color: var(--p7-blue); font-weight: 700; padding-bottom: 7px; border-bottom: 3px solid var(--p7-gold); }
.rx-sidenav a { border-left: 3px solid var(--rx-line); color: var(--rx-link); font-size: .93rem; }
.rx-sidenav a:hover { background: var(--p7-tint); text-decoration: none; }
.rx-sidenav a[aria-current] { border-left-color: var(--p7-gold); border-left-width: 4px; background: var(--p7-tint); color: var(--p7-blue); }
.fy-toc a:hover, .fy-toc a.is-active { border-left-color: var(--p7-gold); }
.rx-guidesteps .rx-steps--rail > li { border-left-color: var(--p7-gold); border-left-width: 4px; }
.rx-guidesteps .rx-steps--rail > li:last-child { border-left-color: transparent; }
.rx-guidesteps .rx-steps--rail > li::before { border-color: var(--p7-gold); background: var(--p7-blue); color: #fff; font-family: var(--rx-font-body); }
.rx-card p, .rx-linklist span, .rx-byline { font-size: 1rem; }
.rx-card { border-radius: 6px; border-top: 4px solid var(--p7-gold); } .rx-card__icon { color: var(--p7-blue); } .rx-card h3 a { color: var(--rx-link); }
.rx-chips li { border-radius: 4px; background: var(--p7-tint); border-color: #cddcea; font-size: 1rem; }
.rx-refs__note, .rx-refs span, .rx-refs b { font-size: 1rem; }
.rx-linklist b { color: var(--rx-link); } .rx-refs { border-radius: 6px; } .rx-facts thead th { background: var(--p7-blue); color: #fff; }
.rx-contact__phone a { color: var(--p7-blue); }
.rx-footer .rx-contact__phone { font-size: 1.12rem; } .rx-footer .rx-contact__phone a { color: #fff; }
.rx-related a { border-radius: 4px; } .rx-related a:hover { background: var(--p7-tint); text-decoration: none; }

/* ---------- by-state disclosure list (states page) ---------- */
.rx-statelist { border-top: 3px solid var(--p7-blue); margin-top: 22px; }
.rx-staterow { border-bottom: 1px solid var(--rx-line); scroll-margin-top: 200px; }
.rx-staterow > summary { padding: 14px 12px; border-left: 4px solid transparent; color: var(--rx-ink); }
.rx-staterow > summary:hover { background: var(--p7-tint); } .rx-staterow > summary svg { color: var(--p7-blue-2); }
.rx-staterow__name { color: var(--rx-link); }
.rx-staterow__type { font-size: .9rem; font-weight: 600; color: var(--rx-muted); }
.rx-staterow[open] > summary { background: var(--p7-tint); border-left-color: var(--p7-gold); color: var(--p7-blue); }
.rx-staterow.is-target > summary, .rx-staterow:target > summary { background: var(--p7-tint); border-left-color: var(--p7-gold); box-shadow: inset 0 0 0 1px #c6d7e8; }
.rx-statefacts { padding: 2px 16px 22px; max-width: 74ch; }
.rx-statefacts dt { color: var(--p7-blue); font-size: .78rem; letter-spacing: .1em; margin-top: 14px; }
.rx-statefacts dd { font-size: 1rem; color: var(--rx-ink); }
.rx-facts__src { font-family: var(--rx-font-body); font-size: 1rem; color: var(--rx-muted); white-space: normal; }
.rx-verified { color: var(--rx-ok); }

/* ---------- pop-in (sheet), sticky bar, footer ---------- */
.fy-popin__panel { border-top: 5px solid var(--p7-gold); }
.fy-popin__head h3 { color: var(--p7-blue); } .fy-popin__grip { background: var(--rx-surface-2); }
.fy-sticky__btn { color: var(--p7-blue); } .fy-sticky__btn--primary { background: var(--p7-blue); color: #fff; }
.rx-footer { border-top: 4px solid var(--p7-gold); }
.sr-footer-ident { background: rgba(255,255,255,.06); }
.rx-footer .rx-logo__word span { color: #9dc3e6; } .rx-footer__h { color: #9dc3e6; opacity: 1; }
