/* Tax Professional V5: visual upgrade only. Existing IRS ZIP search stays intact. */
body.tax-professional-page {
  --tax-bg:#faf9f5; --tax-panel:#fff; --tax-ink:#102333; --tax-muted:#425469;
  --tax-border:#d5e0e4; --tax-muted-panel:#f1f7f5; --tax-accent:#087967;
  margin:0!important; padding:0!important; min-width:0; min-height:100vh;
  background:var(--tax-bg)!important; background-image:none!important;
  color:var(--tax-ink)!important; font-family:Inter,Arial,sans-serif!important;
}
body.tax-professional-page .tax-site-header {
  width:100%; background:var(--tax-panel); border-bottom:1px solid var(--tax-border);
  color:var(--tax-ink); position:relative; z-index:40;
}
body.tax-professional-page .tax-site-header-inner {
  max-width:1240px; min-height:84px; padding:17px 0; margin:0 auto;
  display:flex; align-items:center; gap:20px;
}
body.tax-professional-page .tax-site-brand {display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;
  color:var(--tax-ink);font:700 22px/1.2 'Space Grotesk',Inter,Arial,sans-serif;
  white-space:nowrap;text-decoration:none;}
body.tax-professional-page .tax-site-brand img {width:43px;height:43px;object-fit:contain;flex:none;}
body.tax-professional-page .tax-main-nav {display:flex;align-items:center;justify-content:flex-end;
  flex:1 1 auto;gap:clamp(11px,1.65vw,25px);min-width:0;margin:0;padding:0;}
body.tax-professional-page .tax-main-nav>a {color:var(--tax-ink);font:700 14px/1.4 Inter,Arial,sans-serif;
  white-space:nowrap;text-decoration:none;}
body.tax-professional-page .tax-main-nav>a:hover {color:var(--tax-accent);}
body.tax-professional-page .tax-main-nav .ds-prof-nav-menu {font:700 14px/1.4 Inter,Arial,sans-serif;}
body.tax-professional-page .tax-header-actions {display:flex;align-items:center;gap:8px;flex:none;}
body.tax-professional-page :is(.tax-header-lang,.tax-header-theme) {min-height:40px;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 11px;
  background:var(--tax-panel);color:var(--tax-ink);border:1px solid var(--tax-border);
  border-radius:10px;cursor:pointer;font:700 13px/1.2 Inter,Arial,sans-serif;}
body.tax-professional-page .tax-header-lang img {width:20px;height:15px;object-fit:cover;}
body.tax-professional-page :is(.tax-header-lang,.tax-header-theme):focus-visible {outline:3px solid var(--tax-accent);outline-offset:2px;}
body.tax-professional-page .wrap {width:100%;max-width:1120px;margin:0 auto;padding:35px 24px 58px;}
body.tax-professional-page .masthead {color:var(--tax-ink);padding:12px 0 21px;text-align:left;}
body.tax-professional-page .masthead .back {display:none;}
body.tax-professional-page .eyebrow {font:800 12px/1.4 Inter,Arial,sans-serif;letter-spacing:.14em;color:var(--tax-accent);margin-bottom:10px;}
body.tax-professional-page .masthead h1 {color:var(--tax-ink);font:700 clamp(32px,4vw,52px)/1.13 'Space Grotesk',Inter,Arial,sans-serif;margin:0 0 12px;}
body.tax-professional-page .masthead p {color:var(--tax-muted);margin:0;max-width:720px;font-size:16px;line-height:1.6;}
body.tax-professional-page .pro-nav {justify-content:flex-start;gap:8px;margin:7px 0 22px;}
body.tax-professional-page .pro-nav a {font:700 13px/1.4 Inter,Arial,sans-serif;color:var(--tax-muted);background:var(--tax-panel);border:1px solid var(--tax-border);padding:10px 15px;min-height:41px;text-decoration:none;}
body.tax-professional-page .pro-nav a.active {background:#e4f5ec;color:#075e49;border-color:#a8d9c4;}
body.tax-professional-page .card {background:var(--tax-panel);border:1px solid var(--tax-border);border-radius:18px;padding:32px;box-shadow:0 15px 40px rgba(27,47,54,.055);}
body.tax-professional-page .card h2 {color:var(--tax-ink);font:800 14px/1.4 Inter,Arial,sans-serif;letter-spacing:.07em;}
body.tax-professional-page .card p {color:var(--tax-muted);font-size:15px;}
body.tax-professional-page .source-pill,body.tax-professional-page .credential {background:#dff4eb;color:#075e49;}
body.tax-professional-page .search-box {background:var(--tax-muted-panel);border:1px solid var(--tax-border);padding:20px;}
body.tax-professional-page .search-grid input {background:var(--tax-panel);color:var(--tax-ink);border-color:var(--tax-border);min-width:0;min-height:46px;}
body.tax-professional-page .search-grid input:focus {border-color:var(--tax-accent);outline:3px solid #b9e9d4;outline-offset:1px;box-shadow:none;}
body.tax-professional-page .search-grid button {background:#087967;min-height:46px;}
body.tax-professional-page .search-note,body.tax-professional-page .status,body.tax-professional-page .result-head span {color:var(--tax-muted);}
body.tax-professional-page .status.error {color:#aa3329;}
body.tax-professional-page .result-head strong,body.tax-professional-page .result-name {color:var(--tax-ink);}
body.tax-professional-page .result-card,body.tax-professional-page .explain>div {background:var(--tax-panel);border-color:var(--tax-border);}
body.tax-professional-page .result-meta,body.tax-professional-page .explain span {color:var(--tax-muted);font-size:13px;}
body.tax-professional-page .map-link {color:var(--tax-ink);border-color:var(--tax-border);}
body.tax-professional-page .map-link.primary-action {background:#153e32;border-color:#153e32;color:#fff;}
body.tax-professional-page .all-directory {background:#fff3db;border:1px solid #eedab9;}
body.tax-professional-page .all-directory p {color:#55462f;}
body.tax-professional-page .all-directory a {background:#153e32;color:#fff;}
body.tax-professional-page .disclaimer {color:var(--tax-muted);font-size:12px;text-align:left;margin:21px 0 0;}
body.tax-professional-page .source-line a {color:var(--tax-accent);}
body.tax-professional-page .ds-shared-footer {margin:0;padding:34px 20px;border-radius:0;}
html[data-theme="dark"] body.tax-professional-page {
  --tax-bg:#1c1b15;--tax-panel:#28271f;--tax-ink:#f7f4ec;
  --tax-muted:#d6d1c5;--tax-border:#524e40;--tax-muted-panel:#302f26;--tax-accent:#9de5c0;
}
html[data-theme="dark"] body.tax-professional-page .pro-nav a.active {background:#244538;color:#b9f4d5;border-color:#53816a;}
html[data-theme="dark"] body.tax-professional-page .source-pill,
html[data-theme="dark"] body.tax-professional-page .credential {background:#244538;color:#b9f4d5;}
html[data-theme="dark"] body.tax-professional-page .search-grid button {background:#9de5c0;color:#13291e;}
html[data-theme="dark"] body.tax-professional-page .search-grid input:focus {outline-color:#407862;}
html[data-theme="dark"] body.tax-professional-page .search-grid input::placeholder {color:#c9c2b3;}
html[data-theme="dark"] body.tax-professional-page .status.error {color:#ffb4a0;}
html[data-theme="dark"] body.tax-professional-page .map-link.primary-action {background:#9de5c0;border-color:#9de5c0;color:#13291e;}
html[data-theme="dark"] body.tax-professional-page .all-directory {background:#403424;border-color:#78613c;}
html[data-theme="dark"] body.tax-professional-page .all-directory p {color:#f2dec1;}
html[data-theme="dark"] body.tax-professional-page .all-directory a {background:#9de5c0;color:#13291e;}
html[data-theme="dark"] body.tax-professional-page .source-line a {color:#9de5c0;}
@media (max-width:1288px) {body.tax-professional-page .tax-site-header-inner {padding-inline:24px;}}
@media (max-width:1000px) {
  body.tax-professional-page .tax-site-header-inner {flex-wrap:wrap;gap:10px 14px;}
  body.tax-professional-page .tax-main-nav {order:3;flex-basis:100%;justify-content:flex-start;flex-wrap:wrap;gap:5px 14px;}
  body.tax-professional-page .tax-header-actions {margin-left:auto;}
}
@media (max-width:600px) {
  body.tax-professional-page .tax-site-header-inner {min-height:0;padding:12px 16px;gap:10px 7px;}
  body.tax-professional-page .tax-site-brand {font-size:15px;gap:7px;}
  body.tax-professional-page .tax-site-brand img {width:32px;height:32px;}
  body.tax-professional-page .tax-header-actions {gap:5px;}
  body.tax-professional-page :is(.tax-header-lang,.tax-header-theme) {min-height:36px;padding:6px 7px;font-size:11px;gap:4px;}
  body.tax-professional-page .tax-header-lang img {width:17px;height:13px;}
  body.tax-professional-page .tax-main-nav {gap:3px 10px;}
  body.tax-professional-page .tax-main-nav>a,body.tax-professional-page .tax-main-nav .ds-prof-nav-menu {font-size:12px;}
  body.tax-professional-page .tax-main-nav .ds-prof-nav-dropdown {left:auto;right:0;}
  body.tax-professional-page .wrap {padding:26px 16px 42px;}
  body.tax-professional-page .masthead {padding:5px 0 16px;}
  body.tax-professional-page .masthead h1 {font-size:clamp(30px,8vw,39px);}
  body.tax-professional-page .masthead p {font-size:14px;}
  body.tax-professional-page .pro-nav a {padding:8px 10px;font-size:12px;}
  body.tax-professional-page .card {padding:20px 16px;}
  body.tax-professional-page .search-box {padding:15px;}
  body.tax-professional-page .search-grid {grid-template-columns:minmax(0,1fr);}
  body.tax-professional-page .search-grid button {width:100%;}
  body.tax-professional-page .result-card {grid-template-columns:minmax(0,1fr);}
  body.tax-professional-page .result-actions {justify-content:stretch;}
  body.tax-professional-page .explain {grid-template-columns:minmax(0,1fr);}
}
@media (max-width:359px) {
  body.tax-professional-page .tax-site-brand span {font-size:13px;}
  body.tax-professional-page :is(.tax-header-lang,.tax-header-theme) {padding:6px 5px;}
  body.tax-professional-page .tax-main-nav {gap:2px 8px;}
  body.tax-professional-page .tax-main-nav>a,body.tax-professional-page .tax-main-nav .ds-prof-nav-menu {font-size:11px;}
}
