/* R18 Light Precision: catalog explorer and family hubs.
 * Keep the existing query, shortlist and comparison contracts. These route
 * scopes intentionally beat legacy R15 imagery and the shared reading layer. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) {
 --cx-paper: var(--r18-bg); --cx-ink: var(--r18-ink); --cx-muted: var(--r18-mute); --cx-line: var(--r18-line); --cx-accent: #e8e8ed;
 --cx-gutter: 0px; --catalog-pad: var(--r18-pad);
 width: 100%; max-width: none; margin: 0; padding: 0 0 80px !important;
 background: var(--r18-bg) !important; color: var(--r18-ink) !important;
 font-family: var(--r18-font) !important; color-scheme: light; overflow: clip;
}
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) * { box-sizing: border-box; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) [hidden] { display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub)::before,
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub)::after,
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(.oc-intro,.cx-card,.cx-card__visual,.erdi-family-overview)::before,
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(.oc-intro,.cx-card,.cx-card__visual,.erdi-family-overview)::after,
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro > p::before { content: none !important; display: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(h1,h2,h3,h4) { font-family: var(--r18-font) !important; font-weight: 600 !important; color: var(--r18-ink) !important; -webkit-text-fill-color: currentColor !important; letter-spacing: -.025em !important; text-transform: none !important; background: none !important; filter: none !important; text-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(p,dt,dd,label,button,select,input,summary,a,span,small) { font-family: var(--r18-font) !important; -webkit-text-fill-color: currentColor !important; text-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) > :is(section,nav,form,div,p) { width: min(calc(100% - 2 * var(--r18-pad)),var(--r18-max)); max-width: var(--r18-max); margin-inline: auto; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) > .erdi-breadcrumb { padding: 28px 0 0 !important; margin-block: 0; background: transparent !important; font-size: 12px; font-weight: 400; letter-spacing: 0 !important; text-transform: none !important; color: var(--r18-mute) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .erdi-breadcrumb :is(a,li,span) { color: var(--r18-mute) !important; font-size: 12px; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .erdi-breadcrumb [aria-current] { color: var(--r18-ink) !important; }

/* Intro: two sentences, not four lines of compressed poster lettering. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro { display: block; min-height: 0; padding: 60px 0 72px !important; border: 0 !important; background: transparent !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro h1 { width: auto; max-width: 100%; margin: 0; padding: 0; font-size: clamp(48px,6vw,86px) !important; font-weight: 600 !important; line-height: 1.06 !important; letter-spacing: -.03em !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro h1 span { display: block; color: inherit !important; -webkit-text-fill-color: currentColor !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro > p { max-width: 660px; margin: 25px 0 0; padding: 0; color: var(--r18-soft) !important; font-size: 19px; line-height: 1.6; }

/* Two independent, genuinely proportional scales. Sources have no fake bar. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding: 0 0 88px; background: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster > header { grid-column: 1/-1; display: flex; align-items: flex-end; justify-content: space-between; gap: 35px; margin: 0 0 12px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-catalog-kicker { margin: 0 0 12px; font-size: 13px; font-weight: 500; letter-spacing: 0; color: var(--r18-red) !important; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster h2 { margin: 0; font-size: clamp(28px,3vw,40px); line-height: 1.15; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster > header > p { max-width: 400px; margin: 0; font-size: 14px; line-height: 1.6; color: var(--r18-mute) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__group { min-width: 0; padding: 28px 24px 20px; background: var(--r18-card) !important; border-radius: var(--r18-radius); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__group-head { display: flex; justify-content: space-between; gap: 20px; margin-bottom: 25px; font-size: 13px; line-height: 1.4; color: var(--r18-ink); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__group-head span:last-child { color: var(--r18-mute); white-space: nowrap; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__scale { position: relative; display: block; height: 16px; margin: 0 76px 10px 112px; font-size: 10px; line-height: 1.5; color: var(--r18-mute); white-space: nowrap; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__scale span { position: absolute; top: 0; transform: translateX(-50%); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__scale span:first-child { left: 0; transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__scale span:nth-child(2) { left: 33.3333%; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__scale span:nth-child(3) { left: 66.6667%; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__scale span:last-child { left: 100%; transform: translateX(-100%); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__line { display: grid; grid-template-columns: 100px minmax(0,1fr) 64px; gap: 12px; align-items: center; min-height: 38px; border-bottom: 1px solid #ececf0; font-size: 12px; line-height: 1.4; text-decoration: none; color: var(--r18-ink) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__line:last-child { border: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__model { font-weight: 550; letter-spacing: -.01em; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__value { text-align: right; color: var(--r18-soft); font-size: 11px; font-variant-numeric: tabular-nums; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__bar { position: relative; height: 5px; border-radius: 4px; background: #f0f0f3; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__bar i { position: absolute; inset: 0 auto 0 0; width: var(--r17-range); min-width: 0; border-radius: 4px; background: linear-gradient(90deg,#ffc2bc,var(--r18-red)); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__bar i::after { content: ''; position: absolute; width: 8px; height: 8px; right: -4px; top: -1.5px; border-radius: 50%; background: var(--r18-red); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-source .r17-range-poster__bar { background: repeating-linear-gradient(90deg,#e8e8ed 0 4px,transparent 4px 8px); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-source .r17-range-poster__bar i { display: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__line:hover .r17-range-poster__model { color: var(--r18-link); }

/* Existing selects remain native and URL-backed; the view rail is segmented. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar { position: sticky; top: 60px; z-index: 30; display: flex; flex-wrap: wrap; align-items: end; gap: 14px; margin-block: 0; padding: 22px 24px !important; border: 1px solid #e8e8ed !important; border-radius: 24px; background: rgba(255,255,255,.96) !important; backdrop-filter: blur(12px); box-shadow: 0 8px 24px #00000005; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar > label { flex: 1 1 150px; min-width: 0; display: grid; gap: 7px; color: var(--r18-mute) !important; font-size: 12px; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar > label:first-child { flex-basis: 200px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar :is(input,select) { width: 100%; min-width: 0; min-height: 46px; padding: 11px 16px; border: 1px solid transparent; border-radius: 999px; background: #f5f5f7 !important; color: var(--r18-ink) !important; font-size: 15px; font-weight: 400; letter-spacing: 0; box-shadow: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar :is(input,select):focus { border-color: var(--r18-link); outline: 2px solid #0066cc30; outline-offset: 2px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar > button { min-height: 46px; padding: 11px 20px; border: 0; border-radius: 999px; color: #fff !important; background: var(--r18-ink) !important; font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; box-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar > .oc-reset { border: 1px solid var(--r18-line); background: transparent !important; color: var(--r18-soft) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar > [data-catalog-count] { flex: 1 0 100%; margin: 0; color: var(--r18-mute) !important; font-size: 12px; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-navigation { padding: 28px 0; border: 0; gap: 20px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-views { display: inline-flex; gap: 3px; padding: 4px; border-radius: 999px; background: #e8e8ed; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-views button { min-height: 40px; border: 0; border-radius: 999px; padding: 9px 16px; color: var(--r18-mute) !important; background: transparent !important; font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; box-shadow: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-views button[aria-pressed=true] { color: var(--r18-ink) !important; background: #fff !important; box-shadow: 0 1px 4px #0000000c; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-views [data-catalog-selected-count] { border-radius: 50%; background: #e8e8ed; color: var(--r18-soft); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-navigation > p { color: var(--r18-mute); font-size: 13px; }

/* Product-first cards, shared with family collections. Full quick values are
 * retained in a native disclosure, and the full comparison remains unchanged. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(.cx-grid,.erdi-family-grid) { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin: 0; padding: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card { position: relative; display: flex; flex-direction: column; min-width: 0; min-height: 400px; margin: 0; padding: 28px; border: 0 !important; border-radius: var(--r18-radius) !important; background: #fff !important; color: var(--r18-ink) !important; box-shadow: none !important; overflow: hidden; isolation: isolate; transition: box-shadow .25s,transform .25s; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card:hover { transform: translateY(-3px); box-shadow: 0 18px 35px -25px #0004 !important; background: #fff !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__heading { position: relative; z-index: 2; order: 0; display: flex; flex-direction: column-reverse; gap: 6px; align-items: start; padding: 0; margin: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__heading :is(h2,h3) { margin: 0; padding: 0; font-size: clamp(23px,2vw,28px) !important; line-height: 1.15 !important; letter-spacing: -.025em !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__heading a { color: var(--r18-ink) !important; text-decoration: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__heading p { margin: 0; color: var(--r18-mute) !important; font-size: 11px; font-weight: 500; line-height: 1.5; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-summary { position: relative; z-index: 2; order: 1; width: 44%; margin-top: 20px; min-height: 145px; pointer-events: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-range { margin: 0; color: var(--r18-soft) !important; font-size: 12px; line-height: 1.5; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-range span { display: block; color: var(--r18-mute); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-range strong { display: block; margin-top: 4px; color: var(--r18-ink); font-size: 22px; font-weight: 550; letter-spacing: -.02em; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-price { margin: 15px 0 0; color: var(--r18-soft) !important; font-size: 13px; line-height: 1.6; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__visual { position: absolute; z-index: 1; top: 95px; right: 12px; width: 57%; height: 210px; display: grid; place-items: center; margin: 0; padding: 0; aspect-ratio: auto; border: 0; border-radius: 0; background: transparent !important; overflow: visible; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__visual :is(picture,img) { position: static; display: block; width: 100%; height: 100%; max-height: 100%; margin: 0; padding: 0; object-fit: contain; aspect-ratio: auto; border: 0; border-radius: 0; background: none; mix-blend-mode: normal; transform: none; box-shadow: none; filter: drop-shadow(0 16px 15px #0000001c); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card:hover .cx-card__visual img { transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__open { display: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__actions { position: relative; z-index: 2; order: 3; display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 44px; margin-top: auto; padding: 24px 0 0; border: 0; background: transparent; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__actions > a { display: inline-flex; align-items: center; gap: 7px; color: var(--r18-link) !important; font-size: 14px; font-weight: 500; letter-spacing: 0; text-transform: none; text-decoration: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__actions > button { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 7px 10px; border: 1px solid var(--r18-line); border-radius: 999px; color: var(--r18-soft) !important; background: transparent !important; font-size: 11px; font-weight: 500; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__actions > button[aria-pressed=true] { border-color: var(--r18-link); color: var(--r18-link) !important; background: #edf5ff !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-details { position: relative; z-index: 3; order: 4; margin: 15px 0 0; padding: 0; border: 0 !important; border-top: 1px solid #ececf0 !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-details summary { padding: 12px 0 0; color: var(--r18-mute) !important; font-size: 12px; font-weight: 400; cursor: pointer; letter-spacing: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-details > p { margin: 14px 0; font-size: 13px; color: var(--r18-soft) !important; line-height: 1.6; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__specs { margin: 14px 0 0; padding: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__specs > div { display: grid; grid-template-columns: 90px minmax(0,1fr); gap: 12px; padding: 10px 0; border-bottom: 1px solid #ececf0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__specs dt { margin: 0; color: var(--r18-mute) !important; font-size: 11px; font-weight: 400; letter-spacing: 0; line-height: 1.6; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__specs dd { display: block; margin: 0; color: var(--r18-ink) !important; font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; -webkit-line-clamp: unset; overflow: visible; }

/* Existing comparison, selection and quotation remain usable in the light system. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.cx-compare,.oc-comparison,.oc-table-scroll,.op-quote-drawer,.cx-shortlist) { background: #fff !important; color: var(--r18-ink) !important; border-color: var(--r18-line) !important; border-radius: 20px; box-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.cx-compare-heading,.cx-compare-empty,.cx-compare > summary) { margin-inline: 24px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.oc-table,.oc-table th,.oc-table td,.oc-label-cell,.oc-product,.oc-table thead,.oc-table tbody) { background: #fff !important; color: var(--r18-ink) !important; border-color: #ececf0 !important; font-family: var(--r18-font) !important; text-transform: none; letter-spacing: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-table th { font-weight: 500; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-table tr.is-different td { background: #fff7f6 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.cx-shortlist__compare,.op-button,.op-quote-bottom button,.oc-mobile-quote a) { background: var(--r18-ink) !important; color: #fff !important; border: 0 !important; border-radius: 999px; font-family: var(--r18-font) !important; letter-spacing: 0; text-transform: none; box-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.op-quote-header,.op-quote-bottom,.op-quote-item,.op-quote-content,.op-quote-intro,.op-quantity,.cx-shortlist__items li) { background: #fff !important; border-color: #ececf0 !important; color: var(--r18-ink) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.op-quantity input,.op-quantity button) { background: #f5f5f7 !important; color: var(--r18-ink) !important; border-color: #e8e8ed !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-shortlist__items button { color: var(--r18-ink) !important; border: 1px solid var(--r18-line); border-radius: 999px; background: #f5f5f7 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.cx-shortlist__label > span,.cx-shortlist__clear,.cx-text-button) { color: var(--r18-mute) !important; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.oc-product__image,.op-quote-item > picture,.op-quote-item > img) { background: transparent !important; background-image: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index :is(.oc-table a,.op-quote-item__info a) { color: var(--r18-link) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(.oc-note,.cx-range-note,.oc-empty,.erdi-family-links,.erdi-platform-nav,.r14-catalog-guides) { margin-block: 28px; padding: 0; background: transparent !important; color: var(--r18-mute) !important; font-size: 13px; line-height: 1.65; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(.oc-note,.cx-range-note,.erdi-family-links,.erdi-platform-nav,.r14-catalog-guides) a { color: var(--r18-link) !important; background: transparent !important; border-color: var(--r18-line); border-radius: 999px; font-size: 13px; letter-spacing: 0; text-transform: none; }

/* Family hero: the first actual model, completely visible in a white card. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-hero { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 60px; align-items: center; min-height: 600px; padding: 50px 0 70px !important; border: 0 !important; background: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-model__eyebrow { margin: 0 0 18px; color: var(--r18-red) !important; font-size: 14px; font-weight: 500; letter-spacing: 0; text-transform: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-hero h1 { width: auto; max-width: 9ch; margin: 0; font-size: clamp(48px,6vw,88px) !important; line-height: 1.04 !important; letter-spacing: -.03em !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-lead { max-width: 460px; margin: 25px 0 30px; font-size: 18px; line-height: 1.6; color: var(--r18-soft) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-action { display: inline-flex; align-items: center; gap: 14px; min-height: 46px; padding: 12px 22px; border-radius: 999px; background: var(--r18-ink) !important; color: #fff !important; font-size: 14px; font-weight: 500; text-decoration: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual { display: flex; flex-direction: column; justify-content: center; align-items: center; min-width: 0; height: 490px; margin: 0; padding: 26px 36px; border: 0; border-radius: var(--r18-radius) !important; background: #fff !important; box-shadow: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual img { display: block; width: 100%; height: 390px; max-width: 460px; max-height: calc(100% - 60px); margin: 0; padding: 0; object-fit: contain; filter: drop-shadow(0 22px 22px #00000020); border-radius: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual figcaption { display: flex; justify-content: space-between; gap: 20px; width: 100%; margin-top: 18px; color: var(--r18-mute) !important; font-size: 12px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual a { color: var(--r18-link) !important; text-decoration: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-overview { margin-block: 64px 72px; padding: 40px 44px !important; border: 0 !important; border-radius: var(--r18-radius) !important; background: #fff !important; box-shadow: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-intro__body { padding: 0 !important; margin: 0; border: 0 !important; background: transparent !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-overview :is(p,li) { color: var(--r18-soft) !important; font-size: 16px; line-height: 1.7; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-overview :is(th,td,table) { background: transparent !important; color: var(--r18-ink) !important; border-color: #ececf0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-models { padding: 0 !important; background: transparent !important; border: 0 !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub #erdi-family-models { width: auto; max-width: none; margin: 0 0 32px !important; padding: 0 !important; font-size: 42px; line-height: 1.15; scroll-margin-top: 100px; }

@media(max-width:1050px) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster { grid-template-columns: 1fr; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(.cx-grid,.erdi-family-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-hero { gap: 32px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual { height: 410px; padding: 22px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual img { height: 310px; }
}
@media(max-width:760px) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro { padding: 42px 0 48px !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro h1 { font-size: clamp(29px,8.6vw,48px) !important; line-height: 1.08 !important; letter-spacing: -.03em !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro > p { font-size: 16px; margin-top: 22px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster { gap: 16px; padding-bottom: 52px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster > header { display: block; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster > header > p { margin-top: 18px; font-size: 13px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__group { padding: 24px 16px 18px; border-radius: 22px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__group-head { font-size: 11px; gap: 12px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__line { grid-template-columns: 83px minmax(0,1fr) 54px; gap: 8px; min-height: 39px; font-size: 10px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__value { font-size: 10px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r17-range-poster__scale { margin-left: 91px; margin-right: 62px; font-size: 8px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar { position: static; padding: 20px !important; gap: 14px 10px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar > label { flex: 1 1 calc(50% - 10px); }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar > label:first-child { flex-basis: 100%; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-toolbar :is(input,select) { font-size: 14px; padding-inline: 13px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-navigation { display: block; padding-block: 22px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-navigation > p { margin-top: 12px; font-size: 12px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .cx-views button { padding-inline: 13px; font-size: 12px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-hero { display: grid; grid-template-columns: 1fr; gap: 30px; padding: 42px 0 48px !important; min-height: 0; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-hero h1 { max-width: 100%; font-size: 54px !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-lead { font-size: 16px; margin-block: 20px 25px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual { height: 345px; padding: 24px; border-radius: 22px !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual img { height: 265px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-visual figcaption { font-size: 11px; margin-top: 12px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-overview { padding: 28px 24px !important; margin-bottom: 48px; border-radius: 22px !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-overview :is(p,li) { font-size: 14px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub #erdi-family-models { font-size: 34px; margin-bottom: 25px !important; }
}
@media(max-width:600px) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) :is(.cx-grid,.erdi-family-grid) { grid-template-columns: 1fr; gap: 16px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card { min-height: 365px; padding: 24px; border-radius: 22px !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__heading :is(h2,h3) { font-size: 25px !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-summary { margin-top: 20px; min-height: 125px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__visual { top: 86px; right: 12px; width: 55%; height: 195px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__actions { padding-top: 20px; }
}
@media(prefers-reduced-motion:reduce) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card { transition: none; }
}

/* R18 final pass: the catalog is a product browser first. Keep every range
 * record available in a keyboard-native disclosure instead of forcing a
 * 59-row spreadsheet before the first product. No JS or URL contract changes. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro { padding: 46px 0 40px !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro h1 { font-size: clamp(48px,5.3vw,72px) !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index > .r18-range-atlas { width: min(calc(100% - 2 * var(--r18-pad)),var(--r18-max)); max-width: var(--r18-max); margin: 0 auto 24px; padding: 0; border: 1px solid #e5e5ea; border-radius: 20px; background: transparent !important; box-shadow: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas > summary { display: flex; align-items: center; gap: 20px; min-height: 78px; margin: 0; padding: 20px 24px; list-style: none; cursor: pointer; color: var(--r18-ink) !important; font-size: 17px; font-weight: 500; letter-spacing: -.01em; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas > summary::-webkit-details-marker { display: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas__meta { margin-left: auto; color: var(--r18-mute); font-size: 13px; font-weight: 400; letter-spacing: 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas__icon { display: grid; place-items: center; flex: 0 0 28px; width: 28px; height: 28px; border: 1px solid var(--r18-line); border-radius: 50%; color: var(--r18-ink); font-size: 20px; line-height: 1; transition: transform .2s; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas[open] .r18-range-atlas__icon { transform: rotate(45deg); }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas > summary:focus-visible { outline: 2px solid var(--r18-link); outline-offset: 4px; border-radius: 20px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas .r17-range-poster { width: auto; margin: 0; padding: 16px 24px 24px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas .r17-range-poster h2 { font-size: 28px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-grid { grid-template-columns: repeat(var(--r18-family-columns,3),minmax(0,1fr)); width: 100%; max-width: none; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-hero h1 { border: 0 !important; padding-bottom: 0 !important; }
@media(max-width:1050px) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro { padding: 34px 0 30px !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .oc-intro h1 { font-size: clamp(29px,8.6vw,38px) !important; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas > summary { display: grid; grid-template-columns: minmax(0,1fr) 28px; gap: 6px 14px; min-height: 86px; padding: 18px 20px; font-size: 16px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas__meta { grid-column: 1; grid-row: 2; margin-left: 0; font-size: 11px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas__icon { grid-column: 2; grid-row: 1/3; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas .r17-range-poster { padding: 10px 12px 14px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas .r17-range-poster > header { padding: 0 8px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas .r17-range-poster__group { padding-inline: 12px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .r18-family-hero h1 { font-size: 48px !important; }
}
@media(max-width:600px) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-family-hub .erdi-family-grid { grid-template-columns: 1fr; }
}
@media(prefers-reduced-motion:reduce) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content.erdi-model-index .r18-range-atlas__icon { transition: none; }
}

/* Product images reserve a real grid row. Absolute media could extend behind
 * the details strip on wider family cards; contain alone cannot reserve space. */
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); grid-template-rows: auto minmax(210px,auto) auto auto; align-content: start; column-gap: 12px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__heading { grid-column: 1/-1; grid-row: 1; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-summary { grid-column: 1; grid-row: 2; align-self: center; width: auto; min-height: 0; margin: 18px 0; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__visual { grid-column: 2; grid-row: 2; position: relative; inset: auto; align-self: center; width: 100%; min-width: 0; height: 210px; min-height: 0; max-height: 210px; margin: 0; padding: 12px 0; overflow: visible; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__visual :is(picture,img) { width: 100% !important; min-width: 0; height: 186px !important; min-height: 0; max-height: 186px !important; object-fit: contain !important; object-position: center; aspect-ratio: auto !important; transform: none !important; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__actions { grid-column: 1/-1; grid-row: 3; margin-top: 0; padding-top: 8px; min-height: 44px; }
html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .r18-card-details { grid-column: 1/-1; grid-row: 4; margin-top: 14px; }
@media(max-width:600px) {
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card { grid-template-rows: auto minmax(180px,auto) auto auto; column-gap: 8px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__visual { height: 180px; max-height: 180px; }
 html body.erdi-r18.erdi-r18.erdi-r18 #main-content:is(.erdi-model-index,.erdi-family-hub) .cx-card__visual :is(picture,img) { height: 156px !important; max-height: 156px !important; }
}
