/* Visible-scale candidate: make reading hierarchy and action controls materially larger.
   Keep component widths and images untouched; use responsive heading clamps. */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-size: 18px !important; }
body :is(p,li,dd,dt,td,th,label,legend,summary,figcaption) {
  font-size: 18px !important;
  line-height: 1.55 !important;
}
body :is(small,.eyebrow,[class*="eyebrow"],[class*="kicker"],[class*="badge"],[class*="axis"],[class*="sku"],
  [class*="code"],[class*="meta"],[class*="note"],[class*="caption"],[class*="tag"],[class*="breadcrumb"]) {
  font-size: 16px !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
}
body :is(button,input[type="submit"],input[type="button"],[role="button"],.cta,.button,.btn) {
  min-height: 52px;
  font-size: 18px !important;
  line-height: 1.4 !important;
}
body :is(input:not([type="hidden"]),select,textarea) { font-size: 18px !important; min-height: 52px; }
body :is(nav,[role="navigation"]) :is(a,button) { font-size: 16px !important; line-height: 1.45 !important; }
body :is(main,[role="main"]) a { font-size: 18px !important; line-height: 1.5 !important; }
body :is(main,[role="main"]) h1 { font-size: clamp(36px, 4vw, 52px) !important; line-height: 1.08 !important; }
body :is(main,[role="main"]) h2 { font-size: clamp(30px, 3.2vw, 42px) !important; line-height: 1.14 !important; }
body :is(main,[role="main"]) h3 { font-size: clamp(24px, 2.3vw, 32px) !important; line-height: 1.2 !important; }
body .vmbn-cta { font-size: 16px !important; }
body footer :is(p,li,a,small) { font-size: 16px !important; line-height: 1.5 !important; }
/* Keep the three-step progress indicator on one row after the larger type scale. */
body .configure-page .config-steps li { font-size: 16px !important; line-height: 1.35 !important; min-width: 0 !important; }

/* Preserve the existing consent layout while keeping its choices readable. */
body #vobomConsentV201 { position: relative !important; inset: auto !important; max-height: none !important; overflow: visible !important; }
body #vobomConsentV201 .vc-title { font-size: 15px !important; }
body #vobomConsentV201 .vc-copy { font-size: 14px !important; line-height: 1.4 !important; }
body #vobomConsentV201 .vc-actions { margin-top: 18px !important; }
body #vobomConsentV201 .vc-actions button { font-size: 14px !important; min-height: 44px !important; }

@media (max-width: 700px) {
  body { font-size: 18px !important; }
  body :is(main,[role="main"]) :is(p,li,dd,dt,td,th,label,legend,summary,figcaption) {
    font-size: 18px !important;
    line-height: 1.55 !important;
  }
  body :is(nav,[role="navigation"]) :is(a,button) { font-size: 16px !important; }
  body :is(main,[role="main"]) a { font-size: 18px !important; }
  body :is(main,[role="main"]) h1 { font-size: clamp(34px, 9vw, 42px) !important; }
  body :is(main,[role="main"]) h2 { font-size: clamp(28px, 7.4vw, 34px) !important; }
  body :is(main,[role="main"]) h3 { font-size: clamp(23px, 6vw, 28px) !important; }
  /* The language control shares the initial consent row, then moves to a safe
     header-adjacent pocket after a choice is stored. */
  body:has(#vobomConsentV201.is-open) .vobom-language-switcher {
    position: fixed !important; top: 4px !important; right: 8px !important;
  }
  body:has(#vobomConsentV201:not(.is-open)):has(#siteNav) .vobom-language-switcher {
    position: fixed !important; top: 108px !important; right: 10px !important;
  }
  body.vobom-furniture-sprint:has(#vobomConsentV201:not(.is-open)) .vobom-language-switcher {
    position: fixed !important; top: 164px !important; right: 10px !important;
  }
  body:has(#vobomConsentV201:not(.is-open)):has(#vobom-moto-buyer-nav) .vobom-language-switcher {
    position: fixed !important; top: 204px !important; right: 10px !important;
  }
  body:has(#vobomConsentV201:not(.is-open)):has(.product-detail-page):has(.trust) .vobom-language-switcher {
    position: fixed !important; top: 4px !important; right: 8px !important;
  }
  body .vobom-language-switcher .vobom-language-current {
    box-sizing: border-box !important; width: 52px !important; min-width: 52px !important;
    height: 44px !important; min-height: 44px !important; padding: 8px 10px !important;
    font-size: 16px !important;
  }
  body #vobomConsentV201.has-choice:not(.is-open) {
    position: static !important; inset: auto !important; z-index: auto !important;
    width: 100% !important; margin: 8px 0 !important; pointer-events: auto !important;
  }
  body #vobomConsentV201.has-choice:not(.is-open) #vobomPrivacyChoicesV201 {
    position: static !important; min-height: 40px !important; font-size: 14px !important; padding: 8px 12px !important;
  }
}
