/* ROTHLER shared roles. Provider logos/iframes keep their own branding. */
:root { --rh-action-font: var(--font-display); --rh-action-size: 16px; --rh-action-radius: 6px; --rh-action-height: 54px; --rh-copy-size: 16px; --rh-note-size: 13px; --rh-title-size: 30px; }
html body :is(.rh4-button,.btn-primary,.rt-pdp-mobile-cta__button,.rt-btn--primary,.rt-opc-button--primary),
html body #checkout .rt-opc-button--primary,
html body #rh-konfigurator-v2 :is(.rhk2-next,.rhk2-cta,.cta,#rhk2-next,#rhk2-next2) {
  font-family: var(--rh-action-font) !important; font-size: var(--rh-action-size) !important; font-weight: 700 !important;
  border-radius: var(--rh-action-radius) !important; min-height: var(--rh-action-height) !important; line-height: 1.4 !important;
}
html body :is(.btn-primary,.rt-btn--primary,.rt-pdp-mobile-cta__button,.rt-opc-button--primary):not(:disabled):not(.disabled),
html body #checkout .rt-opc-button--primary:not(:disabled),
html body #rh-konfigurator-v2 :is(#rhk2-next,#rhk2-next2):not(:disabled) { background: var(--blue-600) !important; border-color: var(--blue-600) !important; color: #fff !important; }
html body :is(.btn-primary,.rt-btn--primary,.rt-pdp-mobile-cta__button,.rt-opc-button--primary):not(:disabled):hover,
html body #rh-konfigurator-v2 :is(#rhk2-next,#rhk2-next2):not(:disabled):hover { background: var(--blue-700) !important; border-color: var(--blue-700) !important; }
html body :is(.adarev,.adarev-widget,.adarev-btn,.adarev-tabinfo,.dh-pdp-buybox__rating,.dh-pdp-buybox__rating a) { font-family: var(--font-body) !important; }
html body :is([class*='adarev-']) { font-family: var(--font-body) !important; }
html body .rh-purchase-scope { margin: 8px 0 0; font: 400 13px/1.4 var(--font-body); color: #526478; }
html body .rh3-purchase-sticky .rh-purchase-scope { grid-column: 1 / -1; text-align: center; margin: 0; }
html body .rh3-kf__h { flex-wrap: wrap; gap: 5px 12px; }
html body .rh3-kf__h > span { font-size: 12px !important; }
html body :is(.rh-ft-rating__n,.rh-dtrust__n,.rh4-rating) { font-size: 13px !important; }
html body.rh-pdp-v3 h1.product-title,
html body.is-cart h1,
html body #result-wrapper .rh-desc > h1 { font-size: var(--rh-title-size) !important; }
html body #checkout :is(.rh-checkout-intro,.rt-opc-placeholder,.rh-checkout-edit-cart) { font-size: 14px !important; }
html body #footer.rh-checkout-footer nav a { font-size: 12px !important; }
html body .rh-checkout-summary-preview { flex-wrap: wrap; }
html body .rh-checkout-summary-preview span { font-size: 12px !important; }
html body .rh-checkout-summary-amount small { font-size: 13px !important; }
@media(max-width:767px) {
 :root { --rh-title-size: 24px; }
 html body #checkout .rh-checkout-summary-toggle { padding: 14px 12px; gap: 8px; }
 html body #checkout .rh-checkout-summary-heading > span { font-size: 13px; }
 html body #checkout .rh-checkout-summary-heading > strong { font-size: 15px; }
 html body #checkout .rh-checkout-summary-hint { display: block; }
 html body #checkout .rh-checkout-summary-amount strong { font-size: 20px; }
 html body #checkout .rt-opc-drawer-item__delivery { font-size: 13px !important; }
}

html body .rh-payment-status { font:400 13px/1.5 var(--font-body);color:var(--color-text,#0a1628);margin:8px 0; }
html body .rh-payment-status:empty { display:none; }
@media(max-width:991.98px) {
 html body #result-wrapper .productlist-page-nav-header-m { display:grid !important;grid-template-columns:1fr 1fr;gap:6px 10px; }
 html body #result-wrapper .productlist-page-nav-header-m .productlist-item-info { grid-column:1 / -1;grid-row:2;font-size:13px !important;font-weight:400; }
 html body #result-wrapper .productlist-page-nav-header-m #js-filters { grid-column:1;grid-row:1;width:100% !important;justify-content:center;min-height:44px !important;border-radius:var(--rh-action-radius) !important; }
 html body #result-wrapper .productlist-page-nav-header-m .filter-type-FilterItemSort { grid-column:2;grid-row:1; }
 html body #result-wrapper .productlist-page-nav-header-m .filter-type-FilterItemSort > button { width:100%;min-height:44px;border-radius:var(--rh-action-radius) !important; }
 html body #result-wrapper .productlist-page-nav-header-m #collapseFilter:not(.modal) { grid-column:1 / -1; }
 html body #result-wrapper .rh-desc { margin-bottom:10px; }
 html body #result-wrapper .rh-desc__text { font-size:15px;line-height:1.45; }
 html body #result-wrapper .rh-desc.is-clamped .rh-desc__text { max-height:1.45em; }
 html body #result-wrapper .rh-desc__more { min-height:32px;margin:0;font-size:13px; }
 html body #result-wrapper .rh-berater-bar-wrap--kat { margin:0 0 10px; }
 html body #result-wrapper .rh-berater-bar-wrap--kat .rh-berater-bar { min-height:44px;padding:8px 12px;font-size:14px; }
}

html body { --adarev-font: var(--font-body) !important; }

@media(max-width:991.98px) {
 html body #result-wrapper .productlist-page-nav-header-m + hr { margin:4px 0 14px !important; }
 html body #result-wrapper .rh-desc.is-clamped .rh-desc__text { display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical; }
}
/* Explicit purchase roots win over legacy component rules with !important. */
html body[data-page='1'] #product-offer header.dh-pdp-buybox__head > h1.dh-pdp-buybox__title { font-size:var(--rh-title-size) !important; }
html body[data-page='1'] .rt-pdp-mobile-cta .rt-pdp-mobile-cta__button,
html body.is-cart #cart-checkout-btn,
html body.is-cart .rt-mobile-cta .rt-mobile-cta__btn {
 font-family:var(--rh-action-font) !important;font-size:16px !important;font-weight:700 !important;border-radius:var(--rh-action-radius) !important;min-height:54px !important;background:var(--blue-600) !important;
}
html body[data-page='1'] #add-to-cart .rh-purchase-scope,
html body[data-page='1'] .rh3-purchase-sticky .rh-purchase-scope { font-size:13px !important;line-height:1.4 !important;font-family:var(--font-body) !important; }
html body :is(.adarev,.adarev-tabinfo,.adarev-lightbox,.adarev-dialog) { --adarev-font:var(--font-body) !important; }
html body[data-page='1'] #content .rh3-purchase-sticky .rh-purchase-scope { font-size:13px !important;line-height:1.4 !important; }
html body[data-page='1'] .rt-pdp-mobile-cta .rt-pdp-mobile-cta__button:hover,
html body.is-cart #cart-checkout-btn:hover,
html body.is-cart .rt-mobile-cta .rt-mobile-cta__btn:hover { background:var(--blue-700) !important; }
html body .rh4-mobile-intro__rating { flex-wrap:wrap;gap:4px 7px; }
html body .rh4-mobile-intro__rating > span { font-size:12px !important;line-height:1.4; }
html body .rh4-mobile-intro__rating > strong { font-size:13px !important; }

/* PDP detail pass: quiet alternatives, visible customer photos and crisp icons. */
html body #product-offer .rh3-grliste .dh-pdp-radio-option.rh3-size-unavailable { display: none !important; }
html body #product-offer .rh3-size-alternatives { margin: 8px 0 0; border: 0; background: transparent; }
html body #product-offer .rh3-size-alternatives summary {
  display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 6px 0;
  color: #52616e; font-size: 13px; font-weight: 500; cursor: pointer; list-style: none;
}
html body #product-offer .rh3-size-alternatives summary::-webkit-details-marker { display: none; }
html body #product-offer .rh3-size-alternatives summary::after { content: '+'; margin-left: auto; font-size: 20px; color: #116bb0; }
html body #product-offer .rh3-size-alternatives[open] summary::after { content: '−'; }
html body #product-offer .rh3-size-alternatives summary > span { font-size: 12px; background: #eef3f7; padding: 2px 6px; border-radius: 5px; }
html body #product-offer .rh3-size-alternatives p { font-size: 13px; margin: 0 0 8px; color: #52616e; }
html body #product-offer .rh3-size-alternatives__list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; }
html body #product-offer .rh3-size-alternatives button {
  display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 4px 10px;
  min-height: 44px; padding: 8px 10px; border: 1px solid #e3e9f0; border-radius: 8px; background: #fff;
  color: #52616e; font: 13px/1.4 var(--font-body, 'IBM Plex Sans', sans-serif); text-align: left; cursor: pointer;
}
html body #product-offer .rh3-size-alternatives button b { color: #116bb0; font-weight: 500; }
html body #product-offer .rh3-size-alternatives button:hover { background: #f2f8fd; border-color: #bcdcf5; }
html body #product-offer .rh3-size-alternatives :focus-visible { outline: 2px solid #116bb0; outline-offset: 3px; }
html body #product-offer .rh-pdp-konf { max-width: none; width: 100%; padding: 12px 16px; }
html body #product-offer .rh-pdp-konf__t { font-size: 15px; line-height: 1.4; }
html body #product-offer .rh-pdp-konf__s { font-size: 13px; }
html body #product-offer .dh-kb.rh-pdp-benefits ul li { padding-left: 28px !important; }
html body #product-offer .dh-kb.rh-pdp-benefits ul li::before {
  content: '' !important; position: absolute !important; left: 0 !important; top: 2px !important;
  width: 18px !important; height: 18px !important; margin: 0 !important;
  border: 0 !important; border-radius: 0 !important; background: #116bb0 !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E") center/contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E") center/contain no-repeat !important;
}
html body #product-offer .rh3-rating-photos {
  display: none; align-items: center; gap: 8px; padding: 0; min-height: 44px; border: 0;
  background: transparent; color: #354452; font: 13px/1.35 var(--font-body, 'IBM Plex Sans', sans-serif); cursor: pointer;
}
html body #product-offer .rh3-rating-photos__images { display: inline-flex; gap: 3px; }
html body #product-offer .rh3-rating-photos img { width: 34px; height: 34px; border-radius: 6px; object-fit: cover; border: 1px solid #e3e9f0; }
html body #product-offer .rh3-rating-photos > span:last-child { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: #ccd5dd; }
html body #product-offer .rh3-rating-photos:focus-visible { outline: 2px solid #116bb0; outline-offset: 4px; border-radius: 6px; }
@media (min-width: 992px) {
  html body #product-offer .rh3-rating-photos { display: inline-flex; }
  html body #product-offer .dh-pdp-buybox__meta-row .dh-cusphoto {
    width: auto !important; margin: 0 !important; padding: 0 !important; gap: 8px; border: 0; background: none;
    min-height: 44px; flex: 0 1 auto;
  }
  html body #product-offer .dh-cusphoto__pic { width: 34px; height: 34px; margin: 0 !important; border-radius: 6px; }
  html body #product-offer .dh-cusphoto__pics { gap: 3px; }
  html body #product-offer .dh-cusphoto__txt strong { display: none; }
  html body #product-offer .dh-cusphoto__txt span { font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
  html body #product-offer .dh-cusphoto__arr { display: none; }
}
@media (max-width: 479.98px) {
  html body #product-offer .rh3-size-alternatives__list { grid-template-columns: 1fr; }
}
/* The old grey-size hint is superseded by the explicit color alternatives. */
html.rh-pdp3 body #product-offer .dh-pdp-variant-hint { display: none !important; }

/* Shared button finish: small corners, flat surfaces; focus uses an outline. */
html body :is(#content,#jtl-nav-wrapper,#checkout,#cart-form,#rh-konfigurator-v2)
:is(button,.btn,[role='button'],.rh4-button,.rb-btn,.rh-berater-nav__link,.rh-berater-pdp__btn,.rh4-product__cta,.cta,.rt-btn,.rt-opc-button,.rt-mobile-cta__btn,.rh-pdp-konf,.rh3-config-link,.rh3-sticky-config,#cart-checkout-btn,#rhk2-next,#rhk2-next2),
html body :is(.rh4-button,.rb-btn,.rh-berater-nav__link,.rh-berater-pdp__btn,.rh4-product__cta,.cta,.rt-btn,.rt-opc-button,.rt-mobile-cta__btn,.rh-pdp-konf,.rh3-config-link,.rh3-sticky-config) {
  border-radius: var(--rh-action-radius,6px) !important;
  box-shadow: none !important; text-shadow: none !important;
}
html body :is(#content,#jtl-nav-wrapper,#checkout,#cart-form,#rh-konfigurator-v2)
:is(button,.btn,[role='button'],.rh4-button,.rb-btn,.rh-berater-nav__link,.rh-berater-pdp__btn,.rh4-product__cta,.cta,.rt-btn,.rt-opc-button,.rt-mobile-cta__btn,.rh-pdp-konf,.rh3-config-link,.rh3-sticky-config,#cart-checkout-btn,#rhk2-next,#rhk2-next2):hover {
  box-shadow: none !important; transform: none !important;
}
html body :is(#content,#jtl-nav-wrapper,#checkout,#cart-form,#rh-konfigurator-v2)
:is(button,.btn,[role='button'],.rh4-button,.rb-btn,.rh-berater-nav__link,.rh-berater-pdp__btn,.rh4-product__cta,.cta,.rt-btn,.rt-opc-button,.rt-mobile-cta__btn,.rh-pdp-konf,.rh3-config-link,.rh3-sticky-config,#cart-checkout-btn,#rhk2-next,#rhk2-next2):focus-visible {
  outline: 2px solid #116bb0; outline-offset: 3px;
}
/* Swatches keep their circular shape and a visible selection ring without shadows. */
html body #content #product-offer button.rh3-punkt { border-radius: 50% !important; border: 1px solid #c3ced9 !important; box-shadow: none !important; }
html body #content #product-offer button.rh3-punkt.is-on { outline: 2px solid #116bb0 !important; outline-offset: 3px; }
html body #product-offer #gallery_wrapper.rh3-bildrahmen { position: relative; isolation: isolate; }
html body #product-offer #gallery_wrapper > .rh3-punkte { z-index: 5; box-shadow: none; border-radius: 6px; }
html.rh-pdp3 body #product-offer .rh3-farbzeile { flex-wrap: nowrap; gap: 5px; white-space: nowrap; font-size: 13px; }
html body #product-offer .rh3-farbzeile__mini { flex: 0 0 13px; width: 13px; height: 13px; }
html body #product-offer .rh3-farbzeile__size::before,
html body #product-offer .rh3-farbzeile__finish::before { content: '·'; margin-right: 5px; }
html body #product-offer .rh3-farbzeile__finish { flex: 0 0 auto; display: inline; color: #657386; font: inherit !important; margin: 0; }
html body #product-offer .dh-pdp-inline-logistics { display:flex !important; flex-wrap:wrap !important; align-items:flex-start !important; gap:8px 18px !important; }
html body #product-offer .dh-pdp-inline-logistics__item--delivery { min-width:0; white-space:normal !important; align-items:flex-start !important; flex:1 1 270px; }
html body #product-offer [data-dh-delivery-text] { white-space:normal !important; line-height:1.5 !important; }
html body #product-offer .rh-delivery-window { display:block; font-size:13px !important; color:#657386; }
@media(max-width:767.98px) {
 html body #product-offer .dh-pdp-inline-logistics__item--delivery { flex-basis:100%; }
}
/* Native PDP rules have additional IDs; keep the same action token there. */
html body[data-page='1'] #content #product-offer #add-to-cart button.btn-primary {
  border-radius: var(--rh-action-radius,6px) !important; box-shadow:none !important;
}
html body[data-page='1'] #content #product-offer #quantity-grp,
html body[data-page='1'] #content .rh3-sticky-quantity { border-radius:var(--rh-action-radius,6px) !important; box-shadow:none !important; }

/* Stock belongs to the size decision; keep the native source for JTL refreshes. */
html.rh-pdp3 body #product-offer.rh3-has-size-choice .dh-pdp-buybox__price-under-title .dh-pdp-price-logistics .dh-pdp-inline-logistics,
html body #product-offer.rh3-has-size-choice .rh-buyargs__item:first-child { display: none !important; }
html.rh-pdp3 body #product-offer .dh-pdp-buybox__section--variants .dh-pdp-radio-pill.rh3-gr {
  padding: 10px 12px !important; row-gap: 5px !important;
}
html.rh-pdp3 body #product-offer .rh3-gr .rh3-gr__lz { font-size: 12px !important; }
html.rh-pdp3 body #product-offer .rh3-gr .rh3-gr__lz.is-ready { color: #247145; }
html body #product-offer .rh3-grliste { container-type: inline-size; }
html body #product-offer .rh3-gr__arrival { display: none; }
html body #product-offer .rh3-gr__stock { font-weight: 500; }
html body #product-offer .rh3-gr__short-delivery { display: inline-flex; align-items: center; gap: 4px; }
html body #product-offer .rh3-gr svg { width: 16px; height: 16px; flex: 0 0 16px; }
html body #product-offer .rh3-size-delivery { display: flex; align-items: center; gap: 8px; margin: 0; padding: 8px 12px; color: #247145; background: #f5faf7; border-bottom: 1px solid #e5eee8; font-size: 12px !important; line-height: 1.45 !important; }
html body #product-offer .rh3-size-delivery svg { width: 17px; height: 17px; flex: 0 0 17px; }
html body #product-offer .rh3-size-delivery strong { font-weight: 600; white-space: nowrap; }
@container (min-width: 600px) {
 html.rh-pdp3 body #product-offer .dh-pdp-radio-pill.rh3-gr { grid-template-columns: 18px minmax(100px,1fr) minmax(210px,2fr) auto !important; }
 html body #product-offer .rh3-gr__rad { grid-column: 1; grid-row: 1; }
 html body #product-offer .rh3-gr__mid { grid-column: 2; grid-row: 1; }
 html body #product-offer .rh3-gr__pr { grid-column: 4; grid-row: 1; }
 html body #product-offer .rh3-gr__arrival { display: flex; grid-column: 3; grid-row: 1; justify-content: center; align-items: center; gap: 7px; color: #247145; font-size: 11px; line-height: 1.45; font-weight: 400; }
 html body #product-offer .rh3-gr__arrival > span { white-space: nowrap; }
 html body #product-offer .rh3-gr__arrival strong { font-weight: 600; }
 html body #product-offer .rh3-gr .rh3-gr__lz.is-ready,
 html body #product-offer .rh3-size-delivery { display: none; }
}
html.rh-pdp3 body #product-offer header.dh-pdp-buybox__head > .dh-pdp-buybox__sku {
 display: block; font-size: 11px !important; line-height: 1.3 !important; font-weight: 400 !important; color: #657386; margin: 3px 0 5px !important;
}
html body #product-offer .rh3-size-note { margin: 7px 0 0; color: #657386; font-size: 12px; line-height: 1.5; }
html body #product-offer .rh3-size-note summary { cursor: pointer; width: fit-content; padding: 5px 0; text-decoration: underline; text-underline-offset: 3px; }
html body #product-offer .rh3-size-note p { font-size: 12px; line-height: 1.5; margin: 4px 0 10px; max-width: 62ch; }
@media(max-width: 767.98px) {
 html.rh-pdp3 body #product-offer .rh3-farbzeile { font-size: 12px; gap: 4px; letter-spacing: -.015em; }
 html body #product-offer .rh3-farbzeile__size::before,
 html body #product-offer .rh3-farbzeile__finish::before { margin-right: 4px; }
 html.rh-pdp3 body #product-offer .rh3-gr .rh3-gr__lz { font-size: 11px !important; }
}

/* One compact, consistently spaced information panel after the purchase action. */
html body #content #product-offer .rh-purchase-confidence {
  order: 2; margin: 12px 0 0; padding: 14px; border: 1px solid #e3e9ee; border-radius: 8px; background: #fff;
  container-type: inline-size;
}
html body #content #product-offer .rh-purchase-scope { font-size: 12px !important; line-height: 1.4 !important; margin: 7px 0 0 !important; color: #637180; }
html body #content #product-offer .rh-purchase-payment { display: flex; align-items: center; flex-wrap: wrap; gap: 7px 14px; }
html body #content #product-offer .rh-purchase-caption { font-size: 12px; font-weight: 500; color: #637180; }
html body #content #product-offer .rh-purchase-confidence .rt-pdp-payment-strip {
  display: flex !important; align-items: center !important; justify-content: flex-start !important; flex-wrap: wrap !important;
  gap: 8px !important; padding: 0 !important; margin: 0 !important; border: 0 !important; width: auto !important;
}
html body #content #product-offer .rh-purchase-confidence .rt-pdp-payment-icon {
  width: 48px !important; height: 22px !important; max-width: 48px !important; object-fit: contain !important; margin: 0 !important;
}
html body #content #product-offer .rh-purchase-confidence .rt-pdp-payment-icon:is([hidden],.rt-pdp-payment-icon--dhl) { display: none !important; }
html body #content #product-offer .rh-purchase-confidence .rh-buyargs {
  display: flex !important; flex-wrap: wrap; align-items: flex-start; gap: 8px 18px !important; list-style: none; padding: 12px 0 !important; margin: 0 !important; border: 0 !important;
}
html body #content #product-offer .rh-purchase-confidence .rh-buyargs__item {
  display: flex !important; flex-wrap: wrap; align-items: center; gap: 4px !important; padding: 0 !important; margin: 0 !important;
  font-size: 12px !important; line-height: 1.45 !important; color: #52616e; border: 0; background: none;
}
html body #content #product-offer.rh3-has-size-choice .rh-purchase-confidence .rh-buyargs__item:first-child { display: none !important; }
html body #content #product-offer .rh-purchase-confidence .rh-buyargs__ico { width: 18px !important; height: 18px !important; flex: 0 0 18px; padding: 0 !important; background: none !important; margin-right: 3px; }
html body #content #product-offer .rh-purchase-confidence .rh-buyargs__ico svg { width: 17px; height: 17px; }
html body #content #product-offer .rh-purchase-advice { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 11px 0; border-top: 1px solid #edf0f3; font-size: 12px; line-height: 1.45; }
html body #content #product-offer .rh-purchase-advice > span > span { display: block; color: #637180; }
html body #content #product-offer .rh-purchase-advice a { color: #116bb0; font-size: 14px; font-weight: 600; text-decoration: none; }
html body #content #product-offer .rh-purchase-advice small { display: block; color: #637180; font-size: 11px !important; line-height: 1.5; font-weight: 400; }
html body #content #product-offer .rh-purchase-financing { margin: 6px 0 0; font-size: 12px; color: #52616e; }
html body #content #product-offer .rh-purchase-financing summary { cursor: pointer; padding: 6px 0; text-decoration: underline; text-underline-offset: 3px; }
html body #content #product-offer .rh-purchase-financing[hidden] { display: none !important; }
html body #content #product-offer .rh-purchase-financing__content { padding-top: 8px; }
html body #content #product-offer .rh-purchase-financing #ppc-productDetails-instalment-banner { margin: 0 !important; }
html body #content #product-offer .rh-purchase-confidence section.rh-pdp-benefits {
  margin: 0 !important; padding: 12px 0 0 !important; border-top: 1px solid #edf0f3 !important;
}
html body #content #product-offer .rh-purchase-confidence .rh-pdp-benefits h2 { font-size: 15px !important; line-height: 1.3 !important; margin: 0 0 10px !important; }
html body #content #product-offer .rh-purchase-confidence .rh-pdp-benefits ul { display: grid !important; grid-template-columns: 1fr !important; gap: 8px 18px !important; }
html body #content #product-offer .rh-purchase-confidence .rh-pdp-benefits :is(p,li) { font-size: 13px !important; line-height: 1.45 !important; }
html body #content #product-offer .rh-purchase-confidence .rh-pdp-benefits ul li { padding: 0 0 0 21px !important; }
html body #content #product-offer .rh-purchase-confidence .rh-pdp-benefits ul li::before { width: 14px !important; height: 14px !important; top: 2px !important; }
html body #content #product-offer .rh-purchase-confidence .rh-pdp-benefits li > img[alt='Check Icon'] { display: none !important; }
@container (min-width: 450px) {
 html body #content #product-offer .rh-purchase-confidence .rh-pdp-benefits ul { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
/* Real Wawi special prices only; the badge does not change row height. */
html body #content #product-offer .rh3-gr__price-line { display: inline-flex; justify-content: flex-end; align-items: center; gap: 6px; }
html body #content #product-offer .rh3-sale-badge { display: inline-block; flex: 0 0 auto; padding: 2px 4px; border-radius: 3px; background: #b4232e; color: #fff; font: 600 10px/1.2 var(--font-body); letter-spacing: .025em; }
/* Customer photos stay large enough to inspect, with one clear gallery action. */
html body #content #product-offer .rh3-kf { margin-top: 20px; padding-top: 16px; }
html body #content #product-offer .rh3-kf__h { justify-content: space-between; align-items: center; gap: 8px; margin: 0 0 10px; white-space: normal; }
html body #content #product-offer .rh3-kf__h b { font-size: 15px; line-height: 1.3; }
html body #content #product-offer button.rh3-kf__all { padding: 6px 0; min-height: 36px; border: 0; background: none; color: #116bb0; font: 500 12px/1.4 var(--font-body); text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
html body #content #product-offer .rh3-kf__s { gap: 10px; margin: 0; }
html body #content #product-offer .rh3-kf__s button { border-radius: 6px !important; aspect-ratio: 3/4; background: #f5f7f8; }
html body #content #product-offer .rh3-kf__s button img { object-fit: cover; }
html body #content #product-offer .rh3-kf__name { font-size: 11px; }
@media(max-width: 767.98px) {
 html body #content #product-offer .rh-purchase-confidence { padding: 12px; }
 html body #content #product-offer .rh3-kf__s { display: flex; overflow-x: auto; scroll-snap-type: x proximity; gap: 8px; padding-bottom: 3px; }
 html body #content #product-offer .rh3-kf__s button { width: 112px; flex: 0 0 112px; scroll-snap-align: start; }
}

html body #content #product-offer .dh-abv-line { background: #b4232e; border-radius: 4px; font-size: 12px; }
@media(max-width: 359.98px) {
 html body #content #product-offer .rh-purchase-confidence .rt-pdp-payment-icon { width: 40px !important; max-width: 40px !important; }
 html body #content #product-offer .rh-purchase-confidence .rt-pdp-payment-strip { gap: 6px !important; }
}

/* Gallery images use one positioning model for both the first <picture> and
   lazy slides with a direct <img>. Percentage top + translateY(-50%) relies on
   an auto/aspect-ratio height and can move direct images half a frame upwards
   in Safari after the variant fragment is replaced. Only position the image;
   Slick retains ownership of slide/track transforms and the color controls. */
html body #content #product-offer #gallery .inner > picture {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
}
html body #content #product-offer #gallery .inner img.product-image {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  max-width: 100% !important; max-height: 100% !important;
  margin: 0 !important; transform: none !important;
  object-fit: contain !important; object-position: center !important;
}

/* Shared product hierarchy, including mirrors and accessories outside v3. */
html:not(.rh-pdp3) body #content #product-offer .product-info-inner.dh-pdp-buybox {
  padding: 16px 0 0 !important; border: 0 !important; background: #fff !important; box-shadow: none !important;
}
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-buybox__head { padding: 0 !important; margin: 0 0 18px !important; border: 0 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-buybox__sku { display: block !important; margin: 4px 0 !important; color: #657386; font-size: 11px !important; font-weight: 400 !important; }
html:not(.rh-pdp3) body #content #product-offer h1.dh-pdp-buybox__title { display: block !important; -webkit-line-clamp: unset !important; font-size: clamp(24px,2.1vw,30px) !important; line-height: 1.17 !important; letter-spacing: -.035em; margin: 0 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-buybox__meta-row { margin: 10px 0 0 !important; gap: 8px 16px !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-buybox__price-under-title { margin: 16px 0 0 !important; padding: 14px 0 0 !important; border: 0 !important; border-top: 1px solid #edf0f3 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-current-price { font-size: 34px !important; line-height: 1.15 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-price-row--bottom { display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 6px 14px !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-taxline { display: flex !important; flex-direction: column !important; gap: 3px !important; font-size: 11px !important; margin: 0 !important; }
/* A 270px flex-basis intended for a row became height in the legacy column. */
html body #content #product-offer .dh-pdp-inline-logistics__item { flex: 0 1 auto !important; min-height: 0 !important; height: auto !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-price-logistics { margin: 12px 0 !important; padding: 0 !important; border: 0 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-inline-logistics { display: flex !important; flex-wrap: wrap !important; flex-direction: row !important; gap: 5px 14px !important; padding: 10px 12px !important; border: 0 !important; border-radius: 6px; background: #f5f7f8; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-inline-logistics__item { font-size: 12px !important; line-height: 1.45 !important; }
html:not(.rh-pdp3) body #content #product-offer .rh-facts { background: #fff !important; border: 0 !important; padding: 0 !important; margin: 0 0 12px !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-buybox__offer,
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-buybox__section--variants,
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-buybox__section--purchase { margin: 0 !important; padding: 0 !important; border: 0 !important; background: #fff !important; }
html:not(.rh-pdp3) body #content #product-offer .variation-wrapper { margin: 0 0 16px !important; padding: 0 !important; border: 0 !important; }
html:not(.rh-pdp3) body #content #product-offer .variation-wrapper dt { font-size: 18px !important; line-height: 1.3 !important; margin: 0 0 10px !important; padding: 0 !important; color: #1b3042; text-transform: none !important; letter-spacing: -.02em !important; }
html:not(.rh-pdp3) body #content #product-offer .rh-variation-title { font-size: inherit !important; text-transform: none !important; letter-spacing: inherit !important; }
html:not(.rh-pdp3) body #content #product-offer .variation-wrapper dt .js-slider-arrow { display: none !important; }
html:not(.rh-pdp3) body #content #product-offer .variation-wrapper dd { margin: 0 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-options { display: grid !important; grid-template-columns: minmax(0,1fr) !important; gap: 0 !important; overflow: hidden !important; border: 1px solid #dce5ed; border-radius: 8px; margin: 0 !important; padding: 0 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-option { width: 100% !important; min-width: 0 !important; padding: 0 !important; margin: 0 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-option + .dh-pdp-radio-option { border-top: 1px solid #edf0f3; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill { display: flex !important; align-items: center !important; justify-content: flex-start !important; flex-wrap: wrap !important; gap: 6px 10px !important; width: 100% !important; min-height: 50px !important; height: auto !important; padding: 12px 14px 12px 42px !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: #fff !important; color: #172b3c !important; box-shadow: none !important; transform: none !important; text-align: left !important; position: relative; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill::before { content: '' !important; position: absolute; left: 14px; top: calc(50% - 9px); width: 18px; height: 18px; border: 1.5px solid #c5d2df; border-radius: 50%; background: #fff; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill:is(.is-active,.active),
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-input:checked + .dh-pdp-radio-pill { background: #f0f6fa !important; box-shadow: inset 3px 0 #116bb0 !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-input:checked + .dh-pdp-radio-pill::before { border: 2px solid #116bb0; background: radial-gradient(circle,#116bb0 0 4px,#fff 4.5px); }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill__text { font-size: 16px !important; line-height: 1.35 !important; font-weight: 600 !important; color: inherit !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill.is-limited { color: #778491 !important; background: #fafbfc !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill:hover { background: #f5f9fc !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-input:focus-visible + label { outline: 2px solid #116bb0; outline-offset: -3px; }
html body #content #product-offer .rh-product-documents { order: 3; margin: 14px 0 0 !important; padding: 14px; border: 1px solid #dce5ed; border-radius: 8px; scroll-margin-top: 160px; }
html body #content #product-offer .rh-product-documents[hidden] { display: none !important; }
html body #content #product-offer .rh-product-documents h2 { margin: 0 0 9px !important; font-size: 15px !important; line-height: 1.3 !important; }
html body #content #product-offer .rh-product-documents__list { display: grid; gap: 6px; }
html body #content #product-offer .rh-product-documents__list a { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 8px 10px; background: #f5f9fc; border-radius: 5px; color: #116bb0; font-size: 13px; line-height: 1.4; }
html body #content #product-offer .rh-product-documents__list a > span:nth-child(2) { flex: 1; overflow-wrap: anywhere; }
html body #content #product-offer .rh-product-documents__list a { text-decoration: none; border: 1px solid transparent; }
html body #content #product-offer .rh-product-documents__list a:hover { border-color: #aacce4; background: #eaf4fb; }
html body #content #product-offer .rh-product-documents__list a:focus-visible { outline: 2px solid #116bb0; outline-offset: 2px; }
html body #content #product-offer .rh-product-documents__label strong { display: block; font-size: 13px; line-height: 1.35; }
html body #content #product-offer .rh-product-documents__label small { display: block; margin-top: 2px; color: #566777; font-size: 11px; line-height: 1.3; }
html body #content #product-offer .rh-product-documents__list svg { flex: 0 0 16px; }
html body #content #product-offer .rh-product-documents__accessories { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
html body #content #product-offer .rh-product-documents__caption,
html body #content #product-offer .rh-product-documents__note { margin: 10px 0 7px !important; font-size: 12px !important; line-height: 1.45 !important; color: #566777; }
html body #content #product-offer .rh-product-documents__additional { margin-top: 6px; }
html body #content #product-offer .rh-product-documents__additional summary { min-height: 44px; padding: 12px 0; font-size: 13px; font-weight: 600; color: #116bb0; cursor: pointer; }
html body #content #product-offer .rh-product-documents__additional summary span { font-weight: 400; }
html body #content #product-offer .rh-document-icon { font-size: 10px; font-weight: 700; border: 1px solid #bfd6e8; padding: 4px; border-radius: 3px; }
@media(max-width:767.98px) {
 html:not(.rh-pdp3) body #content #product-offer .product-info-inner.dh-pdp-buybox { padding: 0 !important; }
 html:not(.rh-pdp3) body #content #product-offer .variation-wrapper dt { font-size: 17px !important; }
 html body #content #product-offer .rh-product-documents { scroll-margin-top: 90px; }
}
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill::before { display: block !important; box-sizing: border-box; }

/* The same compact quantity + purchase row across every product group.
   Select only the native quantity row; payment rows and voucher fields stay independent. */
html body #content #product-offer #add-to-cart > .basket-form-inline:has(#quantity-grp) { display: flex !important; flex-wrap: nowrap !important; gap: 10px !important; margin: 0 !important; align-items: flex-start; }
html body #content #product-offer #add-to-cart .basket-form-inline > .col:has(#quantity-grp) { flex: 0 0 144px !important; width: 144px !important; max-width: 144px !important; padding: 0 !important; margin: 0 !important; }
html body #content #product-offer #add-to-cart .basket-form-inline:has(#quantity-grp) > .col:has(button[name="inWarenkorb"]) { flex: 1 1 0 !important; width: auto !important; max-width: none !important; min-width: 0; padding: 0 !important; margin: 0 !important; }
html body #content #product-offer #add-to-cart #quantity-grp { display: grid !important; grid-template-columns: 40px minmax(0,1fr) 40px !important; width: 100% !important; min-width: 0 !important; max-width: 100% !important; height: 56px !important; min-height: 56px !important; margin: 0 !important; overflow: hidden; border: 1px solid #dce3e8 !important; border-radius: 6px !important; }
html body #content #product-offer #add-to-cart #quantity-grp .input-group-prepend,
html body #content #product-offer #add-to-cart #quantity-grp .input-group-append { display: contents !important; }
html body #content #product-offer #add-to-cart #quantity-grp .unit { display: none !important; }
html body #content #product-offer #add-to-cart #quantity-grp :is(.btn,input.quantity) { width: 100% !important; min-width: 0 !important; height: 54px !important; min-height: 54px !important; padding: 0 !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: #fff !important; font-size: 16px !important; box-shadow: none !important; }
html body #content #product-offer #add-to-cart #quantity-grp input.quantity { grid-column: 2 !important; text-align: center; appearance: textfield; }
html body #content #product-offer #add-to-cart #quantity-grp .input-group-prepend .btn { grid-column: 1 !important; }
html body #content #product-offer #add-to-cart #quantity-grp .input-group-append .btn { grid-column: 3 !important; }
html body #content #product-offer #add-to-cart button[name="inWarenkorb"] { min-height: 56px !important; height: 56px !important; margin: 0 !important; }
@media(max-width:767.98px) {
 html body #content #product-offer #add-to-cart .basket-form-inline > .col:has(#quantity-grp) { flex-basis: 112px !important; width: 112px !important; max-width: 112px !important; }
 html body #content #product-offer #add-to-cart #quantity-grp { grid-template-columns: 36px minmax(0,1fr) 36px !important; }
 html body #content #product-offer #add-to-cart button[name="inWarenkorb"] { padding: 0 8px !important; font-size: 14px !important; }
 html body #content #product-offer #add-to-cart button[name="inWarenkorb"] .fa-shopping-cart { display: none !important; }
 html body #content #product-offer #add-to-cart button[name="inWarenkorb"] .btn-basket-check { max-width: 100%; min-width: 0; gap: 0 !important; white-space: normal !important; }
 html body #content #product-offer #add-to-cart button[name="inWarenkorb"] .btn-basket-check > span { min-width: 0; white-space: normal !important; line-height: 1.25; }
}

/* Delivery belongs to the size it describes, also outside radiator v3. */
html:not(.rh-pdp3) body #content #product-offer:has([data-rh-size-delivery]) .dh-pdp-price-logistics { display: none !important; }
html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill:has(.rh-size-delivery) { flex-wrap: nowrap !important; justify-content: space-between !important; }
html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery { display: flex; align-items: center; gap: 8px; flex: 0 1 290px; min-width: 0; color: #526477; font-size: 12px; font-weight: 400; line-height: 1.45; text-align: left; }
html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery.is-fast { color: #237347; }
html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery svg { flex: 0 0 19px; width: 19px; height: 19px; }
html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery__intro { display: block; }
@media(max-width:767.98px) {
 html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery { flex: 0 0 138px; font-size: 11px; gap: 5px; }
 html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery__stock,
 html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery__home { display: none; }
}
@media(max-width:359.98px) {
 html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill:has(.rh-size-delivery) { padding-left: 34px !important; padding-right: 8px !important; gap: 6px !important; }
 html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill:has(.rh-size-delivery) .dh-pdp-radio-pill__text { font-size: 14px !important; }
 html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery { flex-basis: 124px; }
 html:not(.rh-pdp3) body #content #product-offer .rh-size-delivery svg { width: 15px; height: 15px; flex-basis: 15px; }
 html:not(.rh-pdp3) body #content #product-offer .dh-pdp-radio-pill:has(.rh-size-delivery)::before { left: 9px; }
}
