.hero-character { display:block; width:min(55vw, 260px); height:auto; object-fit:contain; margin:0 auto 12px; }
.guide { font-size: .8rem; color: var(--muted); margin: 10px 2px 0; }
.mode-switch { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:18px; }
.mode-button { text-align:left; cursor:pointer; color:#52718a; background:#f3faff; border:1px solid var(--line); padding:13px 15px; border-radius:13px; font:inherit; font-weight:800; }
.mode-button small { display:block; margin-top:2px; color:#758ca0; font-weight:500; }
.mode-button.active { color:var(--orange); background:#fff5ef; border-color:#f7b18a; box-shadow:inset 0 0 0 1px #f7b18a; }
.mode-notice { background:#fff8e9; color:#705f38; border-radius:11px; font-size:.83rem; padding:11px 13px; margin:16px 0 0; }
.rate-info { display:block; margin-top:6px; color:#71869a; font-size:.76rem; font-weight:500; }
.radios small { color:#71869a; font-size:.75rem; font-weight:500; }
.tax-guide { background:#f0faff; border-radius:10px; color:#47667b; margin-top:12px; padding:10px 12px; font-size:.82rem; }
.tax-guide strong { color:var(--navy); }
.tax-guide p { margin:3px 0 0; }
.tax-preview { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:14px; margin-top:10px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; }
.tax-preview span { color:#547187; font-size:.8rem; }
.tax-preview strong { color:var(--navy); font-size:1.05rem; }
.tax-preview b { color:var(--orange); font-size:1.05rem; }
[hidden], #prePurchaseFields[hidden], #actualFields[hidden], #prePurchaseNotice[hidden] { display:none !important; }
.wizard-active .hero { display:none; }
.wizard-active .layout { padding-top:18px; }
.wizard-progress { display:flex; align-items:center; gap:12px; margin:8px 2px 14px; color:#547187; font-size:.8rem; font-weight:800; }
.wizard-progress>div { flex:1; height:7px; overflow:hidden; border-radius:99px; background:#d9ebf3; }
.wizard-progress i { display:block; height:100%; border-radius:99px; background:var(--orange); transition:width .25s ease; }
.flow span { opacity:.48; transition:opacity .2s,color .2s; }
.flow span.active { opacity:1; color:var(--orange); }
.flow span.complete { opacity:1; color:#27739d; }
.wizard-step { animation:wizard-in .22s ease; }
@keyframes wizard-in { from { opacity:0; transform:translateX(12px); } to { opacity:1; transform:translateX(0); } }
.wizard-nav { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:10px; margin:14px 0 4px; }
.wizard-nav button { min-width:105px; border:0; border-radius:11px; padding:12px 16px; background:var(--orange); color:#fff; font:inherit; font-weight:800; cursor:pointer; }
.wizard-nav button.secondary { background:#fff; color:#547187; border:1px solid var(--line); }
.wizard-nav p { margin:0; color:#c33b30; text-align:center; font-size:.82rem; font-weight:700; }
.quick-badge { display:inline-block; border-radius:99px; background:#fff0e8; color:var(--orange); padding:2px 7px; font-size:.72rem; vertical-align:middle; }
.income-guide { color:#71869a; font-size:.82rem; margin:2px 0 14px; }
.vat-default-note { margin:10px 0 0; padding:9px 11px; border-radius:9px; background:#f0faff; color:#547187; font-size:.8rem; }
.suffix input { padding-right:52px; }
.calculator-home { text-align:center; background:#ffffffcc; border:1px solid #fff; border-radius:24px; padding:32px 26px; box-shadow:0 10px 28px #17608012; }
.calculator-home h2 { margin:0; font-size:clamp(1.35rem,4vw,1.8rem); }
.calculator-home>p:not(.brand) { max-width:530px; margin:10px auto 25px; color:var(--muted); }
.calculator-choices { display:grid; grid-template-columns:1fr 1fr; gap:15px; text-align:left; }
.choice-card { display:block; border:2px solid #d9ebf3; border-radius:18px; padding:21px; background:#fff; color:var(--navy); text-align:left; cursor:pointer; font:inherit; transition:transform .16s, border-color .16s, box-shadow .16s; }
.choice-card:hover,.choice-card:focus { outline:0; transform:translateY(-3px); border-color:var(--orange); box-shadow:0 10px 20px #f4773a22; }
.choice-card:nth-child(2) { background:#f8fcff; }
.choice-icon { display:grid; place-items:center; width:41px; height:41px; border-radius:12px; background:#fff0e8; font-size:1.35rem; }
.choice-card strong { display:inline-block; font-size:1.2rem; margin:14px 8px 5px 0; }
.choice-card b { color:var(--orange); font-size:.85rem; }
.choice-card small { display:block; color:var(--muted); line-height:1.55; margin:7px 0 17px; }
.choice-card em { color:var(--orange); font-size:.9rem; font-style:normal; font-weight:800; }
.back-home { background:transparent; color:#52718a; border:0; padding:8px 4px; margin:0 0 5px; font:inherit; font-size:.9rem; font-weight:700; cursor:pointer; }
.price-recommendations { margin-top:22px; padding-top:20px; border-top:1px solid var(--line); }
.price-recommendations h3 { margin:0; font-size:1rem; }
.price-recommendations p { margin:3px 0 12px; color:var(--muted); font-size:.82rem; }
.price-options { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.price-option { background:#fff9f5; border:1px solid #ffd6c1; border-radius:12px; color:var(--navy); padding:11px 8px; text-align:center; cursor:pointer; font:inherit; }
.price-option:hover,.price-option:focus { outline:0; border-color:var(--orange); background:#fff1e8; }
.price-option span,.price-option small { display:block; color:#758ca0; font-size:.73rem; }
.price-option strong { display:block; color:var(--orange); margin:3px 0; font-size:1.03rem; }
.result-summary { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:16px; }
.before-tax,.after-tax { border-radius:14px; padding:15px; }
.before-tax { background:#f0faff; }
.after-tax { background:#fff5ef; }
.before-tax span,.after-tax span { display:block; color:#547187; font-size:.82rem; font-weight:700; }
.before-tax strong,.after-tax strong { display:block; font-size:clamp(1.7rem,5vw,2.1rem); margin:4px 0; line-height:1.15; }
.before-tax strong { color:#27739d; }
.after-tax strong { color:var(--orange); }
#usableRate.result-rate { color:var(--orange); }
.value-row { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.before-tax .result-rate,.after-tax .result-rate { font-size:clamp(1.7rem,5vw,2.1rem); text-align:right; }
.before-tax small,.after-tax small { display:block; color:#71869a; font-size:.8rem; }
.before-tax strong.negative,.after-tax strong.negative { color:#d83a3a; }
@media (max-width: 560px) {
  .flow { flex-wrap: wrap; }
  .flow span { width: 45%; }
  .flow b { display: none; }
  .hero-character { width:180px; margin-bottom:10px; }
  .mode-switch { grid-template-columns:1fr; }
  .calculator-home { padding:25px 18px; border-radius:18px; }
  .calculator-choices { grid-template-columns:1fr; }
  .choice-card { padding:18px; }
  .price-options { grid-template-columns:1fr; }
  .price-option { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; text-align:left; padding:11px 13px; }
  .price-option strong { margin:0; text-align:center; }
  .price-option small { text-align:right; }
  .result-summary { grid-template-columns:1fr; }
  .tax-preview { grid-template-columns:1fr auto; gap:3px 10px; }
  .tax-preview span { grid-column:1 / -1; }
  .wizard-active .layout { padding-top:10px; }
  .wizard-nav { grid-template-columns:1fr 1fr; position:sticky; bottom:8px; z-index:3; padding:8px; border-radius:14px; background:#ffffffed; box-shadow:0 6px 20px #17324d20; }
  .wizard-nav p { grid-column:1 / -1; grid-row:1; }
  .wizard-nav button { width:100%; min-width:0; }
  .wizard-nav button.full-mobile { grid-column:1 / -1; }
}
