/* CPA Bridge — heuristic UX improvements (2026-10-20)
   Conservative additive layer over site.css: retain the established visual identity. */
html { scroll-padding-top:94px; }
[hidden] { display:none!important; }
.skip-to-main {
  position:fixed;left:14px;top:-90px;z-index:200;
  padding:12px 17px;border-radius:12px;background:var(--navy);color:#fff;
  font-size:14px;font-weight:750;box-shadow:var(--shadow-sm);
}
.skip-to-main:focus { top:12px; }
:where(a,button,input,textarea,select):focus-visible { outline:3px solid #6880ff;outline-offset:3px; }
.ux-beta-notice {
  margin:20px 0 22px;padding:17px 19px;border-radius:13px;
  font-size:13px;line-height:1.75;word-break:keep-all;
}
.ux-beta-notice strong { display:block;margin-bottom:4px;font-size:14px; }
.ux-beta-notice a { text-decoration:underline;text-underline-offset:3px; }
.ux-form-alert {
  padding:14px 16px;margin:15px 0 18px;border:1px solid #efb8aa;
  border-radius:12px;background:#fff2ef;color:#8c3128;
  font-size:13px;font-weight:700;line-height:1.7;
}
.ux-field-error { display:block;margin-top:0;color:#a23428;font-size:12px;font-weight:700;line-height:1.55; }
.ux-field-error:empty { display:none; }
.field [aria-invalid="true"] { border-color:#c34b3f!important;box-shadow:0 0 0 3px #ffe1dd!important; }
.ux-field-help { font-size:12px;line-height:1.6;color:#7c8695; }
.request-progress button:focus-visible { outline-offset:5px; }
.request-progress button[aria-current="step"] span { color:var(--navy); }
.request-progress button:disabled { cursor:not-allowed; }
.ux-request-review {
  margin:20px 0 0;padding:19px 20px;
  border:1px solid #dce3ed;background:#f9faff;border-radius:14px;
}
.ux-request-review h3 { font-size:15px;margin:0 0 12px;letter-spacing:-.025em; }
.ux-request-review dl {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 18px;margin:0;
}
.ux-request-review dt { font-size:11px;color:#6f798b; }
.ux-request-review dd { margin:4px 0 0;font-size:13px;color:#202d45;font-weight:700;line-height:1.55;overflow-wrap:anywhere; }
.ux-request-review .ux-review-wide { grid-column:1/-1; }
.ux-request-review p { font-size:12px;color:#728099;line-height:1.65;margin:10px 0 0; }
.ux-form-muted { font-size:12px;line-height:1.6;color:#7a8799; }
.ux-demo-label {
  display:block;margin:0 0 10px;font-size:11px;
  letter-spacing:.01em;color:#7a8799;font-weight:700;
}
.ux-comparison {
  margin-bottom:17px;padding:22px;border:1px solid #dfe6ef;
  background:#fff;border-radius:16px;box-shadow:0 2px 10px #102a5606;
}
.ux-comparison h2 { margin:0;font-size:18px;letter-spacing:-.035em; }
.ux-comparison p { margin:7px 0 16px;font-size:13px;color:#697589;line-height:1.65; }
.ux-comparison-scroll { overflow:auto;border:1px solid #e4eaf1;border-radius:11px; }
.ux-comparison table {
  width:100%;min-width:650px;border-collapse:collapse;text-align:left;
}
.ux-comparison th,.ux-comparison td { padding:13px 15px;border-bottom:1px solid #edf0f5;font-size:13px;vertical-align:top; }
.ux-comparison th { background:#f7f9fd;color:#66748a;font-size:11px;white-space:nowrap; }
.ux-comparison tbody tr:last-child td { border-bottom:0; }
.ux-comparison td strong { font-size:14px;color:var(--navy);white-space:nowrap; }
.ux-comparison a { color:var(--navy);text-decoration:underline;text-underline-offset:2px; }
.ux-next-action {
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:18px 20px;margin:0 0 17px;
  border:1px solid #d6e0f1;border-radius:15px;
  background:linear-gradient(112deg,#f1f5ff,#fcfdff);
}
.ux-next-action-label { display:block;margin-bottom:5px;font-size:10px;letter-spacing:.09em;font-weight:850;color:#5269a3; }
.ux-next-action strong { font-size:16px;line-height:1.45; }
.ux-next-action p { margin:6px 0 0;color:#64738a;font-size:12px;line-height:1.6; }
.ux-next-action button { flex:0 0 auto; }
.workspace-tab[aria-selected="true"] { background:#fff;color:var(--navy); }
.workspace-tab:focus-visible { outline-offset:2px; }
@media(max-width:700px) {
  .ux-beta-notice { margin-top:13px;padding:15px;font-size:12px; }
  .ux-request-review { padding:16px; }
  .ux-request-review dl { grid-template-columns:1fr;gap:9px; }
  .ux-comparison { padding:15px; }
  .ux-comparison h2 { font-size:17px; }
  .ux-next-action { align-items:stretch;flex-direction:column;padding:16px;gap:13px; }
  .ux-next-action button { width:100%; }
}
@media(prefers-reduced-motion:reduce) {
  .skip-to-main { transition:none; }
}

/* US TAX BRIDGE — 2026 domain and conversion UX */
.brand { font-size:14px; letter-spacing:-.035em; gap:10px; white-space:nowrap; }
.brand-mark { font-size:10px; letter-spacing:-.035em; flex:0 0 auto; }
.tax-situation-section .section-head { margin-bottom:27px; }
.tax-situation-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.tax-situation {
  display:flex;flex-direction:column;align-items:flex-start;min-height:278px;padding:29px 27px;
  background:#fff;border:1px solid #e2e7f0;border-radius:18px;
  box-shadow:0 4px 18px rgba(14,30,66,.035);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.tax-situation:hover,.tax-situation:focus-visible { transform:translateY(-3px);border-color:#9db3d7;box-shadow:0 17px 36px rgba(16,42,86,.08); }
.tax-situation-number { color:#627caa;font-size:10px;letter-spacing:.1em;font-weight:850; }
.tax-situation h3 { margin:31px 0 8px;font-size:20px;letter-spacing:-.04em;line-height:1.35;color:#132b53; }
.tax-situation p { margin:0;font-size:13px;color:#667387;line-height:1.8;word-break:keep-all; }
.tax-situation-cta { display:flex;align-items:center;justify-content:space-between;width:100%;
  margin-top:auto;padding-top:27px;font-size:13px;font-weight:800;color:#254577; }
.tax-situation-cta b { font-size:20px;font-weight:500; }
.tax-situation-foot { margin:20px 0 0;color:#647188;font-size:13px; }
.tax-situation-foot a { color:#183c71;text-decoration:underline;text-underline-offset:3px;font-weight:750; }
.tax-proofbar { background:#102a56;color:#eaf0ff; }
.tax-proofbar-inner { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;min-height:84px;align-items:center; }
.tax-proofbar span { font-size:12px;line-height:1.65;letter-spacing:-.015em; }
.tax-proofbar strong { color:#90bdff;margin-right:12px;font-size:11px; }
.tax-guides-section .section-head { margin-bottom:28px; }
.tax-guide-tiles { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.tax-guide-tiles a { display:flex;flex-direction:column;min-height:240px;border-radius:16px;
  background:#f5f7fa;border:1px solid #e4e9f0;padding:26px;
  transition:background-color .18s ease,transform .18s ease; }
.tax-guide-tiles a:hover { background:#eaf0fa;transform:translateY(-2px); }
.tax-guide-tiles span { font-size:10px;font-weight:850;letter-spacing:.07em;color:#536f9d; }
.tax-guide-tiles h3 { margin:32px 0 25px;font-size:19px;line-height:1.45;letter-spacing:-.045em;word-break:keep-all; }
.tax-guide-tiles b { margin-top:auto;color:#315183;font-size:12px; }
.tax-guides-footer { display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:24px; }
.tax-guides-footer > a:not(.btn) { font-size:13px;font-weight:700;color:#315183;text-decoration:underline;text-underline-offset:3px; }
.tax-guide-intro { color:#66748a;font-size:15px;line-height:1.85; }
.tax-guide-layout { display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:34px;align-items:start; }
.tax-article { padding:36px 42px;border:1px solid #e3e8f0;border-radius:18px;background:#fff; }
.tax-article h2 { margin:33px 0 13px;font-size:23px;line-height:1.4;letter-spacing:-.04em; }
.tax-article h2:first-child { margin-top:0; }
.tax-article p,.tax-article li { color:#45546a;font-size:15px;line-height:1.9;word-break:keep-all; }
.tax-article ul { padding-left:21px; }
.tax-article li+li { margin-top:8px; }
.tax-article a:not(.btn) { color:#1e4f9e;text-decoration:underline;text-underline-offset:3px; }
.tax-article small { display:block;font-size:12px;color:#74839a;line-height:1.7; }
.tax-aside { position:sticky;top:108px;padding:25px;border-radius:15px;background:#f3f6fa;border:1px solid #e4e9f0; }
.tax-aside h3 { margin:0 0 10px;font-size:17px;letter-spacing:-.035em; }
.tax-aside p { font-size:12px;color:#68758a;line-height:1.8;margin:0 0 17px; }
.tax-aside .btn { width:100%; }
.tax-disclaimer { margin-top:28px;padding:16px 19px;background:#f3f6fb;border-left:3px solid #92a5c5;color:#667487;font-size:12px;line-height:1.8; }
.tax-guide-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px; }
.tax-guide-card { display:flex;flex-direction:column;min-height:238px;border:1px solid #e4e9f0;border-radius:16px;background:#fff;padding:28px;transition:.18s ease; }
.tax-guide-card:hover { border-color:#a9bdd8;box-shadow:0 12px 32px #122c510e;transform:translateY(-2px); }
.tax-guide-card span { font-size:10px;color:#6b7d9a;font-weight:850;letter-spacing:.07em; }
.tax-guide-card h2 { font-size:20px;margin:24px 0 10px;line-height:1.4;letter-spacing:-.04em; }
.tax-guide-card p { font-size:13px;line-height:1.8;color:#6a7788;margin:0 0 20px; }
.tax-guide-card b { font-size:12px;color:#1c467c;margin-top:auto; }
.tax-faq-list { display:grid;gap:10px; }
.tax-faq-list details { background:white;border:1px solid #e2e7ef;border-radius:13px;padding:0 22px; }
.tax-faq-list summary { cursor:pointer;list-style:none;position:relative;padding:23px 36px 23px 0;
  font-size:16px;font-weight:760;color:#1f3150;line-height:1.55; }
.tax-faq-list summary::-webkit-details-marker{display:none}
.tax-faq-list summary::after { content:"+";position:absolute;right:0;top:20px;font-size:23px;color:#657c9e;font-weight:400; }
.tax-faq-list details[open] summary::after { content:"−"; }
.tax-faq-list details p { margin:0 0 23px;color:#5a677a;font-size:14px;line-height:1.9; }
.tax-faq-list details a { color:#315c92;text-decoration:underline; }
.tax-mini-cta { display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:28px 32px;border-radius:16px;background:#ebf1fa;margin-top:40px; }
.tax-mini-cta h3 { margin:0 0 8px;font-size:21px; }
.tax-mini-cta p { margin:0;color:#66748b;font-size:13px; }
.tax-mini-cta .btn { flex-shrink:0; }
@media(max-width:980px) {
  .tax-situation-grid,.tax-guide-tiles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tax-guide-layout { grid-template-columns:1fr; }
  .tax-aside { position:static; }
}
@media(max-width:700px) {
  .brand { font-size:12px;gap:7px; }
  .brand-mark { width:33px;height:33px;font-size:9px; }
  .tax-situation-grid,.tax-guide-tiles,.tax-guide-list { grid-template-columns:1fr; }
  .tax-situation { min-height:220px;padding:23px; }
  .tax-situation h3 { margin-top:22px; }
  .tax-proofbar-inner { grid-template-columns:1fr;gap:12px;padding:23px 0; }
  .tax-proofbar span { font-size:12px; }
  .tax-guide-tiles a { min-height:185px; }
  .tax-guide-tiles h3 { margin:25px 0; }
  .tax-article { padding:24px 20px; }
  .tax-article h2 { font-size:21px; }
  .tax-mini-cta { flex-direction:column;align-items:stretch;padding:24px; }
  .tax-mini-cta .btn { width:100%; }
}

.hero-beta-info { margin:22px 0 -16px;color:#687991;font-size:12px;line-height:1.6; }
.hero-beta-info strong { color:#264a7f; }
.tax-service-availability { padding:18px 20px;margin-bottom:25px;font-size:13px;line-height:1.75; }
.tax-service-soon { display:inline-block;margin-left:10px;padding:5px 8px;background:#edf1f6;border-radius:7px;font-size:10px;font-weight:700;color:#677a95; }
@media(max-width:700px) {
  .hero-beta-info { margin-top:19px;margin-bottom:0;font-size:11px; }
  .tax-service-availability { font-size:12px; }
}
