:root {
  --rse-olive: #899B2A;
  --rse-olive-dark: #5E6F1D;
  --rse-cream: #FAF8EF;
  --rse-soft-white: #FFFDF7;
  --rse-ink: #27251F;
  --rse-muted: #6F6A5C;
  --rse-gold: #D6B86A;
  --rse-line: rgba(39, 37, 31, 0.12);
  --rse-shadow: 0 26px 70px rgba(39, 37, 31, 0.12);
  --rse-radius: 28px;
  --rse-serif: Georgia, 'Times New Roman', serif;
  --rse-sans: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

html {
  scroll-behavior: smooth;
}

body.rse-document,
body.rse-takeover {
  margin: 0;
  background: var(--rse-soft-white);
  color: var(--rse-ink);
  font-family: var(--rse-sans);
}

.rse-site-shell,
.rse-site-shell * {
  box-sizing: border-box;
}

.rse-site-shell a {
  color: inherit;
}

.rse-offer-bar {
  background: linear-gradient(90deg, var(--rse-olive-dark), var(--rse-olive));
  color: #fff;
  position: sticky;
  top: 0;
  z-index: 1000;
}

.admin-bar .rse-offer-bar {
  top: 32px;
}

.rse-offer-bar__inner {
  min-height: 74px;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
}

.rse-offer-bar__copy {
  display: grid;
  gap: 4px;
}

.rse-offer-bar__kicker {
  color: #efe4b7;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: 11px;
  font-weight: 800;
}

.rse-offer-bar__text {
  font-size: 15px;
  font-weight: 650;
}

.rse-countdown {
  display: flex;
  gap: 12px;
  align-items: center;
}

.rse-countdown span {
  display: grid;
  text-align: center;
  min-width: 38px;
}

.rse-countdown strong {
  font-size: 20px;
  line-height: 1;
}

.rse-countdown em {
  font-size: 10px;
  opacity: .8;
  text-transform: uppercase;
  font-style: normal;
  letter-spacing: .08em;
}

.rse-offer-bar__button {
  background: #fff;
  color: var(--rse-olive-dark);
  border-radius: 999px;
  padding: 14px 22px;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.rse-header {
  background: rgba(255, 253, 247, .94);
  border-bottom: 1px solid var(--rse-line);
  backdrop-filter: blur(16px);
  position: sticky;
  top: 74px;
  z-index: 999;
}

.admin-bar .rse-header {
  top: 106px;
}

.rse-header__inner {
  min-height: 92px;
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
}

.rse-logo {
  display: inline-flex;
  align-items: center;
  justify-self: start;
  text-decoration: none;
  position: relative;
  font-family: var(--rse-serif);
  color: var(--rse-olive-dark);
}

.rse-logo__text {
  font-size: clamp(34px, 5vw, 54px);
  line-height: .9;
  letter-spacing: -.05em;
}

.rse-logo__sun {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: radial-gradient(circle at center, var(--rse-gold) 0 28%, transparent 30% 100%);
  box-shadow: 0 0 0 1px rgba(94, 111, 29, .1);
  margin-left: -58px;
  margin-top: -24px;
  opacity: .9;
}

.rse-logo::after {
  content: '';
  position: absolute;
  right: 2px;
  bottom: -8px;
  width: 42%;
  height: 3px;
  background: var(--rse-olive-dark);
  border-radius: 999px;
}

.rse-desktop-nav {
  display: flex;
  justify-content: center;
  gap: 26px;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 750;
  color: var(--rse-muted);
}

.rse-desktop-nav a,
.rse-footer__links a {
  text-decoration: none;
}

.rse-header-actions {
  display: flex;
  align-items: center;
  gap: 14px;
}

.rse-icon-link,
.rse-menu-toggle {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 1px solid var(--rse-line);
  border-radius: 999px;
  background: transparent;
  color: var(--rse-olive-dark);
  text-decoration: none;
}

.rse-menu-toggle {
  display: none;
  border: none;
  width: 46px;
  padding: 0;
}

.rse-menu-toggle span:not(.screen-reader-text) {
  display: block;
  width: 28px;
  height: 2px;
  background: var(--rse-olive-dark);
  margin: 3px 0;
}

.rse-icon {
  display: block;
  width: 22px;
  height: 22px;
  border: 2px solid currentColor;
}

.rse-icon--user {
  border-radius: 50% 50% 44% 44%;
  border-bottom: none;
  position: relative;
}

.rse-icon--user::before {
  content: '';
  width: 8px;
  height: 8px;
  border: 2px solid currentColor;
  border-radius: 50%;
  position: absolute;
  top: -12px;
  left: 5px;
}

.rse-icon--bag {
  border-radius: 8px;
  position: relative;
}

.rse-icon--bag::before {
  content: '';
  width: 10px;
  height: 7px;
  border: 2px solid currentColor;
  border-bottom: none;
  border-radius: 8px 8px 0 0;
  position: absolute;
  top: -8px;
  left: 4px;
}

.rse-cart-link {
  position: relative;
}

.rse-cart-count {
  position: absolute;
  right: -6px;
  top: -8px;
  min-width: 22px;
  height: 22px;
  border-radius: 999px;
  background: var(--rse-olive);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 800;
}

.rse-mobile-menu {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto 18px;
  padding: 18px;
  border: 1px solid var(--rse-line);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--rse-shadow);
}

.rse-mobile-menu a {
  display: block;
  padding: 14px 4px;
  text-decoration: none;
  border-bottom: 1px solid var(--rse-line);
  font-weight: 750;
}

.rse-mobile-menu a:last-child {
  border-bottom: 0;
}

.rse-main {
  overflow: hidden;
}

.rse-hero {
  background:
    radial-gradient(circle at 80% 20%, rgba(137, 155, 42, .18), transparent 34%),
    linear-gradient(180deg, #fffdf7 0%, #faf8ef 100%);
  min-height: calc(100vh - 166px);
  position: relative;
  display: grid;
  align-items: center;
  padding: clamp(58px, 9vw, 110px) 0;
}

.rse-hero__inner,
.rse-container {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

.rse-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(320px, .98fr);
  gap: clamp(32px, 7vw, 86px);
  align-items: center;
}

.rse-kicker {
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: 12px;
  font-weight: 850;
  margin: 0 0 16px;
}

.rse-hero h1,
.rse-section h2,
.rse-offer-panel h2 {
  font-family: var(--rse-serif);
  font-weight: 500;
  letter-spacing: -.055em;
  line-height: .96;
  color: var(--rse-ink);
  margin: 0;
}

.rse-hero h1 {
  font-size: clamp(52px, 9vw, 112px);
  max-width: 880px;
}

.rse-hero__lead,
.rse-section-heading p,
.rse-split p,
.rse-offer-panel p {
  color: var(--rse-muted);
  font-size: clamp(17px, 2.1vw, 21px);
  line-height: 1.55;
}

.rse-hero__actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin: 32px 0 28px;
}

.rse-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 56px;
  padding: 16px 24px;
  border-radius: 999px;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 12px;
  font-weight: 850;
}

.rse-button--primary {
  background: var(--rse-olive-dark);
  color: #fff;
  box-shadow: 0 16px 34px rgba(94, 111, 29, .22);
}

.rse-button--secondary {
  border: 1px solid var(--rse-line);
  background: rgba(255,255,255,.65);
  color: var(--rse-olive-dark);
}

.rse-button--light {
  background: #fff;
  color: var(--rse-olive-dark);
}

.rse-proof-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.rse-proof-strip span {
  border: 1px solid var(--rse-line);
  border-radius: 999px;
  padding: 10px 14px;
  color: var(--rse-muted);
  background: rgba(255,255,255,.65);
  font-size: 13px;
}

.rse-hero__visual {
  display: grid;
  place-items: center;
}

.rse-product-card {
  width: min(100%, 440px);
  min-height: 560px;
  background: linear-gradient(180deg, var(--rse-olive), var(--rse-olive-dark));
  border-radius: 50% 50% 32px 32px;
  box-shadow: var(--rse-shadow);
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  color: #fff;
}

.rse-product-card__sun {
  position: absolute;
  inset: 46px 46px auto auto;
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.7) 0 18%, transparent 20% 100%);
  opacity: .7;
}

.rse-product-card__bottle {
  width: 178px;
  height: 330px;
  border-radius: 86px 86px 30px 30px;
  border: 1px solid rgba(255,255,255,.34);
  background: rgba(255,255,255,.1);
  display: grid;
  place-items: center;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.14);
}

.rse-product-card__bottle span {
  font-family: var(--rse-serif);
  font-size: 42px;
  letter-spacing: -.05em;
  transform: rotate(-90deg);
}

.rse-product-card__caption {
  position: absolute;
  bottom: 34px;
  left: 34px;
  right: 34px;
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.14);
  backdrop-filter: blur(12px);
}

.rse-product-card__caption p,
.rse-product-card__caption strong {
  display: block;
  margin: 0;
}

.rse-product-card__caption p {
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 11px;
  opacity: .8;
}

.rse-product-card__caption strong {
  font-family: var(--rse-serif);
  font-size: 26px;
  margin-top: 6px;
  font-weight: 500;
}

.rse-section {
  padding: clamp(70px, 10vw, 124px) 0;
  background: var(--rse-soft-white);
}

.rse-section--cream {
  background: var(--rse-cream);
}

.rse-section--clinical {
  background: #fff;
}

.rse-section-heading {
  max-width: 780px;
  margin-bottom: 34px;
}

.rse-section h2,
.rse-offer-panel h2 {
  font-size: clamp(40px, 7vw, 76px);
}

.rse-card-grid {
  display: grid;
  gap: 18px;
}

.rse-card-grid--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rse-routine-card,
.rse-outcome-card,
.rse-ingredient-panel {
  background: rgba(255,255,255,.74);
  border: 1px solid var(--rse-line);
  border-radius: var(--rse-radius);
  box-shadow: 0 18px 48px rgba(39,37,31,.07);
}

.rse-routine-card {
  padding: 28px;
  min-height: 300px;
  display: flex;
  flex-direction: column;
}

.rse-routine-card--featured {
  background: var(--rse-olive-dark);
  color: #fff;
}

.rse-routine-card__label {
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: 11px;
  font-weight: 850;
}

.rse-routine-card--featured .rse-routine-card__label {
  color: var(--rse-gold);
}

.rse-routine-card h3 {
  font-family: var(--rse-serif);
  font-size: 34px;
  font-weight: 500;
  line-height: 1;
  margin: 18px 0 14px;
}

.rse-routine-card p {
  color: var(--rse-muted);
  line-height: 1.55;
  margin: 0 0 24px;
}

.rse-routine-card--featured p {
  color: rgba(255,255,255,.75);
}

.rse-routine-card a {
  margin-top: auto;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 12px;
  font-weight: 850;
  text-decoration: none;
}

.rse-split {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(28px, 6vw, 76px);
  align-items: center;
}

.rse-split--reverse > :first-child {
  order: 2;
}

.rse-outcome-card,
.rse-ingredient-panel {
  padding: clamp(24px, 4vw, 42px);
}

.rse-outcome-card h3 {
  font-family: var(--rse-serif);
  font-size: 38px;
  font-weight: 500;
  margin: 0 0 22px;
}

.rse-outcome-row {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 0;
  border-top: 1px solid var(--rse-line);
  color: var(--rse-muted);
}

.rse-outcome-row strong {
  color: var(--rse-olive-dark);
}

.rse-accordion {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 22px 0;
  border-bottom: 1px solid var(--rse-line);
  font: inherit;
  font-weight: 850;
  color: var(--rse-ink);
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  font-size: 20px;
  text-align: left;
}

.rse-accordion-panel {
  display: none;
  color: var(--rse-muted);
  line-height: 1.55;
  padding: 16px 0 20px;
  border-bottom: 1px solid var(--rse-line);
}

.rse-accordion.is-open + .rse-accordion-panel {
  display: block;
}

.rse-section--offer {
  background: var(--rse-olive-dark);
  color: #fff;
}

.rse-offer-panel {
  text-align: center;
  max-width: 850px;
}

.rse-offer-panel h2,
.rse-section--offer .rse-kicker {
  color: #fff;
}

.rse-offer-panel p {
  color: rgba(255,255,255,.72);
}

.rse-footer {
  background: var(--rse-ink);
  color: #fff;
  padding: 56px 0 110px;
}

.rse-footer__inner {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr .8fr 1fr;
  gap: 28px;
}

.rse-footer .rse-logo {
  color: #fff;
}

.rse-footer .rse-logo::after {
  background: #fff;
}

.rse-footer p,
.rse-footer__small {
  color: rgba(255,255,255,.68);
}

.rse-footer__links {
  display: grid;
  gap: 12px;
  align-content: start;
}

.rse-sticky-cta {
  position: fixed;
  z-index: 1001;
  left: 50%;
  bottom: max(14px, env(safe-area-inset-bottom));
  transform: translateX(-50%) translateY(0);
  width: min(760px, calc(100% - 24px));
  background: rgba(255,253,247,.96);
  border: 1px solid rgba(137,155,42,.24);
  box-shadow: 0 22px 70px rgba(39,37,31,.22);
  border-radius: 999px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 14px;
  padding: 10px 12px 10px 20px;
  backdrop-filter: blur(18px);
  transition: transform .25s ease, opacity .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.rse-sticky-cta.is-hidden {
  transform: translateX(-50%) translateY(120%);
  opacity: 0;
  pointer-events: none;
}

.rse-sticky-cta.is-emphasised {
  border-color: rgba(214,184,106,.68);
  box-shadow: 0 28px 90px rgba(94,111,29,.26);
}

.rse-sticky-cta__dismiss {
  position: absolute;
  top: -10px;
  right: 8px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid var(--rse-line);
  background: var(--rse-soft-white);
  color: var(--rse-muted);
  cursor: pointer;
  box-shadow: 0 10px 24px rgba(39,37,31,.14);
  font-size: 18px;
  line-height: 1;
}

.rse-sticky-cta__copy {
  min-width: 0;
}

.rse-sticky-cta__label,
.rse-sticky-cta__copy strong,
.rse-sticky-cta__copy span {
  display: block;
}

.rse-sticky-cta__label {
  width: fit-content;
  margin: 0 0 3px;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(137,155,42,.12);
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 9px;
  font-weight: 900;
}

.rse-sticky-cta__copy strong {
  font-family: var(--rse-serif);
  font-size: 18px;
  line-height: 1.05;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rse-sticky-cta__copy span:not(.rse-sticky-cta__label) {
  color: var(--rse-muted);
  font-size: 12px;
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rse-sticky-cta__meta {
  display: flex;
  gap: 6px;
  align-items: center;
}

.rse-sticky-cta__meta span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  border-radius: 999px;
  padding: 6px 10px;
  background: #fff;
  border: 1px solid var(--rse-line);
  color: var(--rse-olive-dark);
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
}

.rse-sticky-cta__button {
  min-width: 126px;
  min-height: 54px;
  border-radius: 999px;
  background: var(--rse-olive-dark);
  color: #fff;
  display: grid;
  place-items: center;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 14px 34px rgba(94,111,29,.28);
}

.rse-sticky-cta__button:hover,
.rse-sticky-cta__button:focus {
  color: #fff;
  transform: translateY(-1px);
}


.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

@media (max-width: 900px) {
  .rse-offer-bar__inner {
    width: calc(100% - 22px);
    min-height: 88px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px 14px;
  }

  .rse-countdown {
    grid-column: 1 / -1;
    order: 3;
    justify-content: center;
  }

  .rse-offer-bar__button {
    padding: 12px 16px;
    font-size: 11px;
  }

  .rse-header {
    top: 88px;
  }

  .admin-bar .rse-header {
    top: 134px;
  }

  .rse-header__inner {
    min-height: 86px;
    grid-template-columns: 54px 1fr auto;
  }

  .rse-menu-toggle {
    display: grid;
  }

  .rse-desktop-nav {
    display: none;
  }

  .rse-logo {
    justify-self: center;
  }

  .rse-logo__text {
    font-size: 44px;
  }

  .rse-icon-link:first-child {
    display: none;
  }

  .rse-hero {
    min-height: auto;
    padding: 54px 0 74px;
  }

  .rse-hero__inner,
  .rse-split,
  .rse-card-grid--three,
  .rse-footer__inner {
    grid-template-columns: 1fr;
  }

  .rse-hero h1 {
    font-size: clamp(52px, 16vw, 74px);
  }

  .rse-hero__lead,
  .rse-section-heading p,
  .rse-split p,
  .rse-offer-panel p {
    font-size: 17px;
  }

  .rse-button,
  .rse-hero__actions {
    width: 100%;
  }

  .rse-product-card {
    min-height: 430px;
  }

  .rse-split--reverse > :first-child {
    order: initial;
  }

  .rse-footer {
    padding-bottom: 128px;
  }
}

@media (max-width: 600px) {
  .admin-bar .rse-offer-bar {
    top: 46px;
  }

  .rse-sticky-cta {
    width: calc(100% - 20px);
    grid-template-columns: minmax(0, 1fr) auto;
    border-radius: 24px;
    padding: 10px 10px 10px 14px;
    gap: 10px;
  }

  .rse-sticky-cta__meta {
    display: none;
  }

  .rse-sticky-cta__copy strong {
    font-size: 16px;
  }

  .rse-sticky-cta__button {
    min-width: 96px;
    min-height: 50px;
  }
}

@media (max-width: 390px) {
  .rse-sticky-cta__copy span:not(.rse-sticky-cta__label) {
    max-width: 180px;
  }

  .rse-sticky-cta__button {
    min-width: 82px;
    letter-spacing: .08em;
  }
}

/* Slice 5: homepage conversion section polish */
.rse-section-heading--wide {
  max-width: 920px;
}

.rse-routine-grid {
  align-items: stretch;
}

.rse-routine-card__visual {
  min-height: 148px;
  margin: 22px 0 4px;
  border-radius: 26px;
  border: 1px solid var(--rse-line);
  background:
    radial-gradient(circle at 78% 22%, rgba(214,184,106,.34), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,.78), rgba(250,248,239,.9));
  display: flex;
  align-items: end;
  justify-content: center;
  gap: 12px;
  padding: 18px;
  overflow: hidden;
}

.rse-routine-card--featured .rse-routine-card__visual {
  border-color: rgba(255,255,255,.2);
  background:
    radial-gradient(circle at 76% 20%, rgba(214,184,106,.48), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.06));
}

.rse-routine-card__visual span {
  display: block;
  width: 52px;
  height: 110px;
  border-radius: 30px 30px 16px 16px;
  background: linear-gradient(180deg, var(--rse-olive), var(--rse-olive-dark));
  box-shadow: 0 16px 34px rgba(39,37,31,.14);
}

.rse-routine-card__visual span:nth-child(2) {
  height: 86px;
  width: 44px;
  border-radius: 22px 22px 14px 14px;
  background: linear-gradient(180deg, #fff, #ebe4cf);
}

.rse-routine-card__visual span:nth-child(3) {
  height: 70px;
  width: 70px;
  border-radius: 50%;
  background: linear-gradient(180deg, var(--rse-gold), #f3e6bb);
}

.rse-routine-card__visual--deep span:first-child {
  background: linear-gradient(180deg, #6f7f22, #313916);
}

.rse-check-list {
  list-style: none;
  margin: 0 0 24px;
  padding: 0;
  display: grid;
  gap: 10px;
}

.rse-check-list li {
  color: var(--rse-muted);
  line-height: 1.35;
  display: grid;
  grid-template-columns: 18px 1fr;
  gap: 9px;
  align-items: start;
  font-size: 14px;
}

.rse-check-list li::before {
  content: '✓';
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: rgba(137,155,42,.14);
  color: var(--rse-olive-dark);
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 900;
}

.rse-routine-card--featured .rse-check-list li {
  color: rgba(255,255,255,.78);
}

.rse-routine-card--featured .rse-check-list li::before {
  background: rgba(214,184,106,.22);
  color: var(--rse-gold);
}

.rse-section--goals {
  background:
    radial-gradient(circle at 10% 10%, rgba(137,155,42,.1), transparent 28%),
    var(--rse-soft-white);
}

.rse-goal-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.rse-goal-card {
  min-height: 290px;
  padding: 24px;
  border-radius: var(--rse-radius);
  border: 1px solid var(--rse-line);
  background: rgba(255,255,255,.76);
  box-shadow: 0 18px 46px rgba(39,37,31,.06);
  display: flex;
  flex-direction: column;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.rse-goal-card:hover,
.rse-goal-card:focus-within {
  transform: translateY(-4px);
  box-shadow: 0 24px 70px rgba(39,37,31,.1);
  border-color: rgba(137,155,42,.3);
}

.rse-goal-card__icon {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, var(--rse-gold) 0 20%, transparent 22% 100%),
    rgba(137,155,42,.12);
  margin-bottom: 24px;
}

.rse-goal-card h3,
.rse-standard-card h3 {
  font-family: var(--rse-serif);
  font-size: 30px;
  line-height: 1;
  font-weight: 500;
  margin: 0 0 12px;
}

.rse-goal-card p,
.rse-standard-card p,
.rse-card-note {
  color: var(--rse-muted);
  line-height: 1.55;
}

.rse-goal-card a {
  margin-top: auto;
  text-decoration: none;
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 11px;
  font-weight: 900;
}

.rse-split--ritual {
  align-items: stretch;
}

.rse-ritual-flow {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 26px 0;
}

.rse-ritual-flow span {
  display: block;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid var(--rse-line);
  background: rgba(255,255,255,.72);
  color: var(--rse-muted);
  font-weight: 750;
}

.rse-outcome-card--enhanced {
  position: relative;
  overflow: hidden;
}

.rse-outcome-card--enhanced::before {
  content: '';
  position: absolute;
  right: -80px;
  top: -80px;
  width: 190px;
  height: 190px;
  border-radius: 50%;
  background: rgba(214,184,106,.18);
}

.rse-outcome-card__badge {
  display: inline-flex;
  margin-bottom: 18px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(137,155,42,.12);
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 10px;
  font-weight: 900;
}

.rse-card-note {
  margin: 22px 0 0;
  font-size: 14px;
}

.rse-ingredient-tags,
.rse-offer-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.rse-ingredient-tags span,
.rse-offer-badges span {
  border-radius: 999px;
  padding: 10px 13px;
  border: 1px solid var(--rse-line);
  background: rgba(250,248,239,.72);
  color: var(--rse-muted);
  font-size: 13px;
  font-weight: 750;
}

.rse-section--standards {
  background: var(--rse-ink);
  color: #fff;
  position: relative;
  overflow: hidden;
}

.rse-section--standards::before {
  content: '';
  position: absolute;
  inset: -20% -10% auto auto;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: rgba(137,155,42,.18);
  filter: blur(4px);
}

.rse-section--standards .rse-container {
  position: relative;
  z-index: 1;
}

.rse-section--standards h2,
.rse-section--standards .rse-kicker {
  color: #fff;
}

.rse-section--standards .rse-section-heading p {
  color: rgba(255,255,255,.7);
}

.rse-standards-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.rse-standard-card {
  min-height: 270px;
  padding: 24px;
  border-radius: var(--rse-radius);
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  box-shadow: 0 24px 70px rgba(0,0,0,.18);
}

.rse-standard-card span {
  display: inline-flex;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: rgba(214,184,106,.18);
  color: var(--rse-gold);
  font-weight: 900;
  margin-bottom: 32px;
}

.rse-standard-card h3 {
  color: #fff;
}

.rse-standard-card p {
  color: rgba(255,255,255,.68);
}

.rse-offer-badges {
  justify-content: center;
  margin-bottom: 26px;
}

.rse-offer-badges span {
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.18);
  color: rgba(255,255,255,.78);
}

@media (max-width: 1050px) {
  .rse-goal-grid,
  .rse-standards-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .rse-goal-grid,
  .rse-standards-grid {
    grid-template-columns: 1fr;
  }

  .rse-goal-card,
  .rse-standard-card {
    min-height: auto;
  }

  .rse-routine-card__visual {
    min-height: 132px;
  }
}

@media (max-width: 600px) {
  .rse-ritual-flow {
    grid-template-columns: 1fr;
  }

  .rse-goal-card h3,
  .rse-standard-card h3 {
    font-size: 28px;
  }
}

/* Slice 6: WooCommerce product page takeover foundation */
.rse-product-main {
  background:
    radial-gradient(circle at 12% 10%, rgba(214,184,106,.15), transparent 26%),
    linear-gradient(180deg, var(--rse-soft-white), var(--rse-cream));
}

.rse-wc-notices {
  padding-top: 22px;
}

.rse-product-hero {
  padding: clamp(34px, 6vw, 86px) 0 clamp(46px, 7vw, 110px);
}

.rse-product-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(360px, .8fr);
  gap: clamp(28px, 6vw, 86px);
  align-items: start;
}

.rse-product-hero__media {
  position: sticky;
  top: 190px;
}

.rse-product-gallery__main {
  position: relative;
  min-height: clamp(420px, 55vw, 680px);
  display: grid;
  place-items: center;
  border: 1px solid var(--rse-line);
  border-radius: 42px;
  background:
    radial-gradient(circle at 50% 34%, rgba(214,184,106,.2), transparent 36%),
    linear-gradient(145deg, #fffdf7, #f4f0df);
  box-shadow: var(--rse-shadow);
  overflow: hidden;
}

.rse-product-gallery__image {
  max-width: 88%;
  max-height: 620px;
  width: auto;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 28px 42px rgba(39,37,31,.14));
}

.rse-product-gallery__badge {
  position: absolute;
  left: 24px;
  top: 24px;
  display: inline-flex;
  border-radius: 999px;
  padding: 10px 14px;
  background: rgba(255,255,255,.82);
  border: 1px solid var(--rse-line);
  color: var(--rse-olive-dark);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.rse-product-gallery__rail {
  display: flex;
  gap: 12px;
  margin-top: 16px;
  overflow-x: auto;
  padding: 4px 2px 8px;
}

.rse-product-gallery__rail span,
.rse-product-gallery__thumb {
  flex: 0 0 86px;
  height: 76px;
  border-radius: 18px;
  border: 1px solid var(--rse-line);
  background: rgba(255,255,255,.72);
  display: grid;
  place-items: center;
  color: var(--rse-muted);
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  overflow: hidden;
}

.rse-product-gallery__thumb.is-active {
  border-color: rgba(94,111,29,.55);
  box-shadow: 0 0 0 3px rgba(137,155,42,.14);
}

.rse-product-gallery__thumb img {
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
}

.rse-product-fallback {
  position: relative;
  width: min(440px, 82vw);
  min-height: 430px;
  display: grid;
  place-items: center;
}

.rse-product-fallback__sun {
  position: absolute;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(214,184,106,.58), rgba(214,184,106,.14) 58%, transparent 60%);
}

.rse-product-fallback__bottle,
.rse-product-fallback__jar {
  position: absolute;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg, #fbfaf4, #e9e1c9);
  border: 1px solid rgba(94,111,29,.2);
  box-shadow: 0 35px 72px rgba(39,37,31,.2);
  color: var(--rse-olive-dark);
  font-family: var(--rse-serif);
}

.rse-product-fallback__bottle {
  width: 150px;
  height: 300px;
  border-radius: 46px 46px 34px 34px;
  z-index: 2;
}

.rse-product-fallback__jar {
  width: 150px;
  height: 120px;
  border-radius: 40px;
  transform: translate(118px, 100px);
  z-index: 3;
}

.rse-product-fallback__bottle span,
.rse-product-fallback__jar span {
  transform: rotate(-90deg);
  font-size: 30px;
}

.rse-product-badges,
.rse-product-promise-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.rse-product-badges span,
.rse-product-promise-row span {
  border: 1px solid var(--rse-line);
  background: rgba(255,255,255,.74);
  border-radius: 999px;
  padding: 10px 13px;
  color: var(--rse-olive-dark);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.rse-product-rating {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin: 22px 0 10px;
  color: var(--rse-gold);
  font-weight: 900;
}

.rse-product-rating em {
  color: var(--rse-muted);
  font-style: normal;
  font-size: 13px;
  font-weight: 700;
}

.rse-product-hero__content h1 {
  margin: 0 0 20px;
  font-family: var(--rse-serif);
  font-size: clamp(48px, 7vw, 92px);
  line-height: .92;
  letter-spacing: -.06em;
  color: var(--rse-ink);
}

.rse-product-summary-copy {
  color: var(--rse-muted);
  font-size: 18px;
  line-height: 1.7;
}

.rse-product-price-wrap {
  margin: 26px 0;
  padding: 22px 0;
  border-top: 1px solid var(--rse-line);
  border-bottom: 1px solid var(--rse-line);
}

.rse-product-price-label {
  display: block;
  margin-bottom: 6px;
  color: var(--rse-muted);
  font-size: 12px;
  letter-spacing: .16em;
  font-weight: 850;
  text-transform: uppercase;
}

.rse-product-price,
.rse-product-price .amount {
  color: var(--rse-olive-dark);
  font-family: var(--rse-serif);
  font-size: clamp(34px, 5vw, 52px);
  line-height: 1;
}

.rse-product-buy-card {
  border: 1px solid var(--rse-line);
  border-radius: 32px;
  background: rgba(255,255,255,.82);
  box-shadow: var(--rse-shadow);
  padding: clamp(20px, 4vw, 32px);
}

.rse-product-buy-card__top {
  display: grid;
  gap: 6px;
  margin-bottom: 20px;
}

.rse-product-buy-card__top strong {
  font-family: var(--rse-serif);
  font-size: 28px;
  color: var(--rse-ink);
}

.rse-product-buy-card__top span {
  color: var(--rse-muted);
  line-height: 1.5;
}

.rse-product-add-to-cart form.cart {
  display: grid;
  gap: 14px;
}

.rse-product-add-to-cart .quantity {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--rse-line);
  border-radius: 999px;
  overflow: hidden;
  background: var(--rse-soft-white);
  width: fit-content;
}

.rse-product-add-to-cart .qty {
  width: 82px;
  min-height: 54px;
  border: none;
  text-align: center;
  background: transparent;
  color: var(--rse-ink);
  font-weight: 800;
}

.rse-product-add-to-cart .single_add_to_cart_button,
.rse-product-add-to-cart button.button,
.rse-product-add-to-cart .button {
  min-height: 58px;
  border: none;
  border-radius: 999px;
  padding: 17px 26px;
  background: var(--rse-olive-dark);
  color: #fff;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
  cursor: pointer;
  text-decoration: none;
}

.rse-product-add-to-cart table.variations {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 14px;
}

.rse-product-add-to-cart table.variations th,
.rse-product-add-to-cart table.variations td {
  display: block;
  text-align: left;
  padding: 0 0 10px;
}

.rse-product-add-to-cart table.variations label {
  font-weight: 850;
  color: var(--rse-ink);
}

.rse-product-add-to-cart select {
  width: 100%;
  min-height: 54px;
  border: 1px solid var(--rse-line);
  border-radius: 18px;
  padding: 0 16px;
  background: var(--rse-soft-white);
  color: var(--rse-ink);
}

.rse-product-promise-row {
  margin-top: 20px;
}

.rse-product-promise-row span {
  color: var(--rse-muted);
  background: rgba(250,248,239,.74);
}

.rse-product-proof-section {
  padding-top: 0;
}

.rse-product-proof-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.rse-product-proof-grid article,
.rse-product-content-card {
  border: 1px solid var(--rse-line);
  border-radius: 30px;
  background: rgba(255,255,255,.76);
  padding: 28px;
  box-shadow: 0 24px 70px rgba(39,37,31,.08);
}

.rse-product-proof-grid span {
  display: inline-flex;
  margin-bottom: 24px;
  color: var(--rse-olive-dark);
  font-weight: 900;
  letter-spacing: .16em;
}

.rse-product-proof-grid h2 {
  margin: 0 0 10px;
  font-family: var(--rse-serif);
  font-size: 32px;
  line-height: 1;
  letter-spacing: -.04em;
}

.rse-product-proof-grid p,
.rse-product-detail-grid p,
.rse-product-content-card {
  color: var(--rse-muted);
  line-height: 1.65;
}

.rse-product-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(360px, 1fr);
  gap: clamp(24px, 5vw, 70px);
  align-items: start;
}

.rse-product-detail-grid h2 {
  font-family: var(--rse-serif);
  font-size: clamp(42px, 6vw, 72px);
  line-height: .96;
  letter-spacing: -.05em;
  margin: 0 0 18px;
}

.rse-product-content-card h2,
.rse-product-content-card h3 {
  color: var(--rse-ink);
  font-family: var(--rse-serif);
}

.rse-sticky-cta--product .rse-sticky-cta__copy span:last-child,
.rse-sticky-cta--product .rse-sticky-cta__copy .amount {
  color: rgba(255,255,255,.86);
}

@media (max-width: 980px) {
  .rse-product-hero__grid,
  .rse-product-detail-grid,
  .rse-product-proof-grid {
    grid-template-columns: 1fr;
  }

  .rse-product-hero__media {
    position: static;
  }
}

@media (max-width: 640px) {
  .rse-product-hero {
    padding-top: 24px;
  }

  .rse-product-gallery__main {
    min-height: 380px;
    border-radius: 30px;
  }

  .rse-product-hero__content h1 {
    font-size: 48px;
  }

  .rse-product-buy-card {
    border-radius: 26px;
  }

  .rse-product-add-to-cart .single_add_to_cart_button,
  .rse-product-add-to-cart button.button,
  .rse-product-add-to-cart .button {
    width: 100%;
  }

  .rse-product-gallery__rail {
    padding-bottom: 10px;
  }

  .rse-product-proof-grid h2 {
    font-size: 28px;
  }
}

/* Slice 7: product gallery carousel and sales media */
.rse-product-gallery--story .rse-product-gallery__main {
  isolation: isolate;
}

.rse-product-gallery__stage {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  opacity: 0;
  transform: translateX(18px) scale(.985);
  pointer-events: none;
  transition: opacity .28s ease, transform .28s ease;
}

.rse-product-gallery__stage.is-active {
  opacity: 1;
  transform: translateX(0) scale(1);
  pointer-events: auto;
  z-index: 2;
}

.rse-product-gallery__stage .rse-product-gallery__image {
  position: relative;
  z-index: 2;
}

.rse-product-gallery__counter {
  position: absolute;
  right: 22px;
  bottom: 22px;
  z-index: 5;
  min-width: 62px;
  min-height: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.82);
  border: 1px solid var(--rse-line);
  color: var(--rse-muted);
  font-size: 12px;
  font-weight: 850;
}

.rse-product-gallery__thumb-label {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  padding: 10px;
  text-align: center;
  background:
    radial-gradient(circle at 76% 18%, rgba(214,184,106,.24), transparent 34%),
    linear-gradient(145deg, #fffdf7, #f4f0df);
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 10px;
  line-height: 1.15;
}

.rse-product-gallery__mobile-hint {
  display: none;
  margin-top: 10px;
  color: var(--rse-muted);
  font-size: 12px;
  text-align: center;
}

.rse-product-media-slide {
  position: relative;
  width: min(86%, 520px);
  min-height: min(500px, 70vw);
  border-radius: 38px;
  border: 1px solid rgba(94,111,29,.18);
  background:
    radial-gradient(circle at 78% 14%, rgba(214,184,106,.26), transparent 32%),
    linear-gradient(155deg, rgba(255,255,255,.92), rgba(250,248,239,.82));
  box-shadow: 0 28px 80px rgba(39,37,31,.12);
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 160px;
  align-items: end;
  gap: 22px;
  padding: clamp(24px, 4vw, 42px);
}

.rse-product-media-slide--offer {
  background:
    radial-gradient(circle at 80% 16%, rgba(214,184,106,.3), transparent 34%),
    linear-gradient(155deg, var(--rse-olive-dark), var(--rse-olive));
  color: #fff;
}

.rse-product-media-slide__glow {
  position: absolute;
  inset: auto auto -100px -80px;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: rgba(137,155,42,.12);
}

.rse-product-media-slide__content {
  position: relative;
  z-index: 2;
  align-self: center;
}

.rse-product-media-slide__meta {
  display: inline-flex;
  margin-bottom: 18px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(137,155,42,.13);
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 10px;
  font-weight: 900;
}

.rse-product-media-slide--offer .rse-product-media-slide__meta {
  background: rgba(255,255,255,.12);
  color: var(--rse-gold);
}

.rse-product-media-slide h3 {
  margin: 0 0 14px;
  font-family: var(--rse-serif);
  font-size: clamp(34px, 5vw, 54px);
  line-height: .94;
  letter-spacing: -.055em;
  color: var(--rse-ink);
}

.rse-product-media-slide--offer h3 {
  color: #fff;
}

.rse-product-media-slide p {
  margin: 0;
  color: var(--rse-muted);
  line-height: 1.6;
  font-size: 16px;
}

.rse-product-media-slide--offer p {
  color: rgba(255,255,255,.74);
}

.rse-product-media-slide__pack {
  position: relative;
  z-index: 2;
  justify-self: end;
  width: 128px;
  height: 276px;
  border-radius: 54px 54px 28px 28px;
  background: linear-gradient(180deg, #fffdf7, #e6dfc7);
  box-shadow: 0 26px 60px rgba(39,37,31,.18);
  display: grid;
  place-items: center;
  color: var(--rse-olive-dark);
  border: 1px solid rgba(94,111,29,.18);
}

.rse-product-media-slide__pack span {
  font-family: var(--rse-serif);
  font-size: 26px;
  letter-spacing: -.05em;
  transform: rotate(-90deg);
  white-space: nowrap;
}

.rse-product-sales-section {
  padding-top: 0;
  background: linear-gradient(180deg, var(--rse-cream), var(--rse-soft-white));
}

.rse-product-sales-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.rse-product-sales-strip article {
  min-height: 260px;
  padding: 24px;
  border-radius: var(--rse-radius);
  border: 1px solid var(--rse-line);
  background: rgba(255,255,255,.75);
  box-shadow: 0 18px 50px rgba(39,37,31,.07);
}

.rse-product-sales-strip span {
  display: inline-flex;
  margin-bottom: 28px;
  color: var(--rse-olive-dark);
  font-weight: 950;
  letter-spacing: .16em;
}

.rse-product-sales-strip h3 {
  margin: 0 0 12px;
  font-family: var(--rse-serif);
  font-size: 30px;
  line-height: 1;
  letter-spacing: -.04em;
  font-weight: 500;
}

.rse-product-sales-strip p {
  margin: 0;
  color: var(--rse-muted);
  line-height: 1.55;
}

@media (max-width: 1050px) {
  .rse-product-sales-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .rse-product-media-slide {
    width: min(90%, 520px);
    grid-template-columns: 1fr;
    align-items: stretch;
    min-height: 390px;
  }

  .rse-product-media-slide__pack {
    width: 92px;
    height: 162px;
    justify-self: start;
    position: absolute;
    right: 22px;
    bottom: 22px;
    opacity: .9;
  }

  .rse-product-media-slide__pack span {
    font-size: 20px;
  }

  .rse-product-gallery__mobile-hint {
    display: block;
  }

  .rse-product-sales-strip {
    grid-template-columns: 1fr;
  }

  .rse-product-sales-strip article {
    min-height: auto;
  }
}

@media (max-width: 480px) {
  .rse-product-media-slide {
    width: 94%;
    border-radius: 28px;
    min-height: 360px;
    padding: 24px;
  }

  .rse-product-media-slide h3 {
    font-size: 34px;
  }

  .rse-product-gallery__counter {
    right: 16px;
    bottom: 16px;
  }
}

.rse-sticky-cta--product .rse-sticky-cta__copy span:last-child,
.rse-sticky-cta--product .rse-sticky-cta__copy .amount {
  color: var(--rse-muted);
}

/* Slice 8/9: deeper product accordions + sticky add-to-bag integration */
.rse-product-accordion-card .rse-accordion-panel {
  line-height: 1.65;
}

.rse-product-accordion-card .rse-accordion-panel p {
  margin: 0 0 14px;
}

.rse-product-accordion-card ul,
.rse-product-accordion-card ol {
  margin: 12px 0 0;
  padding-left: 20px;
  color: var(--rse-muted);
}

.rse-product-accordion-card li + li {
  margin-top: 8px;
}

.rse-product-detail-note {
  margin-top: 24px;
  border: 1px solid rgba(137,155,42,.22);
  border-radius: 24px;
  background: rgba(255,253,247,.76);
  padding: 18px;
}

.rse-product-detail-note span {
  display: inline-flex;
  margin-bottom: 8px;
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 11px;
  font-weight: 900;
}

.rse-product-detail-note p {
  margin: 0;
}

.rse-product-attribute-list strong {
  color: var(--rse-ink);
}

.rse-product-ingredient-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.rse-product-ingredient-tags span {
  display: inline-flex;
  border: 1px solid rgba(137,155,42,.25);
  border-radius: 999px;
  background: rgba(137,155,42,.08);
  color: var(--rse-olive-dark);
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 850;
}

.rse-claim-note {
  border-left: 3px solid var(--rse-gold);
  padding-left: 14px;
  color: var(--rse-ink) !important;
}

.rse-sticky-cta--bag {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.rse-sticky-cta--bag .rse-sticky-cta__meta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  border-radius: 999px;
  padding: 6px 10px;
  background: #fff;
  border: 1px solid var(--rse-line);
  color: var(--rse-olive-dark);
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
  white-space: nowrap;
}

.rse-sticky-cart-form {
  position: relative;
  display: inline-grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 8px;
}

.rse-sticky-qty {
  display: inline-flex;
  align-items: center;
  min-height: 50px;
  border: 1px solid var(--rse-line);
  border-radius: 999px;
  background: #fff;
  overflow: hidden;
}

.rse-sticky-qty button {
  width: 34px;
  min-height: 48px;
  border: none;
  background: transparent;
  color: var(--rse-olive-dark);
  font-size: 18px;
  font-weight: 900;
  cursor: pointer;
}

.rse-sticky-qty input.qty {
  width: 38px;
  min-height: 48px;
  border: none;
  background: transparent;
  color: var(--rse-ink);
  font-weight: 900;
  text-align: center;
  appearance: textfield;
  -moz-appearance: textfield;
}

.rse-sticky-qty input.qty::-webkit-outer-spin-button,
.rse-sticky-qty input.qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.rse-sticky-cart-form__button {
  border: none;
  cursor: pointer;
}

.rse-sticky-cart-form__button[disabled] {
  opacity: .78;
  cursor: wait;
}

.rse-sticky-cart-form__status {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: -18px;
  color: var(--rse-olive-dark);
  font-size: 10px;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .1em;
  white-space: nowrap;
}

.rse-sticky-cart-form__status.is-error {
  color: #9d2c1f;
}

.rse-sticky-cta--bag.is-added {
  border-color: rgba(137,155,42,.58);
  box-shadow: 0 28px 90px rgba(94,111,29,.28);
}

.rse-sticky-cta--bag .rse-sticky-cta__copy span:last-child,
.rse-sticky-cta--bag .rse-sticky-cta__copy .amount {
  color: var(--rse-muted);
}

@media (max-width: 760px) {
  .rse-sticky-cta--bag {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  .rse-sticky-cta--bag .rse-sticky-cta__meta {
    display: none;
  }

  .rse-sticky-cart-form {
    grid-template-columns: auto;
  }

  .rse-sticky-qty {
    display: none;
  }

  .rse-sticky-cart-form__status {
    bottom: -16px;
    left: auto;
    right: 4px;
    text-align: right;
  }
}

@media (max-width: 390px) {
  .rse-sticky-cta--bag .rse-sticky-cta__copy strong {
    max-width: 180px;
  }
}

/* Slice 10: Cart drawer foundation */
.rse-cart-drawer {
  position: fixed;
  inset: 0;
  z-index: 99998;
  pointer-events: none;
  visibility: hidden;
}

.rse-cart-drawer.is-open {
  pointer-events: auto;
  visibility: visible;
}

.rse-cart-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(18, 18, 14, 0.48);
  opacity: 0;
  transition: opacity 240ms ease;
  backdrop-filter: blur(5px);
}

.rse-cart-drawer.is-open .rse-cart-drawer__backdrop {
  opacity: 1;
}

.rse-cart-drawer__panel {
  position: absolute;
  top: 0;
  right: 0;
  width: min(430px, 100%);
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr auto;
  background:
    radial-gradient(circle at top left, rgba(214, 184, 106, 0.16), transparent 34%),
    linear-gradient(180deg, var(--rse-soft-white, #fffdf7), var(--rse-cream, #faf8ef));
  color: var(--rse-ink, #27251f);
  box-shadow: -28px 0 80px rgba(20, 20, 14, 0.24);
  transform: translateX(104%);
  transition: transform 280ms cubic-bezier(.2,.8,.2,1);
  overflow: hidden;
}

.rse-cart-drawer.is-open .rse-cart-drawer__panel {
  transform: translateX(0);
}

.rse-cart-drawer__header,
.rse-cart-drawer__footer {
  padding: 20px;
  border-color: rgba(39, 37, 31, 0.11);
}

.rse-cart-drawer__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid rgba(39, 37, 31, 0.11);
}

.rse-cart-drawer__eyebrow {
  display: block;
  margin-bottom: 4px;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--rse-olive-dark, #5e6f1d);
  font-weight: 800;
}

.rse-cart-drawer__header h2 {
  margin: 0;
  font-size: clamp(23px, 4vw, 31px);
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.rse-cart-drawer__close {
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(39, 37, 31, 0.14);
  background: rgba(255, 255, 255, 0.64);
  color: var(--rse-ink, #27251f);
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.rse-cart-drawer__body {
  padding: 18px 20px 22px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.rse-cart-progress {
  padding: 14px;
  border-radius: 20px;
  background: rgba(255,255,255,0.74);
  border: 1px solid rgba(137, 155, 42, 0.18);
  box-shadow: 0 18px 44px rgba(61, 64, 34, 0.08);
  margin-bottom: 16px;
}

.rse-cart-progress__copy strong,
.rse-cart-progress__copy span {
  display: block;
}

.rse-cart-progress__copy strong {
  font-size: 14px;
  letter-spacing: -0.02em;
}

.rse-cart-progress__copy span {
  margin-top: 3px;
  font-size: 12px;
  color: var(--rse-muted, #6f6a5c);
  line-height: 1.35;
}

.rse-cart-progress__track {
  margin-top: 12px;
  height: 9px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(39,37,31,0.1);
}

.rse-cart-progress__track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--rse-olive, #899b2a), var(--rse-gold, #d6b86a));
  transition: width 220ms ease;
}

.rse-cart-drawer__items {
  display: grid;
  gap: 12px;
}

.rse-cart-item {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  padding: 12px;
  border-radius: 22px;
  background: rgba(255,255,255,0.7);
  border: 1px solid rgba(39,37,31,0.1);
}

.rse-cart-item__image {
  display: grid;
  place-items: center;
  width: 78px;
  height: 78px;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(145deg, #fff, #f3efdf);
  border: 1px solid rgba(39,37,31,0.09);
}

.rse-cart-item__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.rse-cart-item__content {
  min-width: 0;
}

.rse-cart-item__name {
  display: block;
  color: var(--rse-ink, #27251f);
  text-decoration: none;
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -0.025em;
}

.rse-cart-item__meta,
.rse-cart-item__variation {
  display: block;
  margin-top: 4px;
  color: var(--rse-muted, #6f6a5c);
  font-size: 12px;
  line-height: 1.35;
}

.rse-cart-item__variation dl,
.rse-cart-item__variation p {
  margin: 0;
}

.rse-cart-item__remove {
  display: inline-block;
  margin-top: 8px;
  font-size: 12px;
  color: var(--rse-olive-dark, #5e6f1d);
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 700;
}

.rse-cart-offer-note {
  margin-top: 14px;
  padding: 13px 14px;
  border-radius: 18px;
  background: rgba(137, 155, 42, 0.09);
  border: 1px solid rgba(137, 155, 42, 0.17);
}

.rse-cart-offer-note span {
  display: block;
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--rse-olive-dark, #5e6f1d);
  font-weight: 900;
}

.rse-cart-offer-note p {
  margin: 5px 0 0;
  font-size: 13px;
  color: var(--rse-muted, #6f6a5c);
}

.rse-cart-empty {
  min-height: 52vh;
  display: grid;
  align-content: center;
  justify-items: center;
  text-align: center;
  padding: 32px 8px;
}

.rse-cart-empty__sun {
  width: 76px;
  height: 76px;
  border-radius: 999px;
  margin-bottom: 18px;
  background:
    radial-gradient(circle, var(--rse-gold, #d6b86a) 0 35%, transparent 37%),
    conic-gradient(from 0deg, transparent 0 10deg, rgba(137,155,42,.55) 10deg 20deg, transparent 20deg 40deg);
  box-shadow: 0 18px 40px rgba(137,155,42,.16);
}

.rse-cart-empty h3 {
  margin: 0;
  font-size: 29px;
  letter-spacing: -0.045em;
}

.rse-cart-empty p {
  margin: 8px 0 20px;
  max-width: 300px;
  color: var(--rse-muted, #6f6a5c);
}

.rse-cart-drawer__footer {
  border-top: 1px solid rgba(39,37,31,0.11);
  background: rgba(255,253,247,0.82);
  backdrop-filter: blur(12px);
  padding-bottom: calc(18px + env(safe-area-inset-bottom));
}

.rse-cart-total-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 12px;
}

.rse-cart-total-row span {
  color: var(--rse-muted, #6f6a5c);
  font-size: 13px;
}

.rse-cart-total-row strong {
  font-size: 22px;
  letter-spacing: -0.04em;
}

.rse-cart-drawer__actions {
  display: grid;
  grid-template-columns: 1fr 0.62fr;
  gap: 10px;
  margin-bottom: 12px;
}

.rse-cart-drawer__actions .rse-button {
  width: 100%;
  justify-content: center;
  padding-left: 14px;
  padding-right: 14px;
}

.rse-cart-trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.rse-cart-trust-row span {
  padding: 7px 9px;
  border-radius: 999px;
  background: rgba(39,37,31,0.06);
  color: var(--rse-muted, #6f6a5c);
  font-size: 11px;
  font-weight: 700;
}

.rse-cart-drawer-open {
  overflow: hidden;
}

.rse-cart-drawer-open .rse-sticky-cta {
  transform: translateY(120%);
}

@media (max-width: 520px) {
  .rse-cart-drawer__panel {
    width: 100%;
  }

  .rse-cart-drawer__header,
  .rse-cart-drawer__footer,
  .rse-cart-drawer__body {
    padding-left: 16px;
    padding-right: 16px;
  }

  .rse-cart-drawer__actions {
    grid-template-columns: 1fr;
  }
}

/* Slice 12: enhanced basket rewards and bundle upsell */
.rse-cart-progress--enhanced {
  position: relative;
  overflow: hidden;
}

.rse-cart-progress--enhanced::before {
  content: '';
  position: absolute;
  inset: -40% auto auto -18%;
  width: 150px;
  height: 150px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(214,184,106,.22), transparent 68%);
  pointer-events: none;
}

.rse-cart-progress__top {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.rse-cart-progress__target {
  min-width: 72px;
  text-align: right;
}

.rse-cart-progress__target span {
  display: block;
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--rse-muted, #6f6a5c);
  font-weight: 800;
}

.rse-cart-progress__target strong {
  display: block;
  margin-top: 3px;
  font-size: 16px;
  letter-spacing: -.04em;
  color: var(--rse-olive-dark, #5e6f1d);
}

.rse-cart-reward-steps {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-top: 12px;
}

.rse-cart-reward-steps span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: 10.5px;
  line-height: 1.2;
  color: var(--rse-muted, #6f6a5c);
  font-weight: 800;
}

.rse-cart-reward-steps i {
  display: block;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  border: 1px solid rgba(39,37,31,.18);
  background: rgba(255,255,255,.8);
  flex: 0 0 auto;
}

.rse-cart-reward-steps span.is-active {
  color: var(--rse-olive-dark, #5e6f1d);
}

.rse-cart-reward-steps span.is-active i {
  background: linear-gradient(135deg, var(--rse-olive, #899b2a), var(--rse-gold, #d6b86a));
  border-color: transparent;
  box-shadow: 0 0 0 3px rgba(137,155,42,.12);
}

.rse-cart-upsell {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin-top: 14px;
  padding: 13px;
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(214,184,106,.19), transparent 36%),
    linear-gradient(145deg, rgba(39,37,31,.96), rgba(61,64,34,.94));
  color: #fffdf7;
  border: 1px solid rgba(214,184,106,.22);
  box-shadow: 0 24px 54px rgba(24,24,16,.14);
}

.rse-cart-upsell__image {
  width: 74px;
  height: 74px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: rgba(255,253,247,.92);
  border: 1px solid rgba(255,253,247,.2);
}

.rse-cart-upsell__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.rse-cart-upsell__content {
  min-width: 0;
}

.rse-cart-upsell__badge {
  display: inline-flex;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(214,184,106,.16);
  color: #f7e7b0;
  font-size: 9.5px;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-weight: 900;
}

.rse-cart-upsell h3 {
  margin: 7px 0 4px;
  color: #fffdf7;
  font-size: 17px;
  line-height: 1.04;
  letter-spacing: -.045em;
}

.rse-cart-upsell p {
  margin: 0 0 8px;
  color: rgba(255,253,247,.74);
  font-size: 12px;
  line-height: 1.35;
}

.rse-cart-upsell__product {
  display: block;
  color: #fffdf7;
  text-decoration: none;
  font-weight: 850;
  font-size: 12.5px;
}

.rse-cart-upsell__price {
  display: block;
  margin-top: 2px;
  color: #f7e7b0;
  font-size: 12px;
  font-weight: 850;
}

.rse-cart-upsell__form {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 2px;
}

.rse-cart-upsell__button {
  appearance: none;
  border: 0;
  border-radius: 999px;
  background: #fffdf7;
  color: var(--rse-ink, #27251f);
  font-weight: 900;
  padding: 11px 15px;
  cursor: pointer;
  box-shadow: 0 12px 26px rgba(0,0,0,.16);
}

.rse-cart-upsell__button:disabled {
  opacity: .7;
  cursor: wait;
}

.rse-cart-upsell__status {
  color: rgba(255,253,247,.78);
  font-size: 12px;
  font-weight: 800;
}

.rse-cart-upsell__status.is-error {
  color: #ffd6d6;
}

@media (max-width: 390px) {
  .rse-cart-progress__top {
    display: block;
  }

  .rse-cart-progress__target {
    margin-top: 10px;
    text-align: left;
  }

  .rse-cart-reward-steps {
    grid-template-columns: 1fr;
  }
}

/* Slice 13: Skin ritual quiz foundation */
.rse-section--quiz {
  background:
    radial-gradient(circle at 8% 12%, rgba(214,184,106,.16), transparent 26%),
    linear-gradient(180deg, var(--rse-soft-white), var(--rse-cream));
}

.rse-quiz-layout {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(360px, 1fr);
  gap: clamp(28px, 6vw, 76px);
  align-items: center;
}

.rse-quiz-intro h2 {
  margin: 0;
  font-family: var(--rse-serif);
  font-size: clamp(42px, 7vw, 78px);
  line-height: .94;
  letter-spacing: -.055em;
  font-weight: 500;
}

.rse-quiz-intro p {
  color: var(--rse-muted);
  line-height: 1.6;
  font-size: clamp(17px, 2vw, 20px);
}

.rse-quiz-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 24px 0 4px;
}

.rse-quiz-benefits span {
  display: inline-flex;
  border-radius: 999px;
  border: 1px solid rgba(137,155,42,.23);
  background: rgba(255,255,255,.72);
  color: var(--rse-olive-dark);
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 850;
}

.rse-quiz-card {
  position: relative;
  min-height: 620px;
  border: 1px solid rgba(137,155,42,.22);
  border-radius: 36px;
  background:
    radial-gradient(circle at 82% 12%, rgba(214,184,106,.18), transparent 32%),
    rgba(255,255,255,.78);
  box-shadow: var(--rse-shadow);
  padding: clamp(22px, 4vw, 34px);
  overflow: hidden;
}

.rse-quiz-card::before {
  content: '';
  position: absolute;
  inset: auto -90px -110px auto;
  width: 240px;
  height: 240px;
  border-radius: 50%;
  background: rgba(137,155,42,.09);
  pointer-events: none;
}

.rse-quiz-card__top {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-bottom: 16px;
}

.rse-quiz-card__eyebrow,
.rse-quiz-card__step {
  display: inline-flex;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 900;
}

.rse-quiz-card__eyebrow {
  background: rgba(137,155,42,.12);
  color: var(--rse-olive-dark);
}

.rse-quiz-card__step {
  background: var(--rse-ink);
  color: #fffdf7;
}

.rse-quiz-progress {
  position: relative;
  z-index: 1;
  height: 8px;
  border-radius: 999px;
  background: rgba(39,37,31,.08);
  overflow: hidden;
  margin-bottom: 26px;
}

.rse-quiz-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--rse-olive), var(--rse-gold));
  transition: width .24s ease;
}

.rse-quiz-panel {
  position: relative;
  z-index: 1;
}

.rse-quiz-panel[hidden] {
  display: none !important;
}

.rse-quiz-panel h3 {
  margin: 0 0 10px;
  font-family: var(--rse-serif);
  font-size: clamp(34px, 5vw, 54px);
  line-height: .96;
  letter-spacing: -.05em;
  font-weight: 500;
}

.rse-quiz-panel p {
  margin: 0 0 22px;
  color: var(--rse-muted);
  line-height: 1.55;
}

.rse-quiz-options {
  display: grid;
  gap: 10px;
}

.rse-quiz-options button {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 74px;
  border-radius: 22px;
  border: 1px solid rgba(39,37,31,.1);
  background: rgba(255,253,247,.82);
  color: var(--rse-ink);
  padding: 16px 18px;
  text-align: left;
  cursor: pointer;
  font: inherit;
  font-weight: 850;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.rse-quiz-options button::after {
  content: '→';
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(137,155,42,.12);
  color: var(--rse-olive-dark);
}

.rse-quiz-options button span {
  display: block;
  grid-column: 1;
  margin-top: 4px;
  color: var(--rse-muted);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 650;
}

.rse-quiz-options button:hover,
.rse-quiz-options button:focus,
.rse-quiz-options button.is-selected {
  transform: translateY(-2px);
  border-color: rgba(137,155,42,.42);
  box-shadow: 0 16px 38px rgba(61,64,34,.1);
  background: #fffdf7;
}

.rse-quiz-options button.is-selected::after {
  content: '✓';
  background: var(--rse-olive-dark);
  color: #fff;
}

.rse-quiz-back {
  appearance: none;
  margin-top: 18px;
  border: 0;
  background: transparent;
  color: var(--rse-olive-dark);
  font: inherit;
  font-size: 12px;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-weight: 900;
  cursor: pointer;
}

.rse-quiz-result__badge {
  display: inline-flex;
  margin-bottom: 16px;
  border-radius: 999px;
  padding: 8px 12px;
  background: rgba(137,155,42,.13);
  color: var(--rse-olive-dark);
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 900;
}

.rse-quiz-result__summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 24px 0;
}

.rse-quiz-result__summary span {
  display: block;
  border-radius: 18px;
  border: 1px solid var(--rse-line);
  background: rgba(250,248,239,.66);
  padding: 12px;
}

.rse-quiz-result__summary strong,
.rse-quiz-result__summary em {
  display: block;
}

.rse-quiz-result__summary strong {
  margin-bottom: 4px;
  color: var(--rse-muted);
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.rse-quiz-result__summary em {
  color: var(--rse-ink);
  font-style: normal;
  font-weight: 850;
  line-height: 1.2;
}

.rse-quiz-result__steps {
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.rse-quiz-result__steps li {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 9px;
  color: var(--rse-muted);
  line-height: 1.4;
}

.rse-quiz-result__steps li::before {
  content: '✓';
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(137,155,42,.13);
  color: var(--rse-olive-dark);
  font-size: 12px;
  font-weight: 900;
}

.rse-quiz-result__actions {
  display: flex;
  gap: 14px;
  align-items: center;
  flex-wrap: wrap;
}

.rse-quiz-result__note {
  margin-top: 20px !important;
  padding: 14px;
  border-radius: 18px;
  background: rgba(137,155,42,.08);
  border: 1px solid rgba(137,155,42,.16);
  font-size: 13px;
}

@media (max-width: 980px) {
  .rse-quiz-layout {
    grid-template-columns: 1fr;
  }

  .rse-quiz-card {
    min-height: 0;
  }
}

@media (max-width: 620px) {
  .rse-quiz-card {
    border-radius: 28px;
    padding: 20px;
  }

  .rse-quiz-card__top {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .rse-quiz-options button {
    grid-template-columns: 1fr 34px;
    min-height: 68px;
    border-radius: 18px;
    padding: 14px;
  }

  .rse-quiz-result__summary {
    grid-template-columns: 1fr;
  }

  .rse-quiz-result__actions .rse-button {
    width: 100%;
  }
}

/* Slice 14: Skin ritual result page */
.rse-quiz-result-main {
  overflow: hidden;
  padding-bottom: 126px;
}

.rse-quiz-result-hero {
  position: relative;
  padding: clamp(52px, 8vw, 112px) 0 clamp(42px, 6vw, 78px);
  background:
    radial-gradient(circle at 84% 20%, rgba(214, 184, 106, .3), transparent 25%),
    radial-gradient(circle at 5% 88%, rgba(137, 155, 42, .16), transparent 30%),
    var(--rse-cream);
  border-bottom: 1px solid var(--rse-line);
}

.rse-quiz-result-hero::before {
  content: '';
  width: min(440px, 46vw);
  aspect-ratio: 1;
  border: 1px solid rgba(94, 111, 29, .18);
  border-radius: 50%;
  position: absolute;
  right: -10vw;
  top: 8%;
  pointer-events: none;
}

.rse-quiz-result-hero__grid {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(310px, .75fr);
  gap: clamp(28px, 6vw, 92px);
  align-items: end;
  position: relative;
}

.rse-quiz-result-hero h1 {
  margin: 12px 0 18px;
  max-width: 760px;
  font-family: var(--rse-serif);
  color: var(--rse-olive-dark);
  letter-spacing: -.055em;
  line-height: .95;
  font-size: clamp(48px, 7vw, 94px);
}

.rse-quiz-result-hero__copy {
  max-width: 720px;
  margin: 0;
  color: var(--rse-muted);
  font-size: clamp(17px, 2vw, 21px);
  line-height: 1.62;
}

.rse-quiz-result-answers {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 30px;
  max-width: 760px;
}

.rse-quiz-result-answers span {
  border: 1px solid var(--rse-line);
  border-radius: 18px;
  padding: 16px;
  background: rgba(255, 253, 247, .72);
  display: grid;
  gap: 7px;
}

.rse-quiz-result-answers strong,
.rse-quiz-result-hero__note > span,
.rse-quiz-product-card__eyebrow,
.rse-quiz-bundle-card__top > span,
.rse-quiz-no-product > span {
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 10px;
  font-weight: 850;
}

.rse-quiz-result-answers em {
  color: var(--rse-ink);
  font-style: normal;
  font-size: 14px;
  font-weight: 700;
}

.rse-quiz-result-hero__note {
  padding: 28px;
  border-radius: var(--rse-radius);
  background: var(--rse-olive-dark);
  color: #fff;
  box-shadow: var(--rse-shadow);
}

.rse-quiz-result-hero__note > span {
  color: #e8e9b1;
}

.rse-quiz-result-hero__note h2 {
  margin: 12px 0;
  font-family: var(--rse-serif);
  letter-spacing: -.04em;
  line-height: 1;
  font-size: clamp(30px, 3.1vw, 46px);
}

.rse-quiz-result-hero__note p {
  margin: 0;
  color: rgba(255,255,255,.8);
  line-height: 1.58;
}

.rse-quiz-result-hero__note a {
  margin-top: 22px;
  display: inline-flex;
  text-decoration: none;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 850;
  letter-spacing: .12em;
  color: #fff;
}

.rse-quiz-result-recommendations {
  padding-top: clamp(54px, 8vw, 108px);
}

.rse-quiz-route-panel__heading {
  max-width: 760px;
  margin-bottom: 28px;
}

.rse-quiz-route-panel__heading h2 {
  margin: 8px 0 12px;
  font-family: var(--rse-serif);
  font-size: clamp(38px, 5vw, 66px);
  letter-spacing: -.05em;
  line-height: .98;
  color: var(--rse-olive-dark);
}

.rse-quiz-route-panel__heading > p:last-child {
  margin: 0;
  color: var(--rse-muted);
  font-size: 17px;
  line-height: 1.65;
}

.rse-quiz-recommendation-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: 22px;
  align-items: stretch;
}

.rse-quiz-recommendation-grid__products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.rse-quiz-product-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--rse-line);
  border-radius: 24px;
  box-shadow: 0 20px 52px rgba(39,37,31,.07);
  display: grid;
  grid-template-rows: auto 1fr;
}

.rse-quiz-product-card__image {
  min-height: 210px;
  background: linear-gradient(145deg, #eef1d7, #f8f5e9);
  display: grid;
  place-items: center;
  overflow: hidden;
}

.rse-quiz-product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  mix-blend-mode: multiply;
}

.rse-quiz-product-card__content {
  padding: 22px;
  display: flex;
  flex-direction: column;
}

.rse-quiz-product-card__content h3 {
  margin: 8px 0 10px;
  font-family: var(--rse-serif);
  font-size: clamp(27px, 2.3vw, 35px);
  line-height: 1;
  letter-spacing: -.045em;
}

.rse-quiz-product-card__content h3 a {
  text-decoration: none;
}

.rse-quiz-product-card__content p {
  margin: 0;
  color: var(--rse-muted);
  line-height: 1.55;
}

.rse-quiz-product-card__footer {
  margin-top: auto;
  padding-top: 22px;
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}

.rse-quiz-product-card__price {
  font-weight: 850;
  color: var(--rse-olive-dark);
}

.rse-quiz-product-card__footer form {
  display: grid;
  justify-items: end;
  gap: 7px;
}

.rse-quiz-product-card__button,
.rse-quiz-bundle-card button,
.rse-quiz-bundle-card a {
  appearance: none;
  border: 0;
  background: var(--rse-olive-dark);
  color: #fff;
  border-radius: 999px;
  padding: 12px 16px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .1em;
  font-weight: 850;
  text-decoration: none;
  cursor: pointer;
  transition: transform .2s ease, opacity .2s ease;
  white-space: nowrap;
}

.rse-quiz-product-card__button:hover,
.rse-quiz-bundle-card button:hover,
.rse-quiz-bundle-card a:hover {
  transform: translateY(-2px);
}

.rse-quiz-product-card__button:disabled,
.rse-quiz-bundle-card button:disabled {
  opacity: .62;
  cursor: wait;
}

.rse-quiz-product-card__status,
.rse-quiz-bundle-card [data-rse-quiz-add-status] {
  display: block;
  min-height: 14px;
  color: var(--rse-muted);
  font-size: 11px;
}

.rse-quiz-bundle-card {
  border-radius: 26px;
  padding: 28px;
  background:
    radial-gradient(circle at 90% 8%, rgba(214,184,106,.36), transparent 25%),
    linear-gradient(145deg, #64771e, #34410d);
  color: #fff;
  box-shadow: var(--rse-shadow);
  display: flex;
  flex-direction: column;
}

.rse-quiz-bundle-card__top {
  display: grid;
  gap: 10px;
}

.rse-quiz-bundle-card__top > span { color: #e4e8ad; }

.rse-quiz-bundle-card__top strong {
  font-family: var(--rse-serif);
  font-size: clamp(31px, 3vw, 44px);
  letter-spacing: -.045em;
  line-height: .97;
}

.rse-quiz-bundle-card > p {
  color: rgba(255,255,255,.78);
  line-height: 1.55;
}

.rse-quiz-bundle-card ul {
  list-style: none;
  padding: 0;
  margin: 8px 0 24px;
  display: grid;
  gap: 10px;
}

.rse-quiz-bundle-card li {
  border-top: 1px solid rgba(255,255,255,.18);
  padding-top: 10px;
  font-weight: 700;
}

.rse-quiz-bundle-card__bottom {
  margin-top: auto;
  display: grid;
  gap: 15px;
}

.rse-quiz-bundle-card__bottom > span {
  font-size: 20px;
  font-weight: 850;
}

.rse-quiz-bundle-card form {
  display: grid;
  gap: 8px;
}

.rse-quiz-bundle-card button,
.rse-quiz-bundle-card a {
  background: #fff;
  color: var(--rse-olive-dark);
  text-align: center;
}

.rse-quiz-bundle-card small {
  display: block;
  margin-top: 22px;
  color: rgba(255,255,255,.65);
  line-height: 1.45;
}

.rse-quiz-result-guidance {
  margin-top: 26px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--rse-line);
}

.rse-quiz-result-guidance > div {
  padding: 22px 22px 8px 0;
}

.rse-quiz-result-guidance > div + div {
  padding-left: 22px;
  border-left: 1px solid var(--rse-line);
}

.rse-quiz-result-guidance span,
.rse-quiz-result-confidence__grid span {
  display: inline-grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border-radius: 50%;
  background: rgba(137,155,42,.16);
  color: var(--rse-olive-dark);
  font-weight: 850;
  font-size: 11px;
}

.rse-quiz-result-guidance strong {
  display: block;
  margin-top: 11px;
}

.rse-quiz-result-guidance p {
  margin: 7px 0 0;
  color: var(--rse-muted);
  line-height: 1.5;
}

.rse-quiz-no-product {
  padding: clamp(30px, 5vw, 56px);
  border: 1px solid var(--rse-line);
  border-radius: var(--rse-radius);
  background: #fff;
  box-shadow: 0 20px 50px rgba(39,37,31,.06);
}

.rse-quiz-no-product h3 {
  max-width: 600px;
  margin: 10px 0;
  font-family: var(--rse-serif);
  font-size: clamp(32px, 4vw, 52px);
  letter-spacing: -.045em;
  line-height: .98;
}

.rse-quiz-no-product p {
  max-width: 630px;
  color: var(--rse-muted);
  line-height: 1.6;
}

.rse-quiz-result-confidence {
  padding-top: 0;
  padding-bottom: clamp(52px, 7vw, 100px);
}

.rse-quiz-result-confidence__grid {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: clamp(25px, 4vw, 48px);
  border-radius: var(--rse-radius);
  background: var(--rse-ink);
  color: #fff;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}

.rse-quiz-result-confidence__grid h2 {
  margin: 15px 0 9px;
  font-family: var(--rse-serif);
  font-size: 30px;
  letter-spacing: -.035em;
  line-height: 1;
}

.rse-quiz-result-confidence__grid p {
  margin: 0;
  color: rgba(255,255,255,.7);
  line-height: 1.55;
}

.rse-sticky-cta--result .rse-sticky-cta__meta {
  display: flex;
}

@media (max-width: 900px) {
  .rse-quiz-result-hero__grid,
  .rse-quiz-recommendation-grid { grid-template-columns: 1fr; }
  .rse-quiz-result-hero__note { max-width: none; }
  .rse-quiz-recommendation-grid__products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .rse-quiz-result-main { padding-bottom: 170px; }
  .rse-quiz-result-hero { padding-top: 44px; }
  .rse-quiz-result-hero__grid { width: min(100% - 24px, 1180px); }
  .rse-quiz-result-answers { grid-template-columns: 1fr; }
  .rse-quiz-result-answers span { padding: 13px 14px; }
  .rse-quiz-result-hero__note { padding: 23px; }
  .rse-quiz-recommendation-grid__products { grid-template-columns: 1fr; }
  .rse-quiz-product-card__image { min-height: 190px; }
  .rse-quiz-product-card__footer { align-items: flex-start; flex-direction: column; }
  .rse-quiz-product-card__footer form { justify-items: start; }
  .rse-quiz-product-card__button { width: 100%; text-align: center; }
  .rse-quiz-bundle-card { padding: 24px; }
  .rse-quiz-result-guidance { grid-template-columns: 1fr; }
  .rse-quiz-result-guidance > div,
  .rse-quiz-result-guidance > div + div { padding: 17px 0; border-left: 0; border-top: 1px solid var(--rse-line); }
  .rse-quiz-result-guidance > div:first-child { border-top: 0; }
  .rse-quiz-result-confidence__grid { width: min(100% - 24px, 1180px); grid-template-columns: 1fr; gap: 10px; }
}

/* Slice 15 — Save my ritual / consent-aware email capture */
.rse-quiz-save {
  appearance: none;
  background: transparent;
  color: var(--rse-olive-dark);
  border: 0;
  border-bottom: 1px solid currentColor;
  padding: 0 0 3px;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
}

.rse-ritual-capture-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(130deg, #f0f3d8 0%, var(--rse-cream) 58%, #fffdf5 100%);
}

.rse-ritual-capture-section::before {
  content: '';
  position: absolute;
  width: 440px;
  height: 440px;
  border-radius: 50%;
  top: -260px;
  right: -120px;
  background: radial-gradient(circle, rgba(214,184,106,.34), rgba(214,184,106,0) 70%);
  pointer-events: none;
}

.rse-ritual-capture-section__grid {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(420px, .8fr);
  align-items: center;
  gap: clamp(32px, 6vw, 88px);
  position: relative;
  z-index: 1;
}

.rse-ritual-capture-section__copy h2 {
  margin: 0;
  font-family: var(--rse-serif);
  font-size: clamp(38px, 5vw, 66px);
  letter-spacing: -.055em;
  line-height: .95;
  color: var(--rse-ink);
}

.rse-ritual-capture-section__copy > p:not(.rse-kicker) {
  max-width: 590px;
  margin: 22px 0 0;
  color: var(--rse-muted);
  font-size: 17px;
  line-height: 1.7;
}

.rse-ritual-capture-section__notes {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 28px;
}

.rse-ritual-capture-section__notes span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 12px;
  border: 1px solid rgba(94,111,29,.2);
  border-radius: 999px;
  background: rgba(255,253,247,.64);
  color: var(--rse-olive-dark);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.rse-ritual-capture-section__form,
.rse-ritual-capture-modal__panel {
  border: 1px solid rgba(39,37,31,.12);
  border-radius: 28px;
  background: rgba(255,253,247,.9);
  box-shadow: 0 28px 70px rgba(39,37,31,.13);
}

.rse-ritual-capture-section__form {
  padding: clamp(24px, 4vw, 38px);
}

.rse-ritual-capture-form {
  display: grid;
  gap: 17px;
}

.rse-ritual-capture-form__honeypot {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

.rse-ritual-capture-form__fields {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 12px;
}

.rse-ritual-capture-form label:not(.rse-ritual-capture-form__consent) {
  display: grid;
  gap: 8px;
  color: var(--rse-ink);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.rse-ritual-capture-form label span em {
  color: var(--rse-muted);
  font-size: 10px;
  font-style: normal;
  font-weight: 650;
}

.rse-ritual-capture-form input[type="text"],
.rse-ritual-capture-form input[type="email"] {
  width: 100%;
  min-height: 52px;
  border: 1px solid var(--rse-line);
  border-radius: 12px;
  background: #fff;
  color: var(--rse-ink);
  font: 500 15px var(--rse-sans);
  padding: 13px 14px;
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}

.rse-ritual-capture-form input[type="text"]:focus,
.rse-ritual-capture-form input[type="email"]:focus {
  border-color: var(--rse-olive);
  box-shadow: 0 0 0 4px rgba(137,155,42,.12);
}

.rse-ritual-capture-form__consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: var(--rse-muted);
  font-size: 13px;
  line-height: 1.45;
  cursor: pointer;
}

.rse-ritual-capture-form__consent input {
  width: 17px;
  height: 17px;
  margin: 1px 0 0;
  accent-color: var(--rse-olive-dark);
  flex: 0 0 auto;
}

.rse-ritual-capture-form__consent small {
  color: var(--rse-muted);
}

.rse-ritual-capture-form__privacy {
  margin: -2px 0 0;
  color: var(--rse-muted);
  font-size: 12px;
  line-height: 1.55;
}

.rse-ritual-capture-form__privacy a {
  color: var(--rse-olive-dark);
  font-weight: 750;
}

.rse-ritual-capture-form__actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.rse-ritual-capture-form__actions .rse-button {
  min-height: 52px;
  border: 0;
  cursor: pointer;
}

.rse-ritual-capture-form__actions .rse-button:disabled {
  opacity: .75;
  cursor: wait;
}

.rse-ritual-capture-form__status {
  color: var(--rse-muted);
  flex: 1 1 170px;
  font-size: 13px;
  line-height: 1.4;
}

.rse-ritual-capture-form__status.is-success { color: #426116; font-weight: 700; }
.rse-ritual-capture-form__status.is-error { color: #a83d32; font-weight: 700; }
.rse-ritual-capture-form.is-saved input,
.rse-ritual-capture-form.is-saved .rse-ritual-capture-form__consent { opacity: .72; }

.rse-ritual-capture-modal[hidden] { display: none; }
.rse-ritual-capture-modal {
  position: fixed;
  z-index: 10040;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
}

.rse-ritual-capture-modal__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(22,25,13,.66);
  backdrop-filter: blur(9px);
  cursor: pointer;
}

.rse-ritual-capture-modal__panel {
  position: relative;
  width: min(100%, 620px);
  max-height: min(760px, calc(100vh - 40px));
  overflow-y: auto;
  padding: clamp(26px, 5vw, 46px);
}

.rse-ritual-capture-modal__panel h2 {
  margin: 8px 38px 0 0;
  font-family: var(--rse-serif);
  font-size: clamp(35px, 6vw, 56px);
  letter-spacing: -.055em;
  line-height: .95;
}

.rse-ritual-capture-modal__panel > p:not(.rse-kicker) {
  margin: 18px 0 26px;
  color: var(--rse-muted);
  font-size: 15px;
  line-height: 1.65;
}

.rse-ritual-capture-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid var(--rse-line);
  background: var(--rse-soft-white);
  color: var(--rse-ink);
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

html.rse-ritual-modal-open,
body.rse-ritual-modal-open { overflow: hidden; }

@media (max-width: 820px) {
  .rse-ritual-capture-section__grid { grid-template-columns: 1fr; gap: 28px; width: min(100% - 24px, 1180px); }
  .rse-ritual-capture-section__copy h2 { font-size: clamp(39px, 12vw, 58px); }
  .rse-ritual-capture-section__form { padding: 22px; border-radius: 22px; }
  .rse-ritual-capture-form__fields { grid-template-columns: 1fr; }
  .rse-ritual-capture-form__actions { align-items: stretch; }
  .rse-ritual-capture-form__actions .rse-button { width: 100%; justify-content: center; }
  .rse-ritual-capture-form__status { flex-basis: 100%; }
  .rse-ritual-capture-modal { align-items: end; padding: 0; }
  .rse-ritual-capture-modal__panel { width: 100%; max-height: min(82vh, 760px); border-radius: 26px 26px 0 0; padding: 30px 22px calc(28px + env(safe-area-inset-bottom)); }
  .rse-ritual-capture-modal__panel h2 { font-size: clamp(38px, 12vw, 52px); }
  .rse-quiz-result__actions { gap: 12px; }
  .rse-quiz-save { width: fit-content; }
}

/* Slice 16 — elegant scratch-to-reveal welcome reward */
.rse-offer-reveal[hidden] { display: none; }
.rse-offer-reveal {
  position: fixed;
  z-index: 10120;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
}
.rse-offer-reveal__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(21, 25, 13, .74);
  backdrop-filter: blur(13px);
  cursor: pointer;
}
.rse-offer-reveal__panel {
  position: relative;
  width: min(100%, 620px);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.45);
  border-radius: 30px;
  background:
    radial-gradient(circle at 88% 10%, rgba(214,184,106,.36), transparent 31%),
    linear-gradient(145deg, #fbf9f0 0%, #f4f0df 100%);
  box-shadow: 0 32px 86px rgba(0,0,0,.32);
  padding: clamp(30px, 5vw, 52px);
  text-align: center;
}
.rse-offer-reveal__sun {
  position: absolute;
  width: 190px;
  height: 190px;
  top: -116px;
  right: -78px;
  border-radius: 50%;
  background: radial-gradient(circle at 38% 36%, rgba(255,255,255,.94) 0 5%, #e4c66d 30%, #bda255 66%, rgba(189,162,85,0) 70%);
  opacity: .72;
  pointer-events: none;
}
.rse-offer-reveal__close {
  position: absolute;
  z-index: 3;
  top: 16px;
  right: 16px;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(39,37,31,.13);
  border-radius: 50%;
  background: rgba(255,253,247,.82);
  color: var(--rse-ink);
  font-size: 27px;
  line-height: 1;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease;
}
.rse-offer-reveal__close:hover { transform: rotate(90deg); background: #fffdf7; }
.rse-offer-reveal__kicker {
  position: relative;
  margin: 0 0 12px;
  color: var(--rse-olive-dark);
  font-family: var(--rse-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.rse-offer-reveal h2 {
  position: relative;
  max-width: 500px;
  margin: 0 auto;
  color: var(--rse-ink);
  font-family: var(--rse-serif);
  font-size: clamp(40px, 6vw, 64px);
  letter-spacing: -.065em;
  line-height: .93;
}
.rse-offer-reveal__copy {
  position: relative;
  max-width: 480px;
  margin: 18px auto 25px;
  color: var(--rse-muted);
  font-size: 15px;
  line-height: 1.62;
}
.rse-offer-reveal__scratch-wrap {
  position: relative;
  min-height: 210px;
  overflow: hidden;
  border: 1px solid rgba(39,37,31,.14);
  border-radius: 22px;
  background: #6f811f;
  box-shadow: inset 0 0 0 7px rgba(255,255,255,.18), 0 18px 28px rgba(74,84,18,.15);
}
.rse-offer-reveal__reward {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 25px;
  background:
    radial-gradient(circle at 80% 17%, rgba(255,255,255,.4) 0 3%, transparent 4%),
    radial-gradient(circle at 11% 82%, rgba(255,255,255,.25) 0 2%, transparent 3%),
    linear-gradient(135deg, #f5e7b6, #dbc06d 45%, #ac943e);
  color: #27300e;
}
.rse-offer-reveal__reward span {
  font-family: var(--rse-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.rse-offer-reveal__reward strong {
  max-width: 390px;
  font-family: var(--rse-serif);
  font-size: clamp(28px, 4vw, 42px);
  letter-spacing: -.05em;
  line-height: .97;
}
.rse-offer-reveal__reward code {
  display: inline-flex;
  border: 1px dashed rgba(39,48,14,.48);
  border-radius: 100px;
  padding: 8px 13px;
  background: rgba(255,255,255,.36);
  color: #26310e;
  font-family: var(--rse-mono);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .1em;
}
.rse-offer-reveal__reward small {
  max-width: 330px;
  color: rgba(39,48,14,.76);
  font-size: 12px;
  line-height: 1.45;
}
.rse-offer-reveal__canvas {
  position: absolute;
  z-index: 1;
  inset: 0;
  width: 100%;
  height: 100%;
  touch-action: none;
  cursor: crosshair;
  transition: opacity .38s ease, visibility .38s ease;
}
.rse-offer-reveal__scratch-button {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 16px;
  transform: translateX(-50%);
  min-height: 38px;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 100px;
  padding: 9px 15px;
  background: rgba(255,253,247,.94);
  color: #40500f;
  font-family: var(--rse-mono);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
  transition: opacity .25s ease, transform .25s ease;
}
.rse-offer-reveal__scratch-button:hover { transform: translateX(-50%) translateY(-2px); }
.rse-offer-reveal__scratch-wrap.is-revealed .rse-offer-reveal__canvas { opacity: 0; visibility: hidden; pointer-events: none; }
.rse-offer-reveal__scratch-wrap.is-revealed .rse-offer-reveal__scratch-button { opacity: 0; pointer-events: none; }
.rse-offer-reveal__actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}
.rse-offer-reveal__actions[hidden] { display: none; }
.rse-offer-reveal__actions .rse-button { min-width: 164px; justify-content: center; }
.rse-offer-reveal__status {
  min-height: 20px;
  margin: 13px auto 0;
  color: #485a13;
  font-size: 13px;
  font-weight: 700;
}
.rse-offer-reveal__status.is-error { color: #a83d32; }
.rse-offer-reveal__fineprint {
  max-width: 460px;
  margin: 16px auto 0;
  color: rgba(39,37,31,.6);
  font-size: 11px;
  line-height: 1.45;
}
html.rse-offer-reveal-open,
body.rse-offer-reveal-open { overflow: hidden; }
@media (max-width: 640px) {
  .rse-offer-reveal { align-items: end; padding: 0; }
  .rse-offer-reveal__panel { width: 100%; max-height: min(88vh, 780px); overflow-y: auto; border-radius: 26px 26px 0 0; padding: 30px 20px calc(26px + env(safe-area-inset-bottom)); }
  .rse-offer-reveal h2 { max-width: 330px; font-size: clamp(38px, 11vw, 53px); }
  .rse-offer-reveal__copy { max-width: 330px; margin-top: 15px; }
  .rse-offer-reveal__scratch-wrap { min-height: 194px; border-radius: 19px; }
  .rse-offer-reveal__reward strong { font-size: 30px; }
  .rse-offer-reveal__actions { display: grid; grid-template-columns: 1fr; }
  .rse-offer-reveal__actions .rse-button { width: 100%; }
}


/* Slice 17 — Reviews and creator-routine video proof */
.rse-section--reviews {
  position: relative;
  overflow: hidden;
  padding: clamp(74px, 10vw, 132px) 0;
  background: #f3f2e8;
}
.rse-section--reviews::before {
  content: "";
  position: absolute;
  width: min(62vw, 860px);
  height: min(62vw, 860px);
  right: -29vw;
  top: -42vw;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(214,184,106,.2), rgba(214,184,106,0) 69%);
  pointer-events: none;
}
.rse-reviews-heading {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 32px;
  align-items: end;
  margin-bottom: 38px;
}
.rse-reviews-heading h2 {
  max-width: 700px;
  margin: 0;
  color: var(--rse-ink);
  font-family: var(--rse-serif);
  font-size: clamp(42px, 6vw, 75px);
  letter-spacing: -.065em;
  line-height: .93;
}
.rse-reviews-heading p:not(.rse-kicker) {
  max-width: 690px;
  margin: 17px 0 0;
  color: var(--rse-muted);
  font-size: 16px;
  line-height: 1.65;
}
.rse-review-summary {
  display: grid;
  min-width: 152px;
  border: 1px solid rgba(39,37,31,.14);
  border-radius: 18px;
  padding: 18px 20px;
  background: rgba(255,253,247,.7);
  text-align: center;
  box-shadow: 0 15px 32px rgba(39,37,31,.06);
}
.rse-review-summary strong {
  color: var(--rse-ink);
  font-family: var(--rse-serif);
  font-size: 42px;
  letter-spacing: -.07em;
  line-height: .9;
}
.rse-review-summary__stars,
.rse-review-card__stars { color: #9aa832; letter-spacing: .08em; }
.rse-review-summary small { margin-top: 6px; color: var(--rse-muted); font-family: var(--rse-mono); font-size: 9px; font-weight: 800; letter-spacing: .09em; line-height: 1.4; text-transform: uppercase; }
.rse-review-rail-wrap { position: relative; z-index: 1; margin-top: 36px; }
.rse-review-rail-wrap--comments { margin-top: 48px; }
.rse-review-rail__topline { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0 0 15px; }
.rse-review-rail__topline p { margin: 0; color: var(--rse-ink); font-family: var(--rse-mono); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.rse-review-rail__controls { display: flex; gap: 8px; }
.rse-review-rail__controls button {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid rgba(39,37,31,.16);
  border-radius: 50%;
  background: rgba(255,253,247,.78);
  color: var(--rse-ink);
  font-size: 18px;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.rse-review-rail__controls button:hover { transform: translateY(-2px); border-color: var(--rse-olive); background: #fffdf7; }
.rse-review-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(282px, 31.5%);
  gap: 17px;
  overflow-x: auto;
  padding: 4px 2px 16px;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: rgba(94,111,29,.35) transparent;
}
.rse-review-rail:focus { outline: 2px solid rgba(94,111,29,.55); outline-offset: 4px; border-radius: 20px; }
.rse-review-rail > * { scroll-snap-align: start; }
.rse-ugc-card {
  min-height: 455px;
  overflow: hidden;
  border: 1px solid rgba(39,37,31,.12);
  border-radius: 23px;
  background: #fffdf7;
  box-shadow: 0 16px 34px rgba(39,37,31,.07);
}
.rse-ugc-card__visual {
  position: relative;
  display: grid;
  min-height: 296px;
  place-items: center;
  overflow: hidden;
  background: linear-gradient(150deg, #a8b442 0%, #778c1f 52%, #39460f 100%);
}
.rse-ugc-card__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(20,27,7,.04), rgba(20,27,7,.3));
  pointer-events: none;
}
.rse-ugc-card__visual.has-image img { width: 100%; height: 100%; min-height: 296px; object-fit: cover; }
.rse-ugc-card__eyebrow {
  position: absolute;
  z-index: 2;
  top: 14px;
  left: 14px;
  border: 1px solid rgba(255,255,255,.46);
  border-radius: 100px;
  padding: 7px 9px;
  background: rgba(29,36,7,.28);
  color: #fffdf7;
  font-family: var(--rse-mono);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}
.rse-ugc-card__orb { position: absolute; width: 192px; height: 192px; border-radius: 50%; opacity: .75; }
.rse-ugc-card__orb--1 { background: radial-gradient(circle at 30% 30%, #fffce4, #d8b86a 42%, transparent 68%); transform: translate(34px,-34px); }
.rse-ugc-card__orb--2 { background: radial-gradient(circle at 70% 32%, #eff7c2, #b6c634 45%, transparent 70%); transform: translate(-42px,16px); }
.rse-ugc-card__orb--3 { background: radial-gradient(circle at 45% 36%, #fffaf0, #c3ad5f 42%, transparent 70%); transform: translate(12px,42px); }
.rse-ugc-card__bottle {
  position: relative;
  z-index: 1;
  display: grid;
  width: 104px;
  height: 184px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 15px 15px 21px 21px;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(237,238,214,.82));
  color: #556519;
  font-family: var(--rse-serif);
  font-size: 24px;
  letter-spacing: -.08em;
  box-shadow: inset 11px 0 18px rgba(255,255,255,.62), 0 19px 26px rgba(10,20,0,.2);
}
.rse-ugc-card__bottle::before { content:""; position:absolute; top:-34px; width:54px; height:36px; border-radius:7px 7px 2px 2px; background:#e8e8d5; box-shadow: inset 5px 0 7px rgba(255,255,255,.7); }
.rse-ugc-card__play {
  position: absolute;
  z-index: 3;
  display: grid;
  width: 66px;
  height: 66px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.84);
  border-radius: 50%;
  background: rgba(255,253,247,.91);
  color: #647620;
  font-size: 20px;
  cursor: pointer;
  box-shadow: 0 10px 22px rgba(0,0,0,.16);
  transition: transform .22s ease, background .22s ease;
}
.rse-ugc-card__play:hover { transform: scale(1.06); background: #fff; }
.rse-ugc-card__body { min-height: 159px; padding: 18px 19px 20px; }
.rse-ugc-card__body blockquote { margin: 0 0 18px; color: var(--rse-ink); font-family: var(--rse-serif); font-size: 25px; letter-spacing: -.045em; line-height: 1.02; }
.rse-ugc-card__person { display: grid; gap: 3px; }
.rse-ugc-card__person strong { color: var(--rse-ink); font-size: 13px; }
.rse-ugc-card__person span { color: var(--rse-muted); font-size: 12px; line-height: 1.4; }
.rse-review-card {
  display: flex;
  min-height: 236px;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid rgba(39,37,31,.11);
  border-radius: 21px;
  padding: 24px 23px 20px;
  background: #fffdf7;
  box-shadow: 0 14px 28px rgba(39,37,31,.055);
}
.rse-review-card__stars { font-size: 15px; }
.rse-review-card blockquote { margin: 18px 0 22px; color: var(--rse-ink); font-family: var(--rse-serif); font-size: 27px; letter-spacing: -.05em; line-height: 1.03; }
.rse-review-card footer { display: grid; gap: 3px; color: var(--rse-muted); font-size: 12px; }
.rse-review-card footer strong { color: var(--rse-ink); font-size: 13px; }
.rse-reviews-cta { position: relative; z-index: 1; display: flex; justify-content: center; margin-top: 38px; }
.rse-ugc-modal[hidden] { display: none; }
.rse-ugc-modal { position: fixed; z-index: 100020; inset: 0; display: grid; place-items: center; padding: 22px; }
.rse-ugc-modal__backdrop { position: absolute; inset: 0; background: rgba(20,23,10,.64); backdrop-filter: blur(8px); }
.rse-ugc-modal__panel { position: relative; z-index: 1; width: min(100%, 580px); max-height: min(88vh, 840px); overflow: auto; border: 1px solid rgba(255,255,255,.45); border-radius: 24px; padding: 30px; background: #fffdf7; box-shadow: 0 28px 80px rgba(0,0,0,.35); }
.rse-ugc-modal__panel h2 { margin: 0 0 20px; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(35px, 5vw, 53px); letter-spacing: -.065em; line-height: .93; }
.rse-ugc-modal__close { position: absolute; top: 13px; right: 13px; display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgba(39,37,31,.12); border-radius: 50%; background: rgba(255,253,247,.9); color: var(--rse-ink); font-size: 25px; line-height: 1; cursor: pointer; }
.rse-ugc-modal__player { display: grid; min-height: 280px; place-items: center; overflow: hidden; border-radius: 17px; background: #242b0b; }
.rse-ugc-modal__player iframe, .rse-ugc-modal__player video { display: block; width: 100%; aspect-ratio: 9 / 16; max-height: 60vh; border: 0; background: #0f1304; object-fit: contain; }
.rse-ugc-modal__fallback { display: grid; gap: 12px; place-items: center; padding: 34px 25px; color: #fffdf7; text-align: center; }
.rse-ugc-modal__fallback a { color: #f3df97; font-weight: 800; }
.rse-ugc-modal__note { margin: 15px 0 0; color: var(--rse-muted); font-size: 11px; line-height: 1.5; }
html.rse-ugc-modal-open, body.rse-ugc-modal-open { overflow: hidden; }
@media (max-width: 900px) {
  .rse-review-rail { grid-auto-columns: minmax(295px, 47%); }
}
@media (max-width: 640px) {
  .rse-section--reviews { padding: 70px 0; }
  .rse-reviews-heading { grid-template-columns: 1fr; gap: 20px; margin-bottom: 29px; }
  .rse-reviews-heading h2 { font-size: 47px; }
  .rse-reviews-heading p:not(.rse-kicker) { font-size: 14px; }
  .rse-review-summary { width: 142px; padding: 15px 17px; }
  .rse-review-rail-wrap { margin-top: 29px; }
  .rse-review-rail-wrap--comments { margin-top: 38px; }
  .rse-review-rail { grid-auto-columns: minmax(255px, 82vw); gap: 13px; margin-right: -16px; padding-right: 16px; }
  .rse-ugc-card { min-height: 424px; border-radius: 20px; }
  .rse-ugc-card__visual { min-height: 270px; }
  .rse-ugc-card__visual.has-image img { min-height: 270px; }
  .rse-ugc-card__body blockquote { font-size: 23px; }
  .rse-review-card { min-height: 217px; padding: 21px 19px 18px; }
  .rse-review-card blockquote { font-size: 24px; }
  .rse-ugc-modal { align-items: end; padding: 0; }
  .rse-ugc-modal__panel { width: 100%; max-height: min(88vh, 760px); border-radius: 24px 24px 0 0; padding: 28px 19px calc(22px + env(safe-area-inset-bottom)); }
  .rse-ugc-modal__player { min-height: 320px; }
}


/* Slice 18 — Dedicated Ingredients and Our Standards pages */
.rse-information-page { overflow: hidden; background: var(--rse-soft-white); }
.rse-information-hero { position: relative; overflow: hidden; padding: clamp(80px, 11vw, 152px) 0 clamp(70px, 9vw, 122px); background: linear-gradient(125deg, #eef0d8 0%, #fdfbf4 47%, #e7ecd0 100%); }
.rse-information-hero--standards { background: linear-gradient(128deg, #364314 0%, #64751d 44%, #b7c852 100%); color: #fffdf7; }
.rse-information-hero__glow { position: absolute; width: min(76vw, 980px); height: min(76vw, 980px); border-radius: 50%; right: -18vw; top: -38vw; background: radial-gradient(circle, rgba(255,255,236,.88) 0%, rgba(214,184,106,.28) 33%, rgba(214,184,106,0) 70%); pointer-events: none; }
.rse-information-hero--standards .rse-information-hero__glow { background: radial-gradient(circle, rgba(255,252,221,.58) 0%, rgba(214,184,106,.25) 32%, rgba(214,184,106,0) 70%); }
.rse-information-hero__inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); gap: clamp(48px, 8vw, 126px); align-items: center; }
.rse-information-hero h1 { max-width: 720px; margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(58px, 8vw, 112px); font-weight: 500; letter-spacing: -.08em; line-height: .86; }
.rse-information-hero--standards h1 { color: #fffdf7; }
.rse-information-hero p:not(.rse-kicker) { max-width: 650px; margin: 25px 0 0; color: var(--rse-muted); font-size: 17px; line-height: 1.72; }
.rse-information-hero--standards p:not(.rse-kicker) { color: rgba(255,253,247,.86); }
.rse-information-hero--standards .rse-kicker { color: #ece9bb; }
.rse-information-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.rse-information-hero__visual { position: relative; min-height: 430px; }
.rse-information-vial { position: absolute; display: grid; place-items: center; border: 1px solid rgba(94,111,29,.28); background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(239,241,214,.77)); color: var(--rse-olive-dark); box-shadow: 0 28px 58px rgba(58,70,15,.2), inset 12px 0 22px rgba(255,255,255,.75); }
.rse-information-vial span { font-family: var(--rse-serif); letter-spacing: -.08em; }
.rse-information-vial--one { right: 18%; bottom: 18px; width: 134px; height: 250px; border-radius: 20px 20px 31px 31px; font-size: 48px; }
.rse-information-vial--one::before { content: ""; position: absolute; top: -47px; width: 70px; height: 50px; border: 1px solid rgba(94,111,29,.25); border-bottom: none; border-radius: 12px 12px 0 0; background: #eceeda; }
.rse-information-vial--two { left: 12%; top: 46px; width: 180px; height: 180px; border-radius: 50%; font-size: 32px; transform: rotate(-10deg); }
.rse-information-vial--two::after { content: ""; position: absolute; inset: 16px; border: 1px solid rgba(94,111,29,.22); border-radius: 50%; }
.rse-information-hero__orb { position: absolute; width: 242px; height: 242px; right: 0; top: 42px; border-radius: 50%; background: radial-gradient(circle at 38% 34%, #fffdea 0 7%, #e1ca7b 26%, #96a636 48%, rgba(137,155,42,.04) 69%); filter: blur(.1px); }
.rse-information-hero__visual--standards { display: grid; place-items: center; }
.rse-standard-seal { position: relative; z-index: 2; display: grid; width: 260px; height: 260px; place-items: center; border: 1px solid rgba(255,253,247,.58); border-radius: 50%; background: rgba(39,50,10,.22); box-shadow: inset 0 0 0 13px rgba(255,253,247,.08), 0 30px 64px rgba(20,28,3,.23); text-align: center; backdrop-filter: blur(10px); }
.rse-standard-seal span { color: #fffdf7; font-family: var(--rse-serif); font-size: 100px; letter-spacing: -.12em; line-height: .8; }
.rse-standard-seal small { color: #efe7b0; font-family: var(--rse-mono); font-size: 10px; font-weight: 800; letter-spacing: .16em; line-height: 1.55; text-transform: uppercase; }
.rse-standard-grid-art { position: absolute; width: 365px; height: 365px; transform: rotate(18deg); }
.rse-standard-grid-art i { position: absolute; display: block; width: 148px; height: 148px; border: 1px solid rgba(255,253,247,.27); border-radius: 30px; background: rgba(255,253,247,.06); }
.rse-standard-grid-art i:nth-child(1) { left: 0; top: 0; } .rse-standard-grid-art i:nth-child(2) { right: 0; top: 0; } .rse-standard-grid-art i:nth-child(3) { bottom: 0; left: 0; } .rse-standard-grid-art i:nth-child(4) { right: 0; bottom: 0; }
.rse-information-principles { padding: clamp(72px, 10vw, 132px) 0; }
.rse-information-intro-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(260px, .75fr); gap: clamp(32px, 8vw, 120px); align-items: end; }
.rse-information-intro-grid h2 { max-width: 730px; margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(43px, 6vw, 77px); letter-spacing: -.07em; line-height: .9; }
.rse-information-intro-grid > p { max-width: 500px; margin: 0; color: var(--rse-muted); font-size: 16px; line-height: 1.7; }
.rse-information-principle-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin-top: 46px; }
.rse-information-principle-grid article { min-height: 240px; border: 1px solid rgba(39,37,31,.12); border-radius: 22px; padding: 27px 25px; background: #fffdf7; box-shadow: 0 14px 30px rgba(39,37,31,.045); }
.rse-information-principle-grid article > span { color: var(--rse-olive-dark); font-family: var(--rse-mono); font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.rse-information-principle-grid h3 { margin: 48px 0 11px; color: var(--rse-ink); font-family: var(--rse-serif); font-size: 31px; letter-spacing: -.055em; line-height: .98; }
.rse-information-principle-grid p { margin: 0; color: var(--rse-muted); font-size: 14px; line-height: 1.6; }
.rse-section--ingredient-library { position: relative; overflow: hidden; padding: clamp(75px, 10vw, 132px) 0; background: #242d09; color: #fffdf7; }
.rse-section--ingredient-library::before { content:""; position:absolute; width:700px; height:700px; left:-370px; top:-310px; border-radius:50%; background:radial-gradient(circle, rgba(201,220,92,.3), rgba(201,220,92,0) 67%); }
.rse-section--ingredient-library .rse-section-heading { position: relative; z-index: 1; }
.rse-section--ingredient-library .rse-kicker { color: #dfe995; }
.rse-section--ingredient-library .rse-section-heading h2 { color: #fffdf7; }
.rse-section--ingredient-library .rse-section-heading p:not(.rse-kicker) { color: rgba(255,253,247,.73); }
.rse-ingredient-library-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin-top: 42px; }
.rse-ingredient-library-card { min-height: 300px; display: flex; flex-direction: column; border: 1px solid rgba(255,253,247,.17); border-radius: 22px; padding: 25px; background: rgba(255,253,247,.07); box-shadow: inset 0 1px 0 rgba(255,255,255,.06); }
.rse-ingredient-library-card__number { color: #e2cc7d; font-family: var(--rse-mono); font-size: 10px; font-weight: 800; letter-spacing: .16em; }
.rse-ingredient-library-card__role { margin: 46px 0 7px; color: #e0e59f; font-family: var(--rse-mono); font-size: 10px; font-weight: 800; letter-spacing: .1em; line-height: 1.5; text-transform: uppercase; }
.rse-ingredient-library-card h3 { margin: 0; color: #fffdf7; font-family: var(--rse-serif); font-size: 39px; letter-spacing: -.07em; line-height: .93; }
.rse-ingredient-library-card p:not(.rse-ingredient-library-card__role) { margin: 16px 0 0; color: rgba(255,253,247,.73); font-size: 14px; line-height: 1.62; }
.rse-ingredient-library-card .rse-text-link { margin-top: auto; padding-top: 22px; color: #f0df9f; }
.rse-information-product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 42px; }
.rse-information-product-card { overflow: hidden; border: 1px solid rgba(39,37,31,.13); border-radius: 23px; background: #fffdf7; box-shadow: 0 16px 34px rgba(39,37,31,.055); }
.rse-information-product-card__image { position: relative; display: block; height: 300px; overflow: hidden; background: linear-gradient(145deg, #dfe5b1, #a7b442); }
.rse-information-product-card__image > img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.rse-information-product-card:hover .rse-information-product-card__image > img { transform: scale(1.03); }
.rse-information-product-card__image .rse-product-fallback { min-height: 300px; transform: scale(.86); }
.rse-information-product-card__body { padding: 22px 22px 24px; }
.rse-information-product-card__body > span { color: var(--rse-olive-dark); font-family: var(--rse-mono); font-size: 9px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.rse-information-product-card h3 { margin: 13px 0 9px; color: var(--rse-ink); font-family: var(--rse-serif); font-size: 35px; letter-spacing: -.06em; line-height: .95; }
.rse-information-product-card h3 a { text-decoration: none; }
.rse-information-product-card p { min-height: 66px; margin: 0; color: var(--rse-muted); font-size: 14px; line-height: 1.58; }
.rse-text-link { display: inline-flex; gap: 7px; margin-top: 19px; color: var(--rse-olive-dark); font-size: 12px; font-weight: 800; text-decoration: none; }
.rse-text-link:hover { color: var(--rse-ink); }
.rse-information-empty { border: 1px dashed rgba(39,37,31,.25); border-radius: 20px; padding: 27px; background: rgba(255,253,247,.74); color: var(--rse-ink); }
.rse-information-empty p { margin: 9px 0 0; color: var(--rse-muted); }
.rse-information-note-section { padding: 0 0 clamp(84px, 10vw, 138px); background: #fffdf7; }
.rse-information-note { position: relative; display: grid; grid-template-columns: minmax(260px, 1fr) minmax(220px, .72fr); gap: 45px; align-items: end; overflow: hidden; border: 1px solid rgba(39,37,31,.13); border-radius: 30px; padding: clamp(34px, 5vw, 68px); background: linear-gradient(135deg, #edf0d0, #fffdf7 56%, #e9dc9d); }
.rse-information-note__sun { position: absolute; width: 290px; height: 290px; right: -65px; top: -140px; border-radius: 50%; background: radial-gradient(circle at 37% 37%, #fffde8 0 7%, #d7bd69 25%, rgba(215,189,105,0) 68%); }
.rse-information-note > * { position: relative; z-index: 1; }
.rse-information-note .rse-kicker { margin-bottom: 15px; }
.rse-information-note h2 { max-width: 530px; margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(40px, 5vw, 64px); letter-spacing: -.07em; line-height: .9; }
.rse-information-note > p { max-width: 430px; margin: 0; color: var(--rse-muted); font-size: 15px; line-height: 1.68; }
.rse-information-note--dark { background: linear-gradient(135deg, #28320b, #5e6f1d 60%, #a4b441); border-color: rgba(255,253,247,.15); }
.rse-information-note--dark h2 { color: #fffdf7; }
.rse-information-note--dark > p { color: rgba(255,253,247,.83); }
.rse-information-note--dark .rse-kicker { color: #e9df9c; }
.rse-section--standards-page { padding: clamp(75px, 10vw, 132px) 0; background: #f2f2e4; }
.rse-standards-page-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 42px; }
.rse-standards-page-card { min-height: 275px; border: 1px solid rgba(39,37,31,.12); border-radius: 22px; padding: 25px 23px; background: #fffdf7; box-shadow: 0 15px 30px rgba(39,37,31,.05); }
.rse-standards-page-card > span { color: var(--rse-olive-dark); font-family: var(--rse-mono); font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.rse-standards-page-card h3 { margin: 72px 0 12px; color: var(--rse-ink); font-family: var(--rse-serif); font-size: 32px; letter-spacing: -.06em; line-height: .96; }
.rse-standards-page-card p { margin: 0; color: var(--rse-muted); font-size: 14px; line-height: 1.62; }
.rse-standards-check-section { padding: clamp(75px, 10vw, 132px) 0; background: #fffdf7; }
.rse-standards-check-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(370px, .8fr); gap: clamp(36px, 8vw, 122px); align-items: start; }
.rse-standards-check-panel h2 { max-width: 670px; margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(44px, 6vw, 76px); letter-spacing: -.07em; line-height: .9; }
.rse-standards-check-panel > p:not(.rse-kicker) { max-width: 600px; margin: 21px 0 0; color: var(--rse-muted); font-size: 16px; line-height: 1.68; }
.rse-standards-check-list { display: grid; gap: 0; margin: 34px 0 0; padding: 0; border-top: 1px solid var(--rse-line); list-style: none; }
.rse-standards-check-list li { display: grid; grid-template-columns: 150px 1fr; gap: 22px; padding: 18px 0; border-bottom: 1px solid var(--rse-line); }
.rse-standards-check-list strong { color: var(--rse-ink); font-family: var(--rse-serif); font-size: 25px; letter-spacing: -.05em; }
.rse-standards-check-list span { color: var(--rse-muted); font-size: 14px; line-height: 1.55; }
.rse-standards-accordions { background: #f1f2df; }
@media (max-width: 1000px) {
  .rse-information-hero__inner, .rse-standards-check-grid { grid-template-columns: 1fr; }
  .rse-information-hero__visual { min-height: 330px; max-width: 560px; width: 100%; margin: 0 auto; }
  .rse-information-intro-grid { grid-template-columns: 1fr; gap: 21px; }
  .rse-standards-page-grid { grid-template-columns: repeat(2, 1fr); }
  .rse-information-principle-grid, .rse-ingredient-library-grid { grid-template-columns: repeat(2, 1fr); }
  .rse-information-product-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .rse-information-hero { padding: 66px 0 62px; }
  .rse-information-hero h1 { font-size: 60px; line-height: .88; }
  .rse-information-hero p:not(.rse-kicker) { font-size: 15px; line-height: 1.62; }
  .rse-information-hero__actions { display: grid; grid-template-columns: 1fr; }
  .rse-information-hero__actions .rse-button { justify-content: center; }
  .rse-information-hero__visual { min-height: 260px; margin-top: -2px; }
  .rse-information-vial--one { right: 11%; width: 108px; height: 200px; font-size: 39px; }
  .rse-information-vial--one::before { top: -37px; width: 57px; height: 40px; }
  .rse-information-vial--two { left: 8%; top: 30px; width: 140px; height: 140px; font-size: 24px; }
  .rse-information-hero__orb { width: 170px; height: 170px; right: -8px; top: 28px; }
  .rse-standard-seal { width: 198px; height: 198px; }
  .rse-standard-seal span { font-size: 79px; }
  .rse-standard-grid-art { width: 270px; height: 270px; }
  .rse-standard-grid-art i { width: 108px; height: 108px; border-radius: 21px; }
  .rse-information-intro-grid h2, .rse-standards-check-panel h2 { font-size: 48px; }
  .rse-information-principle-grid, .rse-ingredient-library-grid, .rse-information-product-grid, .rse-standards-page-grid { grid-template-columns: 1fr; }
  .rse-information-principle-grid { margin-top: 31px; }
  .rse-information-principle-grid article { min-height: 0; padding: 23px 21px; }
  .rse-information-principle-grid h3 { margin-top: 38px; }
  .rse-section--ingredient-library { padding: 70px 0; }
  .rse-ingredient-library-grid { margin-top: 30px; }
  .rse-ingredient-library-card { min-height: 0; }
  .rse-ingredient-library-card__role { margin-top: 35px; }
  .rse-information-product-grid { margin-top: 31px; }
  .rse-information-product-card__image { height: 270px; }
  .rse-information-product-card__image .rse-product-fallback { min-height: 270px; }
  .rse-information-note { grid-template-columns: 1fr; gap: 26px; border-radius: 23px; padding: 31px 24px; }
  .rse-information-note h2 { font-size: 47px; }
  .rse-standards-page-card { min-height: 0; padding: 23px 21px; }
  .rse-standards-page-card h3 { margin-top: 54px; }
  .rse-standards-check-list li { grid-template-columns: 1fr; gap: 5px; }
}


/* Slice 19: About, FAQ, contact and legal-style pages */
.rse-brand-page { background: #fffdf7; }
.rse-brand-hero { position: relative; overflow: hidden; padding: clamp(76px, 10vw, 142px) 0 clamp(70px, 9vw, 125px); background: linear-gradient(132deg, #fbf9ee 0%, #eef0d2 55%, #e2e9ae 100%); }
.rse-brand-hero--faq { background: linear-gradient(132deg, #f5f4e8 0%, #e3e6c1 58%, #c8d58b 100%); }
.rse-brand-hero--contact { background: linear-gradient(132deg, #fffdf7 0%, #f0eedc 56%, #e4d79c 100%); }
.rse-brand-hero--privacy, .rse-brand-hero--terms { background: linear-gradient(132deg, #f4f4e6 0%, #e4e9c6 58%, #d8e0a0 100%); }
.rse-brand-hero__grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(290px, .72fr); align-items: center; gap: clamp(38px, 9vw, 145px); }
.rse-brand-hero__aura { position: absolute; width: min(77vw, 1000px); height: min(77vw, 1000px); top: -47%; right: -16%; border: 1px solid rgba(84, 98, 20, .18); border-radius: 50%; box-shadow: 0 0 0 78px rgba(255,253,247,.2), 0 0 0 156px rgba(126,148,34,.08); }
.rse-brand-hero h1 { max-width: 850px; margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(58px, 7.2vw, 104px); font-weight: 500; letter-spacing: -.08em; line-height: .84; }
.rse-brand-hero p:not(.rse-kicker) { max-width: 645px; margin: 26px 0 0; color: var(--rse-muted); font-size: 17px; line-height: 1.7; }
.rse-brand-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.rse-brand-hero__art { position: relative; min-height: 390px; border: 1px solid rgba(39,37,31,.12); border-radius: 50% 50% 26px 26px; background: radial-gradient(circle at 34% 25%, #fffee9 0 7%, #d5df8d 26%, #829528 56%, #4a5814 100%); box-shadow: inset 0 0 0 11px rgba(255,253,247,.24), 0 28px 70px rgba(44,50,12,.16); overflow: hidden; }
.rse-brand-hero__art--faq { border-radius: 30px; background: radial-gradient(circle at 37% 27%, #fffef0 0 7%, #dde4a9 25%, #9dad42 56%, #4c5d12 100%); }
.rse-brand-hero__art--contact { border-radius: 50% 50% 30px 30px; background: radial-gradient(circle at 37% 27%, #fffbe9 0 6%, #e3d794 26%, #b9a94c 54%, #5a571d 100%); }
.rse-brand-hero__art--privacy, .rse-brand-hero__art--terms { border-radius: 30px 30px 50% 50%; background: radial-gradient(circle at 37% 27%, #fffef4 0 7%, #dde5b2 25%, #90a83a 56%, #3b4c10 100%); }
.rse-brand-hero__orb { position: absolute; border: 1px solid rgba(255,253,247,.46); border-radius: 50%; }
.rse-brand-hero__orb--one { width: 270px; height: 270px; top: -95px; left: -105px; }
.rse-brand-hero__orb--two { width: 420px; height: 420px; bottom: -230px; right: -160px; }
.rse-brand-hero__monogram { position: absolute; z-index: 2; inset: 0; display: grid; place-items: center; color: #fffdf7; font-family: var(--rse-serif); font-size: clamp(152px, 17vw, 258px); font-style: italic; line-height: 1; text-shadow: 0 16px 35px rgba(39,37,31,.18); }
.rse-brand-hero__caption { position: absolute; z-index: 3; left: 27px; bottom: 25px; color: rgba(255,253,247,.92); font-family: var(--rse-mono); font-size: 10px; font-weight: 800; letter-spacing: .15em; line-height: 1.45; }
.rse-about-story { padding: clamp(85px, 10vw, 145px) 0; background: #fffdf7; }
.rse-about-story__grid { display: grid; grid-template-columns: minmax(300px, .82fr) minmax(0, 1fr); gap: clamp(45px, 9vw, 145px); align-items: center; }
.rse-about-story__visual { position: relative; min-height: 455px; overflow: hidden; border-radius: 25px; background: linear-gradient(140deg, #efefdb, #bccc62 58%, #7f912a); }
.rse-about-story__visual span { position: absolute; z-index: 2; left: 50%; top: 48%; transform: translate(-50%, -50%); color: rgba(255,253,247,.94); font-family: var(--rse-serif); font-size: 250px; font-style: italic; line-height: 1; }
.rse-about-story__visual i { position: absolute; display: block; border: 1px solid rgba(255,253,247,.7); border-radius: 50%; }
.rse-about-story__visual i:nth-child(2) { width: 410px; height: 410px; top: -175px; left: -170px; }
.rse-about-story__visual i:nth-child(3) { width: 250px; height: 250px; right: -88px; bottom: -90px; }
.rse-about-story__visual i:nth-child(4) { width: 72px; height: 72px; left: 43px; bottom: 43px; background: #fffdf7; }
.rse-about-story h2, .rse-faq-section h2 { max-width: 700px; margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(45px, 5.3vw, 75px); font-weight: 500; letter-spacing: -.075em; line-height: .9; }
.rse-about-story p:not(.rse-kicker), .rse-faq-section p:not(.rse-kicker) { max-width: 630px; margin: 23px 0 0; color: var(--rse-muted); font-size: 16px; line-height: 1.72; }
.rse-about-story__markers { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 32px; }
.rse-about-story__markers span { display: inline-flex; align-items: center; gap: 7px; padding: 9px 11px; border: 1px solid var(--rse-line); border-radius: 999px; color: var(--rse-muted); font-size: 11px; font-weight: 800; }
.rse-about-story__markers b { color: var(--rse-olive-dark); font-family: var(--rse-mono); }
.rse-about-principles { padding: clamp(80px, 10vw, 140px) 0; background: #f1f2df; }
.rse-about-principles__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 43px; }
.rse-about-principles__grid article { min-height: 310px; border: 1px solid rgba(39,37,31,.12); border-radius: 22px; padding: 26px 24px; background: #fffdf7; box-shadow: 0 13px 28px rgba(39,37,31,.04); }
.rse-about-principles__grid span { color: var(--rse-olive-dark); font-family: var(--rse-mono); font-size: 11px; font-weight: 800; letter-spacing: .14em; }
.rse-about-principles__grid h3 { margin: 83px 0 12px; color: var(--rse-ink); font-family: var(--rse-serif); font-size: 37px; font-weight: 500; letter-spacing: -.065em; line-height: .9; }
.rse-about-principles__grid p { margin: 0; color: var(--rse-muted); font-size: 14px; line-height: 1.62; }
.rse-about-route { padding: 0 0 clamp(85px, 10vw, 138px); background: #f1f2df; }
.rse-about-route__card, .rse-faq-help__card { display: flex; align-items: end; justify-content: space-between; gap: 30px; border-radius: 29px; padding: clamp(33px, 5vw, 67px); background: linear-gradient(128deg, #2d3909, #667b1d 58%, #aebd4b); box-shadow: 0 25px 55px rgba(38,47,8,.18); }
.rse-about-route__card .rse-kicker, .rse-faq-help__card .rse-kicker { color: #e8e29e; }
.rse-about-route__card h2, .rse-faq-help__card h2 { margin: 0; color: #fffdf7; font-family: var(--rse-serif); font-size: clamp(45px, 5vw, 72px); font-weight: 500; letter-spacing: -.07em; line-height: .9; }
.rse-about-route__card p:not(.rse-kicker), .rse-faq-help__card p:not(.rse-kicker) { max-width: 550px; margin: 18px 0 0; color: rgba(255,253,247,.82); font-size: 15px; line-height: 1.67; }
.rse-about-route__card .rse-button, .rse-faq-help__card .rse-button { flex: 0 0 auto; background: #fffdf7; color: var(--rse-ink); }
.rse-faq-section { padding: clamp(85px, 10vw, 142px) 0; background: #fffdf7; }
.rse-faq-section__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(380px, 1fr); gap: clamp(42px, 9vw, 142px); align-items: start; }
.rse-faq-accordions { background: #f1f2df; }
.rse-faq-help { padding: 0 0 clamp(85px, 10vw, 138px); background: #fffdf7; }
.rse-contact-section { padding: clamp(80px, 10vw, 142px) 0; background: #fffdf7; }
.rse-contact-grid { display: grid; grid-template-columns: minmax(275px, .68fr) minmax(0, 1fr); gap: clamp(26px, 6vw, 78px); align-items: stretch; }
.rse-contact-details { display: flex; flex-direction: column; min-height: 550px; border-radius: 25px; padding: clamp(28px, 4vw, 53px); background: #f0f1de; }
.rse-contact-details h2 { margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(44px, 4.8vw, 65px); font-weight: 500; letter-spacing: -.07em; line-height: .88; }
.rse-contact-details ul { display: grid; gap: 0; margin: 34px 0; padding: 0; border-top: 1px solid var(--rse-line); list-style: none; }
.rse-contact-details li { display: grid; gap: 4px; padding: 17px 0; border-bottom: 1px solid var(--rse-line); }
.rse-contact-details li strong { color: var(--rse-ink); font-family: var(--rse-serif); font-size: 24px; font-weight: 500; letter-spacing: -.045em; }
.rse-contact-details li span { color: var(--rse-muted); font-size: 13px; line-height: 1.52; }
.rse-contact-email { display: inline-flex; justify-content: space-between; gap: 15px; margin-top: auto; padding: 15px 16px; border-radius: 11px; background: var(--rse-ink); color: #fffdf7; font-size: 13px; font-weight: 800; text-decoration: none; }
.rse-contact-pending { margin-top: auto; border: 1px dashed rgba(39,37,31,.25); border-radius: 11px; padding: 15px; color: var(--rse-muted); font-size: 13px; line-height: 1.52; }
.rse-contact-details small { margin-top: 15px; color: var(--rse-muted); font-size: 11px; line-height: 1.5; }
.rse-contact-form-wrap { display: flex; }
.rse-contact-form { width: 100%; border: 1px solid var(--rse-line); border-radius: 25px; padding: clamp(30px, 5vw, 58px); background: #fffdf7; box-shadow: 0 19px 48px rgba(39,37,31,.06); }
.rse-contact-form h2 { max-width: 620px; margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(47px, 5.5vw, 73px); font-weight: 500; letter-spacing: -.075em; line-height: .88; }
.rse-contact-form > p:not(.rse-kicker) { max-width: 590px; margin: 19px 0 0; color: var(--rse-muted); font-size: 15px; line-height: 1.68; }
.rse-contact-form__steps { display: grid; grid-template-columns: auto 1fr; gap: 13px 14px; margin-top: 31px; padding-top: 28px; border-top: 1px solid var(--rse-line); }
.rse-contact-form__steps span { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: var(--rse-olive); color: #fffdf7; font-family: var(--rse-mono); font-size: 10px; font-weight: 800; }
.rse-contact-form__steps p { align-self: center; margin: 0; color: var(--rse-muted); font-size: 13px; line-height: 1.45; }
.rse-contact-form form { margin-top: 22px; }
.rse-contact-form input:not([type="submit"]), .rse-contact-form textarea, .rse-contact-form select { width: 100%; border: 1px solid rgba(39,37,31,.2); border-radius: 8px; padding: 12px 13px; background: #fffdf7; color: var(--rse-ink); }
.rse-contact-form input[type="submit"], .rse-contact-form button[type="submit"] { border: 0; border-radius: 999px; padding: 14px 19px; background: var(--rse-ink); color: #fffdf7; cursor: pointer; font-weight: 800; }
.rse-legal-section { padding: clamp(80px, 10vw, 140px) 0; background: #fffdf7; }
.rse-legal-grid { display: grid; grid-template-columns: minmax(250px, .48fr) minmax(0, 1fr); gap: clamp(40px, 8vw, 130px); align-items: start; }
.rse-legal-aside { position: sticky; top: 135px; padding: 26px 0; }
.rse-legal-aside h2 { margin: 0; color: var(--rse-ink); font-family: var(--rse-serif); font-size: clamp(38px, 4vw, 57px); font-weight: 500; letter-spacing: -.07em; line-height: .9; }
.rse-legal-aside p:not(.rse-kicker) { margin: 21px 0 0; color: var(--rse-muted); font-size: 14px; line-height: 1.65; }
.rse-legal-aside a { display: inline-flex; gap: 8px; margin-top: 22px; color: var(--rse-olive-dark); font-size: 12px; font-weight: 800; text-decoration: none; }
.rse-legal-content { border: 1px solid var(--rse-line); border-radius: 24px; padding: clamp(28px, 5vw, 56px); background: #fafaf1; }
.rse-legal-content > .rse-kicker { margin-bottom: 24px; }
.rse-legal-content h2, .rse-legal-content h3 { margin: 35px 0 13px; color: var(--rse-ink); font-family: var(--rse-serif); font-weight: 500; letter-spacing: -.055em; line-height: .96; }
.rse-legal-content h2 { font-size: clamp(34px, 4vw, 49px); }
.rse-legal-content h3 { font-size: 28px; }
.rse-legal-content p, .rse-legal-content li { color: var(--rse-muted); font-size: 15px; line-height: 1.68; }
.rse-legal-content p { margin: 0 0 16px; }
.rse-legal-content ul { margin: 0 0 18px; padding-left: 21px; }
.rse-legal-content strong { color: var(--rse-ink); }
@media (max-width: 1180px) {
  .rse-desktop-nav { gap: 14px; }
  .rse-brand-hero__grid, .rse-about-story__grid, .rse-faq-section__grid, .rse-contact-grid, .rse-legal-grid { grid-template-columns: 1fr; }
  .rse-brand-hero__art { max-width: 550px; width: 100%; margin: 0 auto; }
  .rse-about-story__visual { max-width: 560px; width: 100%; }
  .rse-contact-details { min-height: 0; }
  .rse-legal-aside { position: static; padding: 0; }
}
@media (max-width: 760px) {
  .rse-brand-hero { padding: 67px 0 63px; }
  .rse-brand-hero h1 { font-size: 62px; line-height: .86; }
  .rse-brand-hero p:not(.rse-kicker) { font-size: 15px; line-height: 1.62; }
  .rse-brand-hero__actions { display: grid; grid-template-columns: 1fr; }
  .rse-brand-hero__actions .rse-button { justify-content: center; }
  .rse-brand-hero__art { min-height: 285px; margin-top: 5px; }
  .rse-brand-hero__monogram { font-size: 175px; }
  .rse-about-story { padding: 73px 0; }
  .rse-about-story__visual { min-height: 315px; }
  .rse-about-story__visual span { font-size: 184px; }
  .rse-about-story h2, .rse-faq-section h2 { font-size: 48px; }
  .rse-about-principles { padding: 72px 0; }
  .rse-about-principles__grid { grid-template-columns: 1fr; margin-top: 31px; }
  .rse-about-principles__grid article { min-height: 0; padding: 23px 21px; }
  .rse-about-principles__grid h3 { margin-top: 45px; }
  .rse-about-route__card, .rse-faq-help__card { display: grid; align-items: start; gap: 25px; border-radius: 22px; padding: 31px 24px; }
  .rse-about-route__card h2, .rse-faq-help__card h2 { font-size: 47px; }
  .rse-faq-section, .rse-contact-section, .rse-legal-section { padding: 73px 0; }
  .rse-contact-details, .rse-contact-form { border-radius: 21px; padding: 29px 23px; }
  .rse-contact-details h2, .rse-contact-form h2 { font-size: 47px; }
  .rse-contact-form__steps { gap: 12px; }
  .rse-legal-content { border-radius: 21px; padding: 29px 23px; }
}

/* Slice 20 — final release accessibility and mobile resilience */
.rse-takeover :focus-visible,
.rse-cart-drawer :focus-visible,
.rse-offer-reveal :focus-visible {
  outline: 3px solid var(--rse-olive, #899B2A) !important;
  outline-offset: 3px;
}
.rse-takeover button,
.rse-takeover a,
.rse-takeover input,
.rse-takeover select,
.rse-takeover textarea { -webkit-tap-highlight-color: rgba(137,155,42,.18); }
@media (prefers-reduced-motion: reduce) {
  .rse-takeover *, .rse-takeover *::before, .rse-takeover *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}
@media (max-width: 760px) {
  .rse-takeover { overflow-x: clip; }
  .rse-sticky-cta { padding-bottom: max(12px, env(safe-area-inset-bottom)); }
  .rse-cart-drawer { padding-bottom: max(18px, env(safe-area-inset-bottom)); }
}


/* Slice 21: WooCommerce cart + checkout takeover */
.rse-commerce-takeover {
    background: var(--rse-cream, #faf8ef);
}
.rse-site-shell--commerce {
    min-height: 100vh;
    background: #faf8ef;
    color: #27251f;
}
.rse-commerce {
    padding-bottom: 56px;
}
.rse-commerce-hero {
    position: relative;
    overflow: hidden;
    padding: clamp(42px, 7vw, 92px) 0 clamp(34px, 6vw, 72px);
    background:
        radial-gradient(circle at 88% 18%, rgba(214, 184, 106, .2), transparent 28rem),
        linear-gradient(124deg, #eef0dc 0%, #fbfaf4 55%, #f3ead2 100%);
    border-bottom: 1px solid rgba(39, 37, 31, .1);
}
.rse-commerce-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, .38fr);
    align-items: center;
    gap: clamp(28px, 8vw, 104px);
}
.rse-commerce-hero h1 {
    max-width: 780px;
    margin: 9px 0 14px;
    font-size: clamp(2.35rem, 5vw, 5.35rem);
    line-height: .98;
    letter-spacing: -.065em;
}
.rse-commerce-hero p:not(.rse-kicker) {
    max-width: 700px;
    margin: 0;
    color: #59574f;
    font-size: clamp(1rem, 1.45vw, 1.24rem);
    line-height: 1.7;
}
.rse-commerce-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 22px;
}
.rse-commerce-hero__meta span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 10px;
    border: 1px solid rgba(39, 37, 31, .14);
    border-radius: 999px;
    background: rgba(255, 255, 255, .55);
    color: #4f5047;
    font-size: .72rem;
    letter-spacing: .045em;
    text-transform: uppercase;
}
.rse-commerce-hero__card {
    position: relative;
    isolation: isolate;
    min-height: 250px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid rgba(39, 37, 31, .13);
    border-radius: 30px;
    background: linear-gradient(145deg, #7c8f2a, #a4b34d 58%, #d9ca8d);
    box-shadow: 0 26px 55px rgba(58, 56, 33, .14);
    color: #fffdf6;
}
.rse-commerce-hero__card::after {
    position: absolute;
    right: -62px;
    bottom: -64px;
    z-index: -1;
    width: 225px;
    height: 225px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .17);
    content: '';
}
.rse-commerce-hero__card span {
    display: block;
    margin-bottom: 8px;
    color: rgba(255, 255, 255, .76);
    font-size: .72rem;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.rse-commerce-hero__card strong {
    display: block;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(3rem, 5vw, 5.3rem);
    font-style: italic;
    font-weight: 400;
    letter-spacing: -.08em;
}
.rse-commerce-hero__card i {
    position: absolute;
    bottom: 32px;
    display: block;
    width: 41px;
    border-radius: 18px 18px 7px 7px;
    background: #f6f0d6;
    box-shadow: inset 0 -10px 0 rgba(46, 59, 15, .16), 0 12px 19px rgba(39, 37, 31, .15);
}
.rse-commerce-hero__card i:nth-of-type(1) { right: 38px; height: 110px; }
.rse-commerce-hero__card i:nth-of-type(2) { right: 78px; height: 88px; background: #f2e9c7; }
.rse-commerce-hero__card i:nth-of-type(3) { right: 116px; height: 68px; background: #e6d58f; }
.rse-commerce-hero__card--checkout {
    background: linear-gradient(145deg, #273119, #536124 58%, #a79d5c);
}
.rse-commerce-content {
    padding: clamp(34px, 6vw, 86px) 0;
}
.rse-commerce-content--checkout {
    background: #fcfbf7;
}
.rse-commerce-content__topline {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    margin: 0 0 17px;
    color: #706d64;
    font-size: .84rem;
}
.rse-text-link {
    color: #657521;
    font-weight: 700;
    text-decoration: none;
}
.rse-text-link:hover,
.rse-text-link:focus { text-decoration: underline; }
.rse-woocommerce-shell {
    border: 1px solid rgba(39, 37, 31, .11);
    border-radius: 26px;
    background: #fffdf8;
    box-shadow: 0 24px 60px rgba(39, 37, 31, .06);
}
.rse-woocommerce-shell .woocommerce {
    margin: 0;
    padding: clamp(20px, 4vw, 52px);
}
.rse-woocommerce-shell .woocommerce-notices-wrapper:empty { display: none; }
.rse-woocommerce-shell .woocommerce-message,
.rse-woocommerce-shell .woocommerce-info,
.rse-woocommerce-shell .woocommerce-error {
    margin: 0 0 18px;
    border-top: 0;
    border-radius: 13px;
    background: #eef0dd;
    color: #334215;
}
.rse-woocommerce-shell .woocommerce-error { background: #f8e4df; color: #7a3027; }
.rse-woocommerce-shell .woocommerce-cart-form { margin-bottom: 26px; }
.rse-woocommerce-shell table.shop_table {
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 0;
    color: #27251f;
}
.rse-woocommerce-shell table.shop_table th {
    padding: 0 12px 13px;
    border: 0;
    color: #69675f;
    font-size: .72rem;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.rse-woocommerce-shell table.shop_table td {
    padding: 18px 12px;
    border-top: 1px solid rgba(39, 37, 31, .1);
    vertical-align: middle;
}
.rse-woocommerce-shell .product-thumbnail img {
    width: 86px;
    min-width: 86px;
    height: 104px;
    object-fit: cover;
    border-radius: 12px;
    background: #f3f1e7;
}
.rse-woocommerce-shell .product-name a {
    color: #27251f;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1.12rem;
    font-weight: 700;
    text-decoration: none;
}
.rse-woocommerce-shell .product-name a:hover { color: #778a25; }
.rse-woocommerce-shell .product-price,
.rse-woocommerce-shell .product-subtotal,
.rse-woocommerce-shell .product-subtotal .amount { color: #3e4a1a; font-weight: 700; }
.rse-woocommerce-shell .product-remove a.remove {
    width: 25px;
    height: 25px;
    line-height: 21px;
    border: 1px solid rgba(39, 37, 31, .18);
    background: transparent;
    color: #6c665a !important;
    font-size: 19px;
}
.rse-woocommerce-shell .product-remove a.remove:hover { border-color: #9b3c2d; background: #9b3c2d; color: #fff !important; }
.rse-woocommerce-shell .quantity .qty {
    min-height: 39px;
    min-width: 58px;
    border: 1px solid rgba(39, 37, 31, .18);
    border-radius: 10px;
    background: #fffdf8;
    color: #27251f;
}
.rse-woocommerce-shell .actions {
    padding-top: 22px !important;
}
.rse-woocommerce-shell .coupon .input-text {
    min-height: 43px;
    padding: 0 12px;
    border: 1px solid rgba(39, 37, 31, .16);
    border-radius: 9px;
    background: #fffdf8;
}
.rse-woocommerce-shell button,
.rse-woocommerce-shell input[type="submit"],
.rse-woocommerce-shell .button,
.rse-woocommerce-shell a.button {
    min-height: 44px;
    border: 1px solid #778a25;
    border-radius: 999px;
    background: #778a25;
    color: #fffdf8;
    font-weight: 700;
    line-height: 1.1;
    text-decoration: none;
    text-shadow: none;
}
.rse-woocommerce-shell button:hover,
.rse-woocommerce-shell button:focus,
.rse-woocommerce-shell input[type="submit"]:hover,
.rse-woocommerce-shell .button:hover,
.rse-woocommerce-shell a.button:hover {
    border-color: #5e6f1d;
    background: #5e6f1d;
    color: #fff;
}
.rse-woocommerce-shell .actions .button[disabled] { opacity: .45; }
.rse-woocommerce-shell .cart-collaterals { margin-top: 18px; }
.rse-woocommerce-shell .cart-collaterals .cart_totals {
    width: min(100%, 470px);
    padding: 22px;
    border: 1px solid rgba(39, 37, 31, .11);
    border-radius: 20px;
    background: #f5f3e8;
}
.rse-woocommerce-shell .cart-collaterals .cart_totals h2 {
    margin: 0 0 16px;
    font-size: 1.54rem;
}
.rse-woocommerce-shell .cart_totals table.shop_table td,
.rse-woocommerce-shell .cart_totals table.shop_table th { padding: 13px 0; }
.rse-woocommerce-shell .wc-proceed-to-checkout { padding: 12px 0 0; }
.rse-woocommerce-shell .wc-proceed-to-checkout a.checkout-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 54px;
    margin: 0;
    border-radius: 999px;
    background: #778a25;
    font-size: .95rem;
}
.rse-commerce-trust {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 22px;
}
.rse-commerce-trust article {
    min-height: 160px;
    padding: 24px;
    border: 1px solid rgba(39, 37, 31, .11);
    border-radius: 18px;
    background: #fffdf8;
}
.rse-commerce-trust__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin-bottom: 18px;
    border-radius: 50%;
    background: #e7ebd0;
    color: #56651e;
    font-size: .68rem;
    font-weight: 700;
}
.rse-commerce-trust h3 { margin: 0 0 8px; font-size: 1rem; }
.rse-commerce-trust p { margin: 0; color: #66635a; font-size: .89rem; line-height: 1.55; }
.rse-commerce-mobile-bar {
    position: fixed;
    z-index: 1000;
    right: 10px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 10px;
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 10px 10px 15px;
    border: 1px solid rgba(39, 37, 31, .14);
    border-radius: 17px;
    background: rgba(255, 253, 248, .96);
    box-shadow: 0 13px 38px rgba(39, 37, 31, .2);
    backdrop-filter: blur(16px);
}
.rse-commerce-mobile-bar span { display: block; color: #777368; font-size: .67rem; letter-spacing: .1em; text-transform: uppercase; }
.rse-commerce-mobile-bar strong { color: #303723; font-size: .96rem; }
.rse-commerce-mobile-bar a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 45px;
    padding: 0 18px;
    border-radius: 999px;
    background: #778a25;
    color: #fff;
    font-size: .84rem;
    font-weight: 700;
    text-decoration: none;
}
.rse-checkout-steps {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 18px;
}
.rse-checkout-steps span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #817d73;
    font-size: .78rem;
}
.rse-checkout-steps span::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    border: 1px solid rgba(39, 37, 31, .18);
    border-radius: 50%;
    content: attr(data-step);
}
.rse-checkout-steps span { counter-increment: rsecheckout; }
.rse-checkout-steps span::before { content: counter(rsecheckout); }
.rse-checkout-steps { counter-reset: rsecheckout; }
.rse-checkout-steps .is-complete::before,
.rse-checkout-steps .is-current::before { border-color: #778a25; background: #778a25; color: #fff; }
.rse-checkout-steps .is-current { color: #394315; font-weight: 700; }
.rse-woocommerce-shell--checkout .woocommerce { padding: clamp(20px, 4vw, 48px); }
.rse-woocommerce-shell--checkout .col2-set { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
.rse-woocommerce-shell--checkout .col2-set .col-1,
.rse-woocommerce-shell--checkout .col2-set .col-2 { float: none; width: 100%; }
.rse-woocommerce-shell--checkout .woocommerce-billing-fields > h3,
.rse-woocommerce-shell--checkout .woocommerce-additional-fields > h3,
.rse-woocommerce-shell--checkout #order_review_heading { margin: 0 0 18px; font-size: clamp(1.35rem, 2vw, 1.8rem); }
.rse-woocommerce-shell--checkout .form-row { margin: 0 0 15px; }
.rse-woocommerce-shell--checkout .form-row label { margin-bottom: 7px; color: #545146; font-size: .83rem; font-weight: 700; }
.rse-woocommerce-shell--checkout .form-row input.input-text,
.rse-woocommerce-shell--checkout .form-row textarea,
.rse-woocommerce-shell--checkout .form-row select,
.rse-woocommerce-shell--checkout .select2-container--default .select2-selection--single {
    min-height: 47px;
    border: 1px solid rgba(39, 37, 31, .17);
    border-radius: 10px;
    background: #fffdf8;
    box-shadow: none;
    color: #27251f;
}
.rse-woocommerce-shell--checkout .form-row input.input-text,
.rse-woocommerce-shell--checkout .form-row textarea,
.rse-woocommerce-shell--checkout .form-row select { padding: 0 12px; }
.rse-woocommerce-shell--checkout .form-row textarea { min-height: 110px; padding-top: 12px; }
.rse-woocommerce-shell--checkout .select2-container--default .select2-selection--single .select2-selection__rendered { padding-left: 12px; line-height: 45px; }
.rse-woocommerce-shell--checkout .select2-container--default .select2-selection--single .select2-selection__arrow { height: 45px; }
.rse-woocommerce-shell--checkout #order_review {
    padding: 23px;
    border: 1px solid rgba(39, 37, 31, .11);
    border-radius: 19px;
    background: #f5f3e8;
}
.rse-woocommerce-shell--checkout #order_review table.shop_table th,
.rse-woocommerce-shell--checkout #order_review table.shop_table td { padding: 11px 0; }
.rse-woocommerce-shell--checkout .woocommerce-checkout-payment { border-radius: 13px; background: #e9edd6; }
.rse-woocommerce-shell--checkout .woocommerce-checkout-payment div.payment_box { border-radius: 10px; background: #fffdf8; color: #59574f; }
.rse-woocommerce-shell--checkout .woocommerce-checkout-payment div.payment_box::before { border-bottom-color: #fffdf8; }
.rse-woocommerce-shell--checkout #place_order {
    width: 100%;
    min-height: 55px;
    margin-top: 13px;
    border-radius: 999px;
    background: #778a25;
    font-size: .95rem;
}
.rse-woocommerce-shell--checkout .woocommerce-order-details,
.rse-woocommerce-shell--checkout .woocommerce-customer-details { margin-top: 30px; }
@media (min-width: 900px) {
    .rse-woocommerce-shell--checkout form.woocommerce-checkout {
        display: grid;
        grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr);
        grid-template-areas: 'customer heading' 'customer review';
        gap: 0 42px;
        align-items: start;
    }
    .rse-woocommerce-shell--checkout form.woocommerce-checkout #customer_details { grid-area: customer; }
    .rse-woocommerce-shell--checkout form.woocommerce-checkout #order_review_heading { grid-area: heading; }
    .rse-woocommerce-shell--checkout form.woocommerce-checkout #order_review { grid-area: review; }
}
@media (max-width: 767px) {
    .rse-commerce { padding-bottom: 92px; }
    .rse-commerce-hero { padding-top: 34px; }
    .rse-commerce-hero__grid { grid-template-columns: 1fr; gap: 22px; }
    .rse-commerce-hero__card { min-height: 160px; border-radius: 22px; }
    .rse-commerce-hero__card strong { font-size: 3rem; }
    .rse-commerce-hero__card i { bottom: 18px; }
    .rse-commerce-hero__card i:nth-of-type(1) { right: 28px; height: 74px; }
    .rse-commerce-hero__card i:nth-of-type(2) { right: 55px; height: 60px; }
    .rse-commerce-hero__card i:nth-of-type(3) { right: 82px; height: 48px; }
    .rse-commerce-content__topline { font-size: .77rem; }
    .rse-woocommerce-shell { border-radius: 18px; }
    .rse-woocommerce-shell .woocommerce { padding: 16px; }
    .rse-woocommerce-shell table.shop_table thead { display: none; }
    .rse-woocommerce-shell table.shop_table,
    .rse-woocommerce-shell table.shop_table tbody,
    .rse-woocommerce-shell table.shop_table tr,
    .rse-woocommerce-shell table.shop_table td { display: block; width: 100%; }
    .rse-woocommerce-shell table.shop_table tr { position: relative; padding: 12px 0; }
    .rse-woocommerce-shell table.shop_table td { min-height: 0; padding: 6px 0; border: 0; text-align: left !important; }
    .rse-woocommerce-shell table.shop_table td.product-thumbnail { float: left; width: 92px; margin-right: 12px; }
    .rse-woocommerce-shell table.shop_table td.product-name { min-height: 67px; padding-right: 30px; }
    .rse-woocommerce-shell table.shop_table td.product-price,
    .rse-woocommerce-shell table.shop_table td.product-quantity,
    .rse-woocommerce-shell table.shop_table td.product-subtotal { display: inline-block; width: auto; margin-right: 16px; }
    .rse-woocommerce-shell table.shop_table td.product-remove { position: absolute; top: 6px; right: 0; width: auto; }
    .rse-woocommerce-shell table.shop_table td.actions { clear: both; padding-top: 18px !important; }
    .rse-woocommerce-shell .coupon { display: grid; grid-template-columns: 1fr; gap: 8px; }
    .rse-woocommerce-shell .coupon .button,
    .rse-woocommerce-shell .actions > .button { width: 100%; }
    .rse-woocommerce-shell .cart-collaterals .cart_totals { width: 100%; padding: 18px; }
    .rse-commerce-trust { grid-template-columns: 1fr; }
    .rse-commerce-trust article { min-height: auto; padding: 20px; }
    .rse-commerce-mobile-bar { display: flex; }
    .rse-checkout-steps { gap: 8px; overflow: hidden; }
    .rse-checkout-steps span { font-size: .7rem; white-space: nowrap; }
    .rse-checkout-steps span b { display: none; }
    .rse-woocommerce-shell--checkout .woocommerce { padding: 16px; }
    .rse-woocommerce-shell--checkout #order_review { padding: 16px; }
}

/* Slice 22 — Real product content and collection engine */
.rse-product-promise {
  margin: 0 0 18px;
  color: var(--rse-olive-dark);
  font-family: var(--rse-serif);
  font-size: clamp(24px, 3.2vw, 36px);
  line-height: 1.02;
  letter-spacing: -.04em;
}

.rse-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.rse-catalog-grid--shop {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rse-catalog-grid--pairings {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rse-catalog-card {
  overflow: hidden;
  background: rgba(255,255,255,.84);
  border: 1px solid var(--rse-line);
  border-radius: 24px;
  box-shadow: 0 14px 40px rgba(39,37,31,.06);
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.rse-catalog-card__media {
  min-height: 245px;
  background: linear-gradient(145deg, #f4f4dd, #eef1c7 56%, #d9df93);
  display: grid;
  place-items: center;
  overflow: hidden;
  text-decoration: none;
}

.rse-catalog-card__media > img,
.rse-catalog-card__image {
  width: 100%;
  height: 100%;
  min-height: 245px;
  object-fit: cover;
  display: block;
}

.rse-catalog-card__media .rse-product-fallback {
  transform: scale(.78);
}

.rse-catalog-card__body {
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 13px;
  flex: 1;
}

.rse-catalog-card__eyebrow {
  width: max-content;
  max-width: 100%;
  border-radius: 999px;
  background: rgba(137,155,42,.13);
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .13em;
  font-size: 10px;
  font-weight: 850;
  padding: 7px 10px;
}

.rse-catalog-card h3 {
  margin: 0;
  font-family: var(--rse-serif);
  font-size: clamp(28px, 2.4vw, 37px);
  line-height: .96;
  letter-spacing: -.045em;
  font-weight: 500;
}

.rse-catalog-card h3 a {
  text-decoration: none;
}

.rse-catalog-card p {
  margin: 0;
  color: var(--rse-muted);
  line-height: 1.54;
  font-size: 14px;
}

.rse-catalog-card__tags,
.rse-catalog-card__benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 0;
  margin: 0;
}

.rse-catalog-card__tags span {
  border: 1px solid var(--rse-line);
  padding: 6px 8px;
  border-radius: 999px;
  color: var(--rse-muted);
  font-size: 11px;
}

.rse-catalog-card__benefits {
  display: grid;
  gap: 6px;
  list-style: none;
}

.rse-catalog-card__benefits li {
  color: var(--rse-ink);
  font-size: 12px;
  line-height: 1.4;
  padding-left: 16px;
  position: relative;
}

.rse-catalog-card__benefits li::before {
  content: '•';
  position: absolute;
  left: 0;
  color: var(--rse-olive-dark);
}

.rse-catalog-card__footer {
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid var(--rse-line);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.rse-catalog-card__price {
  color: var(--rse-ink);
  font-weight: 800;
}

.rse-catalog-empty {
  max-width: 840px;
  margin: 12px auto 0;
  padding: 28px;
  border-radius: 22px;
  border: 1px dashed rgba(94,111,29,.38);
  background: rgba(255,255,255,.48);
}

.rse-catalog-empty strong {
  display: block;
  font-family: var(--rse-serif);
  font-size: clamp(28px, 3.6vw, 48px);
  letter-spacing: -.04em;
  line-height: .98;
  font-weight: 500;
}

.rse-catalog-empty p {
  max-width: 660px;
  color: var(--rse-muted);
  line-height: 1.55;
}

.rse-home-collection__heading .rse-text-link {
  margin-top: 4px;
  display: inline-flex;
}

.rse-product-ingredient-list {
  display: grid;
  gap: 10px;
  margin: 0 0 14px;
}

.rse-product-ingredient-list article {
  background: rgba(137,155,42,.08);
  border: 1px solid rgba(94,111,29,.14);
  border-radius: 14px;
  padding: 14px;
}

.rse-product-ingredient-list strong,
.rse-product-ingredient-list span,
.rse-product-ingredient-list p {
  display: block;
}

.rse-product-ingredient-list strong {
  font-family: var(--rse-serif);
  font-size: 20px;
  font-weight: 500;
}

.rse-product-ingredient-list span {
  margin-top: 4px;
  color: var(--rse-olive-dark);
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 10px;
  font-weight: 800;
}

.rse-product-ingredient-list p {
  margin: 8px 0 0;
  color: var(--rse-muted);
  line-height: 1.5;
}

.rse-shop-hero {
  position: relative;
  overflow: hidden;
  min-height: 500px;
  padding: clamp(72px, 10vw, 132px) 0;
  background: linear-gradient(125deg, #fdfcf4 0%, #f1f3cf 52%, #e0e79e 100%);
}

.rse-shop-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(300px, .98fr);
  gap: clamp(36px, 8vw, 100px);
  align-items: center;
  position: relative;
  z-index: 1;
}

.rse-shop-hero h1 {
  max-width: 760px;
  margin: 0;
  color: var(--rse-ink);
  font-family: var(--rse-serif);
  font-size: clamp(56px, 8vw, 104px);
  letter-spacing: -.06em;
  line-height: .93;
  font-weight: 500;
}

.rse-shop-hero p:not(.rse-kicker) {
  max-width: 660px;
  color: var(--rse-muted);
  font-size: clamp(16px, 2vw, 20px);
  line-height: 1.55;
}

.rse-shop-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.rse-shop-hero__visual {
  min-height: 370px;
  display: grid;
  place-items: center;
  position: relative;
}

.rse-shop-hero__glow,
.rse-shop-hero__orb {
  position: absolute;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255,255,255,.96) 0 7%, rgba(237,211,105,.85) 14%, rgba(137,155,42,.78) 42%, rgba(137,155,42,0) 70%);
}

.rse-shop-hero__glow {
  width: 520px;
  height: 520px;
  right: -130px;
  top: -170px;
  opacity: .6;
}

.rse-shop-hero__orb {
  width: 250px;
  height: 250px;
  top: 50px;
  right: 30px;
}

.rse-shop-hero__pack {
  width: 230px;
  min-height: 300px;
  z-index: 1;
  padding: 34px 26px;
  border-radius: 34px 34px 24px 24px;
  background: linear-gradient(145deg, #70801d, #9eae35 78%);
  color: #fff;
  box-shadow: 0 34px 60px rgba(76,91,15,.28), inset 0 0 0 1px rgba(255,255,255,.24);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.rse-shop-hero__pack span {
  font-family: var(--rse-serif);
  font-size: 34px;
  letter-spacing: -.06em;
}

.rse-shop-hero__pack strong {
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 11px;
}

.rse-collection-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 36px;
}

.rse-collection-nav a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  text-decoration: none;
  color: var(--rse-olive-dark);
  border: 1px solid rgba(94,111,29,.22);
  border-radius: 999px;
  padding: 11px 15px;
  background: rgba(255,255,255,.72);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.rse-collection-nav span {
  min-width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  background: var(--rse-olive-dark);
  color: #fff;
  border-radius: 999px;
  font-size: 10px;
}

.rse-collection-group {
  padding: 42px 0;
  border-top: 1px solid var(--rse-line);
}

.rse-collection-group__heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 20px;
}

.rse-collection-group__heading .rse-kicker {
  margin: 0;
}

.rse-collection-group__heading > span {
  color: var(--rse-muted);
  font-size: 13px;
}

@media (max-width: 980px) {
  .rse-catalog-grid,
  .rse-catalog-grid--shop,
  .rse-catalog-grid--pairings { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rse-shop-hero__grid { grid-template-columns: 1fr; }
  .rse-shop-hero__visual { min-height: 300px; }
  .rse-shop-hero__orb { right: 22%; top: 18px; }
}

@media (max-width: 640px) {
  .rse-catalog-grid,
  .rse-catalog-grid--shop,
  .rse-catalog-grid--pairings { grid-template-columns: 1fr; gap: 16px; }
  .rse-catalog-card__media,
  .rse-catalog-card__media > img,
  .rse-catalog-card__image { min-height: 220px; }
  .rse-catalog-card__body { padding: 18px; }
  .rse-shop-hero { min-height: auto; padding-top: 64px; }
  .rse-shop-hero__visual { min-height: 250px; }
  .rse-shop-hero__pack { width: 180px; min-height: 230px; padding: 24px; }
  .rse-shop-hero__orb { width: 200px; height: 200px; right: 20%; }
  .rse-collection-group { padding: 30px 0; }
  .rse-collection-group__heading { align-items: start; flex-direction: column; gap: 6px; }
  .rse-collection-nav { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 4px; }
  .rse-collection-nav a { white-space: nowrap; }
}
