* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 1rem;
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--color-white);
  color: var(--color-text-primary);
  font-family: var(--font-body);
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  text-rendering: optimizeLegibility;
}

img,
picture {
  display: block;
  max-width: 100%;
}

img {
  height: auto;
}

a {
  color: inherit;
}

a:focus-visible,
button:focus-visible {
  outline: 3px solid var(--color-focus-ring);
  outline-offset: 3px;
}

button {
  font: inherit;
}

h1,
h2,
h3 {
  margin: 0;
  font-family: var(--font-display);
  line-height: var(--line-height-heading);
  text-wrap: balance;
}

h1 {
  max-width: var(--hero-copy-max);
  margin-inline: auto;
  font-size: var(--font-size-hero);
  line-height: var(--line-height-hero);
}

h2 {
  font-size: var(--font-size-section-title);
}

h3 {
  font-size: clamp(1.125rem, 4.8vw, 1.35rem);
}

p,
ul {
  margin-block: 0;
}

ul {
  padding-left: 1.25rem;
}

li + li {
  margin-top: 0.55rem;
}

.container {
  width: min(calc(100% - (2 * var(--space-container-inline))), var(--container-max));
  margin-inline: auto;
}

.section {
  padding-block: var(--space-section);
}

.section--light {
  background: linear-gradient(180deg, var(--color-light-surface), #f7f3fb);
}

.section--white {
  background: var(--color-white);
}

.section--purple {
  background:
    radial-gradient(circle at 15% 10%, rgb(91 22 142 / 38%), transparent 36%),
    radial-gradient(circle at 90% 85%, rgb(245 200 76 / 11%), transparent 28%),
    var(--color-purple-section);
  color: var(--color-white);
}

.section--deep {
  background:
    radial-gradient(circle at 50% 0, rgb(91 22 142 / 46%), transparent 34rem),
    var(--color-purple-deep);
  color: var(--color-white);
}

.section-heading {
  max-width: 46rem;
  margin-inline: auto;
  text-align: center;
}

.section-heading > * + * {
  margin-top: var(--space-md);
}

.section-intro {
  max-width: var(--copy-measure);
  margin-inline: auto;
  color: var(--color-text-secondary);
}

.section--purple .section-intro,
.section--deep .section-intro {
  color: var(--color-lavender-text);
}

.eyebrow,
.offer__badge {
  display: inline-flex;
  min-height: 2.25rem;
  align-items: center;
  justify-content: center;
  padding: 0.35rem 0.9rem;
  border: 1px solid rgb(245 200 76 / 60%);
  border-radius: var(--radius-pill);
  color: var(--color-gold-dark-surface);
  font-size: var(--font-size-helper);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.02em;
  text-align: center;
}

.gold {
  color: var(--color-gold-dark-surface);
}

.hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-block: clamp(2.5rem, 11vw, 4.75rem) var(--space-section);
  background:
    radial-gradient(circle at 50% -12%, rgb(141 68 192 / 56%), transparent 42%),
    radial-gradient(circle at 9% 88%, rgb(245 200 76 / 12%), transparent 28%),
    var(--color-purple-deep);
  color: var(--color-white);
  text-align: center;
}

.hero::before,
.hero::after {
  position: absolute;
  z-index: -1;
  width: 18rem;
  height: 18rem;
  border: 1px solid rgb(245 200 76 / 13%);
  border-radius: var(--radius-circle);
  content: "";
}

.hero::before {
  top: 7%;
  left: -12rem;
}

.hero::after {
  right: -12rem;
  bottom: 3%;
}

.hero > .container,
.hero__copy {
  display: grid;
  justify-items: center;
}

.hero__copy {
  gap: clamp(1rem, 4.8vw, 1.5rem);
}

.hero__subheadline {
  max-width: 45rem;
  color: var(--color-lavender-text);
  font-size: clamp(1.05rem, 4.4vw, 1.32rem);
  line-height: 1.55;
}

.hero__media {
  width: min(100%, 30rem);
  margin-top: clamp(1.5rem, 7vw, 2.4rem);
  overflow: hidden;
  border: 1px solid rgb(245 200 76 / 42%);
  border-radius: var(--radius-panel);
  background: #17002d;
  box-shadow: var(--shadow-hero-media);
}

.hero__media img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.hero > .container > .section-cta {
  width: 100%;
}

.cta {
  display: inline-flex;
  width: min(100%, var(--cta-max-width));
  min-height: var(--cta-min-height);
  align-items: center;
  justify-content: center;
  padding: 0.9rem 1.15rem;
  border: 0;
  border-radius: var(--radius-button);
  background: linear-gradient(180deg, #1c7b3f, var(--color-green-cta));
  box-shadow: 0 0.75rem 1.5rem rgb(0 0 0 / 22%);
  color: var(--color-white);
  cursor: pointer;
  font-size: clamp(0.93rem, 4vw, 1.07rem);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.012em;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition:
    background-color var(--motion-fast) var(--motion-easing),
    transform var(--motion-fast) var(--motion-easing),
    box-shadow var(--motion-fast) var(--motion-easing);
}

.cta:hover {
  background: var(--color-green-cta-hover);
  box-shadow: 0 0.9rem 1.8rem rgb(0 0 0 / 28%);
  transform: translateY(-2px);
}

.cta[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: 0.9;
}

.cta[aria-disabled="true"]:hover {
  background: linear-gradient(180deg, #1c7b3f, var(--color-green-cta));
  transform: none;
}

.section-cta {
  display: flex;
  width: 100%;
  justify-content: center;
  margin-top: var(--space-section-cta);
}

.benefits {
  position: relative;
  z-index: 2;
  padding-block: 1.15rem;
  background: var(--color-white);
  box-shadow: 0 0.6rem 1.8rem rgb(18 0 31 / 12%);
}

.benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}

.benefit {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.55rem;
  align-items: start;
  color: var(--color-text-primary);
  font-size: clamp(0.8rem, 3.7vw, 0.94rem);
  line-height: 1.4;
}

.benefit__mark {
  display: grid;
  width: 1.55rem;
  height: 1.55rem;
  place-items: center;
  border-radius: var(--radius-circle);
  background: var(--color-lavender-surface);
  color: var(--color-purple-interactive);
  font-weight: var(--font-weight-bold);
}

.problem-grid,
.possibility-grid,
.card-grid,
.audience-grid {
  display: grid;
  gap: var(--space-card-gap);
  margin-top: var(--space-xl);
}

.problem-item {
  position: relative;
  padding: 1rem 1rem 1rem 2.85rem;
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-card);
  background: var(--color-white);
  box-shadow: var(--shadow-card);
}

.problem-item::before {
  position: absolute;
  top: 1rem;
  left: 1rem;
  color: var(--color-purple-interactive);
  content: "✦";
  font-weight: var(--font-weight-bold);
}

.copy-panel {
  max-width: var(--copy-measure);
  margin: var(--space-xl) auto 0;
  padding: clamp(1.25rem, 5vw, 2rem);
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-panel);
  background: var(--color-white);
  box-shadow: var(--shadow-card);
}

.copy-panel > * + * {
  margin-top: var(--space-md);
}

.guide-feature {
  display: grid;
  gap: var(--space-lg);
  align-items: center;
  max-width: 50rem;
  margin: var(--space-xl) auto 0;
}

.guide-feature__media,
.product-card__media {
  overflow: hidden;
  border-radius: var(--radius-card);
  background: radial-gradient(circle at 50% 35%, #fff, #eee8f6 75%);
}

.guide-feature__media {
  width: min(100%, 24rem);
  margin-inline: auto;
  box-shadow: var(--shadow-product);
}

.guide-feature__media img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.product-card__media {
  aspect-ratio: 4 / 5;
}

.product-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.purple-checklist,
.audience-grid,
.offer__list {
  padding: 0;
  list-style: none;
}

.purple-checklist {
  display: grid;
  gap: 0.85rem;
  margin: var(--space-xl) auto 0;
  max-width: 48rem;
}

.purple-checklist li,
.offer__list li {
  position: relative;
  margin: 0;
  padding-left: 2rem;
}

.purple-checklist li::before,
.offer__list li::before {
  position: absolute;
  top: 0.08em;
  left: 0;
  display: grid;
  width: 1.4rem;
  height: 1.4rem;
  place-items: center;
  border-radius: var(--radius-circle);
  background: var(--color-green-cta);
  color: var(--color-white);
  content: "✓";
  font-size: 0.78rem;
  font-weight: var(--font-weight-bold);
}

.emphasis-line {
  max-width: var(--copy-measure);
  margin: var(--space-xl) auto 0;
  padding: 1rem 1.2rem;
  border-left: 4px solid var(--color-gold-dark-surface);
  background: rgb(255 255 255 / 9%);
  color: var(--color-white);
  font-weight: var(--font-weight-bold);
}

.card-grid {
  grid-template-columns: 1fr;
}

.card,
.product-card {
  overflow: hidden;
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-card);
  background: var(--color-white);
  box-shadow: var(--shadow-card);
  color: var(--color-text-primary);
}

.card__media {
  overflow: hidden;
  background: var(--color-lavender-surface);
}

.card__media img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.card__body,
.product-card__body {
  padding: clamp(1.15rem, 5vw, 1.5rem);
}

.card__body > * + *,
.product-card__body > * + * {
  margin-top: var(--space-sm);
}

.card__body p,
.product-card__body p {
  color: var(--color-text-secondary);
}

.product-card {
  display: grid;
  height: 100%;
  grid-template-rows: auto 1fr;
}

.product-card__media {
  width: 100%;
  border-radius: 0;
  box-shadow: none;
}

.product-card__body strong {
  color: var(--color-gold-light-surface);
}

.audience-grid {
  max-width: 50rem;
  margin-inline: auto;
}

.audience-grid li {
  position: relative;
  margin: 0;
  padding: 0.9rem 1rem 0.9rem 2.75rem;
  border: 1px solid rgb(91 22 142 / 8%);
  border-radius: var(--radius-card);
  background: var(--color-lavender-surface);
  list-style: none;
}

.audience-grid li::before {
  position: absolute;
  left: 1rem;
  color: var(--color-purple-interactive);
  content: "◆";
}

.possibility {
  padding: var(--space-lg);
  border: 1px solid rgb(138 90 0 / 24%);
  border-radius: var(--radius-card);
  background: linear-gradient(145deg, #fffdf6, #fff5d6);
  box-shadow: 0 0.6rem 1.6rem rgb(138 90 0 / 9%);
}

.offer {
  scroll-margin-top: 1rem;
}

.offer__panel {
  display: grid;
  gap: var(--space-offer-inner);
  max-width: var(--offer-max);
  margin-inline: auto;
  padding: clamp(1.25rem, 5vw, 2.25rem);
  border: 1px solid rgb(245 200 76 / 48%);
  border-radius: var(--radius-offer);
  background:
    radial-gradient(circle at 50% 8%, rgb(91 22 142 / 48%), transparent 28rem),
    rgb(18 0 31 / 76%);
  box-shadow: 0 1.5rem 4rem rgb(0 0 0 / 28%);
}

.offer__header {
  display: grid;
  justify-items: center;
  gap: var(--space-md);
  text-align: center;
}

.offer__bundle {
  width: min(100%, 48rem);
  margin-inline: auto;
  overflow: hidden;
  border: 1px solid rgb(245 200 76 / 28%);
  border-radius: var(--radius-panel);
  background: #17002d;
  box-shadow: var(--shadow-product);
}

.offer__bundle img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
}

.offer__stack {
  display: grid;
  gap: var(--space-lg);
}

.offer__list {
  display: grid;
  gap: 0.72rem;
  padding: 1.1rem;
  border: 1px solid rgb(237 233 254 / 14%);
  border-radius: var(--radius-card);
  background: rgb(255 255 255 / 6%);
}

.offer__reference {
  color: var(--color-gold-dark-surface);
  font-weight: var(--font-weight-bold);
  text-align: center;
}

.offer__price-box {
  display: grid;
  justify-items: center;
  gap: 0.6rem;
  padding: 1.2rem;
  border: 1px solid rgb(245 200 76 / 34%);
  border-radius: var(--radius-card);
  background: rgb(255 255 255 / 8%);
  text-align: center;
}

.offer__price-label {
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 6vw, 2rem);
  line-height: 1.2;
}

.offer__price {
  display: block;
  margin-top: 0.35rem;
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: clamp(3rem, 14vw, 4.8rem);
  font-weight: var(--font-weight-price);
  letter-spacing: -0.055em;
  line-height: 0.95;
}

.offer__guarantee {
  color: var(--color-gold-dark-surface);
  font-weight: var(--font-weight-bold);
}

.offer__action {
  display: grid;
  justify-items: center;
  gap: var(--space-sm);
}

.offer__action .cta {
  max-width: none;
}

.guarantee {
  display: grid;
  gap: var(--space-xl);
  max-width: 50rem;
  margin-inline: auto;
  padding: clamp(1.4rem, 6vw, 2.5rem);
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-panel);
  background: var(--color-white);
  box-shadow: var(--shadow-card);
}

.guarantee__seal {
  display: block;
  width: clamp(8rem, 36vw, 11rem);
  height: auto;
  justify-self: center;
  filter: drop-shadow(0 .7rem 1rem rgb(30 9 55 / 18%));
}

.guarantee__content > * + * {
  margin-top: var(--space-md);
}

.faq {
  max-width: var(--faq-max);
  margin: var(--space-xl) auto 0;
  border-top: 1px solid var(--color-border-soft);
}

.faq__item {
  border-bottom: 1px solid var(--color-border-soft);
}

.faq__question {
  display: grid;
  width: 100%;
  min-height: var(--interactive-min-height);
  grid-template-columns: 1fr auto;
  gap: var(--space-md);
  align-items: center;
  padding: 1rem 0;
  border: 0;
  background: transparent;
  color: var(--color-text-primary);
  cursor: pointer;
  font-weight: var(--font-weight-bold);
  text-align: left;
}

.faq__question::after {
  color: var(--color-purple-interactive);
  content: "+";
  font-size: 1.5rem;
  line-height: 1;
}

.faq__question[aria-expanded="true"]::after {
  content: "−";
}

.faq__answer {
  padding: 0 0 1rem;
  color: var(--color-text-secondary);
}

.faq__answer[hidden] {
  display: none;
}

.footer {
  padding-block: var(--space-2xl);
  background: var(--color-purple-night);
  color: var(--color-lavender-text);
  font-size: var(--font-size-helper);
  text-align: center;
}

.footer__content {
  display: grid;
  gap: var(--space-md);
  max-width: 50rem;
  margin-inline: auto;
}

.footer__brand {
  color: var(--color-white);
  font-size: 1rem;
}

.footer__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-md);
}

.footer__links a {
  min-height: var(--interactive-min-height);
  align-content: center;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.legal-page {
  min-height: 100vh;
  background: var(--color-light-surface);
}

.legal-header {
  padding-block: var(--space-xl);
  background: var(--color-purple-deep);
  color: var(--color-white);
}

.legal-header a {
  display: inline-flex;
  min-height: var(--interactive-min-height);
  align-items: center;
  color: var(--color-gold-dark-surface);
  font-weight: var(--font-weight-bold);
}

.legal-main {
  max-width: 48rem;
  padding-block: var(--space-2xl);
}

.legal-main > * + * {
  margin-top: var(--space-lg);
}

.legal-notice {
  padding: var(--space-lg);
  border-left: 4px solid var(--color-gold-light-surface);
  border-radius: var(--radius-card);
  background: #fff9e6;
}

.not-found {
  display: grid;
  min-height: 100vh;
  place-content: center;
  padding: var(--space-xl);
  background: var(--color-purple-deep);
  color: var(--color-white);
  text-align: center;
}

.not-found > * + * {
  margin-top: var(--space-lg);
}

@media (min-width: 48rem) {
  :root {
    --space-section: clamp(4rem, 7vw, 5rem);
  }

  .benefits__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .problem-grid,
  .possibility-grid,
  .audience-grid,
  .card-grid--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .guarantee {
    grid-template-columns: minmax(14rem, 0.8fr) minmax(0, 1.2fr);
  }

  .offer__stack {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .offer__content {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(16rem, 0.85fr);
    align-items: start;
    gap: var(--space-lg);
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  .cta:hover {
    transform: none;
  }
}

/* Source-faithful copy components */
.hero__proofs { display:flex; flex-wrap:wrap; justify-content:center; gap:.55rem; max-width:46rem; }
.hero__proofs span { padding:.42rem .72rem; border:1px solid rgb(245 200 76 / 34%); border-radius:var(--radius-pill); background:rgb(255 255 255 / 7%); color:var(--color-lavender-text); font-size:var(--font-size-helper); font-weight:var(--font-weight-bold); }
.hero__security { margin-top:var(--space-sm); color:var(--color-gold-dark-surface); font-size:var(--font-size-helper); font-weight:var(--font-weight-bold); text-align:center; }
.mechanism-headline { color:var(--color-purple-interactive); font-family:var(--font-display); font-size:clamp(2rem,9vw,3.8rem); font-weight:var(--font-weight-heading); line-height:1.05; }
.mechanism-list { display:grid; gap:.7rem; margin:var(--space-md) 0; padding-left:1.4rem; }
.bonus-total { max-width:38rem; margin:var(--space-xl) auto 0; padding:var(--space-lg); border:1px solid rgb(245 200 76 / 48%); border-radius:var(--radius-panel); background:rgb(255 255 255 / 8%); text-align:center; }
.bonus-total > * + * { margin-top:var(--space-sm); }
.product-card__badge { position:absolute; z-index:2; top:.7rem; left:.7rem; padding:.38rem .65rem; border-radius:var(--radius-pill); background:var(--color-green-cta); color:var(--color-white); font-size:.72rem; font-weight:var(--font-weight-bold); letter-spacing:.03em; box-shadow:var(--shadow-card); }
.product-card { position:relative; }
.countdown-label { margin-top:.5rem; }
.countdown { display:grid; grid-template-columns:auto auto auto auto auto auto auto auto; align-items:baseline; gap:.32rem; color:var(--color-gold-dark-surface); font-variant-numeric:tabular-nums; }
.countdown span { font-size:clamp(1.5rem,7vw,2.35rem); font-weight:var(--font-weight-bold); }
.countdown small { color:var(--color-lavender-text); font-size:.75rem; }
.offer__security { color:var(--color-gold-dark-surface); font-weight:var(--font-weight-bold); text-align:center; }
.trust-badges { display:grid; width:min(100%, 32rem); grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(.55rem,2.6vw,1rem); align-items:start; margin-top:var(--space-sm); }
.trust-badge { display:grid; min-width:0; justify-items:center; gap:.35rem; margin:0; text-align:center; }
.trust-badge img { display:block; width:clamp(4.7rem,21vw,7.5rem); height:auto; filter:drop-shadow(0 .45rem .7rem rgb(0 0 0 / 22%)); }
.trust-badge figcaption { color:var(--color-white); font-size:clamp(.68rem,2.5vw,.82rem); font-weight:var(--font-weight-bold); line-height:1.2; text-wrap:balance; }
@media (max-width: 22rem) { .trust-badges { gap:.3rem; } .trust-badge img { width:4.35rem; } .trust-badge figcaption { font-size:.64rem; } }
@media (max-width: 24rem) { .countdown { gap:.18rem; } .countdown span { font-size:1.35rem; } .countdown small { font-size:.68rem; } }
@media (prefers-reduced-motion: reduce) { .countdown { scroll-behavior:auto; } }

/* Hero first-fold constraint v1 */
.hero {
  min-height: min(100svh, 60rem);
  padding-block: clamp(.75rem, 2.6vh, 1.35rem) clamp(.9rem, 2.8vh, 1.5rem);
}

.hero > .container {
  gap: 0;
}

.hero__copy {
  gap: clamp(.45rem, 1.5vh, .7rem);
}

.hero .eyebrow {
  min-height: 1.75rem;
  padding: .22rem .65rem;
  font-size: clamp(.68rem, 3vw, .76rem);
}

.hero h1 {
  max-width: 23rem;
  font-size: clamp(1.52rem, 7vw, 1.9rem);
  line-height: 1.05;
}

.hero__subheadline {
  max-width: 25rem;
  font-size: clamp(.88rem, 3.8vw, 1rem);
  line-height: 1.35;
}

.hero__proofs {
  gap: .28rem;
}

.hero__proofs span {
  padding: .2rem .38rem;
  font-size: clamp(.62rem, 2.75vw, .7rem);
  line-height: 1.15;
}

.hero__media {
  width: min(100%, 24rem);
  height: clamp(11rem, 52vw, 13rem);
  margin-top: clamp(.55rem, 1.8vh, .75rem);
  border-radius: 1rem;
}

.hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 43%;
}

.hero > .container > .section-cta {
  margin-top: clamp(.55rem, 1.8vh, .75rem);
}

.hero .cta {
  min-height: 3rem;
  padding: .68rem .9rem;
  font-size: clamp(.82rem, 3.7vw, .96rem);
}

.hero__security {
  margin-top: clamp(.3rem, 1vh, .45rem);
  font-size: clamp(.65rem, 2.8vw, .75rem);
  line-height: 1.2;
}

@media (min-width: 48rem) {
  .hero {
    min-height: min(100svh, 52rem);
    padding-block: clamp(1.25rem, 3vh, 2rem);
    text-align: left;
  }

  .hero > .container {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(18rem, .72fr);
    grid-template-areas:
      "copy media"
      "cta media"
      "security media";
    column-gap: clamp(1.5rem, 4vw, 3rem);
    row-gap: .8rem;
    align-items: center;
  }

  .hero__copy {
    grid-area: copy;
    justify-items: start;
    gap: .9rem;
  }

  .hero .eyebrow {
    font-size: .78rem;
  }

  .hero h1 {
    max-width: 34rem;
    margin-inline: 0;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.06;
  }

  .hero__subheadline {
    max-width: 36rem;
    font-size: clamp(1rem, 1.6vw, 1.15rem);
    line-height: 1.45;
  }

  .hero__proofs {
    justify-content: flex-start;
  }

  .hero__proofs span {
    font-size: .72rem;
  }

  .hero__media {
    grid-area: media;
    width: min(100%, 24rem);
    height: auto;
    aspect-ratio: 4 / 5;
    margin-top: 0;
    justify-self: end;
  }

  .hero > .container > .section-cta {
    grid-area: cta;
    justify-content: flex-start;
    margin-top: 0;
  }

  .hero__security {
    grid-area: security;
    justify-self: start;
    margin-top: 0;
    font-size: .75rem;
    text-align: left;
  }
}

@media (max-height: 42rem) and (max-width: 47.99rem) {
  .hero {
    padding-block: .5rem .75rem;
  }

  .hero__copy {
    gap: .35rem;
  }

  .hero__media {
    height: clamp(9rem, 37vh, 11rem);
    margin-top: .45rem;
  }

  .hero > .container > .section-cta {
    margin-top: .45rem;
  }
}

/* Reading comfort and contextual CTA rhythm v1 */
body {
  font-size: 1.125rem;
}

.offer__content {
  gap: clamp(1rem, 3vw, 1.5rem);
}

.offer__list {
  gap: .9rem;
  padding: clamp(1.15rem, 4vw, 1.45rem);
  line-height: 1.5;
}

.offer__price-box {
  gap: .9rem;
  padding: clamp(1.35rem, 5vw, 1.75rem) clamp(1rem, 4vw, 1.4rem);
}

.offer__price-box > * {
  margin-block: 0;
}

.offer__price {
  margin-top: 0;
}

.countdown-label {
  max-width: 22rem;
  margin-top: .2rem;
  line-height: 1.4;
  text-wrap: balance;
}

.countdown {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin-top: .1rem;
  gap: clamp(.35rem, 2vw, .65rem);
}

.countdown > span {
  font-size: inherit;
}

.countdown__unit {
  display: grid;
  min-width: 3.35rem;
  justify-items: center;
  gap: .2rem;
}

.countdown__unit strong {
  color: var(--color-gold-dark-surface);
  font-size: clamp(1.9rem, 9vw, 2.6rem);
  line-height: 1;
}

.countdown__unit small {
  color: var(--color-lavender-text);
  font-size: .8125rem;
  line-height: 1.2;
}

.countdown__separator {
  margin-bottom: 1.2rem;
  color: var(--color-gold-dark-surface);
  font-size: 1.65rem !important;
  font-weight: var(--font-weight-bold);
  line-height: 1;
}

.card__body > * + *,
.product-card__body > * + * {
  margin-top: .75rem;
}

.copy-panel > * + *,
.guarantee__content > * + * {
  margin-top: 1rem;
}

@media (max-width: 47.99rem) {
  body {
    font-size: 1.125rem;
    line-height: 1.62;
  }

  .section {
    padding-block: clamp(3rem, 12vw, 3.5rem);
  }

  .section-intro,
  .problem-item,
  .copy-panel,
  .purple-checklist,
  .card__body,
  .product-card__body,
  .audience-grid,
  .possibility,
  .offer__list,
  .offer__price-box,
  .guarantee__content,
  .faq__question,
  .faq__answer {
    font-size: 1.125rem;
    line-height: 1.6;
  }

  .mechanism-list {
    gap: .8rem;
    font-size: 1.125rem;
    line-height: 1.6;
  }

  .problem-item,
  .audience-grid li,
  .possibility {
    padding-block: 1.05rem;
  }

  .copy-panel,
  .card__body,
  .product-card__body {
    padding: 1.25rem;
  }

  .cta,
  .hero .cta {
    min-height: 3.35rem;
    padding: .8rem 1rem;
    font-size: 1rem;
    line-height: 1.3;
  }

  .eyebrow,
  .offer__badge,
  .hero .eyebrow {
    font-size: .875rem;
    line-height: 1.3;
  }

  .hero__subheadline {
    font-size: clamp(1rem, 4vw, 1.0625rem);
    line-height: 1.38;
  }

  .hero__proofs span,
  .hero__security {
    font-size: .8rem;
    line-height: 1.25;
  }

  .benefit {
    font-size: 1rem;
    line-height: 1.35;
  }

  .product-card__badge {
    font-size: .8125rem;
  }

  .offer__reference,
  .offer__security,
  .countdown-label {
    font-size: 1rem;
  }

  .countdown small {
    font-size: .8125rem;
  }

  .trust-badge figcaption {
    font-size: .875rem;
    line-height: 1.3;
  }

  .footer {
    font-size: 1rem;
    line-height: 1.55;
  }
}

/* Hero and offer spacing corrective fix v1 */
@media (max-width: 47.99rem) {
  .hero {
    min-height: 0;
  }
}

.offer__content {
  display: grid;
  gap: clamp(1.25rem, 4vw, 1.75rem);
}

.offer__price-box {
  gap: clamp(1rem, 3vw, 1.2rem);
  padding: clamp(1.55rem, 5vw, 1.9rem) clamp(1.15rem, 4vw, 1.5rem);
}

/* Hero portrait restoration corrective fix v1 */
@media (max-width: 47.99rem) {
  .hero__media {
    width: clamp(14rem, 72vw, 22rem);
    height: auto;
    aspect-ratio: 4 / 5;
    margin-top: clamp(.55rem, 1.8vh, .75rem);
    background: #17002d;
  }

  .hero__media img {
    width: 100%;
    height: 100%;
    aspect-ratio: 4 / 5;
    object-fit: contain;
    object-position: center;
  }
}

@media (max-height: 42rem) and (max-width: 47.99rem) {
  .hero__media {
    width: 12rem;
    height: auto;
    aspect-ratio: 4 / 5;
  }
}

/* Final readability floor v1 */
.hero__proofs span,
.hero__security,
.product-card__badge,
.countdown__unit small,
.trust-badge figcaption {
  font-size: .875rem;
}

