:root { --rs-v198-ink:#111; --rs-v198-gold:#b9822d; --rs-v198-cream:#f3eee5; }

html, body { min-height:100%; }
body.rB { min-height:100svh; display:flex !important; flex-direction:column; }
body.rB > .rs-service-hub-v1,
body.rB > .rs-service-hub-v153 { width:100%; margin-top:auto; }

/* Never show the generic storefront while a governed category is hydrating. */
html[data-rs-v198-category-pending="1"] body.rB { visibility:hidden; }
html[data-rs-v198-category-pending="1"]::before {
  content:""; position:fixed; inset:0; z-index:2147483646; visibility:visible;
  background:linear-gradient(90deg,#f6f4f0 0 32%,#ece8e1 32% 68%,#f6f4f0 68%);
}

/* Low-count catalog pages need editorial balance, not a stranded card row. */
html[data-rs-shop-active-category="tester-kits"] body.rB .rs-catalog-results-v152 .rs-shop-catalog-v1__grid {
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  width:100%; max-width:980px; margin-inline:auto;
  gap:clamp(22px,3vw,40px) !important;
}
html[data-rs-shop-active-category="tester-kits"] .rs-catalog-layout-v152 { grid-template-columns:1fr !important; }
html[data-rs-shop-active-category="tester-kits"] .rs-category-filter-v152,
html[data-rs-shop-active-category="tester-kits"] .rs-shop-catalog-v1__controls,
html[data-rs-shop-active-category="tester-kits"] .rs-shop-category-story-v1,
html[data-rs-shop-active-category="tester-kits"] .rs-shop-catalog-v1__toolbar { display:none !important; }
html[data-rs-shop-active-category="tester-kits"] .rs-catalog-results-v152 { padding-top:0 !important; }
html[data-rs-shop-active-category="tester-kits"] .rs-shop-card-v1 { width:100%; }
html[data-rs-shop-active-category="tester-kits"] body.rB .rs-catalog-results-v152 .rs-shop-card-v1__media { aspect-ratio:4/3 !important; }
html[data-rs-shop-active-category="tester-kits"] .rs-shop-card-v1__media img { object-fit:contain; padding:clamp(20px,3vw,46px); }

.rs-v198-kit-hero { width:min(1680px,calc(100% - 48px)); margin:0 auto 42px; background:var(--rs-v198-cream); display:grid; grid-template-columns:1.05fr .95fr; min-height:430px; overflow:hidden; }
html[data-rs-shop-active-category="tester-kits"] body.rB > header { order:0; }
html[data-rs-shop-active-category="tester-kits"] body.rB > .rs-v198-kit-hero { order:1; }
html[data-rs-shop-active-category="tester-kits"] body.rB > main { order:2; }
html[data-rs-shop-active-category="tester-kits"] body.rB > .rs-service-hub-v153 { order:3; }
html[data-rs-shop-active-category="tester-kits"] .rs-shop-catalog-v1__intro { display:none !important; }
.rs-v198-kit-hero__copy { padding:clamp(38px,5vw,76px); display:flex; flex-direction:column; justify-content:center; }
.rs-v198-kit-hero__copy span { color:var(--rs-v198-gold); font-size:12px; font-weight:900; letter-spacing:.18em; }
html[data-rs-shop-active-category="tester-kits"] body.rB .rs-v198-kit-hero .rs-v198-kit-hero__copy h1 { margin:14px 0; max-width:620px; color:#111 !important; font-size:clamp(38px,4.6vw,74px); line-height:.98; }
.rs-v198-kit-hero__copy p { max-width:560px; margin:0; color:#5f584f; font-size:16px; line-height:1.9; }
.rs-v198-kit-hero__media { display:grid; grid-template-columns:.7fr 1.3fr; align-items:end; background:#ded5c7; }
.rs-v198-kit-hero__media figure { margin:0; height:100%; display:flex; align-items:center; justify-content:center; padding:30px 12px; }
.rs-v198-kit-hero__media figure:first-child { background:#e9e2d7; }
.rs-v198-kit-hero__media img { width:100%; height:100%; max-height:370px; object-fit:contain; filter:drop-shadow(0 24px 24px rgba(30,24,18,.18)); }

/* Keep incomplete final rows visually intentional on sparse categories. */
html[data-rs-shop-active-category="diffuser-oils-250ml"] .rs-shop-catalog-v1__grid,
html[data-rs-shop-active-category="diffusers"] .rs-shop-catalog-v1__grid,
html[data-rs-shop-active-category="home-spray"] .rs-shop-catalog-v1__grid { justify-content:center; }

/* Keep the primary campaign unobstructed on desktop; direct contact remains in the header and footer. */
@media (min-width:761px) {
  html body.rB .rs-support-dock-v37 { display:none !important; }
}

/* Keep every policy contact action at a complete 44×44 interaction target. */
html body.rB .rs-policy-v1__contact a {
  min-inline-size:44px !important;
  justify-content:center;
}

@media (max-width:760px) {
  .rs-v198-kit-hero { width:calc(100% - 28px); grid-template-columns:1fr; margin-bottom:28px; }
  .rs-v198-kit-hero__copy { padding:34px 24px; }
  .rs-v198-kit-hero__media { min-height:310px; }
  html[data-rs-shop-active-category="tester-kits"] body.rB .rs-catalog-results-v152 .rs-shop-catalog-v1__grid { grid-template-columns:1fr !important; max-width:520px; }

  /* V204: bring the first product decision into the first mobile viewport. */
  html body.rB { padding-bottom:58px !important; }
  html body.rB .rs-shop-catalog-v1__intro { padding-block:22px 18px !important; }
  html body.rB .rs-shop-catalog-v1__intro h1 {
    max-width:12ch; margin-inline:auto !important;
    font-size:clamp(31px,9.6vw,43px) !important; line-height:1.05 !important;
    text-wrap:balance;
  }
  html body.rB .rs-shop-catalog-v1__intro-grid > p { display:none !important; }
  html body.rB .rs-catalog-results-v152 .rs-shop-catalog-v1__controls {
    gap:8px !important; padding:10px 0 12px !important;
    grid-template-columns:1fr 1fr !important;
  }
  html body.rB .rs-catalog-results-v152 .rs-shop-catalog-v1__controls label { min-width:0 !important; }
  html body.rB .rs-catalog-results-v152 .rs-shop-catalog-v1__controls :is(input,select,button) {
    min-height:44px !important; height:44px !important; font-size:14px !important;
  }
  html body.rB .rs-catalog-results-v152 .rs-shop-catalog-v1__controls .rs-shop-catalog-v1__search {
    grid-column:1 / -1;
  }
  html body.rB .rs-catalog-results-v152 .rs-shop-catalog-v1__controls .rs-shop-catalog-v1__clear {
    grid-column:1 / -1;
  }
  html body.rB .rs-catalog-results-v152 .rs-shop-card-v1__media { aspect-ratio:4/5 !important; padding:10px !important; }
  html body.rB .rs-catalog-results-v152 .rs-shop-card-v1__body { gap:6px !important; padding:12px 10px 14px !important; }
  html body.rB .rs-catalog-results-v152 .rs-shop-card-v1__body h3 {
    min-height:3.9em !important; font-size:14px !important; line-height:1.3 !important;
    display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
  }
  html body.rB .rs-support-dock-v37 { height:58px !important; }
  html body.rB .rs-support-dock-v37 a { min-height:58px !important; padding:5px 4px !important; gap:2px !important; }
  html body.rB .rs-support-dock-v37 a > span { width:20px !important; height:20px !important; }
  html body.rB .rs-support-dock-v37 a > span svg { width:19px !important; height:19px !important; }
  html body.rB .rs-support-dock-v37 strong { font-size:10px !important; }

  /* V205: the mobile PDP must present the next customer action with the price. */
  html body.rB .rs-pdp-v1__copy { display:flex !important; flex-direction:column; }
  html body.rB main.rs-pdp-v1 .rs-pdp-v1__media,
  html body.rB main.rs-pdp-v1[data-rs-product-category="diffusers"] .rs-pdp-v1__media {
    aspect-ratio:4/3 !important; height:auto !important; min-height:0 !important;
  }
  html body.rB .rs-pdp-v1__copy .rs-pdp-v1__eyebrow { order:1; }
  html body.rB .rs-pdp-v1__copy h1 { order:2; }
  html body.rB .rs-pdp-v1__copy .rs-pdp-v1__price { order:3; }
  html body.rB .rs-pdp-v1__copy .rs-pdp-v1__actions { order:4; margin-top:8px !important; }
  html body.rB .rs-pdp-v1__copy .rs-pdp-v1__identity-line { order:5; }
  html body.rB .rs-pdp-v1__copy .rs-pdp-v1__notice { order:6; }
  html body.rB .rs-pdp-v1__copy .rs-purchase-assurance-v145 { order:7; }
  html body.rB .rs-pdp-v1__actions .rs-pdp-enquiry-v153 {
    min-height:48px !important; background:#111 !important; color:#fff !important;
    -webkit-text-fill-color:#fff !important; text-shadow:0 0 0 #fff;
    border:1px solid #111 !important; font-size:14px !important; line-height:1 !important; font-weight:850 !important;
  }
  html:has(main.rs-pdp-v1) body.rB .rs-support-dock-v37 { display:none !important; }
  html:has(main.rs-pdp-v1) body.rB { padding-bottom:0 !important; }
}
