/* Audit corrections preserve the site's existing typography and palette roles. */
[hidden] { display: none !important; }
.hero-pre, .hero-h1, .hero-sub, .hero-actions, .hero-meta, .hero .phone { opacity: 1; animation: none; }
.objection[aria-expanded="false"] .answer { visibility: hidden; }
.objection[aria-expanded="true"] .answer { visibility: visible; }
.scale { grid-template-columns: repeat(auto-fit, minmax(44px, 1fr)); gap: 8px; }
.scale button { min-height: 44px; min-width: 44px; background: var(--pine-line); color: var(--mist); }
.scale button[aria-pressed="true"] { background: var(--gold); color: var(--ink); }
.scale button:focus-visible { outline-color: var(--mist); }
.side, .scale-ends { color: #B7C8C0; }
.scale button:focus-visible, button:focus-visible, select:focus-visible, a:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
.btn:disabled { opacity: .65; cursor: not-allowed; }
#boxStop { position: absolute; bottom: -3rem; left: 50%; transform: translateX(-50%); white-space: nowrap; z-index: 2; }
.box-card:has(#boxStop:not([hidden])) { padding-bottom: 5rem; }
.country-choice { display: grid; gap: .6rem; margin-top: 1rem; }
.country-choice select { color: var(--ink); background: var(--mist); font: inherit; padding: .7rem; max-width: 100%; border: 1px solid currentColor; border-radius: 8px; }
.insight-row:not(.open) .track { max-height: 3.5rem; overflow: hidden; }
.insight-row .dup { display: none; }
.insight-row.open .track { max-height: none; flex-wrap: wrap; }
.insight-chip { white-space: normal; max-width: 100%; overflow-wrap: anywhere; }
.insight-row.upcoming .family-chip b { color: #90601E; }
.insight-row .viewport { overflow: hidden; }
.insights h2 em, .insights-more b, .legal-content .num { color: #90601E; }
.faq { padding: 5rem 0; }
.faq details { border-bottom: 1px solid #83998D; padding: 1.2rem 0; }
.faq summary { cursor: pointer; font-weight: 600; min-height: 44px; }
.faq p { max-width: 70ch; margin-top: .8rem; }
.legal-language { display: flex; align-items: center; gap: .5rem; }
.legal-language select { font: inherit; padding: .6rem; background: transparent; color: inherit; border: 1px solid currentColor; border-radius: 8px; }
@media (max-width: 520px) {
  .nav { gap: .5rem; padding-left: 1rem; padding-right: 1rem; }
  .nav .brand { font-size: 1.1rem; gap: .3rem; }
  .nav .brand img { width: 26px; height: 26px; }
  .nav-end { gap: .4rem; }
  .nav-end .btn { font-size: .75rem; padding: .6rem; white-space: normal; text-align: center; }
  .nav-lang { padding: .3rem; max-width: 58px; }
  .legal-nav { flex-wrap: wrap; gap: 1rem; }
  .legal-nav nav { flex-wrap: wrap; }
  .insight-row.open { flex-direction: column; align-items: stretch; }
  .insight-row.open .viewport { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .box-dot, .box-trail { visibility: hidden; }
}
