/* Readable typography, shared visual language with the seller page. */
body[data-pb][data-simulator-page] {
  --font-serif: var(--font-display);
  --font-mono: var(--font-display);
  --pb-font-serif: var(--font-display);
  --pb-font-mono: var(--font-display);
  --ink-600: #3e5063;
  font-family: var(--font-display);
  font-size: 18px;
  line-height: 1.7;
}
body[data-pb][data-simulator-page] :is(h1,h2,h3,h4) { font-family: var(--font-display); font-weight: 600; line-height: 1.25; letter-spacing: -.015em; }
body[data-pb][data-simulator-page] h2 { font-size: clamp(30px,3.2vw,42px); }
body[data-pb][data-simulator-page] h3 { font-size: clamp(22px,2vw,26px); }
body[data-pb][data-simulator-page] :is(em.serif-gold,.bqs__serif) { font-family: var(--font-display); font-style: normal; font-weight: inherit; }
body[data-pb][data-simulator-page] em.serif-gold { color: var(--gold-ink); }
body[data-pb][data-simulator-page] :is(.hero,.cta-final) em.serif-gold { color: var(--gold-400); }
body[data-pb][data-simulator-page] :is(.eyebrow,.bqs__eyebrow) { font-size: 15px; font-weight: 600; line-height: 1.5; letter-spacing: .06em; }
body[data-pb][data-simulator-page] :is(.hero-interne__subtitle,.section-head p:not(.eyebrow),.prose-pb p,.prose-pb li,.card-light p,.highlight-box-pb p,.faq-pb .faq-answer p,.cta-final p,.bqs__intro) { font-size: 18px; line-height: 1.7; }
body[data-pb][data-simulator-page] .prose-pb p[style] { font-size: 16px !important; font-style: normal !important; }
body[data-pb][data-simulator-page] .bqs__title { font-size: clamp(30px,3.2vw,42px); }
body[data-pb][data-simulator-page] :is(.bqs__field label,.bqs__advanced summary,.svs__step,.svs__fiscal-title,.bqs__decomp-item span,.bqs__k) { font-family: var(--font-display); font-size: 17px; font-weight: 600; line-height: 1.5; letter-spacing: normal; text-transform: none; }
body[data-pb][data-simulator-page] :is(.bqs__field input,.bqs__field select) { font-size: 18px; min-height: 48px; }
body[data-pb][data-simulator-page] .bqs__seg input { min-height: 0; }
body[data-pb][data-simulator-page] .bqs__field input::placeholder { color: var(--mist-100); opacity: 1; }
body[data-pb][data-simulator-page] .bqs__seg span { font-size: 17px; line-height: 1.45; }
body[data-pb][data-simulator-page] :is(.bqs__hint,.bqs__estim-msg,.bqs__badge,.bqs__mode,.bqs__arbitrage,.bqs__avert,.svs__fiscal-note,.data-table__note) { font-family: var(--font-display); font-size: 16px; line-height: 1.6; font-style: normal; letter-spacing: normal; text-transform: none; }
body[data-pb][data-simulator-page] :is(.bqs__slider-head,.bqs__slider-ends,.bqs__annuel,.svs__check) { font-size: 17px; line-height: 1.6; }
body[data-pb][data-simulator-page] :is(.btn-pill,.bqs__cta,.bqs__btn-sm,.bqs__estim-link) { font-family: var(--font-display); font-size: 17px; font-weight: 600; line-height: 1.45; white-space: normal; }
body[data-pb][data-simulator-page] .bqs__error { font-size: 18px; line-height: 1.6; }
body[data-pb][data-simulator-page] .faq-pb .faq-question { font-size: 20px; font-weight: 600; line-height: 1.5; gap: 20px; }
body[data-pb][data-simulator-page] .data-table caption { font-family: var(--font-display); font-size: 20px; font-weight: 600; font-style: normal; }
body[data-pb][data-simulator-page] .data-table thead th { font-family: var(--font-display); font-size: 17px; font-weight: 600; letter-spacing: normal; text-transform: none; }
body[data-pb][data-simulator-page] .data-table tbody td { font-size: 18px; line-height: 1.6; }
body[data-pb][data-simulator-page] :is(.nav__logo,.nav__logo-text,.footer-brand-name) { font-family: var(--font-display); font-weight: 600; }
body[data-pb][data-simulator-page] :is(.nav__trigger,.nav__cta,.nav__sub a) { font-size: 16px; }
body[data-pb][data-simulator-page] .nav__links > li > a { font-size: 16px; }
body[data-pb][data-simulator-page] .site-footer .footer-col h3 { font-family: var(--font-display); font-size: 18px; font-weight: 600; letter-spacing: normal; text-transform: none; }
body[data-pb][data-simulator-page] :is(.footer-col a,.footer-nap,.footer-brand-tagline,.footer-bottom) { font-size: 16px; line-height: 1.7; }
body[data-pb][data-simulator-page] .footer-bottom { color: var(--mist-100); }
body[data-pb][data-simulator-page] .svs-lead { margin-top: 28px; border-top: 1px solid var(--glass-border); padding-top: 28px; scroll-margin-top: 90px; }
body[data-pb][data-simulator-page] .svs-lead[hidden] { display: none; }
body[data-pb][data-simulator-page] .svs-lead h3 { color: #fff; margin-bottom: 12px; }
body[data-pb][data-simulator-page] .svs-lead__fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
body[data-pb][data-simulator-page] .svs-lead__privacy { font-size: 16px; line-height: 1.65; color: var(--mist-100); margin: 18px 0 0; }
body[data-pb][data-simulator-page] .svs-lead__privacy a { color: var(--gold-400); text-decoration: underline; }
body[data-pb][data-simulator-page] .svs-lead__notice { color: var(--mist-100); font-size: 16px; margin: 20px 0 0; }
body[data-pb][data-simulator-page] .bqs__results { scroll-margin-top: 90px; }
@media (min-width:769px) and (max-width:1100px) {
  body[data-pb][data-simulator-page] .nav__links { gap: 8px; }
  body[data-pb][data-simulator-page] .nav-bar { gap: 12px; }
}
@media (min-width:769px) and (max-width:1000px) { body[data-pb][data-simulator-page] .nav__logo-text { display: none; } }
@media (max-width:768px) {
  body[data-pb][data-simulator-page] .nav__links.open > li > a,
  body[data-pb][data-simulator-page] .nav__links.open .nav__trigger { font-size: 22px; }
}
@media (max-width:640px) {
  body[data-pb][data-simulator-page] .svs-lead__fields { grid-template-columns: 1fr; }
  body[data-pb][data-simulator-page] .bqs__seg span { font-size: 16px; }
}

body[data-pb][data-simulator-page] :is(.bqs__intro,.bqs__avert) a { color: var(--gold-400); text-decoration: underline; }

/* Two readable groups side by side, with a compact action row. */
body[data-pb][data-simulator-page] .bqs { max-width: 1160px; padding: clamp(24px,3vw,36px); }
body[data-pb][data-simulator-page] .bqs__eyebrow { margin-bottom: 8px; }
body[data-pb][data-simulator-page] .bqs__intro { max-width: none; margin-bottom: 24px; }
body[data-pb][data-simulator-page] .svs__layout { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; }
body[data-pb][data-simulator-page] .svs__panel { display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; align-content: start; min-width: 0; }
body[data-pb][data-simulator-page] .svs__panel:first-child { padding-right: 32px; border-right: 1px solid var(--glass-border); }
body[data-pb][data-simulator-page] .svs__panel .svs__step { margin: 0; }
body[data-pb][data-simulator-page] .svs__panel .bqs__seg { margin-bottom: 0; max-width: none; }
body[data-pb][data-simulator-page] .svs__panel .bqs__seg label { margin-bottom: 0; }
body[data-pb][data-simulator-page] .svs__panel .bqs__estim-row { grid-template-columns: repeat(2,minmax(0,1fr)); }
body[data-pb][data-simulator-page] .svs__panel .bqs__estim-row > :first-child { grid-column: 1 / -1; }
body[data-pb][data-simulator-page] .svs__actions { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; margin-top: 24px; }
body[data-pb][data-simulator-page] .svs__actions .bqs__advanced { flex: 1; min-width: 0; margin-top: 0; }
body[data-pb][data-simulator-page] .svs__actions summary { min-height: 50px; align-content: center; }
body[data-pb][data-simulator-page] .svs__actions .bqs__cta { width: auto; min-width: 280px; margin-top: 0; }
body[data-pb][data-simulator-page] .svs__actions .bqs__advanced-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; max-width: none; }
body[data-pb][data-simulator-page] .svs__actions .bqs__advanced-body > .bqs__field { margin-top: 0 !important; }
body[data-pb][data-simulator-page] .svs__actions .svs__check { grid-column: 1 / -1; margin-top: 0; }
body[data-pb][data-simulator-page] .bqs > .bqs__intro:last-child { margin: 20px 0 0; }
@media (max-width: 900px) {
  body[data-pb][data-simulator-page] .svs__layout { grid-template-columns: minmax(0,1fr); gap: 24px; }
  body[data-pb][data-simulator-page] .svs__panel:first-child { border-right: 0; padding-right: 0; padding-bottom: 24px; border-bottom: 1px solid var(--glass-border); }
}
@media (max-width: 640px) {
  body[data-pb][data-simulator-page] .svs__actions { flex-direction: column; gap: 16px; }
  body[data-pb][data-simulator-page] .svs__actions .bqs__advanced { width: 100%; }
  body[data-pb][data-simulator-page] .svs__actions .bqs__cta { min-width: 0; width: 100%; }
  body[data-pb][data-simulator-page] .svs__actions .bqs__advanced-body,
  body[data-pb][data-simulator-page] .svs__panel .bqs__estim-row { grid-template-columns: minmax(0,1fr); }
}

/* Keep keyboard-focusable radio inputs inside their visible labels. */
body[data-pb][data-simulator-page] .bqs__seg label { position: relative; }
body[data-pb][data-simulator-page] .bqs__seg input { left: 0; top: 0; width: 1px; height: 1px; min-height: 0; padding: 0; margin: 0; border: 0; clip-path: inset(50%); overflow: hidden; }

/* Room for full amounts in the illustrative examples. */
body[data-pb][data-simulator-page] .svs-examples { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
body[data-pb][data-simulator-page] .svs-examples .card-light { min-width: 0; }
body[data-pb][data-simulator-page] .svs-money { white-space: nowrap; }
@media (max-width: 760px) {
  body[data-pb][data-simulator-page] .svs-examples { grid-template-columns: minmax(0,1fr); }
}

body[data-pb][data-simulator-page] .svs-lead__address { grid-column: 1 / -1; }
