/* GENERATED by scripts/build-css-bundles.py. Do not edit: change the
   sources below, then re-run the script.
   Sources: editorial-home.css, editorial-site.css, ploy-redesign.css, koppa-desktop-buybar.css */

/* ── editorial-home.css ── */
/* Koppā · homepage refinement.
   Conditional homepage asset. Geist only. Shared edges, readable type and
   component-specific rules; no substring selectors for badges or typography. */
body {
  --ed-frame: 1320px;
  --ed-gutter: 16px;
  --ed-section: 64px;
  --ed-gap: 24px;
  --ed-label: 1.1rem;
  --ed-track: .66px;
}
#MainContent .ch-sec-label,
#MainContent .ch-herocar__eyebrow,
#MainContent .ch-btn,
#MainContent .ch-prod-card__chip,
#MainContent .ch-trio__badge,
body .cf-email__eyebrow,
body .cf-col-head { font-family: var(--font-sans) !important; letter-spacing: var(--ed-track) !important; }
#MainContent .ch-sec-label::before,
#MainContent .ch-sec-label::after { display: none; }
#MainContent .ch-sec-label { font-size: var(--ed-label) !important; margin: 0 0 12px; color: var(--ink-muted); }
#MainContent .ch-sec-head,
#MainContent .ch-cream__name,
#MainContent .ch-trio__name {
  font-family: var(--font-sans) !important;
  font-size: 2.2rem !important; line-height: 1.25 !important;
  font-weight: 400 !important; letter-spacing: -.01em !important;
  text-transform: uppercase !important; margin: 0 0 16px;
  letter-spacing: .02em !important;
  text-wrap: pretty; max-width: 32ch;
}
#MainContent .ch-sec-sub { max-width: 58ch; margin: 0; }
#MainContent .ch-products,
#MainContent .ch-cream__inner,
#MainContent .ch-benefits__inner,
#MainContent .ch-trio__inner,
#MainContent .ch-quiz-wrap,
#MainContent .ch-faq__inner,
body .cf-email__inner,
body .cf-top,
body .cf-bottom {
  box-sizing: border-box; width: 100%; max-width: var(--ed-frame);
  margin-left: auto; margin-right: auto;
  padding-left: var(--ed-gutter) !important; padding-right: var(--ed-gutter) !important;
}
#MainContent .ch-products,
#MainContent .ch-cream__inner,
#MainContent .ch-benefits__inner,
#MainContent .ch-trio__inner,
#MainContent .ch-quiz-wrap { padding-top: var(--ed-section) !important; padding-bottom: var(--ed-section) !important; }
#MainContent .ch-cream,
#MainContent .ch-trio,
#MainContent .ch-benefits { background: var(--ground); border: 0; }
#MainContent .ch-products > .ch-fade,
#MainContent .ch-benefits__inner > .ch-fade,
#MainContent .ch-quiz-wrap > .ch-fade {
  display: block; text-align: left; margin: 0 0 32px; max-width: 62ch;
}
#MainContent .ch-products > .ch-fade > *,
#MainContent .ch-benefits__inner > .ch-fade > *,
#MainContent .ch-quiz-wrap > .ch-fade > * {
  text-align: left !important; margin-left: 0 !important; margin-right: 0 !important;
}
#MainContent .ch-prod-grid { gap: 28px 16px; }
#MainContent .ch-prod-card__name { font-size: 1.4rem !important; line-height: 1.4 !important; font-weight: 500 !important; text-transform: uppercase !important; letter-spacing: var(--ed-track) !important; }
#MainContent .ch-prod-card__price { font-size: 1.4rem !important; line-height: 1.4 !important; font-weight: 500 !important; }
#MainContent .ch-prod-card__row { flex-wrap: wrap; gap: 4px 12px; }
#MainContent .ch-prod-card__role { font-size: 1.3rem !important; line-height: 1.5 !important; margin-top: 8px; }
#MainContent .ch-prod-card__rating { flex-wrap: wrap; gap: 4px; }
#MainContent .ch-prod-card__atc { padding-top: 16px; }
#MainContent .ch-prod-card__feature-hl { font-size: 1.4rem !important; line-height: 1.5 !important; max-width: 25ch; }
#MainContent .ch-prod-card__chip { max-width: calc(100% - 16px); top: 8px; right: 8px; font-size: 1rem !important; }
#MainContent .ch-btn { min-height: 48px; line-height: 1.4 !important; padding: 12px 20px; white-space: normal; text-align: center; }
#MainContent .ch-prod-card__cta { width: 100%; min-height: 48px; padding: 12px 8px; font-size: 1.1rem !important; }
#MainContent .ch-cream__inner,
#MainContent .ch-trio__inner { gap: 32px; align-items: center; }
#MainContent .ch-cream__content,
#MainContent .ch-trio__content { padding: 0 !important; max-width: none; min-width: 0; }
#MainContent .ch-cream__media { border: 0; }
#MainContent .ch-cream__name { margin-top: 0; }
#MainContent .ch-cream__sub { max-width: 50ch; }
#MainContent .ch-cream__tick { font-size: 1.4rem !important; line-height: 1.5 !important; }
#MainContent .ch-cream__meta { flex-wrap: wrap; gap: 8px 16px; margin: 24px 0; }
/* The offer is one compact reading sequence, without stretched labels. */
#MainContent .ch-trio__media { min-height: 0; aspect-ratio: 1 / 1; }
#MainContent .ch-trio__media a { position: relative; width: 100%; height: 100%; }
#MainContent .ch-trio__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
#MainContent .ch-trio__badge { display: block; align-self: flex-start; min-height: 0; width: auto; padding: 0; border: 0; background: transparent; margin: 0 0 12px; color: var(--ink-muted); }
#MainContent .ch-trio__desc { max-width: 50ch; margin-bottom: 24px; }
#MainContent .ch-trio__products { border-top-color: var(--rule); margin-bottom: 24px; }
#MainContent .ch-trio__product { display: grid; grid-template-columns: 20px minmax(0,1fr) auto; gap: 8px; padding: 14px 0; }
#MainContent .ch-trio__prod-name { font-size: 1.3rem !important; line-height: 1.4 !important; }
#MainContent .ch-trio__prod-detail { font-size: 1.1rem !important; letter-spacing: var(--ed-track) !important; margin: 0; white-space: nowrap; }
#MainContent .ch-trio__pricing { margin-bottom: 16px; }
#MainContent .ch-trio__price-now { font-size: 2.2rem !important; line-height: 1.3 !important; font-weight: 500 !important; letter-spacing: 0 !important; }
#MainContent .ch-trio__price-was { font-size: 1.3rem !important; }
#MainContent .ch-trio__savings-pill { display: inline; min-height: 0; padding: 0; border: 0; background: transparent; color: var(--ink-muted); font-size: 1.2rem !important; letter-spacing: 0 !important; text-transform: none !important; }
#MainContent .ch-trio__actions { gap: 0; }
#MainContent .ch-trio__trust { font-size: 1.2rem !important; margin: 12px 0 0; }
/* Photographs and their captions form one flat, readable sequence. */
#MainContent .ch-benefits__intro-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  margin-top: 24px;
  color: var(--ink);
  border-bottom: 1px solid currentColor;
  font-family: var(--font-sans) !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;
  letter-spacing: var(--ed-track) !important;
  line-height: 1.4 !important;
  text-decoration: none;
  text-transform: uppercase;
}
#MainContent .ch-benefits__intro-link:hover { opacity: .62; }
#MainContent .ch-benefits__intro-link:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
#MainContent .ch-benefits__grid { gap: 32px 16px; }
#MainContent .ch-ben-tile { min-height: 0; height: auto; aspect-ratio: auto; overflow: visible; background: transparent; border: 0; }
#MainContent .ch-ben-tile__img { position: relative; inset: auto; aspect-ratio: 4 / 3; flex: 0 0 auto; overflow: hidden; }
#MainContent .ch-ben-tile__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#MainContent .ch-ben-tile__img::after { display: none; }
#MainContent .ch-ben-tile__inner { margin: 0; padding: 20px 0 0; gap: 8px; }
#MainContent .ch-ben-tile__stat { font-size: clamp(2rem,2.2vw,2.8rem) !important; line-height: 1.15 !important; letter-spacing: -.01em !important; overflow-wrap: normal; }
#MainContent .ch-ben-tile__stat-label { font-size: 1rem !important; line-height: 1.5 !important; min-height: 30px; margin: 0 0 4px; }
#MainContent .ch-ben-tile__head { font-size: 1.3rem !important; line-height: 1.4 !important; font-weight: 500 !important; letter-spacing: var(--ed-track) !important; text-transform: uppercase !important; margin: 0; }
#MainContent .ch-ben-tile__body { display: block; -webkit-line-clamp: unset; overflow: visible; font-size: 1.4rem !important; line-height: 1.5 !important; max-width: 42ch; margin: 0; }
/* Quiz: title, short explanation, progress, question, then clear touch targets. */
#MainContent .ch-quiz-split { border: 0; background: var(--ground-tint); grid-template-columns: 1.1fr .9fr; align-items: stretch; }
#MainContent .ch-quiz { background: transparent; padding: 24px 20px; border: 0; }
#MainContent .ch-quiz__progress { margin: 0 0 20px; }
#MainContent .ch-quiz__dot { width: 32px; height: 2px; }
#MainContent .ch-quiz__dot.is-active { width: 32px; background: var(--ink); }
#MainContent .ch-quiz__counter { font-size: 1.1rem !important; line-height: 1.5 !important; color: var(--ink-muted); margin: 0 0 12px; }
#MainContent .ch-quiz__q { font-size: 1.8rem !important; line-height: 1.35 !important; font-weight: 500 !important; max-width: 32ch; margin: 0 0 24px; }
#MainContent .ch-quiz__opts { gap: 8px; }
#MainContent .ch-quiz__opt { display: flex; align-items: center; min-height: 52px; width: 100%; border: 1px solid var(--rule); background: var(--ground); padding: 14px 16px; font-family: var(--font-sans) !important; font-size: 1.4rem !important; line-height: 1.5 !important; font-weight: 400 !important; letter-spacing: 0 !important; text-transform: none !important; }
#MainContent .ch-quiz__opt::before { display: none; }
#MainContent .ch-quiz__opt:hover,
#MainContent .ch-quiz__opt.is-selected { border-color: var(--ink); background: var(--ground); }
#MainContent .ch-quiz__opt:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
#MainContent .ch-quiz-split__img { min-height: 0; position: relative; }
#MainContent .ch-quiz-split__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
#MainContent .ch-quiz-prodcard { background: var(--ground); backdrop-filter: none; box-shadow: none; border: 0; }
#MainContent .ch-quiz__res-name { font-size: 2.4rem !important; line-height: 1.2 !important; }
#MainContent .ch-quiz__res-why { font-size: 1.4rem !important; line-height: 1.5 !important; margin-bottom: 24px; }
#MainContent .ch-quiz__res-actions { gap: 12px; }
#MainContent .ch-quiz__res-actions .ch-btn--outline-wh { color: var(--ink); border-color: var(--ink); background: transparent; }
#MainContent .ch-quiz__res-actions .ch-btn--outline-wh:hover { color: var(--ground); background: var(--ink); }
/* Retain the balanced FAQ, inside the same page frame. */
#MainContent .ch-faq { background: var(--ground-tint); border-top: 1px solid var(--rule); padding: var(--ed-section) 0; }
#MainContent .ch-faq .ch-sec-label,
#MainContent .ch-faq .ch-sec-head { text-align: left !important; margin-left: 0 !important; }
#MainContent .ch-faq__q { font-size: 1.4rem !important; line-height: 1.5 !important; font-weight: 500 !important; letter-spacing: 0 !important; }
#MainContent .ch-faq__trigger { min-height: 60px; padding: 20px 0; }
#MainContent .ch-faq__inner > div:last-child { text-align: left !important; margin-top: 24px !important; }
#MainContent .ch-faq__body-inner { font-size: 1.4rem !important; line-height: 1.6 !important; }
/* Homepage header and footer use the same font and frame. */
body .koppa-shopmenu { border: 1px solid var(--rule-active) !important; box-shadow: none; }
body .koppa-shopmenu__name { font-family: var(--font-sans) !important; font-size: 1.3rem !important; font-weight: 500 !important; line-height: 1.4 !important; letter-spacing: 0 !important; }
body .koppa-shopmenu__sub { font-family: var(--font-sans) !important; font-size: 1.2rem !important; line-height: 1.5 !important; }
body .koppa-shopmenu__promo-head { font-family: var(--font-sans) !important; font-size: 2.2rem !important; line-height: 1.25 !important; font-weight: 400 !important; letter-spacing: -.01em !important; }
body .koppa-shopmenu__eyebrow,
body .koppa-shopmenu__promo-meta,
body .koppa-shopmenu__cta { letter-spacing: var(--ed-track) !important; }
body .cupra-footer { background: var(--ground); }
body .cf-email { background: var(--ground-tint); }
body .cf-email__inner { display: grid; grid-template-columns: 1fr; align-items: start; gap: 24px; padding-top: 48px; padding-bottom: 48px; }
body .cf-email__head { font-family: var(--font-sans) !important; font-size: 2.2rem !important; line-height: 1.3 !important; font-weight: 400 !important; letter-spacing: -.01em !important; max-width: 30ch; }
body .cf-email__head br { display: none; }
body .cf-email__eyebrow { margin-bottom: 12px; }
body .cf-email__form-wrap { gap: 12px; min-width: 0; }
body .cf-email__form-wrap form { margin: 0; }
body .cf-email__form { display: flex; flex-wrap: nowrap; border: 0; border-bottom: 1px solid var(--rule-active); background: transparent; gap: 12px; overflow: visible; }
body .cf-email__inp { min-width: 0; min-height: 48px; padding: 12px 0; border: 0; background: transparent; font-size: 1.6rem !important; line-height: 1.5 !important; }
body .cf-email__btn { min-height: 48px; padding: 12px 16px; font-size: 1.1rem !important; letter-spacing: var(--ed-track) !important; }
body .cf-email__fine { margin-top: 12px; }
body .cf-email__fine,
body .cf-email__fine p { font-size: 1.2rem !important; line-height: 1.6 !important; max-width: 60ch; }
body .cf-email__offer { display: none; }
body .cf-top { padding-top: 48px; padding-bottom: 48px; gap: 32px; }
body .cf-brand { border: 0; gap: 16px; padding: 0; max-width: 32ch; }
body .cf-brand__tagline { display: block; padding: 0; border: 0; background: transparent; min-height: 0; margin: 0; font-family: var(--font-sans) !important; font-size: 1.4rem !important; line-height: 1.6 !important; letter-spacing: 0 !important; text-transform: none !important; }
body .cf-brand__cta { align-self: flex-start; width: auto; min-height: 44px; display: inline-flex; align-items: center; padding: 0; border: 0; background: transparent; color: var(--ink); text-decoration: underline; text-underline-offset: 5px; font-size: 1.1rem !important; letter-spacing: var(--ed-track) !important; }
body .cf-brand__cta:hover { color: var(--ink); background: transparent; transform: none; }
body .cf-nav,
body .cf-col { min-width: 0; }
body .cf-col a { white-space: normal; overflow-wrap: break-word; font-size: 1.2rem !important; line-height: 1.5 !important; }
body .cf-bottom { padding-top: 24px; padding-bottom: 32px; }
@media (min-width: 750px) {
  body { --ed-gutter: 24px; --ed-section: 80px; }
  #MainContent .ch-herocar { max-width: calc(var(--ed-frame) - 48px); width: calc(100% - 48px); margin: 24px auto 0; }
  #MainContent .ch-herocar__slide { grid-template-columns: repeat(2,minmax(0,1fr)); min-height: 540px; height: clamp(540px,68svh,660px); background: var(--ground-tint); }
  #MainContent .ch-herocar__media { grid-column: 2; grid-row: 1; }
  #MainContent .ch-herocar__inner { grid-column: 1; grid-row: 1; align-items: center; padding: 56px 40px 80px; }
  #MainContent .ch-herocar__content { max-width: 42rem; }
  #MainContent .ch-herocar__hl { font-size: clamp(2.8rem,2.7vw,3.8rem) !important; line-height: 1.15 !important; font-weight: 400 !important; text-transform: uppercase !important; letter-spacing: .01em !important; max-width: 20ch; margin-bottom: 24px; }
  #MainContent .ch-herocar__sub { font-size: 1.4rem !important; line-height: 1.57 !important; max-width: 43ch; margin-bottom: 28px; }
  #MainContent .ch-herocar__eyebrow { margin-bottom: 20px; }
  #MainContent .ch-herocar__dots { left: 28px; bottom: 12px; }
  #MainContent .ch-herocar__arrow { width: 40px; height: 40px; bottom: 24px; }
  #MainContent .ch-herocar__arrow--prev { right: 76px; }
  #MainContent .ch-trust { max-width: var(--ed-frame); padding: 24px; margin: 0 auto; border: 0; }
  #MainContent .ch-trust__inner { max-width: none; gap: 8px 0; }
  #MainContent .ch-sec-head,
  #MainContent .ch-cream__name,
  #MainContent .ch-trio__name { font-size: 2.6rem !important; }
  #MainContent .ch-prod-grid { gap: 24px; }
  #MainContent .ch-products > .ch-fade,
  #MainContent .ch-benefits__inner > .ch-fade,
  #MainContent .ch-quiz-wrap > .ch-fade { margin-bottom: 40px; }
  #MainContent .ch-cream__inner,
  #MainContent .ch-trio__inner { grid-template-columns: 1fr 1fr; gap: clamp(32px,4.5vw,64px); align-items: center; }
  #MainContent .ch-cream__media,
  #MainContent .ch-trio__media { grid-column: 1; grid-row: 1; }
  #MainContent .ch-cream__content,
  #MainContent .ch-trio__content { grid-column: 2; grid-row: 1; padding: 0 !important; }
  #MainContent .ch-trio__media { max-height: 600px; }
  #MainContent .ch-trio__content { max-width: 520px; }
  #MainContent .ch-quiz { padding: 40px; }
  #MainContent .ch-quiz { border-left: 1px solid var(--rule); }
  #MainContent .ch-quiz-split { min-height: 490px; }
  #MainContent .ch-quiz__q { font-size: 2rem !important; }
  #MainContent .ch-quiz__opt { min-height: 56px; }
  body .cf-email__inner { grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; padding-top: 64px; padding-bottom: 64px; }
  body .cf-email__head { font-size: 2.4rem !important; }
  body .cf-email__form-wrap { width: 100%; }
  body .cf-top { grid-template-columns: 1.15fr 1.3fr 1fr 1fr; gap: 40px; padding-top: 64px; padding-bottom: 64px; }
  body .cf-nav { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (min-width: 1024px) {
  body { --ed-section: 96px; }
  #MainContent .ch-faq__inner { display: grid; grid-template-columns: repeat(32,minmax(0,1fr)); column-gap: 8px; }
  #MainContent .ch-faq__inner > .ch-sec-label { grid-column: 1 / 13; grid-row: 1; padding-top: 20px; }
  #MainContent .ch-faq__inner > .ch-sec-head { grid-column: 1 / 12; grid-row: 2 / 4; font-size: 2.2rem !important; }
  #MainContent .ch-faq__item { grid-column: 17 / -1; }
  #MainContent .ch-faq__item:nth-of-type(1) { grid-row: 1; }
  #MainContent .ch-faq__item:nth-of-type(2) { grid-row: 2; }
  #MainContent .ch-faq__item:nth-of-type(3) { grid-row: 3; }
  #MainContent .ch-faq__inner > div:last-child { grid-column: 17 / -1; }
  #MainContent .ch-faq__q { font-size: 1.3rem !important; letter-spacing: var(--ed-track) !important; text-transform: uppercase !important; }
}
@media (max-width: 749px) {
  /* The homepage's consent actions remain easy to tap on narrow screens. */
  body .shopify-pc__banner__dialog button { min-height: 44px; }
  #MainContent .ch-herocar__hl { font-size: 3.2rem !important; line-height: 1.15 !important; max-width: 18ch; }
  #MainContent .ch-herocar__inner { padding: 24px var(--ed-gutter) 64px; }
  #MainContent .ch-herocar__sub { font-size: 1.6rem !important; line-height: 1.5 !important; }
  #MainContent .ch-herocar__mobile-proof { font-size: 1.2rem !important; }
  #MainContent .ch-trio__product { grid-template-columns: 20px minmax(0,1fr); }
  #MainContent .ch-trio__prod-detail { grid-column: 2; }
  #MainContent .ch-trio__actions .ch-btn { width: 100%; }
  #MainContent .ch-benefits__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #MainContent .ch-ben-tile__stat-label { min-height: 45px; }
  #MainContent .ch-quiz-wrap { scroll-margin-top: 90px; }
  #MainContent .ch-quiz-split { display: block; }
  #MainContent .ch-quiz-split__img { display: none; }
  #MainContent .ch-quiz { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
  #MainContent .ch-quiz__res-actions { flex-direction: column; }
  #MainContent .ch-quiz__res-actions .ch-btn { width: 100%; }
  #MainContent .ch-faq .ch-sec-head { margin-bottom: 32px; }
  body .cf-top { display: flex; flex-direction: column; gap: 24px; }
  body .cf-brand { max-width: 36ch; }
  body .cf-nav { margin: 0; width: 100%; }
  body .cf-col-head { min-height: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  #MainContent .ch-fade { opacity: 1; transform: none; transition: none; }
}
/* Avoid inheriting label tracking into sentences or product names. */
#MainContent .ch-trio__prod-name,
#MainContent .ch-ben-tile__head,
#MainContent .ch-quiz__q { letter-spacing: 0 !important; }
#MainContent .ch-quiz__counter { padding: 0; border: 0; background: transparent; }
#MainContent .ch-quiz__progress { display: none; }
#MainContent .ch-herocar__ctas .ch-btn--outline { padding-left: 0; padding-right: 0; min-height: 44px; border-bottom: 1px solid currentColor; }
body .cf-copyright,
body .cf-legal a { font-size: 1.2rem !important; line-height: 1.6 !important; letter-spacing: 0 !important; }
body.ed-inline-action #MainContent .ch-sticky { visibility: hidden !important; transform: translateY(110%) !important; pointer-events: none; }
@media (min-width: 1101px) {
  body .koppa-shopmenu {
    box-sizing: border-box;
    left: max(24px, calc((100% - 1320px) / 2 + 24px));
    width: min(960px, calc(100% - 48px));
    max-width: none !important;
    grid-template-columns: minmax(280px,1.2fr) minmax(200px,.8fr) minmax(180px,.8fr);
  }
  body .koppa-shopmenu > div { min-width: 0; }
}

/* ── editorial-site.css ── */
body #MainContent :is(h1,h2,h3,h4,h5,h6),
body #MainContent :is(.cm2-h1,.cm2-h2,.cm2-h3,.cb-display,.gb-display,.ch-sec-head,.ch-cream__name,.ch-trio__name,.cp-headline,.ab-head) {
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  text-wrap: pretty;
}
body #MainContent :is(h1,.cm2-h1,.cp-headline,.gb-display--hero,.cb-display--xl) { font-size: var(--editorial-page) !important; }
body #MainContent :is(h2,.cm2-h2,.cb-display,.gb-display,.ch-sec-head,.ch-cream__name,.ch-trio__name,.ab-head) { font-size: var(--editorial-heading) !important; }
body #MainContent :is(h3,h4,h5,h6,.cm2-h3) { font-size: var(--editorial-subheading) !important; }
body #MainContent :is(.gb-display--hero,.cb-display--xl,.ch-herocar__hl) { font-size: var(--editorial-page) !important; }
body #MainContent :is(.ks-product-name,.card__heading,.cp-rec-card__name,.cm2-opt__title .cm2-h3,.cb-display--sm) { font-size: 1.4rem !important; }
body #MainContent :is(.faq-cat__label,.ab-mobile__eyebrow,.kt__coa-title) { font-size: 1.1rem !important; }
body #MainContent :is(.ch-faq__q,.cm2-faq__q,.faq__q,.cp-faq__q,.cs-faq__q) {
  font-size: 1.3rem !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
  line-height: 1.5 !important;
  text-transform: uppercase !important;
}
body #MainContent :is(h1,h2,h3) :is(span,em,strong) { font-size: inherit !important; font-weight: inherit !important; letter-spacing: inherit !important; text-transform: inherit !important; }
body #MainContent :is(.ch-sec-head,.ch-trio__name,.ch-cream__name,.cp-headline,.cm2-h1,.cm2-h2,.gb-display,.cb-display) { max-width: 44ch; }
body #MainContent .ch-herocar__hl { max-width: 30ch; }
body #MainContent .ch-faq__inner > .ch-sec-head { font-size: var(--editorial-heading) !important; }
body #MainContent .ch-benefits__intro-link { display: inline-flex; align-items: center; min-height: 44px; margin-top: 16px; border-bottom: 1px solid var(--rule-active); }
body #MainContent .ch-quiz__q { font-size: var(--editorial-heading) !important; font-weight: 500 !important; text-transform: uppercase !important; letter-spacing: .04em !important; }
body #MainContent .ch-quiz { border: 0; }
body #MainContent .faq-search__input { padding-left: 44px; }
body #MainContent .gb-btn { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; line-height: 1.5 !important; }
body #MainContent .gb-btn__arrow { display: inline-flex; align-items: center; height: auto; min-height: 0; flex: 0 0 auto; position: static; transform: none; align-self: center; line-height: 1.5 !important; font-size: 1.4rem !important; }
body #MainContent .ks-shop .ks-action { font-size: 1.1rem !important; text-transform: uppercase !important; letter-spacing: .055em !important; min-height: 48px; }
body #MainContent .kqr-proto-hero { min-height: 560px; }
body #MainContent .kqr-proto-hero__inner { padding-block: 64px; }
body #MainContent .kqr-proto-hero__title { max-width: 30ch !important; }
body #MainContent :is(.kqr-proto-hero__eyebrow,.kqr-proto-hero__body,.kqr-proto-hero__link) { color: var(--ink) !important; }
body #MainContent .kqr-proto-hero__body { max-width: 44ch; }
body #MainContent .kqr-proto-hero__scrim { background: linear-gradient(90deg,rgba(255,255,255,.93),rgba(255,255,255,.45) 50%,transparent); }
body #MainContent .cp-price-area .price { display: flex; align-items: baseline; gap: 12px; padding: 0; border: 0; background: transparent; }
body #MainContent .cp-price-area :is(.price__container,.price__regular,.price__sale) { padding: 0; border: 0; background: transparent; }
body #MainContent .cp-price-area .price-item { font-size: 2rem !important; line-height: 1.4 !important; letter-spacing: 0 !important; font-weight: 500 !important; }
body #MainContent .cp-price-area :is(.price__badge-sold-out,.price__badge-sale) { min-height: 0; padding: 0; border: 0; background: transparent; font-size: 1.1rem !important; }
body #MainContent .cp-value-tag { padding: 0; border: 0; background: transparent; font-size: 1.1rem !important; letter-spacing: .05em !important; }
body #MainContent .cb-hero__media .product-media-container { width: 100%; max-width: 100%; border: 0; background: var(--ground-tint); }
body #MainContent .cb-hero__media .product__modal-opener { width: 100%; }
body #MainContent .cb-hero__media .product__media { width: 100%; }
body #MainContent .cm2 { --max: 1272px; --gx: var(--editorial-gutter); }
body #MainContent .cm2 .cm2-sec { padding-block: var(--editorial-section); }
body #MainContent .cm2 .cm2-head { margin-bottom: 32px; row-gap: 12px; }
body #MainContent .cm2 :is(.cm2-prob .cm2-h2,.cm2-balm__copy .cm2-h2,.cm2-close__copy .cm2-h2) { max-width: 40ch; }
body #MainContent .cm2 #cm2-routine-d .cm2-head .cm2-h2 { max-width: 40ch; font-size: var(--editorial-heading) !important; }
body #MainContent .cm2 .cm2-opt__visual { width: 100%; justify-content: center; }
body #MainContent .cm2 .cm2-opt__visual img { object-fit: contain; max-width: 29%; width: auto; }
body #MainContent .cm2 .cm2-opt__visual img:only-child { max-width: 100%; }
body #MainContent .cm2 .cm2-btn { white-space: normal; min-height: 48px; text-align: center; }
body #MainContent .cm2 .cm2-faq__trigger { min-height: 52px; }
body #MainContent :is(.contact-form input:not([type=checkbox]):not([type=hidden]),.contact-form textarea,.contact-form select,.km-form input:not([type=checkbox]):not([type=hidden]),.km-form textarea,.km-form select) {
  border: 1px solid var(--rule-active);
  border-radius: 0;
  min-height: 48px;
  background: var(--ground);
  padding: 12px 14px;
}
body .koppa-shopmenu { border: 1px solid var(--rule-active) !important; box-shadow: none; }
body .koppa-shopmenu__name { font-size: 1.3rem !important; line-height: 1.5 !important; font-weight: 500 !important; letter-spacing: .04em !important; text-transform: uppercase !important; }
body .koppa-shopmenu__promo-head { font-size: 1.6rem !important; line-height: 1.5 !important; letter-spacing: .04em !important; text-transform: uppercase !important; }
body :is(.cf-email__inner,.cf-top,.cf-bottom) { box-sizing: border-box; width: 100%; max-width: var(--editorial-frame); margin-inline: auto; padding-inline: var(--editorial-gutter) !important; }
body .cf-email { background: var(--ground-tint); }
body .cf-email__inner { display: grid; grid-template-columns: 1fr; gap: 24px; padding-block: 48px; }
body .cf-email__head { font-size: var(--editorial-heading) !important; line-height: 1.5 !important; font-weight: 500 !important; text-transform: uppercase !important; letter-spacing: .055em !important; max-width: 40ch; }
body .cf-email__head br { display: none; }
body .cf-email__eyebrow { margin-bottom: 12px; }
body .cf-email__form-wrap { min-width: 0; gap: 12px; }
body .cf-email__form { display: flex; flex-wrap: nowrap; gap: 12px; background: transparent; border: 0; border-bottom: 1px solid var(--rule-active); overflow: visible; }
body .cf-email__inp { min-width: 0; min-height: 48px; padding: 12px 0; border: 0; background: transparent; font-size: 1.6rem !important; line-height: 1.5 !important; }
body .cf-email__btn { min-height: 48px; padding: 12px 16px; font-size: 1.1rem !important; }
body .cf-email__offer { display: none; }
body .cf-email__fine { margin-top: 12px; font-size: 1.2rem !important; line-height: 1.6 !important; }
body .cf-brand__tagline { display: block; min-height: 0; padding: 0; border: 0; background: transparent; font-size: 1.4rem !important; line-height: 1.6 !important; text-transform: none !important; letter-spacing: 0 !important; }
body .cf-brand__cta { align-self: flex-start; width: auto; display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--ink); text-decoration: underline; text-underline-offset: 5px; }
body .cf-brand__cta:hover { color: var(--ink); background: transparent; }
body .cf-col a { font-size: 1.2rem !important; line-height: 1.5 !important; white-space: normal; }
body .cf-col-head { font-size: 1.1rem !important; letter-spacing: .06em !important; }
body :is(.cf-col,.cf-nav) { min-width: 0; }
body :is(input,textarea,select):focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
@media (min-width: 750px) {
  body #MainContent .ch-herocar__hl { font-size: 2.2rem !important; }
  body #MainContent .ch-herocar__slide { min-height: 480px; height: clamp(480px,62svh,580px); }
  body #MainContent .cm2 .cm2-hero .cm2-h1 { max-width: 27ch; }
  body #MainContent .cm2 .cm2-opt__visual img { height: clamp(220px,21vw,280px); }
  body #MainContent .cm2 .cm2-opt__visual { min-height: 280px; }
  body .cf-email__inner { grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; padding-block: 56px; }
  body .cf-top { gap: 32px; padding-block: 56px; }
  body #MainContent :is(.contact-hero__inner,.gb-hero__content,.legal-help .sr-hero__copy) { box-sizing: border-box; max-width: none; width: 100%; margin: 0; padding: 64px 48px 64px max(24px,calc((100vw - 1272px)/2)); text-align: left; align-items: flex-start; }
  body #MainContent .contact-hero__inner > div:first-child { margin: 0; width: 100%; text-align: left; }
  body #MainContent .contact-hero__inner :is(.contact-hero__eyebrow,.contact-hero__title,.contact-hero__sub) { text-align: left; margin-left: 0; margin-right: 0; }
  body #MainContent .contact-cats { width: 100%; }
  body #MainContent .gb-hero .gb-btn { align-self: flex-start; width: auto; min-height: 48px; }
}
@media (min-width: 1101px) {
  body .koppa-shopmenu { box-sizing: border-box; left: max(24px,calc((100% - 1320px)/2 + 24px)); width: min(960px,calc(100% - 48px)); max-width: none !important; grid-template-columns: minmax(280px,44fr) minmax(400px,56fr); }
  body .koppa-shopmenu > div { min-width: 0; }
}
@media (max-width: 749px) {
  body #MainContent .km { --km-gutter: 16px; }
  body #MainContent .km .km-hero__inner { display: flex; flex-direction: column; min-height: 0; }
  body #MainContent .km .km-hero__fig { order: -1; width: 100%; height: 220px; }
  body #MainContent .km .km-hero__media { min-height: 0; height: 220px; width: 100%; }
  body #MainContent .km .km-hero__media img { display: block; width: 100%; height: 220px; object-fit: cover; object-position: center 43%; }
  body #MainContent .km .km-hero__copy { padding: 32px 16px; }
  body #MainContent .km .km-hero__title { max-width: 30ch; }
  body #MainContent .km .km-hero__sub { max-width: 40ch; }
  body #MainContent .km .km-hero__actions { max-width: none; }
  body #MainContent .km .km-hero__actions .km-btn--outline { display: inline-flex; }
  body #MainContent .contact-hero { display: flex; flex-direction: column; min-height: 0; padding: 0; background: var(--ground-tint); }
  body #MainContent .contact-hero__media { position: relative; inset: auto; order: -1; width: 100%; height: 220px; }
  body #MainContent .contact-hero__media::before { display: none; }
  body #MainContent .contact-hero__media img { height: 220px; object-position: 50% 28%; }
  body #MainContent .contact-hero__inner { padding: 32px 16px; }
  body #MainContent .contact-hero__inner > div:first-child,
  body #MainContent .contact-hero__sub { max-width: none; }
  body #MainContent .contact-cats { position: static; margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--rule); grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
  body #MainContent .faq .faq-hero { min-height: 0; }
  body #MainContent .faq .faq-hero__content { min-height: 0; padding: 48px 16px 40px; }
  body #MainContent .gb { --gb-gutter: 16px; }
  body #MainContent .gb-hero__content { max-width: none; padding: 240px 16px 40px; }
  body #MainContent .gb-hero::after { background: linear-gradient(180deg,rgba(10,15,31,.08),rgba(10,15,31,.72)); }
  body #MainContent .cm2 .cm2-opt__visual { min-height: 220px; gap: 12px; }
  body #MainContent .cm2 .cm2-opt__visual img { height: 190px; }
  body #MainContent .cm2 .cm2-rt__duo img { height: 220px; max-width: 44%; object-fit: contain; }
  body #MainContent :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),textarea,select) { font-size: 1.6rem !important; }
  body .cf-top { display: flex; flex-direction: column; gap: 24px; padding-block: 40px; }
  body .cf-nav { width: 100%; }
  body .cf-col-head { min-height: 48px; }
}

/* ── ploy-redesign.css ── */
/* Ploy homepage presentation; Shopify owns content and interactions. */
body.ploy-home {
  --ploy-paper: oklch(0.986 0.002 255);
  --ploy-mineral: oklch(0.942 0.004 255);
  --ploy-ink: oklch(0.18 0.06 257);
  --ploy-muted: oklch(0.43 0.04 257);
  --ploy-navy: oklch(0.12 0.035 257);
  --ploy-rule: oklch(0.855 0.007 255);
  --ploy-copper: oklch(0.69 0.11 58);
  --ploy-gutter: 20px;
  --ploy-space: 80px;
  --ploy-width: min(1500px, calc(100% - 2 * var(--ploy-gutter)));
  background: var(--ploy-paper);
}
@media (min-width: 768px) {
  body.ploy-home { --ploy-gutter: 32px; --ploy-space: 112px; }
}

/* Scope wins against the legacy homepage's ID-based overrides. */
body.ploy-home #MainContent .shopify-section.koppa-home-system {
  --kh-max: 1500px;
  --kh-gutter: var(--ploy-gutter);
  --kh-width: var(--ploy-width);
  --ch-ff-disp: "Helvetica Neue", Arial, sans-serif;
  --ch-ff-body: "Helvetica Neue", Arial, sans-serif;
  color: var(--ploy-ink);
  background: var(--ploy-paper);
  font-family: "Helvetica Neue", Arial, sans-serif;

  & :is(h2, h3, h4, p, a, button, span, li) { font-family: inherit; letter-spacing: 0 !important; }
  & :is(h2, h3, h4) { text-wrap: balance; }
  & :is(.ploy-module-label, .ch-sec-label, .type-eyebrow) {
    font-size: 14px !important; line-height: 1.5 !important;
    font-weight: 400 !important; text-transform: none !important; color: var(--ploy-muted);
  }
  & .ploy-module-label {
    width: var(--ploy-width); max-width: 1500px; margin: 0 auto 32px; padding-bottom: 16px;
    border-bottom: 1px solid var(--ploy-rule);
  }
  & :is(.ch-sec-head, .ch-cream__name, .ch-trio__name, .type-display-2) {
    font-size: 36px !important; line-height: 1.04 !important; font-weight: 300 !important;
    color: var(--ploy-ink) !important; text-transform: none !important; max-width: 22ch;
  }
  & :is(.ch-sec-sub, .ch-cream__sub, .ch-trio__desc, .type-body) {
    font-size: 16px !important; line-height: 1.65 !important; color: var(--ploy-muted) !important; max-width: 65ch;
  }
  & .ch-btn {
    min-height: 52px; padding: 14px 28px; border-radius: 6px; font-size: 14px !important;
    font-weight: 400 !important; line-height: 1.4 !important; white-space: normal; text-align: center;
    text-transform: none !important; box-shadow: none; max-width: 100%;
  }
  & :is(.ch-btn--primary, .ch-btn--ink-strong) {
    background: var(--ploy-navy); color: var(--ploy-paper) !important;
    border: 1px solid color-mix(in oklch, var(--ploy-copper) 42%, var(--ploy-rule));
    box-shadow: inset 0 -2px 0 color-mix(in oklch, var(--ploy-copper) 72%, transparent);
  }
  & .ch-btn--outline { color: var(--ploy-ink) !important; border: 1px solid var(--ploy-rule); background: transparent; text-decoration: none; }
  & .ch-btn:hover { filter: brightness(1.15); }
  & :is(a, button, summary):focus-visible { outline: 2px solid var(--ploy-copper); outline-offset: 4px; }

  & #home.ch-herocar { padding: 24px 0 0; background: var(--ploy-paper); }
  & #home .ch-herocar__viewport { width: var(--ploy-width); max-width: 1500px; margin: auto; border-radius: 0; }
  & #home .ch-herocar__slide {
    display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto;
    gap: 24px; min-height: 0; height: auto; background: transparent;
  }
  & #home .ch-herocar__slide .ch-herocar__media {
    position: relative; inset: auto; grid-column: 1; grid-row: 2; width: 100%; height: 480px;
    min-height: 0; aspect-ratio: auto; border: 0; border-radius: 8px; overflow: hidden; background: var(--ploy-navy);
  }
  & #home .ch-herocar__slide .ch-herocar__media :is(img, video) {
    inset: 0; width: 100%; height: 100%; margin: 0; padding: 0; object-fit: cover;
    object-position: var(--ch-hero-x, 50%) var(--ch-hero-y, 50%); mask-image: none;
  }
  & #home .ch-herocar__slide .ch-herocar__media::after { display: none; }
  & #home .ch-herocar__slide .ch-herocar__inner {
    grid-column: 1; grid-row: 1; display: flex; align-items: stretch; width: 100%; height: auto;
    min-height: 480px; max-width: none; margin: 0; padding: 28px; border: 1px solid var(--ploy-rule);
    border-radius: 8px; background: var(--ploy-paper);
  }
  & #home .ch-herocar__content { display: flex; flex-direction: column; width: 100%; min-width: 0; padding: 0; max-width: none; grid-column: auto; }
  & #home .ch-herocar__hl {
    font-size: 46px !important; line-height: 1 !important; font-weight: 300 !important;
    color: var(--ploy-ink) !important; margin: 0; max-width: 15ch; text-transform: none !important; overflow-wrap: normal;
  }
  & #home .ch-herocar__sub { font-size: 16px !important; line-height: 1.65 !important; color: var(--ploy-muted) !important; margin: 28px 0 32px; max-width: 48ch; }
  & #home .ch-herocar__eyebrow { color: var(--ploy-muted); font-size: 14px !important; margin-bottom: 20px; }
  & #home .ch-herocar__ctas { display: flex; flex-wrap: wrap; gap: 12px; margin: auto 0 0; padding-top: 24px; }
  & #home .ch-herocar__ctas .ch-btn { min-height: 52px; padding: 14px 28px; }
  & #home .ch-herocar__ctas .ch-btn--primary { background: var(--ploy-navy); color: var(--ploy-paper) !important; }
  & #home .ch-herocar__ctas .ch-btn--outline { border: 1px solid var(--ploy-rule); color: var(--ploy-ink) !important; }
  & #home .ploy-hero-benefits {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; border-top: 1px solid var(--ploy-rule);
    margin-top: 40px; padding-top: 20px; font-size: 12px; line-height: 1.5; color: var(--ploy-muted);
  }
  & #home .ch-herocar__mobile-proof { color: var(--ploy-muted); }
  & #home .ch-herocar__navigation { position: static; width: var(--ploy-width); max-width: 1500px; margin: 16px auto 24px; padding: 0; transform: none; }
  & #home .ch-herocar__tabs { gap: 24px; justify-content: flex-start; flex-wrap: wrap; }
  & #home .ch-herocar__tab { color: var(--ploy-muted); font-size: 12px; white-space: normal; }
  & #home .ch-herocar__tab.is-active { color: var(--ploy-ink); border-bottom-color: var(--ploy-ink); }

  & #products { padding: var(--ploy-space) 0; background: var(--ploy-mineral); }
  & #products .kh-opening-grid { width: var(--ploy-width); max-width: 1500px; }
  & #products .kh-categories__intro { text-align: left; margin: 0 0 40px; }
  & #products .kh-categories__intro > .type-eyebrow { max-width: none; border-bottom: 1px solid var(--ploy-rule); padding-bottom: 16px; margin-bottom: 32px; }
  & #products .kh-categories__intro h2 { margin: 0 0 20px; max-width: 24ch; }
  & #products .kh-categories__intro p { margin-left: 0; }
  & #products .kh-categories__grid { grid-template-columns: 1fr; gap: 20px; }
  & #products .kh-category { border: 1px solid var(--ploy-rule); border-radius: 8px; overflow: hidden; background: var(--ploy-paper); padding: 0 0 24px; }
  & #products .kh-category__media { aspect-ratio: 4 / 5; width: 100%; margin: 0 0 24px; border-radius: 0; }
  & #products .kh-category h3 { font-size: 22px !important; line-height: 1.18 !important; font-weight: 300 !important; margin: 0 24px 12px; }
  & #products .kh-category__detail { font-size: 14px !important; text-transform: none; margin: 0 24px 20px; color: var(--ploy-muted); }
  & #products .kh-category__cta { margin: auto 24px 0; padding-top: 20px; min-height: 44px; border-top: 1px solid var(--ploy-rule); text-transform: none; font-size: 14px !important; }
  & #products .kh-category__availability { margin: 0 24px 20px; }

  & .ch-balm-spotlight[data-balm-wave-section] { padding: var(--ploy-space) 0 !important; background: color-mix(in srgb, var(--ploy-copper) 10%, var(--ploy-paper)); }
  & .ch-balm-spotlight[data-balm-wave-section] .ch-cream__inner { width: var(--ploy-width); max-width: 1500px; display: grid; grid-template-columns: 1fr; gap: 24px; padding: 0 !important; align-items: stretch; }
  & .ch-balm-spotlight[data-balm-wave-section] .ch-balm-visual { width: 100%; min-height: 520px; height: auto; aspect-ratio: auto; border: 1px solid var(--ploy-rule); border-radius: 8px; overflow: hidden; }
  & .ch-balm-spotlight[data-balm-wave-section] .ch-cream__content { padding: 28px !important; background: var(--ploy-paper); border: 1px solid var(--ploy-rule); border-radius: 8px; display: flex; flex-direction: column; justify-content: flex-start; }
  & .ch-balm-spotlight[data-balm-wave-section] .ch-cream__name { margin: 0 0 28px !important; font-size: 36px !important; }
  & .ch-cream__sub { margin: 0 0 32px; }
  & .ch-cream__ticks { border-block: 1px solid var(--ploy-rule); padding: 24px 0; margin-top: auto; }
  & .ch-cream__tick { font-size: 14px !important; line-height: 1.6 !important; }
  & .ch-cream__actions { gap: 16px; margin-top: 24px; }

  & .kh-longevity { padding: var(--ploy-space) 0 !important; background: var(--ploy-navy); color: var(--ploy-paper); }
  & .kh-longevity__inner { width: var(--ploy-width); max-width: 1500px; margin: auto; }
  & .kh-longevity__layout { display: grid; grid-template-columns: 1fr; gap: 48px; }
  & .kh-longevity__intro { max-width: none; }
  & .kh-longevity__eyebrow { border-bottom: 1px solid #ffffff30; padding-bottom: 16px; margin-bottom: 40px; }
  & .kh-longevity :is(.type-eyebrow, .type-display-2, .type-display-3, .type-body, .kh-longevity__lead, a, h3, h4, p, .kh-longevity__number) { color: var(--ploy-paper) !important; }
  & .kh-longevity .type-display-2 { font-size: 46px !important; line-height: 1.05 !important; max-width: 18ch; }
  & .kh-longevity__lead { font-size: 18px !important; line-height: 1.6 !important; margin: 28px 0 20px; }
  & .kh-longevity .type-body { opacity: .8; }
  & .kh-longevity__media { border-radius: 8px; overflow: hidden; width: 100%; margin: 0; align-self: center; }
  & .kh-longevity__formats { border-color: #ffffff30; margin-top: 48px; padding-top: 32px; }
  & .kh-longevity__facts { gap: 24px; }
  & .kh-longevity__fact { padding: 24px; background: #ffffff09; border: 1px solid #ffffff30; border-radius: 8px; }
  & .kh-longevity__fact h4 { font-size: 24px !important; font-weight: 300 !important; }
  & .kh-longevity__cta { background: var(--ploy-paper); color: var(--ploy-ink) !important; }

  & #bundles { padding: var(--ploy-space) 0 !important; background: var(--ploy-paper); color: var(--ploy-ink); }
  & #bundles .ch-trio__inner { width: var(--ploy-width); max-width: 1500px; display: grid; grid-template-columns: 1fr; gap: 24px; padding: 0 !important; align-items: stretch; }
  & #bundles .ch-trio__media { border-radius: 8px; overflow: hidden; min-height: 520px; aspect-ratio: auto; }
  & #bundles .ch-trio__media a { display: block; height: 100%; }
  & #bundles .ch-trio__content { padding: 28px !important; border: 1px solid var(--ploy-rule); border-radius: 8px; background: var(--ploy-mineral); }
  & #bundles :is(.ch-trio__name, .ch-trio__prod-name, .ch-trio__price-now, .ch-trio__rating, .ch-trio__explore) { color: var(--ploy-ink) !important; }
  & #bundles :is(.ch-trio__badge, .ch-trio__desc, .ch-trio__step, .ch-trio__prod-detail, .ch-trio__price-was, .ch-trio__trust, .ch-trio__rating span) { color: var(--ploy-muted) !important; }
  & #bundles .ch-trio__name { margin: 24px 0; }
  & #bundles .ch-trio__products { margin-top: 32px; border-color: var(--ploy-rule); }
  & #bundles .ch-trio__product { padding: 20px 0; border-color: var(--ploy-rule); }
  & #bundles .ch-trio__prod-name { font-size: 14px !important; white-space: normal; }
  & #bundles .ch-trio__prod-detail { font-size: 14px !important; white-space: normal; }
  & #bundles .ch-trio__price-now { font-size: 30px !important; }
  & #bundles .ch-trio__savings-pill { color: var(--ploy-ink); border-color: var(--ploy-rule); }
  & #bundles .ch-btn--primary { background: var(--ploy-navy); color: var(--ploy-paper) !important; }

  & #home-quiz { width: 100%; max-width: none; padding: var(--ploy-space) 0 !important; background: var(--ploy-navy); }
  & #home-quiz :is(.ch-quiz-intro, .ch-quiz-split) { width: var(--ploy-width); max-width: 1500px; margin-inline: auto; }
  & #home-quiz .ch-quiz-intro { margin-bottom: 48px; }
  & #home-quiz .ch-quiz-intro__copy { display: grid; grid-template-columns: 1fr; gap: 24px; }
  & #home-quiz .ch-quiz-intro .ch-sec-label { grid-column: 1 / -1; grid-row: auto; padding-bottom: 16px; border-bottom: 1px solid #ffffff30; color: var(--ploy-paper); margin-bottom: 8px !important; }
  & #home-quiz .ch-quiz-intro :is(.ch-sec-head, .ch-sec-sub) { grid-column: auto; grid-row: auto; color: var(--ploy-paper) !important; margin: 0; }
  & #home-quiz .ch-quiz-split { display: grid; grid-template-columns: 1fr; border: 1px solid #ffffff30; border-radius: 8px; overflow: hidden; box-shadow: none; background: var(--ploy-paper); }
  & #home-quiz .ch-quiz { padding: 28px; background: var(--ploy-paper); justify-content: flex-start; }
  & #home-quiz .ch-quiz__q { font-size: 24px !important; line-height: 1.2 !important; font-weight: 300 !important; margin-top: 24px; }
  & #home-quiz .ch-quiz__opts { grid-template-columns: 1fr; gap: 0; }
  & #home-quiz .ch-quiz__opt { min-height: 128px; padding: 20px; background: var(--ploy-paper); font-size: 14px !important; }
  & #home-quiz .ch-quiz__opt.is-selected { background: var(--ploy-mineral); border-color: var(--ploy-ink); }
  & #home-quiz .ch-quiz__opt-title { text-transform: none; }
  & #home-quiz .ch-quiz__next { margin-top: 32px; }
  & #home-quiz .ch-quiz-split__img { min-height: 620px; }
  & #home-quiz .ch-quiz-split__img:not(.is-product) .ch-quiz-split__photo { padding: 0; object-fit: cover; }

  & #koppa-home-faq { width: 100%; max-width: none; padding: var(--ploy-space) 0 !important; background: var(--ploy-paper); }
  & #koppa-home-faq .ch-faq__inner { width: var(--ploy-width); max-width: 1500px; padding: 0 !important; display: grid; grid-template-columns: 1fr; gap: 32px; }
  & #koppa-home-faq .ch-faq__image { grid-column: auto; grid-row: auto; border-radius: 8px; overflow: hidden; }
  & #koppa-home-faq .ch-faq__content { grid-column: auto; grid-row: auto; }
  & #koppa-home-faq .ch-sec-head { margin: 0 0 40px !important; }
  & #koppa-home-faq .ch-faq__summary { padding-block: 24px; min-height: 72px; }
  & #koppa-home-faq .ch-faq__item { border-color: var(--ploy-rule); }
  & #koppa-home-faq :is(.ch-faq__q, .ch-faq__body-inner) { font-size: 16px !important; line-height: 1.65 !important; }

  @media (min-width: 640px) {
    & #products .kh-categories__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    & #home-quiz .ch-quiz__opts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }
  @media (min-width: 768px) {
    & :is(.ch-sec-head, .ch-cream__name, .ch-trio__name, .type-display-2) { font-size: 48px !important; }
    & #home.ch-herocar { padding-top: 32px; }
    & #home .ch-herocar__slide .ch-herocar__inner { padding: 48px; }
    & #home .ch-herocar__hl { font-size: 64px !important; }
    & #home .ch-herocar__sub { font-size: 18px !important; }
    & .ch-balm-spotlight[data-balm-wave-section] .ch-cream__content { padding: 48px !important; }
    & .ch-balm-spotlight[data-balm-wave-section] .ch-cream__name { font-size: 48px !important; }
    & #bundles .ch-trio__content { padding: 48px !important; }
    & .kh-longevity .type-display-2 { font-size: 64px !important; }
    & #home-quiz .ch-quiz { padding: 48px; }
    & #home-quiz .ch-quiz__q { font-size: 30px !important; }
  }
  @media (min-width: 1024px) {
    & #home .ch-herocar__slide { grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); grid-template-rows: 1fr; }
  & #home .ch-herocar__slide .ch-herocar__inner { height: clamp(560px, calc(100svh - 212px), 680px); }
    & #home .ch-herocar__slide .ch-herocar__media { grid-column: 2; grid-row: 1; height: 100%; }
    & .ch-balm-spotlight[data-balm-wave-section] .ch-cream__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    & .kh-longevity__layout { grid-template-columns: minmax(0, 1fr) minmax(0, .72fr); }
    & #bundles .ch-trio__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    & #home-quiz .ch-quiz-intro__copy { grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); column-gap: 32px; }
    & #home-quiz .ch-quiz-split { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    & #koppa-home-faq .ch-faq__inner { grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); }
    & #koppa-home-faq .ch-faq__content { padding-left: 40px; }
    & #koppa-home-faq .ch-faq__inner--text-only { grid-template-columns: 1fr; }
  }
  @media (min-width: 1280px) {
    & #products .kh-categories__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    & #home .ch-herocar__hl { font-size: 72px !important; }
  }
  @media (max-width: 749px) {
    & #home .ch-herocar__slide .ch-herocar__media :is(img, video) { object-position: var(--ch-hero-mobile-x, 50%) var(--ch-hero-mobile-y, 50%); }
    & #home .ch-herocar__hl { font-size: 40px !important; }
    & #home .ch-herocar__ctas .ch-btn { padding-inline: 20px; }
    & #home .ch-herocar__tabs { gap: 16px; }
    & #home .ch-herocar__tab { font-size: 11px; }
    & .kh-longevity__facts { grid-template-columns: 1fr; }
    & #home-quiz .ch-quiz-split__img { display: none; }
  }
}

@layer ploy-home {
  body.ploy-home { --font-sans: "Helvetica Neue", Arial, sans-serif; }
  body.ploy-home #MainContent .koppa-home-system {
    & :is(h2,h3,h4,p,a,button,span,li) { font-family: "Helvetica Neue", Arial, sans-serif !important; letter-spacing: 0 !important; }
    & :is(h2,h3,h4,button,.ch-btn,.type-label,.type-eyebrow,.ch-sec-label,.ch-trio__badge,.ch-faq__q,.ch-quiz__q,.ch-quiz__opt-title,.ch-trio__prod-name) { text-transform: none !important; }
    & :is(h2,h3,h4) { font-weight: 300 !important; text-wrap: balance !important; }
    & :is(.ch-sec-head,.ch-cream__name,.ch-trio__name,.type-display-2) { font-size: 36px !important; line-height: 1.04 !important; }
    & :is(p,li,.type-body,.ch-herocar__sub,.ch-trio__desc,.ch-cream__sub) { font-size: 16px !important; line-height: 1.65 !important; }
    & .ploy-module-label { max-width: 1500px !important; font-size: 14px !important; line-height: 1.5 !important; }
    & :is(.type-eyebrow,.ch-sec-label,.ch-trio__badge) { font-size: 14px !important; line-height: 1.5 !important; }
    & :is(.ch-btn, .kh-category__cta) { font-size: 14px !important; font-weight: 400 !important; line-height: 1.4 !important; }
    & #home .ch-herocar__inner { padding: 28px !important; }
    & #home .ch-herocar__hl { font-size: 44px !important; line-height: .98 !important; margin-bottom: 0 !important; }
    & #home .ch-herocar__sub { max-width: 48ch !important; }
    & #home .ch-herocar__navigation { left: auto !important; }
    & #products .kh-categories__intro > .type-eyebrow { max-width: none !important; }
    & #products { padding-block: var(--ploy-space) !important; }
    & #products .kh-opening-grid { width: var(--ploy-width) !important; max-width: 1500px !important; padding-inline: 0 !important; }
    & #products .kh-categories__intro { margin-bottom: 48px !important; }
    & #products .kh-categories__intro > .type-eyebrow { margin-bottom: 48px !important; }
    & #products .kh-category h3 { font-size: 20px !important; line-height: 1.25 !important; }
    & #products .kh-category__detail { font-size: 14px !important; line-height: 1.6 !important; }
    & .ch-balm-spotlight { padding: var(--ploy-space) 0 !important; }
    & .ch-balm-spotlight { background: color-mix(in srgb, var(--ploy-copper) 10%, var(--ploy-paper)) !important; }
    & .ch-balm-spotlight .ch-balm-art-copy { position: static !important; margin: 0 0 24px; display: flex; flex-wrap: wrap; gap: 0 4px; }
    & .ch-balm-spotlight .ch-balm-art-copy :is(p,span) { font-size: 14px !important; line-height: 1.5 !important; font-weight: 400 !important; color: var(--ploy-muted); }
    & .ch-balm-spotlight .ch-cream__ticks { border-block: 1px solid var(--ploy-rule) !important; padding: 24px 0 !important; }
    & .ch-balm-spotlight .ch-cream__inner { width: var(--ploy-width) !important; max-width: 1500px !important; }
    & .ch-balm-spotlight .ch-cream__inner { padding: 0 !important; }
    & .ch-balm-spotlight .ch-cream__content { padding: 28px !important; }
    & .ch-balm-spotlight .ch-cream__tick { font-size: 14px !important; }
    & .kh-longevity { padding: var(--ploy-space) 0 !important; }
    & .kh-longevity .type-display-2 { font-size: 48px !important; line-height: 1 !important; }
    & .kh-longevity__fact h4 { font-size: 24px !important; }
    & #bundles .ch-trio__inner { padding: 0 !important; }
    & #bundles .ch-trio__inner { width: var(--ploy-width) !important; max-width: 1500px !important; }
    & #bundles :is(.ch-trio__prod-name,.ch-trio__prod-detail) { font-size: 14px !important; line-height: 1.5 !important; }
    & #home-quiz { width: 100% !important; max-width: none !important; padding: var(--ploy-space) 0 !important; }
    & #home-quiz .ch-quiz__q { font-size: 24px !important; line-height: 1.2 !important; font-weight: 300 !important; }
    & #home-quiz :is(.ch-quiz__opt,.ch-quiz__opt-title,.ch-quiz__opt-support,.ch-quiz__counter,.koppa-quiz-hint) { font-size: 14px !important; line-height: 1.55 !important; }
    & #koppa-home-faq :is(.ch-faq__q,.ch-faq__body-inner) { font-size: 16px !important; line-height: 1.65 !important; }
    & #koppa-home-faq { padding: var(--ploy-space) 0 !important; }
    @media (min-width:768px) {
      & :is(.ch-sec-head,.ch-cream__name,.ch-trio__name,.type-display-2) { font-size: 48px !important; }
      & #home .ch-herocar__inner { padding: 48px !important; }
      & #home .ch-herocar__hl { font-size: 60px !important; }
      & #home .ch-herocar__sub { font-size: 18px !important; }
      & .ch-balm-spotlight .ch-cream__content { padding: 48px !important; }
      & .kh-longevity .type-display-2 { font-size: 72px !important; }
      & #home-quiz .ch-quiz__q { font-size: 30px !important; }
    }
    @media (min-width:1024px) and (max-width:1279px) {
      & #home .ch-herocar__hl { font-size: 56px !important; }
    }
    @media (max-width:389px) {
      & #home .ch-herocar__hl { font-size: 40px !important; }
    }
    @media (max-width:767px) {
      & .ch-balm-spotlight .ch-balm-visual { min-height: 0 !important; }
    }
  }
}
body.ploy-home #MainContent .koppa-home-system #home .ch-herocar__hl { max-width: none; }
body.ploy-home #MainContent .koppa-home-system #products .kh-categories__intro { display: grid; grid-template-columns: 1fr; gap: 0 32px; }
body.ploy-home #MainContent .koppa-home-system #products .kh-categories__intro > .type-eyebrow { grid-column: 1 / -1; width: 100%; }
body.ploy-home #MainContent .koppa-home-system #products .kh-category__availability { display: flex !important; justify-content: space-between; gap: 12px; font-size: 12px; }
body.ploy-home #MainContent .koppa-home-system #products .kh-category__cta { border-top: 0; text-underline-offset: 5px; font-size: 12px; }
body.ploy-home #MainContent .koppa-home-system #home-quiz .ch-sec-label { width: 100%; max-width: none !important; }
body.ploy-home #MainContent .koppa-home-system .ch-balm-spotlight .ch-cream__actions { display: flex; flex-direction: column; flex-wrap: nowrap; width: 100%; min-width: 0; }
body.ploy-home #MainContent .koppa-home-system .ch-balm-spotlight .ch-cream__actions .ch-btn { width: 100%; min-width: 0; max-width: 100%; }
@media (min-width:1024px) {
  body.ploy-home #MainContent .koppa-home-system #products .kh-categories__intro { grid-template-columns: minmax(0,.82fr) minmax(0,1.18fr); align-items: end; }
  body.ploy-home #MainContent .koppa-home-system #products .kh-categories__intro > .type-body { justify-self: end; margin-bottom: 20px; }
}

/* ── koppa-desktop-buybar.css ── */
@media (min-width: 990px) {
  html { scroll-padding-bottom: calc(var(--koppa-buybar-height, 76px) + 16px); }
  body.koppa-buybar-visible { padding-bottom: calc(var(--koppa-buybar-height, 76px) + env(safe-area-inset-bottom, 0px)) !important; }
  body #MainContent #ch-sticky.is-visible { visibility: visible !important; transform: none !important; pointer-events: auto; }
  body #MainContent .cp-stickybar {
    display: flex; justify-content: center; gap: var(--space-8);
    padding: var(--space-3) max(var(--space-8), calc((100vw - 1280px) / 2));
    /* The shorthand above used to wipe the safe-area padding the base rule
       sets, so on tablets the bottom of the bar (and the second text line)
       sat under the home indicator / gesture bar. Keep the inset, and give
       the two-line info block a little more clearance from the edge. */
    padding-bottom: calc(var(--space-4) + env(safe-area-inset-bottom, 0px));
    background: var(--ground); border-top: var(--hairline) solid var(--rule);
  }
  body #MainContent .cp-stickybar__info { display: flex; flex: 1; gap: var(--space-1); }
  body #MainContent .cp-stickybar__name { display: block; font-size: 14px !important; }
  body #MainContent .cp-stickybar__price { display: block; font-size: 13px !important; }
  body #MainContent .cp-stickybar__add { min-width: 220px; min-height: 48px; font-size: var(--text-label) !important; }
}
