.tax-hero { background: linear-gradient(135deg,var(--navy),var(--blue)); color:#fff; text-align:center; padding:58px 20px; border-bottom:4px solid var(--gold); }
.tax-hero h1 { max-width:850px; margin:10px auto 12px; font-size:2.45em; line-height:1.15; }
.tax-hero p { max-width:760px; margin:auto; color:rgba(255,255,255,.88); font-size:1.1em; }
.tax-year-badge { display:inline-block; background:var(--gold); color:var(--navy); padding:6px 13px; border-radius:999px; font-weight:800; font-size:.84em; text-transform:uppercase; letter-spacing:.05em; }
.tax-main { max-width:920px; padding-top:28px; padding-bottom:55px; }
.privacy-strip { margin-bottom:22px; padding:14px 18px; border:1px solid #b8dec8; border-left:5px solid var(--green); border-radius:7px; background:#f1fbf5; color:#215c3a; font-size:.92em; }
.tax-calculator { display:grid; gap:18px; }
.tax-panel { display:grid; grid-template-columns:54px 1fr; gap:18px; padding:25px; background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:var(--shadow); }
.tax-step { width:46px; height:46px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--navy); color:#fff; font-size:1.25em; font-weight:800; }
.tax-panel h2 { color:var(--navy); margin-bottom:4px; font-size:1.35em; }
.tax-help { color:var(--text-muted); margin-bottom:18px; font-size:.92em; }
.tax-panel label { display:block; color:var(--navy); font-weight:700; margin-bottom:6px; }
.tax-panel input[type="text"], .tax-panel select, .money-input { width:100%; min-height:48px; border:1px solid #b9c2ca; border-radius:7px; background:#fff; font-size:1em; }
.tax-panel input[type="text"], .tax-panel select { padding:11px 13px; }
.tax-panel input:focus, .tax-panel select:focus { outline:3px solid rgba(44,90,160,.16); border-color:var(--blue); }
.tax-address-row { display:flex; gap:12px; align-items:center; margin-top:11px; flex-wrap:wrap; }
.tax-status { color:var(--text-muted); font-size:.9em; }
.verified-address { margin-top:13px; padding:12px 14px; border-radius:6px; background:#edf8f1; color:#215c3a; font-weight:650; }
.tax-grid { display:grid; gap:16px; }.tax-grid.two { grid-template-columns:1fr 1fr; }
.tax-checks { display:grid; gap:11px; margin-top:18px; }
.tax-checks label { display:flex; gap:9px; align-items:flex-start; color:var(--text); font-weight:500; }
.tax-checks input { margin-top:5px; transform:scale(1.12); }
.money-input { display:flex; align-items:center; overflow:hidden; }
.money-input span { padding:0 0 0 14px; color:var(--text-muted); font-weight:700; }
.money-input input { width:100%; min-height:46px; border:0; padding:11px 13px 11px 7px; font-size:1em; outline:0; }
.money-input:focus-within { outline:3px solid rgba(44,90,160,.16); border-color:var(--blue); }
.required { color:var(--red); }.tax-note { margin-top:12px; color:var(--text-muted); font-size:.82em; }
.tax-error { padding:13px 16px; border-left:5px solid var(--red); border-radius:6px; background:#fff0ef; color:#8a2018; }
.tax-submit { width:100%; padding:17px 24px; border:0; border-radius:8px; background:var(--gold); color:var(--navy); font-size:1.13em; font-weight:900; cursor:pointer; box-shadow:0 5px 15px rgba(26,58,82,.15); }
.tax-submit:hover { background:var(--gold-light); transform:translateY(-1px); }
.tax-submit:disabled { cursor:wait; opacity:.65; }
.tax-results { margin-top:28px; padding:28px; background:#fff; border:3px solid var(--gold); border-radius:12px; box-shadow:0 10px 30px rgba(26,58,82,.18); }
.result-heading { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-bottom:20px; }
.result-heading h2 { color:var(--navy); }.result-label { color:var(--blue); font-size:.78em; font-weight:850; text-transform:uppercase; letter-spacing:.08em; }
.result-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.result-card { padding:19px; border-radius:8px; background:#f4f7fa; text-align:center; }
.result-card.savings { background:#eaf8ef; border:1px solid #b8dec8; }
.result-card span { display:block; color:var(--text-muted); font-size:.82em; }
.result-card strong { display:block; color:var(--navy); font-size:1.75em; margin-top:4px; }
.result-card.savings strong { color:#1f7a43; }
.result-explanation { margin:22px 0; padding:18px; border-radius:7px; background:#f8f9fa; line-height:1.75; }
.county-actions { display:flex; gap:12px; flex-wrap:wrap; margin:18px 0; }
.county-actions a { flex:1; min-width:220px; justify-content:center; text-align:center; }
.tax-disclaimer { margin-top:20px; padding:15px; border-radius:6px; background:#fff8e8; color:#6e531c; font-size:.82em; }
.law-summary { margin-top:35px; padding:24px; border-radius:9px; background:#fff; box-shadow:var(--shadow); }
.law-summary h2 { color:var(--navy); margin-bottom:8px; }.law-summary p { color:var(--text-muted); margin-bottom:10px; }
.tax-back-link { color:var(--navy)!important; }
.county-directory { margin-top:35px; padding:24px; border-radius:9px; background:#fff; box-shadow:var(--shadow); }
.county-directory h2 { color:var(--navy); margin-bottom:6px; }
.county-dir-select-row { margin-top:14px; }
.county-dir-select-row select { width:100%; max-width:420px; min-height:48px; padding:11px 13px; border:1px solid #b9c2ca; border-radius:7px; font-size:1em; background:#fff; color:var(--navy); }
.county-dir-card { margin-top:18px; padding:20px 22px; border-radius:8px; border:1px solid var(--border); background:#f4f7fa; }
.county-dir-card h3 { color:var(--navy); margin-bottom:10px; font-size:1.15em; }
.county-dir-meta { display:grid; gap:6px; margin-bottom:14px; font-size:.93em; color:var(--text); }
.county-dir-meta span { display:flex; gap:8px; align-items:flex-start; }
.county-dir-meta strong { color:var(--navy); min-width:68px; flex-shrink:0; }
.county-dir-actions { display:flex; gap:10px; flex-wrap:wrap; }
.county-dir-actions a { flex:1; min-width:160px; text-align:center; justify-content:center; font-size:.9em; }
@media(max-width:680px){ .county-dir-actions a { min-width:140px; } }
@media(max-width:680px){.tax-hero h1{font-size:1.75em}.tax-panel{grid-template-columns:1fr;padding:19px}.tax-step{width:38px;height:38px}.tax-grid.two,.result-grid{grid-template-columns:1fr}.result-heading{align-items:flex-start;flex-direction:column}.tax-back-link{padding:8px 10px;font-size:.78em}.navbar-brand-text strong,.navbar-brand-text span{display:none}}
