.alt-page { max-width: 1230px; }
.alt-hero { padding: 13px 0 8px; }
.alt-hero h1 { max-width: 1080px; }
.alt-hero .lead { max-width: 990px; }
.alt-banner { position: relative; overflow: hidden; padding: 31px 34px; border-radius: 18px; background: var(--ink); color: var(--white); box-shadow: 0 20px 50px rgba(8,30,78,.14); scroll-margin-top: 82px; }
.alt-banner::after { content: ""; position: absolute; width: 255px; height: 255px; right: -75px; top: -137px; border: 42px solid rgba(201,166,95,.13); border-radius: 50%; }
.alt-banner > * { position: relative; z-index: 1; }
.alt-banner > span { color: #f0c972; font-size: 12px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.alt-banner h2 { max-width: 970px; margin: 10px 0; font-size: clamp(25px,3vw,37px); line-height: 1.15; letter-spacing: -.04em; }
.alt-banner p { max-width: 990px; margin: 0; color: #dbe3f3; font-size: 15px; line-height: 1.62; }
.alt-section { margin-top: 49px; scroll-margin-top: 82px; }
.alt-section h3 { margin: 0 0 9px; font-size: 19px; line-height: 1.22; letter-spacing: -.035em; }
.module-grid, .phase-grid, .headline-metrics, .decision-pair, .cost-layers { display: grid; gap: 12px; }
.module-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.module-grid article, .phase-grid article, .headline-metrics div, .decision-pair div, .cost-layers div { padding: 21px; border: 1px solid var(--line); border-radius: 12px; background: var(--white); }
.module-grid article { border-top: 4px solid var(--gold); }
.module-grid article:first-child { border-top-color: var(--red); }
.module-grid article > span { display: grid; place-items: center; width: 31px; height: 31px; margin-bottom: 14px; border-radius: 7px; background: #eaf0f9; color: var(--ink); font-size: 12px; font-weight: 900; }
.module-grid p, .phase-grid p, .decision-pair p, .cost-layers p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.55; }
.short-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.three-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.flow-band, .status-band { display: grid; gap: 8px; margin-top: 14px; }
.flow-band { grid-template-columns: repeat(4,minmax(0,1fr)); }
.status-band { grid-template-columns: repeat(5,minmax(0,1fr)); }
.flow-band div, .status-band div { position: relative; padding: 15px 16px; border-radius: 9px; background: var(--ink); color: var(--white); }
.flow-band div:not(:last-child)::after, .status-band div:not(:last-child)::after { content: "→"; position: absolute; right: -11px; top: 50%; z-index: 2; transform: translateY(-50%); display: grid; place-items: center; width: 14px; height: 14px; border-radius: 50%; background: var(--gold); color: var(--ink); font-size: 11px; font-weight: 900; }
.flow-band b, .status-band b { display: block; font-size: 15px; }
.flow-band small, .status-band small { display: block; margin-top: 4px; color: #dbe3f3; font-size: 11px; line-height: 1.3; }
.alt-note, .alt-warning, .next-step, .formula { margin-top: 14px; padding: 17px 20px; border-left: 4px solid var(--gold); border-radius: 0 10px 10px 0; background: #fff8e9; color: #5b5037; font-size: 14px; line-height: 1.6; }
.alt-note strong, .alt-warning strong, .next-step strong, .formula strong { color: var(--ink); }
.alt-note a, .next-step a, .table-footnote a { color: var(--red-dark); font-weight: 800; text-underline-offset: 2px; }
.alt-warning { border-left-color: var(--red); background: #fff0f1; color: #79333e; }
.next-step { border-left-color: var(--ink); background: #eff5ff; color: #425470; }
.headline-metrics { grid-template-columns: repeat(3,minmax(0,1fr)); margin-bottom: 14px; }
.headline-metrics div { border-top: 4px solid var(--red); }
.headline-metrics div:nth-child(2) { border-top-color: var(--gold); }
.headline-metrics div:nth-child(3) { border-top-color: var(--ink); }
.headline-metrics span { display: block; color: var(--red-dark); font-size: 11px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.headline-metrics strong { display: block; margin: 7px 0 4px; font-size: clamp(22px,2.4vw,31px); line-height: 1.1; letter-spacing: -.04em; }
.headline-metrics small { display: block; color: var(--muted); font-size: 12px; }
.alt-table { min-width: 760px; }
.alt-table thead th:first-child { width: 42%; }
.alt-table tbody td { color: var(--muted); font-size: 14px; }
.alt-table .alt-total th, .alt-table .alt-total td { border-top: 2px solid var(--ink); background: #eaf0f9; color: var(--ink); font-weight: 900; }
.savings-table thead th:first-child { width: 28%; }
.savings-table tbody td b { color: var(--ink); white-space: nowrap; }
.savings-table tbody th small { color: var(--muted); font-weight: 500; }
.choice-table { min-width: 900px; }
.choice-table thead th:first-child { width: 23%; }
.phase-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.phase-grid article { border-top: 4px solid var(--ink); }
.phase-grid article:first-child { border-top-color: var(--red); }
.phase-grid span { display: block; margin-bottom: 14px; color: var(--red-dark); font-size: 11px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.decision-pair { grid-template-columns: repeat(2,minmax(0,1fr)); }
.decision-pair div { border-top: 4px solid var(--gold); }
.decision-pair div:nth-child(2) { border-top-color: var(--red); }
.decision-pair strong { display: block; margin-bottom: 8px; font-size: 17px; }
.step-list { display: grid; gap: 9px; }
.step-list article { display: grid; grid-template-columns: 43px minmax(0,1fr); gap: 12px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 10px; background: var(--white); }
.step-list article > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 8px; background: var(--red); color: var(--white); font-size: 12px; font-weight: 900; }
.step-list h3 { margin-bottom: 4px; font-size: 17px; }
.step-list p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
.step-list p b { color: var(--ink); }
.cost-layers { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 17px; }
.cost-layers span { display: block; margin-bottom: 8px; color: var(--red-dark); font-size: 11px; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.cost-layers strong { display: block; margin-bottom: 5px; font-size: 17px; }
.formula { border-left-color: var(--ink); background: #eff5ff; color: #425470; }
.formula b { color: var(--red-dark); }
@media (max-width: 1050px) { .phase-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .status-band { grid-template-columns: repeat(3,minmax(0,1fr)); } .status-band div::after { display: none !important; } }
@media (max-width: 780px) { .module-grid, .three-grid, .short-grid, .headline-metrics, .decision-pair, .cost-layers { grid-template-columns: 1fr; } .flow-band, .status-band { grid-template-columns: repeat(2,minmax(0,1fr)); } .flow-band div::after { display: none !important; } .alt-banner { padding: 24px 22px; } .alt-section { margin-top: 40px; } }
@media (max-width: 520px) { .phase-grid, .flow-band, .status-band { grid-template-columns: 1fr; } .flow-band div::after, .status-band div::after { display: none !important; } }
@media print { .alt-banner, .module-grid article, .phase-grid article, .headline-metrics div, .step-list article { break-inside: avoid; } .alt-section { margin-top: 25px; } }
