/* District Retirement Options — institutional research / executive brief. */
@font-face {
  font-family: "Merriweather";
  src: url("/sites/districtretirementoptions.com/assets/fonts/merriweather-bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Lato";
  src: url("/sites/districtretirementoptions.com/assets/fonts/lato-regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Lato";
  src: url("/sites/districtretirementoptions.com/assets/fonts/lato-bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

.district-retirement-options {
  --dro-font-heading: "Merriweather", Georgia, serif;
  --dro-font-body: "Lato", "Segoe UI", Arial, sans-serif;
  --font-sans: var(--dro-font-body);
  --font-display: var(--dro-font-heading);
  --dro-bg: #f8fafc;
  --dro-paper: #fff;
  --dro-ink: #1e293b;
  --dro-dark-section: #2F4F6F;
  --dro-copy: #475569;
  --dro-muted: #64748b;
  --dro-line: #e2e8f0;
  --dro-accent: #059669;
  --dro-accent-dark: #047857;
  --dro-accent-deep: #065f46;
  --dro-accent-soft: #ecfdf5;
  --dro-slate-soft: #f1f5f9;
  --dro-header-height: 5.15rem;
  --dro-canvas: 77.5rem;
  color: var(--dro-copy);
  background: var(--dro-bg);
  font-family: var(--dro-font-body);
  font-weight: 400;
  line-height: 1.6;
}
.district-retirement-options *, .district-retirement-options *::before, .district-retirement-options *::after { box-sizing: border-box; }
.district-retirement-options button, .district-retirement-options input, .district-retirement-options select, .district-retirement-options textarea { font-family: var(--dro-font-body); }
.district-retirement-options h1, .district-retirement-options h2, .district-retirement-options h3, .district-retirement-options h4 { color: var(--dro-ink); font-family: var(--dro-font-heading); }
.district-retirement-options h1 { font-size: clamp(3.1rem, 5.75vw, 5.8rem); font-weight: 700; line-height: 1.08; letter-spacing: -.02em; }
.district-retirement-options h2 { font-size: clamp(2.2rem, 3.8vw, 3.8rem); font-weight: 700; line-height: 1.14; letter-spacing: -.015em; }
.district-retirement-options h3, .district-retirement-options h4 { font-weight: 700; line-height: 1.25; letter-spacing: -.01em; }
.district-retirement-options p { color: var(--dro-copy); }
.district-retirement-options a { text-underline-offset: .22em; }
.district-retirement-options :focus-visible { outline: 3px solid var(--dro-dark-section); outline-offset: 3px; }
.district-retirement-options .form-field input:focus-visible, .district-retirement-options .form-field select:focus-visible, .district-retirement-options .form-field textarea:focus-visible, .district-retirement-options .timezone-control select:focus-visible { outline-color: var(--dro-dark-section); border-color: var(--dro-accent-dark); }
.dro-research-band :focus-visible, .dro-question-field :focus-visible, .dro-comparison-field :focus-visible, .dro-checkpoint-field :focus-visible, .dro-strategy-roles :focus-visible, .dro-readiness-bring :focus-visible, .district-retirement-options .disclosures-questions :focus-visible, .district-retirement-options .terms-contact :focus-visible, .district-retirement-options .footer :focus-visible { outline-color: #fff; }
.district-retirement-options .dro-canvas, .district-retirement-options .container { width: min(calc(100% - 4rem), var(--dro-canvas)); margin-inline: auto; }
.dro-editorial-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 1.5rem; }
.dro-report-label, .district-retirement-options .eyebrow { margin: 0 0 1rem; color: var(--dro-accent-dark); font-size: .66rem; font-weight: 700; letter-spacing: .17em; line-height: 1.3; text-transform: uppercase; }
.dro-section-context { margin: 0 0 .45rem; color: var(--dro-muted); font-size: .58rem; font-weight: 700; letter-spacing: .13em; line-height: 1.35; text-transform: uppercase; }
.dro-section-context--light { color: #cbd5e1; }
.dro-lead { max-width: 43rem; font-size: clamp(1.02rem, 1.35vw, 1.18rem); line-height: 1.72; }
.dro-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem 1.65rem; margin-top: 2rem; }
.district-retirement-options .button, .dro-button { display: inline-flex; min-height: 3rem; align-items: center; justify-content: center; gap: .75rem; padding: .75rem 1.15rem; color: #fff; background: var(--dro-accent-dark); border: 1px solid var(--dro-accent); border-radius: 5px; font-size: .79rem; font-weight: 700; line-height: 1.2; text-decoration: none; transition: background-color .18s ease, border-color .18s ease; }
.district-retirement-options .button:hover, .dro-button:hover { color: #fff; background: var(--dro-accent-deep); border-color: var(--dro-accent-deep); }
.district-retirement-options .button--small { min-height: 2.65rem; padding: .62rem .95rem; }
.dro-text-link, .district-retirement-options .text-link { display: inline-flex; align-items: center; gap: .55rem; color: var(--dro-accent-dark); font-size: .8rem; font-weight: 700; text-decoration-thickness: 1px; }
.dro-text-link--light { color: #6ee7b7; }

/* Two-level institutional masthead. */
.district-retirement-options .site-header { position: sticky; top: 0; z-index: 100; padding-top: 0; background: #fff; border-bottom: 1px solid var(--dro-line); }
.district-retirement-options .site-header::before { content: none; display: none; }
.district-retirement-options .header__inner { min-height: var(--dro-header-height); }
.district-retirement-options .header__brand { min-width: 15rem; color: var(--dro-ink); text-decoration: none; }
.district-retirement-options .site-header .brand__logo { width: clamp(14.4rem, 18vw, 16.25rem); height: auto; max-height: 2.9rem; object-fit: contain; object-position: left center; }
.district-retirement-options .site-header .brand__tagline { display: block; margin-top: .3rem; color: var(--dro-muted); font-family: var(--dro-font-body); font-size: .64rem; line-height: 1.2; white-space: nowrap; }
.district-retirement-options .brand__name { display: inline-flex; align-items: center; max-width: 15rem; color: var(--dro-ink); font-family: var(--dro-font-body); font-size: .94rem; font-weight: 700; letter-spacing: -.025em; line-height: 1.05; }
.district-retirement-options .brand__name::before { content: "DRO"; display: inline-grid; flex: 0 0 2.15rem; width: 2.15rem; height: 2.15rem; margin-right: .7rem; place-items: center; color: #fff; background: var(--dro-ink); border-radius: 4px; font-size: .57rem; letter-spacing: .08em; }
.district-retirement-options .desktop-nav { gap: clamp(.8rem, 1.4vw, 1.5rem); }
.district-retirement-options .desktop-nav ul { gap: clamp(.7rem, 1.2vw, 1.3rem); }
.district-retirement-options .desktop-nav a:not(.button) { padding: .35rem 0; color: var(--dro-copy); font-size: .72rem; font-weight: 700; text-decoration: none; }
.district-retirement-options .desktop-nav a:not(.button):hover, .district-retirement-options .desktop-nav a[aria-current="page"] { color: var(--dro-accent-dark); }
.district-retirement-options .desktop-nav a[aria-current="page"] { box-shadow: inset 0 -2px var(--dro-accent); }

/* Homepage research cover. */
.dro-cover { padding: 3rem 0 2.5rem; background: var(--dro-bg); border-bottom: 1px solid var(--dro-line); }
.dro-cover__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 1.5rem; align-items: start; }
.dro-cover__message { grid-column: 1 / span 6; padding: 0; }
.dro-cover__message h1 { width: calc(100% + 4rem); max-width: 15ch; margin: 0 0 1.7rem; font-family: var(--dro-font-heading); font-weight: 700; line-height: 1.08; letter-spacing: -.02em; }
.dro-income-field { grid-column: 9 / span 4; margin: 0; padding: .15rem 0 0 1.5rem; border-left: 1px solid var(--dro-line); }
.dro-hero-visual { position: relative; grid-column: 8 / span 5; min-height: 43rem; padding-bottom: 8rem; }
.dro-hero-photo { position: relative; height: 31rem; margin: 0 0 0 3.25rem; overflow: hidden; background: var(--dro-slate-soft); border: 1px solid var(--dro-line); border-radius: 5px; }
.dro-hero-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 52% 38%; }
.dro-hero-photo figcaption { position: absolute; top: .75rem; left: .75rem; margin: 0; padding: .35rem .55rem; color: #fff; background: rgba(47,79,111,.9); border-radius: 3px; font-size: .54rem; font-weight: 700; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.dro-hero-visual .dro-income-field { position: absolute; z-index: 2; bottom: 0; left: -2rem; width: calc(100% + 2rem); margin: 0; padding: 1.15rem 1.25rem; background: var(--dro-paper); border: 1px solid var(--dro-line); border-left: 3px solid var(--dro-dark-section); border-radius: 5px; }
.dro-hero-visual .dro-income-field__bars { padding: .7rem 0 .5rem; }
.dro-hero-visual .dro-income-field__bars div { padding: .55rem 0; }
.dro-hero-visual .dro-income-field figcaption { margin-top: .7rem; font-size: .58rem; }
.dro-data-heading { display: flex; justify-content: space-between; gap: 1rem; padding-bottom: 1rem; color: var(--dro-muted); border-bottom: 1px solid var(--dro-line); font-size: .58rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.dro-data-heading span:last-child { color: var(--dro-accent-dark); }
.dro-data-heading i { display: inline-block; width: .42rem; height: .42rem; margin-right: .35rem; background: var(--dro-accent); border-radius: 50%; }
.dro-income-field__bars { padding: 2rem 0 1.25rem; }
.dro-income-field__bars div { display: grid; grid-template-columns: 1fr auto; gap: .15rem 1rem; padding: 1rem 0; border-bottom: 1px solid var(--dro-line); }
.dro-income-field__bars span { color: var(--dro-ink); font-size: .72rem; font-weight: 700; }
.dro-income-field__bars b { color: var(--dro-muted); font-size: .56rem; font-weight: 700; text-transform: uppercase; }
.dro-income-field__bars i { position: relative; grid-column: 1 / span 2; height: .32rem; margin-top: .6rem; overflow: hidden; background: #dbe3eb; }
.dro-income-field__bars i::after { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--bar); background: var(--dro-accent); }
.dro-income-field__bars div:nth-child(2) i::after { background: var(--dro-ink); }
.dro-income-field__bars div:nth-child(3) i::after { background: #94a3b8; }
.dro-income-field__bars em { display: none; }
.dro-data-factors { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; border-top: 1px solid var(--dro-line); border-bottom: 1px solid var(--dro-line); }
.dro-data-factors div { min-width: 0; padding: .8rem .55rem; border-right: 1px solid var(--dro-line); }
.dro-data-factors div:first-child { padding-left: 0; }
.dro-data-factors div:last-child { border-right: 0; }
.dro-data-factors dt { color: var(--dro-ink); font-size: .55rem; font-weight: 700; text-transform: uppercase; }
.dro-data-factors dd { margin: .25rem 0 0; color: var(--dro-muted); font-size: .58rem; }
.dro-income-field figcaption, .dro-power-chart figcaption { margin-top: 1rem; color: var(--dro-muted); font-size: .63rem; line-height: 1.55; }

/* Editorial sections and flat registers. */
.dro-editorial-section, .dro-sequence-section, .dro-register-section, .dro-overview-section { padding: clamp(6rem, 10vw, 9rem) 0; background: #fff; }
#planning-framework { padding-top: 4rem; padding-bottom: 4rem; }
.dro-editorial-heading { grid-column: 1 / span 7; padding-left: 0; }
.dro-editorial-heading h2 { max-width: 13ch; margin: 0; }
.dro-editorial-heading > p:last-child { max-width: 37rem; margin-top: 1.5rem; }
.dro-editorial-intro { grid-column: 9 / span 4; align-self: end; margin: 0; padding-bottom: .35rem; font-size: .9rem; }
.dro-framework-register { grid-column: 1 / span 12; margin-top: 4rem; border-top: 1px solid var(--dro-ink); }
.dro-framework-register article { display: grid; grid-template-columns: 2.15fr 3fr 1.65fr; gap: 1.4rem; align-items: start; padding: 2rem 0; border-bottom: 1px solid var(--dro-line); }
.dro-framework-register article div p { margin: 0 0 .45rem; color: var(--dro-accent-dark); font-size: .58rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dro-framework-register h3 { margin: 0; font-size: 1.25rem; }
.dro-framework-register article > p { margin: 0; font-size: .86rem; }
.dro-framework-register .dro-text-link { justify-self: end; }
#planning-framework .dro-editorial-heading { grid-column: 1 / span 8; }
#planning-framework .dro-editorial-heading h2 { max-width: 21ch; font-size: clamp(2rem, 3vw, 2.8rem); }
#planning-framework .dro-editorial-heading > p:last-child { max-width: 40rem; margin: 1rem 0 0; font-size: .95rem; }
#planning-framework .dro-framework-register { margin-top: 2.75rem; }
#planning-framework .dro-framework-register article { grid-template-columns: minmax(0, 2.35fr) minmax(0, 3fr) minmax(10rem, 1.6fr); align-items: center; padding: 2rem 0; }
#planning-framework .dro-step-label { display: flex; align-items: baseline; gap: .45rem; }
#planning-framework .dro-step-label span { color: #94a3b8; font-size: 1.35rem; font-weight: 400; letter-spacing: -.02em; }
#planning-framework .dro-step-label i { color: #cbd5e1; font-style: normal; }
#planning-framework .dro-framework-register h3 { font-size: 1.2rem; }
#planning-framework .dro-framework-register .dro-text-link { align-self: center; }
.dro-research-band, .dro-question-field, .dro-comparison-field, .dro-checkpoint-field { padding: clamp(5.5rem, 9vw, 8rem) 0; background: var(--dro-dark-section); }
.dro-research-band__statement { grid-column: 1 / span 6; padding-left: 0; }
.dro-research-band__statement h2, .dro-question-field h2, .dro-comparison-field h2, .dro-checkpoint-field h2 { color: #fff; }
.dro-research-band__statement h2 { max-width: 10ch; margin: 0 0 1.4rem; }
.dro-research-band__statement > p:not(.dro-report-label) { color: #cbd5e1; }
.dro-research-band .dro-report-label, .dro-question-field .dro-report-label, .dro-comparison-field .dro-report-label, .dro-checkpoint-field .dro-report-label { color: #6ee7b7; }
.dro-review-register { grid-column: 8 / span 5; border-top: 1px solid #64748b; }
.dro-review-register__head, .dro-review-register > div { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(226,232,240,.16); }
.dro-review-register__head { color: #94a3b8; font-size: .56rem; font-weight: 700; text-transform: uppercase; }
.dro-review-register > div > span { color: #fff; font-size: .76rem; }
.dro-review-register > div > span i { display: inline-block; width: .42rem; height: .42rem; margin-right: .55rem; background: var(--dro-accent); border-radius: 50%; }
.dro-review-register strong { color: #cbd5e1; font-size: .71rem; font-weight: 700; }
.dro-research-band__statement > p { max-width: 38rem; }
.dro-research-band__statement > p + p { margin-top: 1rem; }
.dro-research-band__statement .dro-text-link { margin-top: .55rem; }
.dro-paycheck-compare { grid-column: 8 / span 5; margin: 0; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.28); }
.dro-paycheck-compare h3 { margin: 0 0 1.8rem; color: #fff; font-family: var(--dro-font-body); font-size: .72rem; letter-spacing: .13em; line-height: 1.35; text-transform: uppercase; }
.dro-paycheck-scenario + .dro-paycheck-scenario { margin-top: 1.65rem; }
.dro-paycheck-scenario h4 { margin: 0 0 .65rem; color: #fff; font-family: var(--dro-font-body); font-size: .68rem; letter-spacing: .08em; line-height: 1.35; text-transform: uppercase; }
.dro-paycheck-bar { display: flex; width: 100%; height: 1.15rem; overflow: hidden; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.35); }
.dro-paycheck-bar span { display: block; height: 100%; border-right: 2px solid var(--dro-dark-section); }
.dro-paycheck-bar span:last-child { border-right: 0; }
.dro-paycheck-bar__salary { width: 100%; background: #e2e8f0; }
.dro-paycheck-bar__pension { background: var(--dro-accent); }
.dro-paycheck-bar__gap { background-color: rgba(255,255,255,.06); border: 1px dashed rgba(255,255,255,.52); }
.dro-paycheck-bar__account { background: #5eead4; }
.dro-paycheck-bar__other { background: #cbd5e1; }
.dro-segment-key { display: grid; gap: .55rem; margin: .55rem 0 0; color: #cbd5e1; font-size: .64rem; line-height: 1.35; }
.dro-segment-key--single { grid-template-columns: 1fr; }
.dro-segment-key--two { grid-template-columns: 55fr 45fr; }
.dro-segment-key--three { grid-template-columns: 55fr 35fr 28fr; }
.dro-segment-key span { color: #cbd5e1; }
.dro-segment-key strong { display: block; color: #fff; font-size: .72rem; }
.dro-paycheck-compare figcaption { margin-top: 1.75rem; padding-top: 1rem; color: #cbd5e1; border-top: 1px solid rgba(255,255,255,.16); font-size: .66rem; line-height: 1.55; }

/* Purchasing Power research spread. */
.dro-data-cover { padding: 3rem 0 2.5rem; background: var(--dro-bg); }
.dro-data-cover__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 1.5rem; align-items: start; }
.dro-data-cover__message { grid-column: 1 / span 5; padding: 0; }
.dro-data-cover__message h1 { max-width: 14ch; margin: 0 0 1.5rem; font-size: clamp(3rem, 5vw, 5.1rem); }
.dro-power-chart { grid-column: 7 / span 6; margin: 4.5rem 0 0; padding-left: 1.5rem; border-left: 1px solid var(--dro-line); }
.dro-chart-summary { margin: 1rem 0 0; color: var(--dro-copy); font-size: .72rem; font-weight: 700; }
.dro-chart-axis-title { display: flex; justify-content: space-between; gap: 1rem; margin: 1rem 0 0; color: var(--dro-muted); font-size: .6rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.dro-chart-axis-title span { white-space: nowrap; }
.dro-power-chart__plot { margin-top: .4rem; }
.dro-power-chart svg { display: block; width: 100%; height: auto; overflow: visible; }
.dro-chart-gridline { stroke: var(--dro-line); stroke-width: 1; vector-effect: non-scaling-stroke; }
.dro-chart-axis { stroke: #94a3b8; stroke-width: 1; vector-effect: non-scaling-stroke; }
.dro-chart-series { fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.dro-chart-series--cost { stroke: #9b5148; stroke-width: 3.5; }
.dro-chart-series--pension { stroke: #2f4f6f; stroke-width: 2.5; stroke-dasharray: 8 6; }
.dro-chart-series--supported { stroke: var(--dro-accent); stroke-width: 4; }
.dro-chart-axis-text { fill: var(--dro-muted); font-family: var(--dro-font-body); font-size: 13px; }
.dro-chart-end-label { font-family: var(--dro-font-body); font-size: 13px; font-weight: 700; paint-order: stroke; stroke: var(--dro-bg); stroke-width: 5px; stroke-linejoin: round; }
.dro-chart-end-label--cost { fill: #9b5148; }
.dro-chart-end-label--pension { fill: #2f4f6f; }
.dro-chart-end-label--supported { fill: var(--dro-accent-dark); }
.dro-chart-x-title { margin: -.15rem 0 .65rem; color: var(--dro-muted); font-size: .62rem; font-weight: 700; letter-spacing: .06em; text-align: center; text-transform: uppercase; }
.dro-chart-legend { display: flex; flex-wrap: wrap; gap: .6rem 1.4rem; margin-top: .4rem; color: var(--dro-copy); font-size: .68rem; }
.dro-chart-legend span { display: inline-flex; align-items: center; gap: .45rem; }
.dro-chart-legend i { display: inline-block; width: 1.5rem; height: 3px; background: var(--dro-accent); }
.dro-chart-legend__cost i { height: 3px; background: #9b5148; }
.dro-chart-legend__pension i { height: 2px; background: repeating-linear-gradient(to right, #2f4f6f 0 7px, transparent 7px 11px); }
.dro-chart-assumptions { margin-top: 1rem; padding-top: .9rem; border-top: 1px solid var(--dro-line); }
.dro-chart-assumptions > p { margin: 0 0 .75rem; color: var(--dro-ink); font-size: .58rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dro-chart-assumptions dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem 1.25rem; margin: 0; }
.dro-chart-assumptions dl > div { min-width: 0; }
.dro-chart-assumptions dt { color: var(--dro-muted); font-size: .55rem; font-weight: 700; letter-spacing: .04em; line-height: 1.35; text-transform: uppercase; }
.dro-chart-assumptions dd { margin: .15rem 0 0; color: var(--dro-ink); font-size: .68rem; font-weight: 700; line-height: 1.4; }
.dro-chart-assumptions .dro-chart-assumptions__disclosure { margin: .85rem 0 0; padding-top: .75rem; color: var(--dro-copy); border-top: 1px solid var(--dro-line); font-size: .64rem; font-weight: 700; letter-spacing: 0; line-height: 1.5; text-transform: none; }
.dro-research-strip { padding: 4.5rem 0; background: #fff; border-top: 1px solid var(--dro-line); border-bottom: 1px solid var(--dro-line); }
.dro-research-strip__heading { display: grid; grid-template-columns: 1.35fr 1fr; gap: 4rem; align-items: end; padding: 0 0 2.25rem; }
.dro-research-strip__heading h2 { max-width: 18ch; margin: 0; font-size: clamp(1.75rem, 3vw, 2.8rem); }
.dro-research-strip__heading > p { max-width: 32rem; margin: 0; font-size: .9rem; line-height: 1.65; }
.dro-research-strip__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.dro-driver-card { min-height: 13rem; padding: 1.6rem; background: var(--dro-bg); border: 1px solid var(--dro-line); border-top: 3px solid var(--dro-accent); border-radius: 5px; }
.dro-driver-card__step { margin: 0 0 1.25rem; color: var(--dro-accent-dark); font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dro-driver-card h3 { margin: 0; color: var(--dro-ink); font-size: 1.2rem; }
.dro-driver-card__body { margin: .8rem 0 0; color: var(--dro-copy); font-size: .82rem; line-height: 1.65; }
.dro-timeline { grid-column: 8 / span 5; margin: 0; padding: 0; border-top: 1px solid var(--dro-ink); list-style: none; }
.dro-timeline li { display: grid; grid-template-columns: 5rem 1fr; gap: 1.2rem; padding: 1.5rem 0; border-bottom: 1px solid var(--dro-line); }
.dro-timeline > li > span { color: var(--dro-accent-dark); font-size: .65rem; font-weight: 700; text-transform: uppercase; }
.dro-timeline h3 { margin: 0 0 .45rem; font-size: 1.05rem; }
.dro-timeline p { margin: 0; font-size: .8rem; }
.dro-cola-timeline { padding: 5rem 0; }
.dro-cola-timeline .dro-editorial-heading { grid-column: 1 / span 5; padding-right: 1rem; }
.dro-cola-timeline .dro-editorial-heading h2 { max-width: 13ch; font-size: clamp(2.15rem, 3.6vw, 3.55rem); }
.dro-cola-timeline .dro-editorial-heading > p:last-child { max-width: 32rem; margin: 1.5rem 0 0; font-size: .92rem; line-height: 1.7; }
.dro-cola-timeline .dro-timeline { position: relative; grid-column: 7 / span 6; display: grid; gap: 1rem; margin: 0; padding: 0 0 0 1.5rem; border: 0; }
.dro-cola-timeline .dro-timeline::before { position: absolute; top: 1.5rem; bottom: 1.5rem; left: 0; width: 1px; content: ""; background: #a7f3d0; }
.dro-cola-timeline .dro-timeline li { position: relative; display: block; padding: 1.35rem 1.45rem; background: var(--dro-bg); border: 1px solid var(--dro-line); border-radius: 5px; }
.dro-cola-timeline .dro-timeline li::before { position: absolute; top: 1.55rem; left: -1.78rem; width: .58rem; height: .58rem; content: ""; background: var(--dro-accent); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px var(--dro-accent); }
.dro-cola-timeline .dro-timeline > li > span { display: inline-block; margin: 0 0 .55rem; padding: .2rem .45rem; color: var(--dro-accent-dark); background: var(--dro-accent-soft); border-radius: 3px; font-size: .58rem; letter-spacing: .1em; line-height: 1.35; }
.dro-cola-timeline .dro-timeline h3 { margin: 0; font-size: 1.08rem; }
.dro-cola-timeline .dro-timeline p { margin: .55rem 0 0; color: var(--dro-copy); font-size: .8rem; line-height: 1.62; }
.dro-question-field > .dro-canvas > div { grid-column: 1 / span 5; align-self: start; padding-left: 0; }
.dro-question-field h2 { margin: 0; }
.dro-check-list { grid-column: 7 / span 6; display: grid; gap: 0; margin: 0; padding: 0; border-top: 1px solid #64748b; list-style: none; }
.dro-question-field .dro-check-list li { display: grid; grid-template-columns: .75rem minmax(0, 1fr); gap: .8rem; padding: 1.6rem 0; color: #e2e8f0; border-bottom: 1px solid rgba(226,232,240,.16); font-family: var(--dro-font-body); font-size: .92rem; line-height: 1.6; }
.dro-question-field .dro-check-list span { padding-top: .45rem; color: var(--dro-accent); font-size: .5rem; line-height: 1; }

/* Practical 403(b) strategy page. */
.dro-strategy-hero { padding: 3rem 0 3.5rem; background: var(--dro-bg); border-bottom: 1px solid var(--dro-line); }
.dro-strategy-hero__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: center; }
.dro-strategy-hero__message { grid-column: 1 / span 5; }
.dro-strategy-hero__message h1 { max-width: 11ch; margin: 0 0 1.35rem; font-size: clamp(2.8rem, 4.5vw, 4.6rem); }
.dro-strategy-hero__message .dro-lead { max-width: 35rem; }
.dro-strategy-hero__visual { position: relative; grid-column: 7 / span 6; align-self: start; min-width: 0; min-height: 41rem; }
.dro-strategy-hero__photo { position: absolute; top: 0; right: 0; width: 78%; height: 22rem; margin: 0; overflow: hidden; background: var(--dro-slate-soft); border: 1px solid var(--dro-line); border-radius: 5px; }
.dro-strategy-hero__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 48%; }
.dro-strategy-chart { position: relative; z-index: 1; width: 94%; margin: 19.1rem auto 0 0; padding: 1.25rem; background: var(--dro-paper); border: 1px solid var(--dro-line); border-left: 3px solid var(--dro-dark-section); border-radius: 5px; }
.dro-strategy-chart__heading { padding-bottom: .9rem; border-bottom: 1px solid var(--dro-line); }
.dro-strategy-chart__heading h2 { margin: 0; font-family: var(--dro-font-body); font-size: .82rem; letter-spacing: .08em; text-transform: uppercase; }
.dro-strategy-chart__heading p { margin: .35rem 0 0; color: var(--dro-muted); font-size: .68rem; }
.dro-strategy-chart__axis-title { margin: 1rem 0 .25rem; color: var(--dro-muted); font-size: .58rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.dro-strategy-chart__plot svg { display: block; width: 100%; height: auto; overflow: visible; }
.dro-strategy-chart__gridline { stroke: var(--dro-line); stroke-width: 1; vector-effect: non-scaling-stroke; }
.dro-strategy-chart__axis { stroke: #94a3b8; stroke-width: 1; vector-effect: non-scaling-stroke; }
.dro-strategy-chart__axis-text { fill: var(--dro-muted); font-family: var(--dro-font-body); font-size: 13px; }
.dro-strategy-chart__series { fill: none; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.dro-strategy-chart__series--baseline { stroke: #2f4f6f; stroke-width: 3; stroke-dasharray: 8 6; }
.dro-strategy-chart__series--growth { stroke: var(--dro-accent); stroke-width: 3.5; }
.dro-strategy-chart__series--accelerated { stroke: #397a7a; stroke-width: 3; stroke-dasharray: 2 5; }
.dro-strategy-chart__marker--baseline { fill: #2f4f6f; }
.dro-strategy-chart__marker--growth { fill: var(--dro-accent); }
.dro-strategy-chart__marker--accelerated { fill: #397a7a; }
.dro-strategy-chart__end-label { font-family: var(--dro-font-body); font-size: 12px; font-weight: 700; paint-order: stroke; stroke: var(--dro-bg); stroke-width: 5px; stroke-linejoin: round; }
.dro-strategy-chart__end-label--baseline { fill: #2f4f6f; }
.dro-strategy-chart__end-label--growth { fill: var(--dro-accent-dark); }
.dro-strategy-chart__end-label--accelerated { fill: #316b6b; }
.dro-strategy-chart__x-title { margin: -.2rem 0 .75rem; color: var(--dro-muted); font-size: .58rem; font-weight: 700; letter-spacing: .06em; text-align: center; text-transform: uppercase; }
.dro-strategy-chart__assumptions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .45rem 1rem; margin: 0; padding: .85rem 0; border-top: 1px solid var(--dro-line); border-bottom: 1px solid var(--dro-line); list-style: none; }
.dro-strategy-chart__assumptions li { position: relative; padding-left: .7rem; color: var(--dro-copy); font-size: .6rem; line-height: 1.4; }
.dro-strategy-chart__assumptions li::before { position: absolute; top: .42rem; left: 0; width: .3rem; height: .3rem; content: ""; background: var(--dro-accent); border-radius: 50%; }
.dro-strategy-chart figcaption { margin-top: .75rem; color: var(--dro-muted); font-size: .58rem; line-height: 1.5; }
.dro-strategy-section-heading { max-width: 55rem; }
.dro-strategy-section-heading h2 { max-width: 22ch; margin: 0; font-size: clamp(2rem, 3.6vw, 3.5rem); }
.dro-strategy-reasons, .dro-strategy-consistency, .dro-strategy-decisions, .dro-strategy-roles, .dro-strategy-faq { padding: 4.75rem 0; }
.dro-strategy-reasons { background: #fff; border-bottom: 1px solid var(--dro-line); }
.dro-strategy-reasons__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 2.5rem; }
.dro-strategy-reasons article { padding: 1.6rem; background: var(--dro-bg); border: 1px solid var(--dro-line); border-top: 3px solid var(--dro-accent); border-radius: 5px; }
.dro-strategy-reasons article > p:first-child { margin: 0 0 1rem; color: var(--dro-accent-dark); font-size: .6rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.dro-strategy-reasons h3 { margin: 0; font-size: 1.2rem; }
.dro-strategy-reasons article > p:last-child { margin: .75rem 0 0; font-size: .82rem; line-height: 1.65; }
.dro-strategy-consistency { background: var(--dro-slate-soft); border-bottom: 1px solid var(--dro-line); }
.dro-strategy-section-heading--split { display: grid; grid-template-columns: 1.2fr 1fr; gap: 4rem; align-items: end; max-width: none; }
.dro-strategy-section-heading--split > p { max-width: 32rem; margin: 0; font-size: .9rem; line-height: 1.7; }
.dro-strategy-consistency__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 2.5rem; }
.dro-strategy-consistency article { padding: 1.5rem; background: #fff; border: 1px solid var(--dro-line); border-radius: 5px; }
.dro-strategy-consistency article > p { margin: 0; color: var(--dro-accent-dark); font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.dro-strategy-consistency article > strong { display: block; margin: .75rem 0 1.1rem; color: var(--dro-ink); font-family: var(--dro-font-display); font-size: 2.15rem; font-weight: 700; }
.dro-strategy-consistency dl { margin: 0; border-top: 1px solid var(--dro-line); }
.dro-strategy-consistency dl div { display: flex; justify-content: space-between; gap: 1rem; padding: .65rem 0; border-bottom: 1px solid var(--dro-line); }
.dro-strategy-consistency dt { color: var(--dro-muted); font-size: .62rem; }
.dro-strategy-consistency dd { margin: 0; color: var(--dro-ink); font-size: .68rem; font-weight: 700; white-space: nowrap; }
.dro-strategy-disclosure { margin: 1.25rem 0 0; color: var(--dro-muted); font-size: .65rem; line-height: 1.55; }
.dro-strategy-decisions { background: #fff; }
.dro-strategy-decisions__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; }
.dro-strategy-decisions .dro-strategy-section-heading { grid-column: 1 / span 5; }
.dro-strategy-decisions ol { grid-column: 7 / span 6; margin: 0; padding: 0; border-top: 1px solid var(--dro-ink); list-style: none; }
.dro-strategy-decisions li { display: grid; grid-template-columns: 2rem 1fr; gap: 1rem; padding: 1.45rem 0; border-bottom: 1px solid var(--dro-line); }
.dro-strategy-decisions li > span { color: var(--dro-accent-dark); font-size: .65rem; font-weight: 700; }
.dro-strategy-decisions h3 { margin: 0; font-size: 1.05rem; }
.dro-strategy-decisions li p { margin: .45rem 0 0; font-size: .8rem; line-height: 1.6; }
.dro-strategy-roles { background: var(--dro-dark-section); }
.dro-strategy-roles .dro-report-label { color: #6ee7b7; }
.dro-strategy-roles h2 { color: #fff; }
.dro-strategy-roles__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 2.5rem; }
.dro-strategy-roles article { padding: 1.7rem; border: 1px solid rgba(226,232,240,.24); border-top: 3px solid var(--dro-accent); border-radius: 5px; }
.dro-strategy-roles article > p { margin: 0 0 .75rem; color: #6ee7b7; font-size: .62rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.dro-strategy-roles h3 { margin: 0; color: #fff; font-size: 1.4rem; }
.dro-strategy-roles ul { margin: 1.2rem 0 0; padding: 0; color: #e2e8f0; list-style: none; }
.dro-strategy-roles li { position: relative; padding: .65rem 0 .65rem 1rem; border-top: 1px solid rgba(226,232,240,.16); font-size: .78rem; line-height: 1.55; }
.dro-strategy-roles li::before { position: absolute; top: 1.05rem; left: 0; width: .35rem; height: .35rem; content: ""; background: var(--dro-accent); border-radius: 50%; }
.dro-strategy-roles .dro-strategy-roles__closing { max-width: 58rem; margin: 2rem 0 0; padding-left: 1rem; color: #fff; border-left: 3px solid var(--dro-accent); font-family: var(--dro-font-display); font-size: 1.15rem; line-height: 1.55; }
.dro-strategy-faq { background: #fff; border-bottom: 1px solid var(--dro-line); }
.dro-strategy-faq__list { max-width: 62rem; margin-top: 2.5rem; border-top: 1px solid var(--dro-ink); }
.dro-strategy-faq__item { border-bottom: 1px solid var(--dro-line); }
.dro-strategy-faq__item h3 { margin: 0; font-family: var(--dro-font-body); font-size: inherit; }
.dro-strategy-faq__item button { display: grid; width: 100%; min-height: 3.25rem; grid-template-columns: minmax(0, 1fr) 2rem; gap: 1rem; align-items: center; padding: .85rem 0; color: var(--dro-ink); border: 0; background: transparent; cursor: pointer; font-family: var(--dro-font-body); font-size: .95rem; font-weight: 700; text-align: left; }
.dro-strategy-faq__item button i { display: grid; width: 1.75rem; height: 1.75rem; place-items: center; justify-self: end; color: var(--dro-accent-dark); border: 1px solid var(--dro-accent); border-radius: 50%; font-size: 1.1rem; font-style: normal; font-weight: 700; line-height: 1; transition: color .16s ease, background-color .16s ease; }
.dro-strategy-faq__item button i::before { content: "+"; }
.dro-strategy-faq__item button[aria-expanded="true"] i { color: #fff; background: var(--dro-accent); }
.dro-strategy-faq__item button[aria-expanded="true"] i::before { content: "−"; }
.dro-strategy-faq__item > div { padding: .15rem 3rem 1.25rem 0; }
.dro-strategy-faq__item > div[hidden] { display: none; }
.dro-strategy-faq__item p { max-width: 52rem; margin: 0; font-size: .82rem; line-height: 1.65; }
.dro-strategy-faq__item button:focus-visible { outline: 3px solid var(--dro-dark-section); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) { .dro-strategy-faq__item button i { transition: none; } }
.dro-strategy-final { border-top: 0; }

/* Legacy data-register styles retained for related editorial tables. */
.dro-register-wrap { grid-column: 1 / span 12; margin-top: 4rem; overflow-x: auto; }
.dro-register { width: 100%; border-collapse: collapse; table-layout: fixed; }
.dro-register th, .dro-register td { padding: .9rem .8rem; border-bottom: 1px solid var(--dro-line); text-align: left; vertical-align: top; }
.dro-register thead th { color: var(--dro-muted); border-top: 1px solid var(--dro-ink); font-size: .55rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.dro-register thead th:nth-child(1) { width: 19%; }
.dro-register thead th:nth-child(2) { width: 25%; }
.dro-register thead th:nth-child(3) { width: 17%; }
.dro-register tbody th { color: var(--dro-ink); font-size: .78rem; }
.dro-register tbody td { color: var(--dro-copy); font-size: .74rem; }
.dro-register-status { display: inline-flex; align-items: center; gap: .45rem; color: var(--dro-accent-dark); font-size: .64rem; font-weight: 700; text-transform: uppercase; }
.dro-register-status i { width: .4rem; height: .4rem; background: var(--dro-accent); border-radius: 50%; }
.dro-register-note { margin: 1rem 0 0; color: var(--dro-muted); font-size: .68rem; }
.dro-checkpoint-field > .dro-canvas > div { grid-column: 1 / span 5; padding-left: 0; }
.dro-checkpoint-field h2 { margin: 0; }
.dro-checkpoint-register { grid-column: 7 / span 6; margin: 0; border-top: 1px solid #64748b; }
.dro-checkpoint-register div { display: grid; grid-template-columns: 8rem 1fr; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(226,232,240,.16); }
.dro-checkpoint-register dt { color: #fff; font-size: .74rem; font-weight: 700; }
.dro-checkpoint-register dt span { margin-right: .65rem; color: #6ee7b7; font-size: .57rem; }
.dro-checkpoint-register dd { margin: 0; color: #cbd5e1; font-size: .73rem; }

/* Institutional About overview. */
.dro-about-cover { padding: 3rem 0 2.5rem; background: var(--dro-bg); border-bottom: 1px solid var(--dro-line); }
.dro-about-cover__statement { grid-column: 1 / span 8; padding-left: 0; }
.dro-about-cover__statement h1 { max-width: 16ch; margin: 0; font-size: clamp(3.1rem, 5vw, 5rem); }
.dro-about-cover__intro { grid-column: 9 / span 4; align-self: end; margin: 0; }
.dro-about-cover__intro p { margin: 0; }
.dro-about-cover__intro p + p { margin-top: 1rem; }
.dro-system-section { padding: clamp(5.5rem, 9vw, 8rem) 0; background: #fff; }
.dro-system-section__heading { display: grid; grid-template-columns: 2fr 5fr 3fr; gap: 2rem; align-items: end; }
.dro-system-section__heading > span { color: var(--dro-accent-dark); font-size: .63rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.dro-system-section__heading h2 { margin: 0; }
.dro-system-section__copy p { margin: 0; font-size: .85rem; }
.dro-system-section__copy p + p { margin-top: 1rem; }
.dro-system-line { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; gap: 1rem; align-items: stretch; margin-top: 4.5rem; border-top: 1px solid var(--dro-ink); border-bottom: 1px solid var(--dro-line); }
.dro-system-line article { padding: 1.5rem 0; }
.dro-system-line article > span { color: var(--dro-accent-dark); font-size: .6rem; font-weight: 700; }
.dro-system-line h3 { min-height: 2.7rem; margin: 1rem 0 .75rem; font-size: 1rem; }
.dro-system-line p { margin: 0; font-size: .72rem; }
.dro-system-line > i { align-self: center; color: var(--dro-accent); font-style: normal; }
.dro-overview-section__statement { grid-column: 1 / span 6; padding: 0 2.5rem 0 0; border-right: 1px solid var(--dro-line); }
.dro-overview-section__statement h2 { margin: 0 0 2rem; }
.dro-representation-note { padding-left: 1rem; border-left: 3px solid var(--dro-accent); font-size: .72rem; }
.dro-principles-register { grid-column: 8 / span 5; border-top: 1px solid var(--dro-ink); }
.dro-principles-register article { display: grid; grid-template-columns: 2rem 1fr; gap: 1rem; padding: 1.25rem 0; border-bottom: 1px solid var(--dro-line); }
.dro-principles-register article > span { color: var(--dro-accent-dark); font-size: .62rem; font-weight: 700; }
.dro-principles-register h3 { margin: 0 0 .35rem; font-size: 1rem; }
.dro-principles-register p { margin: 0; font-size: .76rem; }

/* Closing composition. */
.dro-closing { padding: clamp(5rem, 8vw, 7rem) 0; background: var(--dro-slate-soft); border-top: 1px solid var(--dro-line); }
.dro-closing__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 1.5rem; align-items: end; }
.dro-closing__statement { grid-column: 1 / span 7; padding-left: 0; }
.dro-closing h2 { max-width: 13ch; margin: 0; }
.dro-closing__action { grid-column: 9 / span 4; }
.dro-closing__action p { margin: 0 0 1.2rem; font-size: .84rem; }
.dro-closing--balanced .dro-closing__grid { align-items: center; }
.dro-closing--balanced .dro-closing__statement { grid-column: 1 / span 6; }
.dro-closing--balanced .dro-closing__statement h2 { max-width: 16ch; font-size: clamp(2.25rem, 3.2vw, 3.4rem); }
.dro-closing--balanced .dro-closing__action { grid-column: 7 / span 6; max-width: 34rem; justify-self: end; }
.dro-closing--balanced .dro-closing__action p { margin: 0 0 1.5rem; font-size: .95rem; line-height: 1.7; }
.dro-closing--review { padding: clamp(4.5rem, 7vw, 6rem) 0; }
.dro-closing--review .dro-closing__grid { align-items: center; }
.dro-closing--review .dro-closing__statement { grid-column: 1 / span 5; }
.dro-closing--review .dro-closing__statement h2 { max-width: 14ch; font-size: clamp(2.5rem, 4vw, 4.15rem); }
.dro-closing--review .dro-closing__body { max-width: 32rem; margin: 1.5rem 0 0; font-size: .95rem; line-height: 1.7; }
.dro-closing-card { grid-column: 7 / span 6; padding: clamp(1.6rem, 3vw, 2.25rem); background: #fff; border: 1px solid var(--dro-line); border-radius: 5px; box-shadow: 0 16px 34px rgba(30,41,59,.07); }
.dro-closing-card > h3 { margin: 0; padding-bottom: 1rem; color: var(--dro-ink); border-bottom: 1px solid var(--dro-line); font-family: var(--dro-font-body); font-size: .76rem; letter-spacing: .12em; line-height: 1.4; text-transform: uppercase; }
.dro-closing-card ul { margin: 0; padding: 0; list-style: none; }
.dro-closing-card li { display: grid; grid-template-columns: 1.15rem 1fr; gap: .75rem; padding: 1rem 0; border-bottom: 1px solid var(--dro-line); }
.dro-closing-card__check { color: var(--dro-accent-dark); font-size: .85rem; font-weight: 700; line-height: 1.35; }
.dro-closing-card h4 { margin: 0 0 .25rem; font-family: var(--dro-font-body); font-size: .9rem; }
.dro-closing-card li p { margin: 0; font-size: .76rem; line-height: 1.55; }
.dro-closing-card .dro-button { width: 100%; margin-top: 1.35rem; }
.dro-closing-card .dro-button--outline { padding: .875rem 1.75rem; color: var(--dro-accent-dark); background: transparent; border: 1.5px solid var(--dro-accent-dark); border-radius: 5px; font-family: var(--dro-font-body); font-size: 1rem; font-weight: 700; transition: color .18s ease, background-color .18s ease, border-color .18s ease; }
.dro-closing-card .dro-button--outline span { transition: transform .18s ease; }
.dro-closing-card .dro-button--outline:hover { color: #fff; background: var(--dro-accent-dark); border-color: var(--dro-accent-dark); }
.dro-closing-card .dro-button--outline:hover span { transform: translateX(3px); }

/* Shared scheduler and utility content, restyled without behavioral changes. */
.district-retirement-options .scheduler-page, .district-retirement-options .privacy-page, .district-retirement-options .disclosures-page, .district-retirement-options .terms-page, .district-retirement-options .accessibility-page { background: var(--dro-bg); }
.district-retirement-options .scheduler-hero, .district-retirement-options .privacy-hero, .district-retirement-options .disclosures-hero, .district-retirement-options .terms-hero, .district-retirement-options .accessibility-hero { padding: 3rem 0 2.5rem; background: var(--dro-bg); border-bottom: 1px solid var(--dro-line); }
.district-retirement-options .scheduler-hero h1, .district-retirement-options .privacy-hero h1, .district-retirement-options .disclosures-hero h1, .district-retirement-options .terms-hero h1, .district-retirement-options .accessibility-hero h1 { max-width: 13ch; margin: 0 0 1rem; font-size: clamp(2.9rem, 5vw, 5rem); }
.district-retirement-options .scheduler-workflow { background: #fff; }
.district-retirement-options .appointment-summary__type, .district-retirement-options .scheduler-confirmation__date, .district-retirement-options .scheduler-confirmation__time { font-family: var(--dro-font-body); }
.district-retirement-options .scheduler, .district-retirement-options .appointment-summary, .district-retirement-options .scheduler-privacy, .district-retirement-options .privacy-toc, .district-retirement-options .privacy-section--notice, .district-retirement-options .privacy-callout, .district-retirement-options .disclosure-block, .district-retirement-options .terms-section, .district-retirement-options .accessibility-contact { border-radius: 5px; box-shadow: none; }
.district-retirement-options .scheduler-progress li[data-state="current"] span:first-child, .district-retirement-options .scheduler-progress li[data-state="complete"] span:first-child, .district-retirement-options .time-slot.is-selected, .district-retirement-options .calendar__day.is-selected { color: #fff; background: var(--dro-accent-dark); border-color: var(--dro-accent-dark); }
.district-retirement-options .privacy-layout { gap: clamp(2rem, 6vw, 5rem); }
.district-retirement-options .privacy-page .privacy-toc { position: sticky; top: calc(var(--dro-header-height) + 1.5rem); align-self: start; max-height: calc(100vh - var(--dro-header-height) - 3rem); overflow-y: auto; background: var(--dro-slate-soft); border: 1px solid var(--dro-line); border-radius: 5px; }
.district-retirement-options .privacy-policy, .district-retirement-options .terms-reading-width, .district-retirement-options .disclosures-reading-width, .district-retirement-options .accessibility-reading-width { max-width: 72rem; }
.district-retirement-options .privacy-statement, .district-retirement-options .privacy-contact-link, .district-retirement-options .privacy-subject, .district-retirement-options .privacy-table tbody th, .district-retirement-options .disclosures-statement, .district-retirement-options .disclosures-questions .support-contact-email, .district-retirement-options .terms-statement, .district-retirement-options .terms-contact .support-contact-email { font-family: var(--dro-font-body); }
.district-retirement-options .disclosures-page .disclosures-section--paired { background: var(--dro-bg); }
.district-retirement-options .disclosures-page .disclosures-section--important .disclosures-reading-width { background: var(--dro-slate-soft); border-left-color: var(--dro-accent); border-radius: 5px; box-shadow: none; }
.district-retirement-options .disclosures-page .disclosures-questions { color: #fff; background: var(--dro-dark-section); }
.district-retirement-options .disclosures-page .disclosures-questions h2,
.district-retirement-options .disclosures-page .disclosures-questions p { color: #fff; }
.district-retirement-options .disclosures-page .disclosures-questions .support-contact-email a,
.district-retirement-options .disclosures-page .disclosures-questions .support-secondary a { color: #fff; }
.district-retirement-options .disclosures-page .disclosures-questions .button--light { color: var(--dro-dark-section); background: #fff; border-color: #fff; border-radius: 5px; }
.district-retirement-options .disclosures-page .disclosures-questions .button--light:hover { color: var(--dro-dark-section); background: var(--dro-slate-soft); border-color: var(--dro-slate-soft); }
.district-retirement-options .accessibility-page .accessibility-help { background: var(--dro-bg); }
.district-retirement-options .accessibility-page .accessibility-contact { background: #fff; border: 1px solid var(--dro-line); border-left: 3px solid var(--dro-accent); border-radius: 5px; box-shadow: none; }
.district-retirement-options .terms-page .terms-section--neutral { background: var(--dro-bg); }
.district-retirement-options .terms-page .terms-dates { background: #fff; border: 1px solid var(--dro-line); border-radius: 5px; box-shadow: none; }
.district-retirement-options .terms-page .terms-dates dt { color: var(--dro-accent-dark); }
.district-retirement-options .terms-page .terms-section--privacy { background: #fff; }
.district-retirement-options .terms-page .terms-section--privacy .terms-reading-width { padding: clamp(2rem, 4vw, 3rem); background: var(--dro-bg); border: 1px solid var(--dro-line); border-left: 3px solid var(--dro-accent); border-radius: 5px; box-shadow: none; }
.district-retirement-options .terms-page .terms-contact { color: #fff; background: var(--dro-dark-section); }
.district-retirement-options .terms-page .terms-contact h2,
.district-retirement-options .terms-page .terms-contact p,
.district-retirement-options .terms-page .terms-contact address,
.district-retirement-options .terms-page .terms-contact address strong { color: #fff; }
.district-retirement-options .terms-page .terms-contact .support-contact-email a,
.district-retirement-options .terms-page .terms-contact .support-secondary a { color: #fff; }
.district-retirement-options .terms-page .terms-contact .button--light { color: var(--dro-dark-section); background: #fff; border-color: #fff; border-radius: 5px; }
.district-retirement-options .terms-page .terms-contact .button--light:hover { color: var(--dro-dark-section); background: var(--dro-slate-soft); border-color: var(--dro-slate-soft); }

/* Substantial institutional footer. */
.district-retirement-options .footer { padding-top: 0; padding-bottom: .75rem; color: #cbd5e1; background: var(--dro-dark-section); border-top: 3px solid var(--dro-accent); }
.district-retirement-options .footer__main { grid-template-columns: 2fr 1fr 1.5fr 1fr; gap: 2.5rem; padding-top: 2rem; padding-bottom: .75rem; border-color: rgba(255,255,255,.13); }
.district-retirement-options .footer p, .district-retirement-options .footer h2 { color: #cbd5e1; }
.district-retirement-options .footer h2 { padding-bottom: .75rem; border-bottom: 1px solid rgba(255,255,255,.15); font-family: var(--dro-font-heading); font-size: .59rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.district-retirement-options .footer a { color: #fff; }
.district-retirement-options .footer nav { gap: .575rem; }
.district-retirement-options .footer nav a { padding: .3rem 0; font-size: .75rem; }
.district-retirement-options .dro-footer-brand-lockup { display: inline-flex; align-items: center; gap: .65rem; color: #fff; font-size: 1.05rem; font-weight: 700; letter-spacing: -.025em; line-height: 1.15; }
.district-retirement-options .dro-footer-brand-lockup img { flex: 0 0 auto; width: 2.15rem; height: 2.15rem; padding: .22rem; object-fit: contain; background: #fff; border-radius: 4px; }
.district-retirement-options .footer .brand__name { max-width: 16rem; color: #fff; font-size: 1.15rem; }
.district-retirement-options .footer .brand__name::before { color: var(--dro-ink); background: #fff; }
.district-retirement-options .footer__brand::after { content: "Clear guidance for retirement planning"; display: block; max-width: 15rem; margin-top: 1rem; color: #94a3b8; font-size: .7rem; }
.district-retirement-options .footer__bottom { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2rem; margin-top: .75rem; padding-top: 1.125rem; padding-bottom: .5rem; border-color: rgba(255,255,255,.13); }
.district-retirement-options .footer__bottom p { font-size: .62rem; }
.district-retirement-options .footer__bottom p:last-child { text-align: right; }

@media (max-width: 1120px) {
  .district-retirement-options .desktop-nav { display: none; }
  .district-retirement-options .mobile-nav { position: relative; display: block; }
  .district-retirement-options .mobile-nav > summary { display: grid; width: 2.8rem; height: 2.8rem; place-content: center; gap: .28rem; cursor: pointer; list-style: none; border: 1px solid var(--dro-line); border-radius: 5px; }
  .district-retirement-options .mobile-nav > summary::-webkit-details-marker { display: none; }
  .district-retirement-options .mobile-nav > summary span { display: block; width: 1rem; height: 1.5px; background: var(--dro-ink); }
  .district-retirement-options .mobile-nav > nav { position: absolute; top: calc(100% + .65rem); right: 0; display: grid; width: min(23rem, calc(100vw - 2rem)); padding: 1rem; background: #fff; border: 1px solid var(--dro-line); border-radius: 5px; box-shadow: 0 18px 40px rgba(15,23,42,.14); }
  .district-retirement-options .mobile-nav > nav > a:not(.button) { padding: .8rem .4rem; color: var(--dro-ink); border-bottom: 1px solid var(--dro-line); font-weight: 700; text-decoration: none; }
  .district-retirement-options .mobile-nav .button { margin-top: .8rem; }
}

@media (min-width: 1200px) {
  .dro-hero-visual { transform: translateX(1.75rem); }
}

@media (min-width: 901px) {
  .dro-cover__message h1 { font-size: clamp(2.85rem, 4.5vw, 4.5rem); }
}

@media (max-width: 1000px) {
  .district-retirement-options .privacy-page .privacy-toc { position: static; max-height: none; overflow-y: visible; }
}

@media (max-width: 900px) {
  .district-retirement-options .dro-canvas, .district-retirement-options .container { width: min(calc(100% - 3rem), var(--dro-canvas)); }
  .dro-cover__grid, .dro-data-cover__grid, .dro-editorial-grid, .dro-closing__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); column-gap: 1.25rem; }
  .dro-cover__message, .dro-data-cover__message, .dro-strategy-cover__message, .dro-about-cover__statement, .dro-editorial-heading, .dro-research-band__statement, .dro-comparison__intro, .dro-question-field > .dro-canvas > div, .dro-checkpoint-field > .dro-canvas > div, .dro-closing__statement { grid-column: 1 / span 8; padding-left: 0; }
  .dro-income-field, .dro-power-chart, .dro-strategy-cover__intro, .dro-about-cover__intro, .dro-editorial-intro, .dro-review-register, .dro-paycheck-compare, .dro-timeline, .dro-check-list, .dro-comparison-matrix, .dro-checkpoint-register, .dro-closing__action, .dro-principles-register { grid-column: 1 / span 8; margin-top: 3rem; }
  .dro-closing--balanced .dro-closing__statement, .dro-closing--balanced .dro-closing__action { grid-column: 1 / span 8; max-width: none; justify-self: stretch; }
  .dro-closing--balanced .dro-closing__action { margin-top: 3rem; }
  .dro-cola-timeline .dro-editorial-heading, .dro-cola-timeline .dro-timeline { grid-column: 1 / span 8; }
  .dro-cola-timeline .dro-timeline { margin-top: 3rem; }
  .dro-income-field, .dro-power-chart { padding-left: 0; }
  .dro-hero-visual { grid-column: 1 / span 8; justify-self: end; width: min(100%, 38.75rem); min-height: 40rem; margin-top: 3.5rem; padding-bottom: 7rem; }
  .dro-hero-photo { height: 29rem; margin-left: 5rem; }
  .dro-hero-visual .dro-income-field { left: 0; width: calc(100% - 2rem); margin: 0; padding: 1.15rem 1.25rem; }
  .dro-framework-register, .dro-layer-line, .dro-strategy-sequence, .dro-register-wrap { grid-column: 1 / span 8; }
  #planning-framework .dro-editorial-heading { grid-column: 1 / span 8; }
  #planning-framework .dro-framework-register article { grid-template-columns: 1fr; gap: 1rem; }
  #planning-framework .dro-framework-register .dro-text-link { justify-self: start; }
  .dro-closing--review .dro-closing__statement, .dro-closing--review .dro-closing-card { grid-column: 1 / span 8; }
  .dro-closing--review .dro-closing-card { margin-top: 2.5rem; }
  .dro-overview-section__statement { grid-column: 1 / span 8; padding: 0 0 2.5rem; border-right: 0; border-bottom: 1px solid var(--dro-line); }
  .dro-research-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dro-driver-card:last-child { grid-column: 1 / -1; }
  .dro-strategy-hero__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .dro-strategy-hero__message, .dro-strategy-hero__visual { grid-column: 1 / span 8; }
  .dro-strategy-hero__visual { justify-self: end; width: min(100%, 40rem); min-height: 42rem; margin-top: 3rem; }
  .dro-strategy-hero__photo { width: 78%; height: 22rem; }
  .dro-strategy-chart { margin-top: 18rem; }
  .dro-strategy-reasons__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dro-strategy-reasons article:last-child { grid-column: 1 / -1; }
  .dro-strategy-section-heading--split { grid-template-columns: 1fr; gap: 1.25rem; }
  .dro-strategy-consistency__grid { grid-template-columns: 1fr; }
  .dro-strategy-decisions .dro-strategy-section-heading, .dro-strategy-decisions ol { grid-column: 1 / span 12; }
  .dro-strategy-decisions ol { margin-top: 2.5rem; }
  .dro-strategy-roles__grid { grid-template-columns: 1fr; }
  .dro-system-section__heading { grid-template-columns: 1fr 2fr; }
  .dro-system-section__copy { grid-column: 2; }
  .dro-system-line { grid-template-columns: 1fr auto 1fr; }
  .dro-system-line article:nth-of-type(3) { grid-column: 1; }
  .dro-system-line article:nth-of-type(4) { grid-column: 3; }
  .dro-system-line > i:nth-of-type(2) { display: none; }
  .district-retirement-options .footer__main { grid-template-columns: 1.5fr 1fr 1fr; }
  .district-retirement-options .footer__main nav:last-child { grid-column: 2; }
}

@media (max-width: 620px) {
  .dro-cover { padding-bottom: 3rem; }
  #planning-framework { padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .district-retirement-options .site-header { padding-top: 0; }
  .district-retirement-options .site-header::before { content: none; display: none; }
  .district-retirement-options .header__brand { min-width: 0; }
  .district-retirement-options .site-header .brand__logo { width: min(14rem, calc(100vw - 8rem)); max-height: 2.5rem; }
  .district-retirement-options .site-header .brand__tagline { display: block; font-size: .58rem; }
  .district-retirement-options .brand__name { max-width: 12.5rem; font-size: .82rem; }
  .district-retirement-options .dro-canvas, .district-retirement-options .container { width: min(calc(100% - 2rem), var(--dro-canvas)); }
  .district-retirement-options h1 { font-size: clamp(2.7rem, 13vw, 4rem); }
  .district-retirement-options h2 { font-size: clamp(2rem, 10vw, 2.9rem); }
  .dro-cover__message h1 { width: 100%; }
  .dro-cover__grid, .dro-data-cover__grid, .dro-editorial-grid, .dro-closing__grid { display: block; }
  .dro-cover__message, .dro-data-cover__message, .dro-strategy-cover__message, .dro-about-cover__statement, .dro-editorial-heading, .dro-research-band__statement, .dro-comparison__intro, .dro-question-field > .dro-canvas > div, .dro-checkpoint-field > .dro-canvas > div, .dro-closing__statement { padding-left: 0; }
  .dro-actions { align-items: stretch; flex-direction: column; }
  .dro-actions .dro-button { width: 100%; }
  .dro-income-field, .dro-power-chart { margin-top: 3.5rem; padding-left: 0; border-left: 0; }
  .dro-hero-visual { min-height: 0; margin-top: 3.5rem; padding-bottom: 0; }
  .dro-hero-photo { height: 24rem; margin-left: 2rem; }
  .dro-hero-visual .dro-income-field { position: relative; bottom: auto; left: auto; width: calc(100% - 1rem); margin: -4rem 0 0; padding: 1rem; border: 1px solid var(--dro-line); border-left: 3px solid var(--dro-dark-section); }
  .dro-data-factors { grid-template-columns: 1fr; }
  .dro-data-factors div, .dro-data-factors div:first-child { padding: .7rem 0; border-right: 0; border-bottom: 1px solid var(--dro-line); }
  .dro-framework-register article { grid-template-columns: 1fr; gap: 1rem; }
  .dro-framework-register article > p, .dro-framework-register .dro-text-link { grid-column: auto; justify-self: start; }
  .dro-review-register__head { display: none; }
  .dro-review-register > div { grid-template-columns: 1fr; gap: .25rem; }
  .dro-segment-key--three { grid-template-columns: repeat(3, 1fr); }
  .dro-research-strip { padding: 3.5rem 0; }
  .dro-research-strip__grid { grid-template-columns: 1fr; }
  .dro-research-strip__heading { grid-template-columns: 1fr; gap: 1rem; }
  .dro-driver-card, .dro-driver-card:last-child { grid-column: auto; min-height: 0; padding: 1.4rem; }
  .dro-power-chart__plot { height: auto; }
  .dro-chart-axis-text, .dro-chart-end-label { font-size: 20px; }
  .dro-chart-assumptions dl { grid-template-columns: 1fr; }
  .dro-strategy-hero { padding: 2.5rem 0 3rem; }
  .dro-strategy-hero__grid, .dro-strategy-decisions__grid { display: block; }
  .dro-strategy-hero__message h1 { font-size: clamp(2.5rem, 12vw, 3.4rem); }
  .dro-strategy-hero__visual { width: 100%; min-height: 0; margin-top: 3rem; }
  .dro-strategy-hero__photo { position: relative; width: calc(100% - 2rem); height: auto; margin-left: 2rem; }
  .dro-strategy-hero__photo img { height: auto; object-fit: contain; }
  .dro-strategy-chart { width: 100%; margin-top: 1rem; padding: 1rem; }
  .dro-strategy-chart__axis-text, .dro-strategy-chart__end-label { font-size: 18px; }
  .dro-strategy-chart__assumptions { grid-template-columns: 1fr 1fr; }
  .dro-strategy-reasons, .dro-strategy-consistency, .dro-strategy-decisions, .dro-strategy-roles, .dro-strategy-faq { padding: 3.5rem 0; }
  .dro-strategy-reasons__grid { grid-template-columns: 1fr; }
  .dro-strategy-reasons article:last-child { grid-column: auto; }
  .dro-strategy-consistency dl div { align-items: start; flex-direction: column; gap: .2rem; }
  .dro-strategy-faq__item button { font-size: .88rem; }
  .dro-strategy-faq__item > div { padding-right: 0; }
  .dro-layer-line { grid-template-columns: 1fr; gap: 0; }
  .dro-layer-line > i { display: none; }
  .dro-layer-line div { border-bottom: 1px solid var(--dro-line); }
  .dro-strategy-sequence li { grid-template-columns: 1fr; gap: 1rem; padding: 1.5rem 0; }
  .dro-strategy-sequence li > p { grid-column: auto; }
  .dro-strategy-sequence li > i { position: absolute; top: 1.8rem; right: 0; }
  .dro-comparison-matrix__head { display: none; }
  .dro-comparison-matrix article { grid-template-columns: 1fr; gap: .6rem; }
  .dro-register-wrap { overflow: visible; }
  .dro-register, .dro-register tbody, .dro-register tr, .dro-register th, .dro-register td { display: block; width: 100%; }
  .dro-register thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
  .dro-register tr { padding: 1rem 0; border-bottom: 1px solid var(--dro-line); }
  .dro-register th, .dro-register td { padding: .3rem 0; border: 0; }
  .dro-register td::before { content: attr(data-label); display: block; margin-bottom: .2rem; color: var(--dro-muted); font-size: .5rem; font-weight: 700; text-transform: uppercase; }
  .dro-register tbody th:empty { display: none; }
  .dro-checkpoint-register div { grid-template-columns: 1fr; gap: .3rem; }
  .dro-system-section__heading { display: block; }
  .dro-system-section__heading h2 { margin: 1rem 0; }
  .dro-system-line { display: block; }
  .dro-system-line > i { display: none; }
  .dro-system-line article { border-bottom: 1px solid var(--dro-line); }
  .dro-system-line h3 { min-height: 0; }
  .dro-overview-section__statement { padding-left: 0; }
  .district-retirement-options .footer__main { grid-template-columns: 1fr; }
  .district-retirement-options .footer__main nav:last-child { grid-column: auto; }
  .district-retirement-options .footer__bottom { grid-template-columns: 1fr; }
  .district-retirement-options .footer__bottom p:last-child { text-align: left; }
}

@media (prefers-reduced-motion: reduce) {
  .district-retirement-options *, .district-retirement-options *::before, .district-retirement-options *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Retirement Readiness page. */
.dro-readiness-hero { padding: 3rem 0 4rem; background: var(--dro-bg); border-bottom: 1px solid var(--dro-line); }
.dro-readiness-hero__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: center; }
.dro-readiness-hero__message { grid-column: 1 / span 6; padding-right: 1.5rem; }
.dro-readiness-hero__message h1 { max-width: 10.5ch; margin: 0 0 1.5rem; font-size: clamp(3.25rem, 5.1vw, 5.35rem); }
.dro-readiness-hero__message .dro-lead { max-width: 36rem; margin: 0; }
.dro-readiness-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.4rem; margin-top: 2rem; }
.dro-readiness-hero__visual { grid-column: 7 / span 6; min-width: 0; padding-bottom: 4.5rem; }
.dro-readiness-hero__visual > img, .dro-readiness-hero__placeholder { display: block; width: calc(100% - 2.5rem); height: 32rem; margin-left: 2.5rem; object-fit: cover; object-position: center; border-radius: 5px; }
.dro-readiness-hero__placeholder { display: grid; place-items: center; color: var(--dro-muted); background: linear-gradient(135deg, #e2e8f0, #f8fafc); border: 1px solid var(--dro-line); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dro-readiness-picture { position: relative; width: calc(100% - 2.5rem); margin: -5.5rem 2.5rem -4.5rem 0; padding: 1.25rem 1.4rem; background: #fff; border: 1px solid var(--dro-line); border-left: 3px solid var(--dro-accent); border-radius: 5px; box-shadow: 0 1rem 2.5rem rgba(30,41,59,.12); }
.dro-readiness-picture h2 { margin: 0 0 .8rem; font-family: var(--dro-font-body); font-size: .67rem; letter-spacing: .15em; text-transform: uppercase; }
.dro-readiness-picture ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; list-style: none; }
.dro-readiness-picture li { display: flex; min-width: 0; align-items: center; gap: .55rem; padding: .45rem .55rem .45rem 0; color: var(--dro-ink); border-top: 1px solid var(--dro-line); font-size: .72rem; line-height: 1.3; }
.dro-readiness-picture__indicator { display: inline-grid; flex: 0 0 1.05rem; width: 1.05rem; height: 1.05rem; place-items: center; color: var(--dro-accent-dark); font-size: .68rem; font-weight: 700; }
.dro-readiness-picture__indicator--neutral { color: var(--dro-muted); }
.dro-readiness-picture > p { margin: .75rem 0 0; color: var(--dro-accent-dark); font-size: .7rem; font-weight: 700; }

.dro-readiness-start, .dro-readiness-increases, .dro-readiness-stages, .dro-readiness-checkpoints, .dro-readiness-bring { padding: 4.75rem 0; }
.dro-readiness-start, .dro-readiness-stages { background: #fff; }
.dro-readiness-increases, .dro-readiness-checkpoints { background: var(--dro-slate-soft); }
.dro-readiness-heading { max-width: 48rem; }
.dro-readiness-heading h2 { margin: 0; font-size: clamp(2.4rem, 4vw, 4rem); }
.dro-readiness-heading > p:last-child { max-width: 42rem; margin: 1.25rem 0 0; font-size: .98rem; line-height: 1.75; }
.dro-readiness-heading--split { display: grid; max-width: none; grid-template-columns: minmax(0, 1.2fr) minmax(18rem, .8fr); gap: 4rem; align-items: end; }
.dro-readiness-heading--split > p:last-child { margin: 0; }

.dro-readiness-chart, .dro-readiness-growth { margin: 3rem 0 0; padding: 1.75rem; background: #fff; border: 1px solid var(--dro-line); border-radius: 5px; }
.dro-readiness-chart figcaption, .dro-readiness-growth figcaption { display: flex; align-items: baseline; justify-content: space-between; gap: 2rem; padding-bottom: 1.1rem; border-bottom: 1px solid var(--dro-line); }
.dro-readiness-chart figcaption h3, .dro-readiness-growth figcaption h3 { margin: 0; font-size: 1.35rem; }
.dro-readiness-chart figcaption p, .dro-readiness-growth figcaption p { max-width: 30rem; margin: 0; font-size: .7rem; text-align: right; }
.dro-readiness-bars { display: grid; gap: 1.35rem; margin-top: 1.7rem; }
.dro-readiness-bar__labels { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; color: var(--dro-ink); }
.dro-readiness-bar__labels span { font-size: .73rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.dro-readiness-bar__labels strong { font-family: var(--dro-font-heading); font-size: 1.45rem; }
.dro-readiness-bar__track { height: .75rem; margin-top: .45rem; overflow: hidden; background: var(--dro-line); border-radius: 2px; }
.dro-readiness-bar__track span { display: block; width: var(--bar-width); height: 100%; background: var(--dro-accent); }
.dro-readiness-bar:nth-child(2) .dro-readiness-bar__track span { background: var(--dro-dark-section); }
.dro-readiness-bar:nth-child(3) .dro-readiness-bar__track span { background: #94a3b8; }
.dro-readiness-bar > p { margin: .35rem 0 0; color: var(--dro-muted); font-size: .67rem; }
.dro-readiness-takeaway { margin: 1.7rem 0 0; padding: .9rem 1rem; color: var(--dro-ink); background: var(--dro-accent-soft); border-left: 3px solid var(--dro-accent); font-family: var(--dro-font-heading); font-size: 1rem; font-weight: 700; }
.dro-readiness-disclosure { margin: 1rem 0 0; color: var(--dro-muted); font-size: .64rem; line-height: 1.55; }

.dro-readiness-increases__grid, .dro-readiness-bring__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1.5rem; align-items: start; }
.dro-readiness-increases__grid > header { grid-column: 1 / span 5; position: sticky; top: 7.5rem; }
.dro-readiness-growth { grid-column: 6 / span 7; margin-top: 0; }
.dro-readiness-growth__values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.dro-readiness-growth__values article { display: flex; min-width: 0; flex-direction: column; padding: 1.15rem; background: var(--dro-bg); border: 1px solid var(--dro-line); border-radius: 4px; }
.dro-readiness-growth__values p { margin: 0; color: var(--dro-accent-dark); font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dro-readiness-growth__values h4 { margin: .35rem 0 .8rem; font-size: 1rem; }
.dro-readiness-growth__values strong { color: var(--dro-ink); font-family: var(--dro-font-heading); font-size: 2rem; }
.dro-readiness-growth__values span { margin-top: .15rem; color: var(--dro-muted); font-size: .68rem; }
.dro-readiness-growth__values i { display: block; width: var(--comparison-width); height: .4rem; margin-top: 1rem; background: var(--dro-accent); border-radius: 2px; }
.dro-readiness-growth__values article:first-child i { background: var(--dro-dark-section); }
.dro-readiness-step-line { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin: 1.5rem 0 0; padding: 0; border-top: 1px solid var(--dro-line); border-bottom: 1px solid var(--dro-line); list-style: none; }
.dro-readiness-step-line li { min-width: 0; padding: .8rem .55rem; border-right: 1px solid var(--dro-line); }
.dro-readiness-step-line li:last-child { border-right: 0; }
.dro-readiness-step-line span, .dro-readiness-step-line strong { display: block; }
.dro-readiness-step-line span { color: var(--dro-muted); font-size: .57rem; text-transform: uppercase; }
.dro-readiness-step-line strong { margin-top: .15rem; color: var(--dro-ink); font-size: .76rem; }

.dro-readiness-stages__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 3rem; border-top: 1px solid var(--dro-ink); border-bottom: 1px solid var(--dro-line); }
.dro-readiness-stages article { position: relative; min-width: 0; padding: 1.65rem 1.5rem 1.7rem 0; }
.dro-readiness-stages article + article { padding-left: 1.5rem; border-left: 1px solid var(--dro-line); }
.dro-readiness-stages article > span { color: var(--dro-accent-dark); font-size: .64rem; font-weight: 700; }
.dro-readiness-stages article > p:first-of-type { margin: .7rem 0 .35rem; color: var(--dro-accent-dark); font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.dro-readiness-stages h3 { margin: 0; font-size: 1.35rem; }
.dro-readiness-stages article > div { width: 2.5rem; height: 2px; margin: 1.1rem 0; background: var(--dro-accent); }
.dro-readiness-stages article > p:last-child { margin: 0; font-size: .8rem; line-height: 1.65; }

.dro-readiness-checkpoints .dro-readiness-heading { max-width: 54rem; }
.dro-readiness-checkpoints__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 3rem; }
.dro-readiness-checkpoints article { display: grid; min-width: 0; grid-template-columns: 2.25rem 1fr; gap: .4rem 1rem; padding: 1.35rem; background: #fff; border: 1px solid var(--dro-line); border-top: 2px solid var(--dro-accent); border-radius: 4px; }
.dro-readiness-checkpoints article > span { grid-row: 1 / span 2; color: var(--dro-accent-dark); font-size: .65rem; font-weight: 700; }
.dro-readiness-checkpoints h3 { margin: 0; font-size: 1.05rem; text-transform: uppercase; }
.dro-readiness-checkpoints article p { margin: 0; font-size: .78rem; line-height: 1.6; }

.dro-readiness-bring { color: #fff; background: var(--dro-dark-section); }
.dro-readiness-bring .dro-report-label { color: #6ee7b7; }
.dro-readiness-bring h2, .dro-readiness-bring p { color: #fff; }
.dro-readiness-bring__grid > header { grid-column: 1 / span 5; }
.dro-readiness-bring__list { grid-column: 7 / span 6; }
.dro-readiness-bring__list ul { margin: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.35); list-style: none; }
.dro-readiness-bring__list li { display: flex; gap: .75rem; padding: .75rem 0; color: #fff; border-bottom: 1px solid rgba(255,255,255,.18); font-size: .8rem; }
.dro-readiness-bring__list li span { color: #6ee7b7; font-weight: 700; }
.dro-readiness-bring__list > p { margin: 1.35rem 0 0; padding-left: 1rem; border-left: 3px solid #6ee7b7; font-family: var(--dro-font-heading); font-size: 1rem; }

.dro-readiness-final { padding: 4.75rem 0; }
.dro-readiness-final .dro-closing__statement { grid-column: 1 / span 7; }
.dro-readiness-final .dro-closing__statement h2 { max-width: 15ch; }
.dro-readiness-final__action { grid-column: 8 / span 5; align-self: center; padding: 1.5rem; background: #fff; border: 1px solid var(--dro-line); border-radius: 5px; }
.dro-readiness-final__action .dro-closing__body { max-width: none; margin: 0 0 1.25rem; color: var(--dro-muted); font-size: .95rem; line-height: 1.7; text-align: left; }
.dro-readiness-final__action .dro-button { width: 100%; }

@media (max-width: 900px) {
  .dro-readiness-hero__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .dro-readiness-hero__message, .dro-readiness-hero__visual { grid-column: 1 / span 8; }
  .dro-readiness-hero__message { padding-right: 0; }
  .dro-readiness-hero__message h1 { max-width: 11ch; }
  .dro-readiness-hero__visual { width: min(100%, 42rem); margin-top: 3rem; margin-left: auto; }
  .dro-readiness-heading--split { grid-template-columns: 1fr; gap: 1.25rem; }
  .dro-readiness-increases__grid, .dro-readiness-bring__grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .dro-readiness-increases__grid > header, .dro-readiness-growth, .dro-readiness-bring__grid > header, .dro-readiness-bring__list { grid-column: 1 / span 8; }
  .dro-readiness-increases__grid > header { position: static; }
  .dro-readiness-growth, .dro-readiness-bring__list { margin-top: 2.5rem; }
  .dro-readiness-stages__grid { grid-template-columns: 1fr; }
  .dro-readiness-stages article, .dro-readiness-stages article + article { padding: 1.4rem 0; border-left: 0; border-bottom: 1px solid var(--dro-line); }
  .dro-readiness-stages article:last-child { border-bottom: 0; }
  .dro-readiness-final .dro-closing__statement, .dro-readiness-final__action { grid-column: 1 / span 8; }
  .dro-readiness-final__action { margin-top: 2.5rem; }
}

@media (max-width: 620px) {
  .dro-readiness-hero { padding: 2.5rem 0 3rem; }
  .dro-readiness-hero__message h1 { font-size: clamp(2.65rem, 12vw, 3.55rem); }
  .dro-readiness-hero__actions { align-items: stretch; flex-direction: column; }
  .dro-readiness-hero__actions .dro-button { width: 100%; }
  .dro-readiness-hero__visual { margin-top: 2.5rem; padding-bottom: 0; }
  .dro-readiness-hero__visual > img, .dro-readiness-hero__placeholder { width: calc(100% - 1.5rem); height: 23rem; margin-left: 1.5rem; }
  .dro-readiness-picture { width: calc(100% - .75rem); margin: -3.5rem .75rem 0 0; padding: 1.1rem; }
  .dro-readiness-picture ul { grid-template-columns: 1fr; }
  .dro-readiness-start, .dro-readiness-increases, .dro-readiness-stages, .dro-readiness-checkpoints, .dro-readiness-bring { padding: 3.5rem 0; }
  .dro-readiness-heading h2 { font-size: clamp(2.15rem, 10vw, 2.85rem); }
  .dro-readiness-chart, .dro-readiness-growth { margin-top: 2.25rem; padding: 1.15rem; }
  .dro-readiness-chart figcaption, .dro-readiness-growth figcaption { display: block; }
  .dro-readiness-chart figcaption p, .dro-readiness-growth figcaption p { margin-top: .55rem; text-align: left; }
  .dro-readiness-bar__labels strong { font-size: 1.2rem; }
  .dro-readiness-growth__values, .dro-readiness-checkpoints__grid { grid-template-columns: 1fr; }
  .dro-readiness-step-line { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dro-readiness-step-line li { border-bottom: 1px solid var(--dro-line); }
  .dro-readiness-step-line li:nth-child(2n) { border-right: 0; }
  .dro-readiness-step-line li:nth-last-child(-n + 2) { border-bottom: 0; }
  .dro-readiness-checkpoints article { grid-template-columns: 1.8rem 1fr; padding: 1.15rem; }
  .dro-readiness-final { padding: 3.5rem 0; }
}

/* Approved customer-journey handoffs and supporting editorial media. */
.dro-context-handoff { margin: 1.75rem 0 0; padding-top: 1.15rem; border-top: 1px solid var(--dro-line); }
.dro-context-handoff .dro-text-link { font-size: .76rem; }
.dro-research-strip .dro-context-handoff { margin-top: 2rem; }
.dro-strategy-consistency .dro-context-handoff { margin-top: 1.5rem; }
.dro-strategy-decisions__image, .dro-strategy-decisions__placeholder { display: block; width: 100%; height: 15rem; margin-top: 2rem; object-fit: cover; object-position: center; border-radius: 5px; }
.dro-strategy-decisions__placeholder { display: grid; place-items: center; color: var(--dro-muted); background: var(--dro-slate-soft); border: 1px solid var(--dro-line); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dro-readiness-increases__handoff { grid-column: 6 / span 7; }
.dro-about-topics { padding: 1.4rem 0; background: var(--dro-bg); border-top: 1px solid var(--dro-line); border-bottom: 1px solid var(--dro-line); }
.dro-about-topics > .dro-canvas { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem 3rem; }
.dro-about-topics p { margin: 0; color: var(--dro-ink); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.dro-about-topics > .dro-canvas > div { display: flex; flex-wrap: wrap; gap: .7rem 1.5rem; }
.dro-about-topics .dro-text-link { font-size: .72rem; }

@media (max-width: 900px) {
  .dro-readiness-increases__handoff { grid-column: 1 / span 8; }
  .dro-about-topics > .dro-canvas { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 620px) {
  .dro-strategy-decisions__image, .dro-strategy-decisions__placeholder { height: 13rem; }
  .dro-about-topics > .dro-canvas > div { align-items: flex-start; flex-direction: column; }
}
