/* The imported design uses important rules throughout. Keep release overrides scoped. */
@layer redicoUsability {
  html[data-rx-bento] .rr-quote-form :is(.rr-field-product,.rr-field-contact) > :is(input,textarea) {
    background:#17232d !important; color:#fff !important; border:1px solid #8393a1 !important;
    width:100% !important; max-width:100% !important; min-width:0 !important; box-sizing:border-box !important;
    font-size:16px !important; line-height:1.45 !important;
  }
  html[data-rx-bento] .rr-quote-form .rr-field-caption {
    display:block !important; position:static !important; margin:0 0 .35rem !important;
    font-size:14px !important; line-height:1.4 !important; white-space:normal !important; color:#f5f7fa !important;
  }
  html[data-rx-bento] .rr-quote-form :is(.rr-field-product,.rr-field-contact)::before {display:none !important}
  html[data-rx-bento] .rr-quote-form :is(.rr-field-product,.rr-field-contact) > :is(input,textarea) {padding:10px 12px !important}
  html[data-rx-bento] .rr-quote-form .rr-field-product > textarea {
    height:auto !important; min-height:4.75rem !important; max-height:none !important;
    resize:vertical !important; overflow:auto !important; white-space:pre-wrap !important;
  }
  html[data-rx-bento] .rr-quote-form :is(.rr-field-product,.rr-field-contact) > :is(input,textarea)::placeholder {color:#c7d2dc !important; opacity:1 !important}
  html[data-rx-bento] :is(.rr-quote-card,#rxh .rr-hero-grid) {height:auto !important; max-height:none !important}
  html[data-rx-bento] form :is(label,fieldset,button,select,textarea) {min-inline-size:0;max-inline-size:100%;box-sizing:border-box}
  html[data-rx-bento] form button {white-space:normal !important;overflow-wrap:anywhere}
  html[data-rx-bento] .rr-upload-title {overflow-wrap:anywhere;white-space:normal !important;min-width:0}
  html[data-rx-bento] :is(a,button,summary,input,textarea,select):focus-visible {outline:3px solid #1678bd !important;outline-offset:2px !important}
  @media(max-width: 1000px) {
    html[data-rx-bento] .rxmm2-all::after {content:'☰' !important;position:static !important;display:grid !important;place-items:center !important;color:var(--rb-ink,#20252b) !important;background:none !important;font:24px/1 sans-serif !important;transform:none !important;opacity:1 !important}
    html[data-rx-bento] .rxmm2-all[aria-expanded=true]::after {content:'×' !important}
    html[data-rx-bento] .rxmm2-all:has(.rxmm2-bg)::after {display:none !important}
  }
  @media(max-width: 480px) {
    html[data-rx-bento] .rb-home-search-row {display:grid !important;grid-template-columns:minmax(0,1fr) !important; height:auto !important;gap:4px !important}
    html[data-rx-bento] .rb-home-search-row > div {min-width:0 !important;width:100% !important}
    html[data-rx-bento] .rb-home-search-row .rb-home-find {position:static !important;width:100% !important;transform:none !important}
    html[data-rx-bento] #rx-tnved-q {padding-right:10px !important;width:100% !important}
    html[data-rx-bento] .rx-calctab {display:none !important}
  }
  @media(prefers-reduced-motion:reduce) {
    html[data-rx-bento] .hm-marquee-set, html[data-rx-bento] .hm-marquee-track {animation:none !important}
  }
}
@layer redicoUsability {
  @media (min-width:481px) and (max-width:1450px) {
    html[data-rx-bento] .rx-calctab {display:none !important}
  }
}
@layer redicoUsability {
  .redico-scroll-table {max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain}
  @media(max-width:480px){
    html[data-rx-bento] .rb-home-search-row > :is(div,.rb-home-find) {grid-column:1 / -1 !important;grid-row:auto !important}
    html[data-rx-bento] .rr-quote-form .rr-field-product > textarea {min-height:6.9rem !important;field-sizing:content}
  }
}
@layer redicoUsability {
  @media(max-width:400px) {
    html[data-rx-bento] main button[style*="inline-flex"] {
      max-inline-size:100% !important;min-inline-size:0 !important;white-space:normal !important;
      padding-inline:12px !important;overflow-wrap:anywhere !important;
    }
  }
}
@layer redicoUsability {
  @media(max-width:600px) {
    html[data-rx-bento] #home-content #rxh .rr-trust-steps ol {
      grid-template-columns:minmax(0,1fr) !important;gap:10px !important;
    }
    html[data-rx-bento] #home-content #rxh .rr-trust-steps li {
      flex-direction:row !important;align-items:center !important;gap:12px !important;
    }
    html[data-rx-bento] #home-content #rxh .rr-trust-steps li::after {display:none !important}
    html[data-rx-bento] #home-content #rxh .rr-trust-steps li span {overflow-wrap:normal !important;word-break:normal !important}
    html[data-rx-bento] #home-content #rxh .rr-eyebrow {font-size:12px !important;line-height:1.5 !important}
  }
  html[data-rx-theme="dark"] #redico-encyclopedia {
    --ec-paper:#111c28 !important;--ec-surface:#182737 !important;--ec-fg:#f3f5f8 !important;
    --ec-edge:#435063 !important;--ec-muted:#c6d1df !important;--ec-accent:#ffb0a8 !important;
    color-scheme:dark;
  }
  html[data-rx-theme="light"] #redico-encyclopedia {
    --ec-paper:#f7f8f9 !important;--ec-surface:#fff !important;--ec-fg:#17202c !important;
    --ec-edge:#dfe3e8 !important;--ec-muted:#536172 !important;--ec-accent:#ac2a21 !important;
    color-scheme:light;
  }
}

@layer redicoUsability {
  html[data-rx-reference] #home-content > :is(.rr-quick-grid,.rr-preserved-hero) {
    margin-inline:auto !important;
  }
  html[data-rx-reference] [data-rst-menu] .rxmm2-find {
    width:auto !important;
  }
  html[data-rx-reference] body:has(#rx-cookie-bar) .rr-mobile-cta {
    display:none !important;
  }
  @media (max-width: 1199px) {
    html[data-rx-reference] #home-content .rr-services-grid {
      grid-template-columns:repeat(2,minmax(0,1fr)) !important;
      grid-template-rows:none !important;
    }
    html[data-rx-reference] #home-content a.rr-service {
      display:grid !important;
      grid-column:auto !important;
      grid-row:auto !important;
      grid-template-columns:minmax(0,1fr) clamp(60px,15vw,88px) !important;
      align-items:center !important;
      gap:12px !important;
      min-height:112px !important;
      padding:14px !important;
    }
    html[data-rx-reference] .rr-service .rr-service-copy {
      grid-area:1 / 1 !important;
      min-width:0 !important;
    }
    html[data-rx-reference] .rr-service-copy :is(h3,p) {
      max-width:none !important;
      overflow-wrap:break-word !important;
      word-break:normal !important;
    }
    html[data-rx-reference] .rr-service .rr-card-arrow {
      left:auto !important;
      right:10px !important;
    }
    html[data-rx-reference] .rr-service-copy h3 {
      font-size:clamp(16px,1.8vw,20px) !important;
    }
    html[data-rx-reference] #home-content a.rr-service img {
      position:static !important;
      grid-area:1 / 2 !important;
      width:100% !important;
      height:auto !important;
      max-height:88px !important;
      object-fit:contain !important;
    }
  }
  @media (max-width: 600px) {
    html[data-rx-reference] #home-content .rr-services-grid {
      grid-template-columns:minmax(0,1fr) !important;
    }
  }
  @media (max-width: 480px) {
    html[data-rx-reference] #rx-tnved-form {
      display:flex !important;
      flex-direction:column !important;
    }
    html[data-rx-reference] #rx-tnved-count {
      position:static !important;
      order:3;
      white-space:normal !important;
    }
    html[data-rx-reference] #rx-tnved-results {
      position:static !important;
      max-height:min(38vh,260px) !important;
    }
    html[data-rx-reference] #rx-tnved-chips {order:1}
  }
}

@layer redicoUsability {
  html[data-rx-reference] .rr-hero-answer {
    position:relative;
    z-index:1;
    margin:0 0 16px !important;
    max-width:62%;
    color:var(--rb-ink) !important;
    font:400 16px/1.45 var(--rb-font) !important;
  }
  @media (min-width:769px) and (max-width:1100px) {
    html[data-rx-reference] #rxh .rr-trust-row {
      grid-template-columns:minmax(245px,1.05fr) minmax(320px,1.4fr) minmax(0,.8fr) !important;
    }
    html[data-rx-reference] #rxh .rr-trust-steps li span {
      overflow-wrap:normal !important;
      word-break:normal !important;
    }
  }
  @media (max-width:768px) {
    html[data-rx-reference] .rr-hero-answer {max-width:none}
  }
}

/* Homepage: keep the question first in the reading order and the registry one tap away. */
@layer redicoUsability {
  html[data-rx-reference] #rxh .rr-hero-grid:has(.rr-home-intro) {
    display:grid !important;
    grid-template-columns:minmax(0,1.45fr) minmax(304px,1fr) !important;
    grid-template-areas:"intro enquiry" "finder finder" !important;
    grid-template-rows:auto auto !important; gap:12px !important; align-items:stretch !important;
  }
  html[data-rx-reference] #rxh .rr-home-intro {
    grid-area:intro !important; min-width:0 !important; padding:clamp(20px,2.6vw,32px) !important;
    background:var(--rb-surface) !important; border:1px solid var(--rb-line) !important; border-radius:var(--rb-radius) !important;
  }
  html[data-rx-reference] #rxh .rr-home-intro .rr-eyebrow {
    display:flex; align-items:center; gap:8px; max-width:100% !important; min-height:0 !important; margin:0 0 12px !important;
  }
  html[data-rx-reference] #rxh .rr-home-intro .rr-eyebrow::before {content:''; width:21px; height:2px; background:var(--rb-accent); flex:none}
  html[data-rx-reference] #rxh .rr-home-intro .rr-hero-title {
    max-width:100% !important; margin:0 0 12px !important;
    font-size:clamp(30px,3.45vw,49px) !important; line-height:1.06 !important; text-wrap:balance !important;
  }
  html[data-rx-reference] #rxh .rr-home-intro .rr-hero-answer {max-width:57ch; margin:0 !important; line-height:1.48 !important}
  html[data-rx-reference] #rxh .rr-start-links {
    display:flex; align-items:center; flex-wrap:wrap; gap:4px 16px; margin:12px 0 -3px; padding:0;
  }
  html[data-rx-reference] #rxh .rr-start-links a {
    display:inline-flex; align-items:center; gap:6px; min-height:40px; color:var(--rb-accent-text) !important;
    font:650 14px/1.35 var(--rb-font); text-decoration:none; text-underline-offset:3px;
  }
  html[data-rx-reference] #rxh .rr-start-links a:is(:hover,:focus-visible) {text-decoration:underline}
  html[data-rx-reference] #rxh .rr-start-links svg {width:18px; height:18px; flex:none}
  html[data-rx-reference] #rxh .rr-hero-grid > #rxh-form {
    grid-area:enquiry !important; min-width:0 !important;
  }
  html[data-rx-reference] #rxh .rr-hero-grid > #rxh-form.rr-ux-home-form {
    display:block !important; padding:0 !important; border:0 !important; background:none !important;
    box-shadow:none !important; align-self:stretch !important;
  }
  html[data-rx-reference] #rxh .rr-ux-home-form > .rx-ux-form-wrap {min-width:0; box-sizing:border-box; height:100%}
  html[data-rx-reference] #rxh .rr-ux-home-form form.rx-ux-form {grid-template-columns:minmax(0,1fr) !important; gap:11px !important}
  html[data-rx-reference] #rxh .rr-ux-home-form form.rx-ux-form[hidden] {display:none !important}
  html[data-rx-reference] #rxh .rr-home-finder.rr-search-card {
    grid-area:finder !important; min-height:0 !important; padding:14px clamp(16px,2.2vw,28px) 16px !important;
  }
  html[data-rx-reference] #rxh .rr-finder-intro {
    display:flex; align-items:center; justify-content:space-between; gap:10px; min-width:0;
    margin:0 0 8px;
  }
  html[data-rx-reference] #rxh .rr-finder-intro h2 {
    font:730 clamp(18px,1.75vw,23px)/1.15 var(--rb-font) !important; letter-spacing:-.03em; margin:0 0 4px !important; color:var(--rb-ink) !important;
  }
  html[data-rx-reference] #rxh .rr-finder-intro p {color:var(--rb-muted) !important; font:400 14px/1.45 var(--rb-font) !important; margin:0 !important}

  html[data-rx-reference] #rxh .rr-home-finder #tnved {width:100% !important; scroll-margin-top:90px !important}
  html[data-rx-reference] #home-content #rr-services {scroll-margin-top:90px !important}
  html[data-rx-reference] #rr-services .rr-service-more {display:flex; flex-wrap:wrap; gap:2px 18px; margin-top:6px}
  html[data-rx-reference] #rr-services .rr-service-more a {display:inline-flex; align-items:center; gap:5px; min-height:42px; font:650 14px/1.4 var(--rb-font); color:var(--rb-accent-text); text-underline-offset:3px}
  html[data-rx-reference] #home-content #rr-services > h2 {margin:22px 0 3px !important}
  html[data-rx-reference] #home-content .rr-services-lead {margin:0 0 14px; color:var(--rb-muted); font:400 16px/1.5 var(--rb-font)}
  html[data-rx-reference] #home-content .rr-services-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important; grid-template-rows:none !important;
  }
  html[data-rx-reference] #home-content #rr-services a.rr-service {
    grid-area:auto !important; display:grid !important; grid-template-columns:minmax(0,1fr) clamp(64px,7vw,94px) !important;
    padding:16px !important; gap:10px !important; align-items:center !important; min-height:134px !important;
  }
  html[data-rx-reference] #rr-services .rr-service .rr-service-copy {grid-area:1 / 1 !important; min-width:0}
  html[data-rx-reference] #rr-services .rr-service-copy :is(h3,p) {max-width:none !important; overflow-wrap:break-word !important}
  html[data-rx-reference] #rr-services .rr-service-copy h3 {font-size:clamp(16px,1.5vw,20px) !important; margin:0 0 6px !important}
  html[data-rx-reference] #rr-services .rr-service-copy p {font-size:14px !important; line-height:1.45 !important}
  html[data-rx-reference] #home-content #rr-services .rr-service img {
    position:static !important; grid-area:1 / 2 !important; width:100% !important; height:auto !important; max-height:96px !important; object-fit:contain !important;
  }
  html[data-rx-reference] #rr-services .rr-service .rr-card-arrow {
    left:auto !important; right:9px !important; bottom:9px !important; width:25px !important; height:25px !important; font-size:16px !important;
  }
  @media(max-width:1020px) {
    html[data-rx-reference] #home-content .rr-services-grid {grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  }
  @media(max-width:760px) {
    html[data-rx-reference] #rxh .rr-hero-grid:has(.rr-home-intro) {
      grid-template-columns:minmax(0,1fr) !important; grid-template-areas:"intro" "enquiry" "finder" !important;
      grid-template-rows:auto !important; gap:10px !important;
    }
    html[data-rx-reference] #rxh .rr-home-intro {padding:16px !important}
    html[data-rx-reference] #rxh .rr-home-intro .rr-eyebrow {margin:0 0 7px !important}
    html[data-rx-reference] #rxh .rr-home-intro .rr-hero-title {font-size:clamp(26px,6vw,34px) !important; margin:0 0 8px !important}
    html[data-rx-reference] #rxh .rr-start-links {margin-top:6px; gap:2px 12px}
  }
  @media(max-width:620px) {
    html[data-rx-reference] #home-content .rr-services-grid {grid-template-columns:minmax(0,1fr) !important}
    html[data-rx-reference] #home-content #rr-services a.rr-service {min-height:110px !important; padding:13px !important}
  }
  @media(prefers-reduced-motion:no-preference) and (hover:hover) {
    html[data-rx-reference] #rr-services .rr-card-arrow {transition:transform .2s ease}
    html[data-rx-reference] #rr-services a.rr-service:is(:hover,:focus-visible) .rr-card-arrow {transform:translateX(2px)}
  }
  @media(prefers-reduced-motion:reduce) {
    html[data-rx-reference] #rr-services a.rr-service,html[data-rx-reference] #rr-services a.rr-service * {transition:none !important;animation:none !important}
    html[data-rx-reference] #rr-services a.rr-service:hover {transform:none !important}
  }
}

@layer redicoUsability {
  html[data-rx-reference] #rxh .rr-hero-grid > .rr-hero-art {
    grid-area:finder !important; display:block !important; position:static !important; width:72px !important;
    height:auto !important; object-fit:contain !important; pointer-events:none !important; z-index:1 !important;
    justify-self:end; align-self:start; margin:8px 18px 0 0 !important;
  }
  html[data-rx-reference] #rxh .rr-finder-intro {min-height:55px; padding-right:80px}
  html[data-rx-reference] #rxh .rr-home-intro .rr-eyebrow {font-weight:650 !important}
  html[data-rx-reference] #rr-noscript-navigation:has(.rr-native-menu) {margin:6px auto !important; padding:0 14px !important}
  html[data-rx-reference] .rr-native-menu > summary {padding:11px 0; min-height:44px; font:650 15px/1.4 var(--rb-font); cursor:pointer}
  html[data-rx-reference] .rr-native-menu[open] {padding-bottom:12px}
  html[data-rx-reference] #rxh .rr-ux-home-form > .rx-ux-form-wrap {display:flex; flex-direction:column; justify-content:center; align-items:stretch}
  @media(min-width:761px) {
    html[data-rx-reference] #rxh .rr-home-finder.rr-search-card {
      display:grid !important; grid-template-columns:minmax(160px,.48fr) minmax(0,1fr); gap:20px; align-items:center;
    }
    html[data-rx-reference] #rxh .rr-home-finder .rr-finder-intro {margin:0}
    html[data-rx-reference] #rxh .rr-hero-grid > .rr-hero-art {grid-area:intro !important; width:88px !important; align-self:start; margin:7px 8px 0 0 !important}
    html[data-rx-reference] #rxh .rr-home-intro .rr-eyebrow {padding-right:58px}
    html[data-rx-reference] #rxh .rr-finder-intro {min-height:0; padding:0}
  }
  @media(min-width:761px) and (max-width:1019px) {
    html[data-rx-reference] #rxh .rr-home-intro {padding:21px !important}
    html[data-rx-reference] #rxh .rr-home-intro .rr-hero-title {margin-top:36px !important}
  }
  @media(min-width:1020px) {
    html[data-rx-reference] #rxh .rr-hero-grid > .rr-hero-art {
      grid-area:intro !important; align-self:center; width:clamp(125px,13vw,192px) !important; margin:2px 12px 0 0 !important
    }
    html[data-rx-reference] #rxh .rr-home-intro {padding-right:clamp(145px,15vw,210px) !important}
    html[data-rx-reference] #rxh .rr-home-intro .rr-hero-title {font-size:clamp(34px,3.1vw,45px) !important}
    html[data-rx-reference] #rxh .rr-finder-intro {min-height:0; padding-right:0}
  }
  @media(prefers-reduced-motion:no-preference) and (hover:hover) {
    html[data-rx-reference] #rxh .rr-hero-grid > .rr-hero-art {transition:transform .22s ease}
    html[data-rx-reference] #rxh .rr-hero-grid:has(:is(.rr-home-intro,.rr-home-finder):hover) > .rr-hero-art {transform:translateY(-2px) rotate(-1deg)}
  }
}
