/* Smith Manoeuvre Tax Health Check. Status colours measured 2026-10-12 (WCAG 2.1):
   red #A3231B 6.68:1 on cream, 7.46:1 on white; amber #8A5200 5.72 / 6.39; green #26704A 5.38 / 6.00.
   Chip text on its tint: red 6.37, amber 5.70, green 5.19. Every status also carries a text label. */
.smc{--smc-red:#A3231B;--smc-amber:#8A5200;--smc-green:#26704A;--smc-red-tint:#FBE9E7;--smc-amber-tint:#FCF1DC;--smc-green-tint:#E4F2E9;
  font-family:'Hanken Grotesk',system-ui,sans-serif;color:#122C3F;max-width:860px;margin:0 auto;padding:clamp(40px,6vw,76px) clamp(16px,4vw,40px) 24px;line-height:1.6}
.smc h1{font-size:clamp(34px,5vw,56px);line-height:1.07;letter-spacing:-.025em;margin:0 0 20px}
.smc h2{font-size:clamp(25px,3.4vw,36px);line-height:1.15;margin:8px 0 10px}
.smc h3{font-size:21px;line-height:1.25;margin:0 0 12px}
.smc h4{font-size:18px;line-height:1.3;margin:0}
.smc p{margin:0 0 14px;max-width:66ch}
.smc [tabindex='-1']:focus{outline:none}
.smc :focus-visible{outline:3px solid #1E6F6C;outline-offset:3px}
.smc-kicker{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#1E6F6C;font-weight:700;margin:0 0 6px}
.smc-lead{font-size:19px;color:#46545C}
.smc-meta{font-size:14px;color:#5E6B72}
.smc-sub{color:#46545C}
.smc-points{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0 0;padding:0;list-style:none}
.smc-points li{border-top:1px solid #DED7CA;padding-top:14px;font-size:15px;color:#46545C}
.smc-points span{display:block;font-weight:600;color:#122C3F;font-size:16px;margin-bottom:4px}
/* buttons */
.smc-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:22px 0 0}
.smc-btn{font:inherit;font-size:16px;cursor:pointer;min-height:48px;border-radius:999px;padding:12px 24px;border:1px solid #1E6F6C;background:#1E6F6C;color:#fff;line-height:1.3}
.smc-btn:hover{background:#185C59}
.smc-btn[disabled]{opacity:.5;cursor:default}
.smc-btn-quiet{background:transparent;color:#122C3F;border-color:#122C3F}
.smc-btn-quiet:hover{background:#EFE9DC}
.smc-link{font:inherit;font-size:16px;background:none;border:0;color:#1E6F6C;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px;padding:0 4px}
/* question step */
.smc-progress{height:7px;background:#DED7CA;border-radius:8px;overflow:hidden;margin-bottom:24px}
.smc-progress span{display:block;height:100%;background:#1E6F6C;transition:width .25s ease}
.smc-options{display:grid;gap:12px;margin:22px 0 14px}
.smc-option{font:inherit;font-size:16px;text-align:left;display:flex;align-items:center;gap:14px;cursor:pointer;min-height:56px;border-radius:14px;background:#fff;color:#122C3F;border:1px solid #B8B2A7;padding:16px 20px;line-height:1.35}
.smc-option:hover{border-color:#1E6F6C}
.smc-option[aria-pressed=true]{border:2px solid #1E6F6C;background:#EAF3F1}
.smc-radio{width:20px;height:20px;border-radius:50%;border:2px solid #7E8F92;flex-shrink:0}
.smc-option[aria-pressed=true] .smc-radio{border-color:#1E6F6C;box-shadow:inset 0 0 0 4px #EAF3F1;background:#1E6F6C}
/* status chips */
.smc-chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 10px 3px 8px;border-radius:999px;white-space:nowrap}
.smc-dot,.smc-zone-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}
.smc-chip.is-green{background:var(--smc-green-tint);color:var(--smc-green)}.smc-chip.is-green .smc-dot{background:var(--smc-green)}
.smc-chip.is-amber{background:var(--smc-amber-tint);color:var(--smc-amber)}.smc-chip.is-amber .smc-dot{background:var(--smc-amber)}
.smc-chip.is-red{background:var(--smc-red-tint);color:var(--smc-red)}.smc-chip.is-red .smc-dot{background:var(--smc-red)}
/* scorecard */
.smc-scorecard{background:#fff;border:1px solid #DED7CA;border-top:6px solid var(--smc-zone);border-radius:20px;padding:clamp(22px,4vw,36px);margin:0 0 24px}
.smc-scorecard.is-green{--smc-zone:var(--smc-green)}.smc-scorecard.is-amber{--smc-zone:var(--smc-amber)}.smc-scorecard.is-red{--smc-zone:var(--smc-red)}
.smc-scoreline{display:flex;align-items:center;gap:clamp(16px,4vw,32px);flex-wrap:wrap;margin:6px 0 22px}
.smc-score{font-size:clamp(64px,11vw,96px);font-weight:700;line-height:.9;letter-spacing:-.04em;color:var(--smc-zone);margin:0}
.smc-score span{font-size:.3em;font-weight:600;letter-spacing:0;color:#5E6B72;margin-left:4px}
.smc-scorecard h2{display:flex;align-items:center;gap:10px;margin:0 0 4px;color:var(--smc-zone)}
.smc-zone-dot{width:14px;height:14px;background:var(--smc-zone)}
.smc-distance{font-size:18px;color:#122C3F;margin:0}
.smc-gauge{margin:0 0 20px}
.smc-bands{position:relative;display:flex;gap:3px;height:14px}
.smc-bands span{border-radius:4px;opacity:.9}
.smc-bands .is-red{background:var(--smc-red)}.smc-bands .is-amber{background:var(--smc-amber)}.smc-bands .is-green{background:var(--smc-green)}
.smc-marker{position:absolute;top:-7px;width:4px;height:28px;margin-left:-2px;background:#122C3F;border-radius:2px;box-shadow:0 0 0 2px #fff}
.smc-scale{display:flex;gap:3px;margin-top:8px;font-size:13px;color:#5E6B72}
.smc-scale span:last-child{text-align:right}
.smc-scale span:nth-child(2){text-align:center}
.smc-meaning{font-size:17px}
.smc-counts{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;margin:6px 0 0;padding:0;font-weight:600}
/* panels */
.smc-panel{background:#fff;border:1px solid #DED7CA;border-radius:20px;padding:clamp(22px,4vw,34px);margin:0 0 24px}
.smc-projection{background:#F6F2EA;border-radius:12px;padding:12px 16px;font-weight:500}
.smc-items{list-style:none;margin:8px 0 0;padding:0}
.smc-item{border-top:1px solid #E6DFD2;padding:20px 0 4px 18px;margin:0;position:relative}
.smc-item::before{content:'';position:absolute;left:0;top:22px;bottom:18px;width:4px;border-radius:2px}
.smc-item.is-red::before{background:var(--smc-red)}.smc-item.is-amber::before{background:var(--smc-amber)}
.smc-item-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.smc-first{font-size:13px;font-weight:600;color:#122C3F;border:1px solid #122C3F;border-radius:999px;padding:1px 10px}
.smc-answer{font-size:15px;color:#5E6B72;margin-bottom:8px}
.smc-todo span{font-weight:600}
.smc-greens summary{cursor:pointer;font-weight:600;font-size:18px;min-height:44px;display:flex;align-items:center}
.smc-greens ul{list-style:none;padding:0;margin:12px 0 0}
.smc-greens li{padding:8px 0;border-top:1px solid #E6DFD2;font-size:15px;color:#46545C}
.smc-topic{color:#122C3F;font-weight:600}
.smc-offer{background:#F6F2EA;border-color:#E6DFD2}
.smc-note{font-size:14px;color:#5E6B72}
.smc-status{font-size:15px;color:#A3231B;margin:12px 0 0}
.smc-disclaimer{font-size:14px;color:#5E6B72}
/* static sections below the tool */
.smc-more{max-width:860px;margin:0 auto;padding:8px clamp(16px,4vw,40px) 64px;font-family:'Hanken Grotesk',system-ui,sans-serif;color:#122C3F;line-height:1.6}
.smc-more h2{font-size:clamp(24px,3vw,32px);line-height:1.2;margin:40px 0 12px}
.smc-more p{max-width:66ch;margin:0 0 14px}
.smc-fees{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0 0}
.smc-fee{background:#fff;border:1px solid #DED7CA;border-radius:20px;padding:24px}
.smc-fee h3{font-size:20px;margin:0 0 6px}
.smc-price{font-size:15px;font-weight:600;color:#1E6F6C}
.smc-fee ul{padding-left:20px;margin:8px 0 0}
.smc-more details{border-top:1px solid #E6DFD2;padding:4px 0}
.smc-more summary{cursor:pointer;font-weight:600;padding:12px 0;min-height:44px}
.smc-more .smc-sources li{margin:4px 0;font-size:15px}
.smc-more a{color:#1E6F6C;text-underline-offset:3px}
@media (max-width:760px){.smc-points,.smc-fees{grid-template-columns:1fr}.smc-scale{font-size:12px}}
@media (prefers-reduced-motion:reduce){.smc-progress span{transition:none}}
@media print{
  header,footer,[data-site-header],[data-site-footer],.smc-actions,.smc-note,.smc-more,.skip-link{display:none!important}
  .smc{padding:0;max-width:none}.smc-panel,.smc-scorecard{break-inside:avoid;border-color:#999}
  .smc-greens{display:block}.smc-greens ul{display:block}
  .smc-bands span,.smc-chip,.smc-item::before{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
/* polish, 2026-10-12 */
.smc-counts li{display:flex;align-items:center;gap:8px;margin:0}
.smc-greens{padding-top:14px;padding-bottom:14px}
.smc-greens summary{display:list-item}
.smc-todo span{display:block;font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#1E6F6C;margin-bottom:2px}
.smc-more .smc-sources a{display:inline-block;padding:11px 0;line-height:1.3}
/* note grade, 2026-10-12: navy #122C3F on #E8EEF2 measures 12.0:1 */
.smc-chip.is-note{background:#E8EEF2;color:#122C3F}.smc-chip.is-note .smc-dot{background:#4A6A80}
.smc-item.is-note::before{background:#4A6A80}
/* broker page, 2026-10-12 */
a.smc-btn{display:inline-flex;align-items:center;text-decoration:none}
.smc-steps{list-style:none;counter-reset:step;padding:0;margin:16px 0 8px;max-width:66ch}
.smc-steps li{counter-increment:step;position:relative;padding:14px 0 14px 48px;border-top:1px solid #E6DFD2;margin:0;color:#46545C}
.smc-steps li::before{content:counter(step);position:absolute;left:0;top:14px;width:32px;height:32px;border-radius:50%;background:#1E6F6C;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.smc-steps li span{display:block;color:#122C3F;font-weight:600}
/* single /smith-manoeuvre page, 2026-10-15 */
.smc-hero{padding-bottom:12px}
.smc-jumps{display:flex;flex-wrap:wrap;gap:8px 10px;margin:28px 0 0}
.smc-jumps a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #B8B2A7;border-radius:999px;color:#122C3F;text-decoration:none;font-size:15px}
.smc-jumps a:hover{border-color:#1E6F6C}
.smc-tool{border-top:1px solid #E6DFD2;border-bottom:1px solid #E6DFD2;background:#FBF8F2;max-width:none}
.smc-tool > div{max-width:860px;margin:0 auto}
.smc-fit{margin-bottom:12px}
.smc-about{display:flex;gap:24px;align-items:flex-start;margin:16px 0 8px}
.smc-about img{width:160px;height:160px;object-fit:cover;border-radius:20px;flex-shrink:0}
.smc-cred{font-weight:600;color:#122C3F}
.smc-close{background:#122C3F;color:#F3EFE7;border-radius:20px;padding:clamp(22px,4vw,36px);margin:48px 0 0}
.smc-close h2{color:#fff;margin-top:0}
.smc-close p{color:#DCEBEC}
.smc-close .smc-link{color:#8FE3DF}
.smc-close .smc-btn{background:#8FE3DF;border-color:#8FE3DF;color:#122C3F}
.smc-more h2[id]{scroll-margin-top:90px}
#health-check{scroll-margin-top:70px}
@media (max-width:760px){.smc-about{flex-direction:column}.smc-about img{width:120px;height:120px}}
