/* Conversion-focused storefront layer — intentionally isolated from the legacy theme. */
:root {
  --commerce-ink: #092a4a;
  --commerce-blue: #0d4f86;
  --commerce-blue-deep: #07345c;
  --commerce-gold: #d9a62e;
  --commerce-cream: #fbf8ef;
  --commerce-line: rgba(9, 42, 74, 0.12);
}

html {
  scroll-padding-top: 86px;
}

/* Simulated purchase notifications are intentionally suppressed. */
#socialProofToast {
  display: none !important;
}

.purchase-intro {
  position: relative;
  overflow: hidden;
  padding: 82px 0 76px;
  color: var(--commerce-ink);
  background:
    radial-gradient(circle at 79% 18%, rgba(231, 193, 93, 0.19), transparent 28%),
    linear-gradient(135deg, #fffdf8 0%, #f4f8f8 52%, #edf5f4 100%);
}

.purchase-intro::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  opacity: 0.32;
  background-image: radial-gradient(rgba(13, 79, 134, 0.17) 0.7px, transparent 0.7px);
  background-size: 18px 18px;
  mask-image: linear-gradient(90deg, #000, transparent 42%);
}

.purchase-intro-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
  align-items: center;
  gap: clamp(44px, 7vw, 100px);
}

.purchase-intro-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 20px;
  color: var(--commerce-blue);
  font-family: Poppins, sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.purchase-intro-eyebrow i {
  color: var(--commerce-gold);
}

.purchase-intro h1 {
  max-width: 720px;
  margin: 0 0 18px;
  color: var(--commerce-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.2rem, 4.25vw, 4.15rem);
  font-weight: 700;
  line-height: 1.04;
  letter-spacing: -0.035em;
}

.purchase-intro-copy > p {
  max-width: 660px;
  margin: 0 0 28px;
  color: #456076;
  font-size: clamp(1rem, 1.4vw, 1.12rem);
  line-height: 1.75;
}

.purchase-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 30px;
}

.purchase-benefits > span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid var(--commerce-line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 5px 18px rgba(9, 42, 74, 0.04);
}

.purchase-benefits i {
  color: var(--commerce-gold);
}

.purchase-benefits b {
  color: #244963;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.purchase-intro-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 30px;
}

.purchase-primary,
.purchase-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 54px;
  padding: 0 24px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;
  transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.purchase-primary {
  color: #fff;
  background: var(--commerce-blue);
  box-shadow: 0 12px 30px rgba(13, 79, 134, 0.22);
}

.purchase-primary:hover {
  color: #fff;
  background: var(--commerce-blue-deep);
  box-shadow: 0 16px 34px rgba(13, 79, 134, 0.28);
  transform: translateY(-2px);
}

.purchase-secondary {
  color: var(--commerce-blue);
  border: 1px solid rgba(13, 79, 134, 0.2);
  background: rgba(255, 255, 255, 0.58);
}

.purchase-secondary:hover {
  color: var(--commerce-blue-deep);
  background: #fff;
  transform: translateY(-2px);
}

.purchase-assurance {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  padding-top: 22px;
  border-top: 1px solid var(--commerce-line);
  color: #567083;
  font-size: 0.82rem;
  font-weight: 600;
}

.purchase-assurance > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.purchase-assurance i {
  color: var(--commerce-blue);
}

.purchase-intro-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 480px;
  margin: 0;
}

.purchase-visual-halo {
  position: absolute;
  width: min(92%, 470px);
  aspect-ratio: 1;
  border: 1px solid rgba(217, 166, 46, 0.38);
  border-radius: 50%;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.78), rgba(223, 239, 236, 0.52));
  box-shadow: inset 0 0 0 22px rgba(255, 255, 255, 0.26), 0 32px 80px rgba(9, 42, 74, 0.12);
}

.purchase-intro-visual img {
  position: relative;
  z-index: 1;
  width: min(112%, 570px);
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 28px 24px rgba(9, 42, 74, 0.17));
}

.purchase-intro-visual figcaption {
  position: absolute;
  z-index: 2;
  right: 0;
  bottom: 38px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  color: #27485e;
  border: 1px solid rgba(13, 79, 134, 0.12);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 32px rgba(9, 42, 74, 0.12);
  backdrop-filter: blur(10px);
  font-size: 0.82rem;
  font-weight: 700;
}

.purchase-intro-visual figcaption i {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  color: #fff;
  border-radius: 50%;
  background: #27815d;
}

body[data-page="calcium-gold"] #combo-offers.combo-section {
  padding-top: 78px !important;
}

body[data-page="calcium-gold"] #combo-offers .combo-heading {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
}

body[data-page="calcium-gold"] #combo-offers .combo-topbar {
  width: fit-content;
  margin-right: auto;
  margin-left: auto;
}

body[data-page="calcium-gold"] #combo-offers .combo-reassurance {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  letter-spacing: 0;
  text-transform: none;
}

body[data-page="calcium-gold"] #combo-offers .combo-card2,
body[data-page="calcium-gold"] #combo-offers .combo-promo {
  box-shadow: 0 16px 45px rgba(9, 42, 74, 0.11) !important;
}

body[data-page="calcium-gold"] #combo-offers .cc-btn,
body[data-page="calcium-gold"] #combo-offers .combo-promo-link {
  border-radius: 8px !important;
}

.order-card-intro {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: -4px 0 22px;
  padding: 0 0 20px;
  border-bottom: 1px solid rgba(9, 42, 74, 0.1);
}

.order-card-step {
  display: grid;
  flex: 0 0 46px;
  height: 46px;
  place-items: center;
  color: #fff;
  border-radius: 50%;
  background: var(--commerce-blue);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.order-card-intro div {
  display: grid;
  gap: 3px;
}

.order-card-intro b {
  color: var(--commerce-ink);
  font-size: 1rem;
}

.order-card-intro small {
  color: #718292;
  line-height: 1.45;
}

.order-note-disclosure {
  overflow: hidden;
  border: 1px solid rgba(9, 42, 74, 0.11);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.5);
}

.order-note-disclosure summary {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 13px 15px;
  color: #466176;
  cursor: pointer;
  list-style: none;
  font-size: 0.86rem;
  font-weight: 650;
}

.order-note-disclosure summary::-webkit-details-marker {
  display: none;
}

.order-note-disclosure summary i {
  transition: transform 180ms ease;
}

.order-note-disclosure[open] summary i {
  transform: rotate(45deg);
}

.order-note-disclosure .order-field {
  margin: 0 12px 12px;
}

.mobile-action-bar {
  gap: 8px !important;
  padding: 6px 10px calc(6px + env(safe-area-inset-bottom)) !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.mobile-action-bar a {
  min-width: 0;
  min-height: 48px;
  border-radius: 9px !important;
  font-size: 0.84rem !important;
}

.mobile-action-bar .mobile-action-secondary {
  flex: 0.9;
  color: var(--commerce-blue) !important;
  border: 1px solid rgba(13, 79, 134, 0.2) !important;
  background: #fff !important;
}

.mobile-action-bar .mobile-action-primary {
  flex: 1.1;
  color: #fff !important;
  border: 1px solid var(--commerce-blue) !important;
  background: var(--commerce-blue) !important;
}

@media (max-width: 991.98px) {
  .purchase-intro {
    padding: 58px 0 62px;
  }

  .purchase-intro-shell {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .purchase-intro-copy {
    text-align: center;
  }

  .purchase-intro h1,
  .purchase-intro-copy > p {
    margin-right: auto;
    margin-left: auto;
  }

  .purchase-benefits,
  .purchase-intro-actions,
  .purchase-assurance {
    justify-content: center;
  }

  .purchase-intro-visual {
    min-height: 390px;
  }

  .purchase-intro-visual img {
    width: min(96%, 510px);
  }

  .purchase-intro-visual figcaption {
    right: 8%;
  }
}

@media (max-width: 575.98px) {
  html {
    scroll-padding-top: 72px;
  }

  .purchase-intro {
    padding: 44px 0 46px;
  }

  .purchase-intro .container {
    padding-right: 18px;
    padding-left: 18px;
  }

  .purchase-intro-eyebrow {
    margin-bottom: 14px;
    font-size: 0.65rem;
  }

  .purchase-intro h1 {
    font-size: clamp(2rem, 10.3vw, 2.8rem);
    line-height: 1.08;
  }

  .purchase-intro-copy > p {
    display: -webkit-box;
    overflow: hidden;
    margin-bottom: 22px;
    font-size: 0.94rem;
    line-height: 1.62;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .purchase-benefits {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7px;
    margin-bottom: 24px;
  }

  .purchase-benefits > span {
    min-height: 76px;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    padding: 9px 5px;
    border-radius: 10px;
  }

  .purchase-benefits b {
    font-size: 0.59rem;
    line-height: 1.35;
  }

  .purchase-intro-actions {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 8px;
    margin-bottom: 22px;
  }

  .purchase-primary,
  .purchase-secondary {
    min-height: 50px;
    padding: 0 13px;
    font-size: 0.8rem;
  }

  .purchase-assurance {
    gap: 8px 13px;
    padding-top: 17px;
    font-size: 0.7rem;
  }

  .purchase-intro-visual {
    min-height: 285px;
  }

  .purchase-visual-halo {
    width: 280px;
  }

  .purchase-intro-visual img {
    width: min(98%, 355px);
  }

  .purchase-intro-visual figcaption {
    right: 2%;
    bottom: 6px;
    padding: 9px 11px;
    font-size: 0.69rem;
  }

  body[data-page="calcium-gold"] #combo-offers.combo-section {
    padding-top: 50px !important;
  }

  body[data-page="calcium-gold"] #combo-offers .combo-topbar {
    max-width: 100%;
  }

  body[data-page="calcium-gold"] #combo-offers .ct-sep,
  body[data-page="calcium-gold"] #combo-offers .combo-topbar > .ct-item:first-child {
    display: none !important;
  }

  .order-card-intro {
    align-items: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .purchase-primary,
  .purchase-secondary,
  .order-note-disclosure summary i {
    transition: none;
  }
}
