/* ==========================================================================
   Reset Experience sales page — V4
   Authored outside this project and integrated 2026-08-16. Copy, layout,
   colour, type, spacing and breakpoints are preserved exactly as delivered.

   The ONLY edits made during integration:
     · url("/assets/...")  ->  url("../assets/...")
       The site is served from a subfolder on the preview host, so a
       root-absolute path resolves to the wrong place and 404s. Every other
       stylesheet in this project uses ../assets from css/, so this matches.

   Everything here is scoped under .reset-sales-page and cannot leak into the
   rest of the site. Load it AFTER style.css so its @font-face declarations
   (which cover a wider weight range) win for the heavy button/kicker weights.
   ========================================================================== */

@font-face {
  font-family: "Fraunces";
  src: url("../assets/fonts/fraunces-normal.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: "Fraunces";
  src: url("../assets/fonts/fraunces-italic-400.woff2") format("woff2");
  font-style: italic;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Inter";
  src: url("../assets/fonts/inter.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

.reset-sales-page {
  --ink: #332832;
  --paper: #f7f2ea;
  --paper-deep: #ede5dc;
  --plum: #72566f;
  --gold: #b58b4a;
  --gold-deep: #7e5e2c;
  --gold-soft: #d9bc86;
  --serif: "Fraunces", Georgia, "Times New Roman", serif;
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ease: cubic-bezier(0.16, 1, 0.3, 1);
  margin: 0;
  background: var(--ink);
  color: var(--paper);
  font-family: var(--sans);
  font-size: 16px;
  /* regular, not light — see the readability note in style.css (2026-08-19) */
  font-weight: 400;
  line-height: 1.7;
  text-rendering: optimizeLegibility;
}

.reset-sales-page,
.reset-sales-page * { box-sizing: border-box; }
.reset-sales-page a { color: inherit; text-decoration: none; }
.reset-sales-page img { display: block; max-width: 100%; }
.reset-sales-page h1,
.reset-sales-page h2,
.reset-sales-page h3,
.reset-sales-page p,
.reset-sales-page blockquote { margin-top: 0; }
.reset-sales-page h1,
.reset-sales-page h2,
.reset-sales-page h3,
.reset-sales-page blockquote { font-family: var(--serif); font-weight: 400; letter-spacing: -0.025em; line-height: 1.1; }
.reset-sales-page h1 em,
.reset-sales-page h2 em,
.reset-sales-page .tagline em { font-weight: 400; }

.reset-sales-page .shell { width: min(1140px, calc(100% - 56px)); margin: 0 auto; }
.reset-sales-page .narrow { width: min(800px, calc(100% - 56px)); }
.reset-sales-page .paper-section { background: var(--paper); color: var(--ink); }
.reset-sales-page .soft-section { background: var(--paper-deep); color: var(--ink); }
.reset-sales-page .ink-section { background: var(--ink); color: var(--paper); }

.reset-sales-page .hero { position: relative; display: grid; min-height: 900px; overflow: hidden; place-items: center; }
.reset-sales-page .hero-image,
.reset-sales-page .forest-image { position: absolute; inset: 0; background-position: center; background-size: cover; }
.reset-sales-page .hero-image { background-image: url("../assets/img/scene-sea.jpg"); transform: scale(1.03); }
.reset-sales-page .hero-scrim,
.reset-sales-page .forest-scrim { position: absolute; inset: 0; }
.reset-sales-page .hero-scrim { background: linear-gradient(90deg, rgba(30,23,29,.83) 0%, rgba(44,34,43,.42) 62%, rgba(35,27,34,.48) 100%), linear-gradient(0deg, rgba(51,40,50,.82), transparent 42%); }
.reset-sales-page .hero-content { position: relative; z-index: 2; padding-top: 50px; }
.reset-sales-page .eyebrow,
.reset-sales-page .kicker { margin-bottom: 22px; color: var(--gold-deep); font-size: 11.5px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.reset-sales-page .eyebrow { color: var(--gold-soft); }
.reset-sales-page .eyebrow::before,
.reset-sales-page .kicker::before { display: inline-block; width: 38px; height: 1px; margin-right: 15px; background: currentColor; content: ""; vertical-align: middle; }
.reset-sales-page .hero h1 { max-width: 980px; margin-bottom: 13px; font-size: clamp(52px, 6.5vw, 91px); line-height: .98; }
.reset-sales-page .hero h1 span { display: block; margin-top: 12px; color: var(--gold-soft); font-size: .57em; font-style: italic; line-height: 1.04; }
.reset-sales-page .tagline { max-width: 850px; margin-bottom: 25px; font-family: var(--serif); font-size: clamp(28px, 3.1vw, 43px); line-height: 1.15; }
.reset-sales-page .tagline em { color: var(--gold-soft); }
.reset-sales-page .hero-deck { max-width: 660px; margin-bottom: 23px; color: rgba(250,247,242,.77); font-size: 17px; }
.reset-sales-page .hero-promise { max-width: 700px; margin-bottom: 34px; padding-left: 20px; border-left: 1px solid var(--gold); color: rgba(250,247,242,.95); font-family: var(--serif); font-size: 19px; line-height: 1.45; }
.reset-sales-page .hero-actions { display: flex; align-items: center; gap: 28px; }
.reset-sales-page .button { display: inline-flex; min-height: 55px; align-items: center; justify-content: center; padding: 16px 23px; border: 1px solid transparent; font-size: 10px; font-weight: 750; letter-spacing: .12em; line-height: 1.2; text-align: center; text-transform: uppercase; transition: transform 220ms var(--ease), background 220ms ease; }
.reset-sales-page .button:hover,
.reset-sales-page .button:focus-visible { transform: translateY(-2px); }
.reset-sales-page .button-gold { background: var(--gold); color: var(--ink); }
.reset-sales-page .button-gold:hover,
.reset-sales-page .button-gold:focus-visible { background: var(--gold-soft); }
.reset-sales-page .text-link { border-bottom: 1px solid rgba(250,247,242,.35); color: rgba(250,247,242,.76); font-size: 12px; }
.reset-sales-page .text-link span { margin-left: 6px; color: var(--gold-soft); }
.reset-sales-page .hero-note { position: absolute; z-index: 2; right: 3.3vw; bottom: 32px; color: rgba(250,247,242,.48); font-size: 9px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; writing-mode: vertical-rl; }

.reset-sales-page .pain { padding: 125px 0; }
.reset-sales-page .pain-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(60px, 9vw, 130px); align-items: start; }
.reset-sales-page .pain h2 { max-width: 560px; font-size: clamp(46px, 5.3vw, 72px); }
.reset-sales-page .pain h2 em { color: var(--gold-deep); }
.reset-sales-page .pain-copy { padding-top: 8px; }
.reset-sales-page .pain-copy > p:not(.pain-lead) { color: var(--ink); }
.reset-sales-page .pain-lead { margin-bottom: 15px; color: var(--plum); font-family: var(--serif); font-size: 27px; line-height: 1.3; }
.reset-sales-page .pain blockquote { margin: 36px 0 0; padding: 26px 0 2px 28px; border-left: 2px solid var(--gold); color: var(--plum); font-size: clamp(25px, 3vw, 36px); font-style: italic; }

.reset-sales-page .forest-section { position: relative; overflow: hidden; }
.reset-sales-page .method { padding: 130px 0; }
.reset-sales-page .forest-image { background-image: url("../assets/img/scene-forest.jpg"); background-position: center 44%; }
.reset-sales-page .forest-scrim { background: linear-gradient(90deg, rgba(44,34,43,.96), rgba(51,40,50,.80)), linear-gradient(0deg, rgba(30,23,29,.74), transparent); }
.reset-sales-page .method-content { position: relative; z-index: 2; }
.reset-sales-page .method-intro { display: grid; margin-bottom: 70px; grid-template-columns: 1fr 1fr; gap: clamp(60px, 9vw, 130px); align-items: end; }
.reset-sales-page .kicker.light { color: var(--gold-soft); }
.reset-sales-page .method h2 { margin-bottom: 0; font-size: clamp(47px, 5.5vw, 72px); }
.reset-sales-page .method-intro > div:last-child { color: rgba(250,247,242,.9); }
.reset-sales-page .method-statement { color: var(--paper); font-family: var(--serif); font-size: 27px; font-style: italic; line-height: 1.3; }
.reset-sales-page .outcome-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid rgba(250,247,242,.18); border-bottom: 1px solid rgba(250,247,242,.18); }
.reset-sales-page .outcome-grid article { min-height: 300px; padding: 36px 34px 42px; border-right: 1px solid rgba(250,247,242,.18); }
.reset-sales-page .outcome-grid article:first-child { padding-left: 0; }
.reset-sales-page .outcome-grid article:last-child { padding-right: 0; border-right: 0; }
.reset-sales-page .outcome-number { color: var(--gold); font-size: 10px; font-weight: 700; letter-spacing: .16em; }
.reset-sales-page .outcome-grid h3 { margin: 52px 0 18px; color: var(--gold-soft); font-size: 32px; }
.reset-sales-page .outcome-grid p { color: rgba(250,247,242,.9); }
.reset-sales-page .outcome-close { max-width: 760px; margin: 46px auto 0; color: var(--paper); font-family: var(--serif); font-size: clamp(25px, 3vw, 36px); font-style: italic; text-align: center; }

.reset-sales-page .proof { padding: 105px 0 115px; }
.reset-sales-page .proof h2 { margin-bottom: 44px; font-size: clamp(42px, 5vw, 66px); }
.reset-sales-page .testimonial-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.reset-sales-page .testimonial-placeholder { min-height: 235px; padding: 32px; border: 1px dashed rgba(51,40,50,.28); background: rgba(237,229,220,.45); }
.reset-sales-page .testimonial-placeholder > span { color: var(--gold-deep); font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.reset-sales-page .testimonial-placeholder h3 { margin: 45px 0 13px; color: var(--plum); font-size: 27px; }
.reset-sales-page .testimonial-placeholder p { margin-bottom: 0; color: rgba(51,40,50,.59); font-size: 13px; }
/* a real client story — same footprint as the placeholder it replaces, so a
   part-filled row still lines up. Solid rule instead of dashed; the theme word
   stays as the heading, so the quote reads as evidence for that outcome. */
.reset-sales-page .testimonial {
  display: flex;
  flex-direction: column;
  min-height: 235px;
  padding: 32px;
  border: 1px solid rgba(51,40,50,.18);
  background: rgba(237,229,220,.45);
}
.reset-sales-page .testimonial h3 { margin: 0 0 17px; color: var(--plum); font-size: 27px; }
.reset-sales-page .testimonial blockquote {
  margin: 0 0 20px;
  padding-left: 17px;
  border-left: 2px solid var(--gold);
  color: rgba(51,40,50,.78);
  font-size: 16px;
  font-style: italic;
  letter-spacing: 0;
  line-height: 1.5;
}
.reset-sales-page .testimonial cite {
  margin-top: auto;
  color: var(--gold-deep);
  font-family: var(--sans);
  font-size: 9px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.reset-sales-page .program { padding: 125px 0 135px; }
.reset-sales-page .program-heading { display: grid; margin-bottom: 62px; grid-template-columns: 1.15fr .85fr; gap: clamp(60px, 9vw, 130px); align-items: end; }
.reset-sales-page .program-heading h2 { margin-bottom: 0; font-size: clamp(47px, 5.4vw, 70px); }
.reset-sales-page .program-heading > p { margin-bottom: 5px; color: var(--ink); }
.reset-sales-page .week-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid rgba(51,40,50,.2); }
.reset-sales-page .week-grid article { display: grid; min-height: 190px; padding: 30px 38px 30px 0; border-bottom: 1px solid rgba(51,40,50,.2); grid-template-columns: 50px 1fr; column-gap: 16px; }
.reset-sales-page .week-grid article:nth-child(odd) { border-right: 1px solid rgba(51,40,50,.2); }
.reset-sales-page .week-grid article:nth-child(even) { padding-right: 0; padding-left: 38px; }
.reset-sales-page .week-grid article > span { padding-top: 7px; color: var(--gold-deep); font-size: 10px; font-weight: 700; letter-spacing: .15em; }
.reset-sales-page .week-grid h3 { margin: 0 0 12px; color: var(--plum); font-size: 27px; }
.reset-sales-page .week-grid p { grid-column: 2; margin-bottom: 0; color: var(--ink); font-size: 15px; }
/* The six weeks are now two grids of three, with the testimonial that proves
   Week 03 sitting between them. Three items in a two-column grid would leave a
   hole, so the third week of each set runs the full width — which also gives
   Weeks 03 and 06 the weight of a chapter close. */
.reset-sales-page .week-grid article.week-wide {
  grid-column: 1 / -1;
  padding-right: 0;
  border-right: 0;
}

/* ---------------------------------------------------------------------------
   PROOF, PLACED WHERE IT PROVES SOMETHING (2026-08-18)

   The page used to gather three testimonials into one grid partway down. That
   block is gone. Each quote now stands immediately after the promise it backs
   up: Luann after Week 03, TM after the list of benefits, D.F. just before the
   enrolment decision. One component, three placements — it takes its
   background from whichever section class it carries, so it works on ivory
   and on stone without a second set of rules.
   --------------------------------------------------------------------------- */
.reset-sales-page .quote-band { padding: 72px 0; }
.reset-sales-page .quote-band .shell { max-width: 840px; }
.reset-sales-page .quote-band blockquote {
  margin: 0;
  padding-left: 30px;
  border-left: 2px solid var(--gold);
  color: var(--plum);
  font-size: clamp(21px, 2.5vw, 31px);
  font-style: italic;
  letter-spacing: -0.015em;
  line-height: 1.36;
}
.reset-sales-page .quote-band cite {
  display: block;
  margin-top: 20px;
  padding-left: 32px;
  color: var(--gold-deep);
  font-family: var(--sans);
  font-size: 9px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
/* inside the six-week programme the quote is a row between two grids, not a
   full section, so it carries less air above and below */
.reset-sales-page .week-quote { padding: 52px 0 56px; }

.reset-sales-page .value { padding: 125px 0; }
.reset-sales-page .value-grid { display: grid; grid-template-columns: 1.07fr .93fr; gap: clamp(65px, 9vw, 130px); align-items: center; }
.reset-sales-page .value h2 { max-width: 670px; font-size: clamp(45px, 5vw, 67px); }
.reset-sales-page .included-list { margin-top: 42px; border-top: 1px solid rgba(51,40,50,.2); }
.reset-sales-page .included-list > div { display: grid; padding: 18px 0; border-bottom: 1px solid rgba(51,40,50,.16); grid-template-columns: 155px 1fr; gap: 25px; }
.reset-sales-page .included-list strong { color: var(--gold-deep); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; }
.reset-sales-page .included-list p { margin: 0; color: var(--ink); font-size: 15px; }
.reset-sales-page .benefit-card { padding: 46px; background: var(--plum); color: var(--paper); }
/* soft ivory, not gold: at 9px on warm plum even the lightest gold sits around
   3.5:1, under the 4.5:1 small-text minimum. The gold in this card lives in the
   ticks and the closing line instead. */
.reset-sales-page .mini-label { margin-bottom: 22px; color: rgba(250,247,242,.92); font-size: 9px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.reset-sales-page .benefit-card ul,
.reset-sales-page .price-card ul { margin: 0; padding: 0; list-style: none; }
.reset-sales-page .benefit-card li { position: relative; padding: 15px 0 15px 26px; border-bottom: 1px solid rgba(250,247,242,.14); color: rgba(250,247,242,.95); font-family: var(--serif); font-size: 19px; line-height: 1.35; }
/* the tick sits on warm plum, where full-strength gold all but disappears
   (under 2:1) — the lighter gold is the readable one on this surface */
.reset-sales-page .benefit-card li::before { position: absolute; left: 0; color: var(--gold-soft); content: "✓"; font-family: var(--sans); font-size: 12px; }
.reset-sales-page .benefit-close { margin: 30px 0 0; color: var(--gold-soft); font-family: var(--serif); font-size: 24px; font-style: italic; line-height: 1.3; }

.reset-sales-page .fit { padding: 110px 0; }
.reset-sales-page .fit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(60px, 9vw, 130px); align-items: center; }
.reset-sales-page .fit h2 { margin-bottom: 0; font-size: clamp(43px, 4.8vw, 64px); }
.reset-sales-page .fit-list { margin: 0; padding: 0; list-style: none; }
.reset-sales-page .fit-list li { position: relative; padding: 17px 0 17px 32px; border-bottom: 1px solid rgba(250,247,242,.14); color: rgba(250,247,242,.9); }
.reset-sales-page .fit-list li::before { position: absolute; left: 0; color: var(--gold); content: "—"; }

.reset-sales-page .about { padding: 125px 0; }
.reset-sales-page .about-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(65px, 9vw, 130px); align-items: center; }
.reset-sales-page .portrait-wrap { position: relative; }
.reset-sales-page .portrait-wrap::before { position: absolute; z-index: 0; inset: -16px 16px 16px -16px; border: 1px solid rgba(181,139,74,.46); content: ""; }
.reset-sales-page .portrait-wrap img { position: relative; z-index: 1; width: 100%; min-height: 450px; object-fit: cover; filter: saturate(.82) contrast(.95); }
.reset-sales-page .portrait-wrap span { position: absolute; z-index: 2; right: -16px; bottom: 26px; padding: 11px 14px; background: var(--gold); color: var(--ink); font-size: 8px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.reset-sales-page .about h2 { font-size: clamp(45px, 5.2vw, 69px); }
.reset-sales-page .about-grid > div:last-child > p:not(.kicker, .about-signature) { color: var(--ink); }
.reset-sales-page .about-signature { margin-top: 30px; color: rgba(51,40,50,.8); font-size: 12px; letter-spacing: .03em; line-height: 1.8; }
.reset-sales-page .about-signature strong { color: var(--plum); font-family: var(--serif); font-size: 26px; font-weight: 400; }

.reset-sales-page .enrollment { padding: 125px 0 135px; }
.reset-sales-page .enrollment-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(65px, 9vw, 130px); align-items: center; }
.reset-sales-page .enrollment h2 { max-width: 700px; font-size: clamp(46px, 5.3vw, 70px); }
.reset-sales-page .enrollment-grid > div:first-child > p:not(.kicker) { max-width: 670px; color: var(--ink); }
/* The published schedule. It sits above the price on purpose — she should know
   the exact dates and times before she is anywhere near a checkout button. */
.reset-sales-page .schedule {
  margin: 34px 0 30px;
  padding: 26px 30px 28px;
  border: 1px solid rgba(51,40,50,.16);
  border-left: 3px solid var(--gold);
  background: rgba(247,242,234,.72);
}
.reset-sales-page .schedule-label {
  margin-bottom: 12px;
  color: var(--gold-deep);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .19em;
  text-transform: uppercase;
}
.reset-sales-page .schedule strong {
  display: block;
  color: var(--plum);
  font-family: var(--serif);
  font-size: clamp(21px, 2.2vw, 27px);
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.15;
}
.reset-sales-page .schedule ul {
  display: grid;
  margin: 15px 0 0;
  padding: 0;
  gap: 7px;
  list-style: none;
}
.reset-sales-page .schedule li {
  position: relative;
  padding-left: 18px;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.5;
}
.reset-sales-page .schedule li::before {
  position: absolute;
  left: 0;
  top: 9px;
  width: 9px;
  height: 1px;
  background: var(--gold);
  content: "";
}

.reset-sales-page .enroll-trust { display: flex; margin-top: 32px; gap: 9px; flex-wrap: wrap; }
.reset-sales-page .enroll-trust span { padding: 7px 10px; border: 1px solid rgba(51,40,50,.18); color: var(--gold-deep); font-size: 8px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.reset-sales-page .price-card { padding: 48px; border: 1px solid rgba(51,40,50,.2); background: var(--paper); box-shadow: 16px 16px 0 rgba(181,139,74,.18); text-align: center; }
.reset-sales-page .price-label { color: var(--gold-deep); font-size: 9px; font-weight: 800; letter-spacing: .19em; text-transform: uppercase; }
.reset-sales-page .price { margin: 18px 0 0; color: var(--plum); font-family: var(--serif); font-size: 76px; line-height: 1; }
/* the struck-through former price, set smaller and quieter so $997 still reads
   as the price rather than the two competing for the same weight */
/* The struck former price is deliberately quieter than $997, but at .42 it
   measured 2.4:1 — too faint to read, which defeats the point of showing an
   anchor at all. .62 measures ~4:1 and still leaves $997 the loudest thing
   in the card. */
.reset-sales-page .price s { margin-right: 12px; color: rgba(51,40,50,.62); font-size: .55em; text-decoration-thickness: 1px; }
.reset-sales-page .price-card > p { margin: 9px 0 24px; color: var(--ink); font-size: 14px; }
.reset-sales-page .price-card ul { margin-bottom: 26px; border-top: 1px solid rgba(51,40,50,.15); text-align: left; }
.reset-sales-page .price-card li { padding: 10px 0; border-bottom: 1px solid rgba(51,40,50,.13); color: var(--ink); font-size: 13px; }
.reset-sales-page .price-card li::before { margin-right: 9px; color: var(--gold-deep); content: "✓"; }
.reset-sales-page .button-ink { width: 100%; background: var(--ink); color: var(--paper); }
.reset-sales-page .button-ink:hover,
.reset-sales-page .button-ink:focus-visible { background: var(--plum); }
.reset-sales-page .button-ink span { margin-left: 10px; color: var(--gold); }
.reset-sales-page .price-card small { display: block; margin-top: 19px; color: rgba(51,40,50,.78); font-size: 11px; line-height: 1.5; }
/* the checkout guard notice from forms.js is styled in style.css for the dark
   ledger — pale gold on near-black. Inside this card it lands on warm white and
   would be all but unreadable, so restate it in ink here. */
.reset-sales-page .price-card .form-guard {
  color: #6B4E1E;
  border-color: rgba(146, 118, 56, 0.45);
  background: rgba(181, 139, 74, 0.16);
  text-align: left;
}

.reset-sales-page .final-cta { padding: 120px 0 130px; text-align: center; }
.reset-sales-page .final-cta h2 { margin-bottom: 35px; font-size: clamp(48px, 5.5vw, 74px); }

@media (max-width: 900px) {
  .reset-sales-page .pain-grid,
  .reset-sales-page .method-intro,
  .reset-sales-page .program-heading,
  .reset-sales-page .value-grid,
  .reset-sales-page .fit-grid,
  .reset-sales-page .about-grid,
  .reset-sales-page .enrollment-grid { grid-template-columns: 1fr; gap: 50px; }
  .reset-sales-page .outcome-grid,
  .reset-sales-page .testimonial-grid { grid-template-columns: 1fr; }
  .reset-sales-page .outcome-grid article,
  .reset-sales-page .outcome-grid article:first-child,
  .reset-sales-page .outcome-grid article:last-child { min-height: 0; padding: 32px 0; border-right: 0; border-bottom: 1px solid rgba(250,247,242,.18); }
  .reset-sales-page .outcome-grid article:last-child { border-bottom: 0; }
  .reset-sales-page .outcome-grid h3 { margin-top: 24px; }
  .reset-sales-page .portrait-wrap { max-width: 510px; }
}

@media (max-width: 640px) {
  .reset-sales-page .shell,
  .reset-sales-page .narrow { width: min(100% - 34px, 1140px); }
  .reset-sales-page .hero { min-height: 850px; }
  .reset-sales-page .hero-content { padding-top: 45px; }
  .reset-sales-page .hero h1 { font-size: 49px; }
  .reset-sales-page .tagline { font-size: 27px; }
  .reset-sales-page .hero-deck { font-size: 15px; }
  .reset-sales-page .hero-promise { font-size: 17px; }
  .reset-sales-page .hero-actions { align-items: stretch; flex-direction: column; gap: 18px; }
  .reset-sales-page .hero-actions .text-link { align-self: flex-start; }
  .reset-sales-page .hero-note { display: none; }
  .reset-sales-page .pain,
  .reset-sales-page .method,
  .reset-sales-page .proof,
  .reset-sales-page .program,
  .reset-sales-page .value,
  .reset-sales-page .fit,
  .reset-sales-page .about,
  .reset-sales-page .enrollment,
  .reset-sales-page .final-cta { padding: 88px 0; }
  .reset-sales-page .eyebrow::before,
  .reset-sales-page .kicker::before { width: 24px; margin-right: 9px; }
  .reset-sales-page .week-grid { grid-template-columns: 1fr; }
  .reset-sales-page .week-grid article,
  .reset-sales-page .week-grid article:nth-child(even),
  .reset-sales-page .week-grid article:nth-child(odd) { padding: 26px 0; border-right: 0; }
  .reset-sales-page .included-list > div { grid-template-columns: 1fr; gap: 5px; }
  .reset-sales-page .benefit-card,
  .reset-sales-page .price-card { padding: 32px 25px; }
  .reset-sales-page .price-card { box-shadow: 8px 8px 0 rgba(181,139,74,.18); }
  /* At 76px the struck-through $1497 wrapped onto its own line on a phone and
     read as the actual price. Both figures must sit on one line. */
  .reset-sales-page .price { font-size: 52px; white-space: nowrap; }
  .reset-sales-page .portrait-wrap span { right: -5px; bottom: 17px; }
}

@media (prefers-reduced-motion: reduce) {
  .reset-sales-page,
  .reset-sales-page * { scroll-behavior: auto; transition-duration: .01ms !important; }
}
