html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: #fff8e9;
  font-family: "Trebuchet MS", "Avenir Next", Avenir, system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
button, a { -webkit-tap-highlight-color: transparent; }


.purchaseTutorial {
  padding: clamp(42px, 8vw, 88px) 18px;
  background: #fffaf0;
}

.purchaseTutorialInner {
  width: min(100%, 1120px);
  margin: 0 auto;
}

.purchaseTutorial details {
  overflow: hidden;
  border: 3px solid var(--ink, #21172f);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 9px 11px 0 var(--yellow, #ffd329);
}

.purchaseTutorial summary {
  min-height: 78px;
  padding: 20px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  list-style: none;
  cursor: pointer;
  background: var(--yellow, #ffd329);
  color: var(--ink, #21172f);
  font-family: inherit;
  font-size: clamp(21px, 5.8vw, 34px);
  font-weight: 950;
  line-height: 1.12;
  letter-spacing: -0.03em;
}

.purchaseTutorial summary::-webkit-details-marker {
  display: none;
}

.purchaseTutorial summary::after {
  content: "+";
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  display: grid;
  place-items: center;
  border: 2px solid var(--ink, #21172f);
  border-radius: 50%;
  background: #ffffff;
  font-size: 27px;
  font-weight: 900;
  line-height: 1;
}

.purchaseTutorial details[open] summary::after {
  content: "−";
}

.purchaseTutorialContent {
  padding: 28px 22px 32px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 34px;
  align-items: center;
}

.purchaseTutorialVideo {
  width: min(100%, 340px);
  margin: 0 auto;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  border: 3px solid var(--ink, #21172f);
  border-radius: 22px;
  background: var(--ink, #21172f);
}

.purchaseTutorialVideo iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
}

.purchaseTutorialSteps {
  margin: 0;
  padding: 0;
  display: grid;
  gap: 20px;
  list-style: none;
  counter-reset: purchase-step;
}

.purchaseTutorialSteps li {
  position: relative;
  min-height: 42px;
  padding-left: 54px;
  color: var(--ink, #21172f);
  font-size: 16px;
  line-height: 1.55;
  counter-increment: purchase-step;
}

.purchaseTutorialSteps li::before {
  content: counter(purchase-step);
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 2px solid var(--ink, #21172f);
  border-radius: 50%;
  background: var(--yellow, #ffd329);
  font-weight: 950;
}

.purchaseTutorialSteps strong {
  display: block;
  margin-bottom: 2px;
  font-size: 18px;
  line-height: 1.3;
}

@media (min-width: 760px) {
  .purchaseTutorialContent {
    padding: 42px 48px 48px;
    grid-template-columns: minmax(280px, 340px) minmax(0, 1fr);
    gap: clamp(44px, 6vw, 84px);
  }

  .purchaseTutorialVideo {
    width: 100%;
  }

  .purchaseTutorialSteps li {
    font-size: 17px;
  }
}



.page {
  --ink: #21172f;
  --muted: #625b69;
  --cream: #fff8e9;
  --paper: #fffdf7;
  --purple: #51308f;
  --purple-deep: #26154f;
  --purple-soft: #eee3ff;
  --yellow: #ffd326;
  --coral: #ff665d;
  --green: #2d7a60;
  min-height: 100vh;
  overflow: hidden;
  padding-bottom: 92px;
  background: var(--cream);
  color: var(--ink);
}

.page * { box-sizing: border-box; }
.page h1, .page h2, .page h3, .page p { margin-top: 0; }
.page a { color: inherit; text-decoration: none; }
.page img { display: block; max-width: 100%; }
.page em { color: var(--purple); font-family: Georgia, "Times New Roman", serif; font-weight: 500; }

.header {
  min-height: 84px;
  padding: 12px 16px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid rgba(33, 23, 47, .15);
  background: rgba(255, 248, 233, .97);
}
.header > a:first-child { width: min(215px, 55vw); }
.header img { width: 100%; }
.webAppLink {
  padding: 10px 12px;
  border: 2px solid var(--ink);
  border-radius: 999px;
  background: var(--paper);
  font-size: 13px;
  font-weight: 950;
  white-space: nowrap;
}

.hero, .videoIntro, .audience, .examples, .yourTurn, .toolkit, .valueSection {
  padding: 72px 18px;
}
.hero {
  min-height: calc(100svh - 84px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  background:
    radial-gradient(circle at 94% 10%, rgba(255, 211, 38, .42) 0 16%, transparent 16.5%),
    radial-gradient(circle at 3% 90%, rgba(255, 102, 93, .2) 0 14%, transparent 14.5%),
    var(--cream);
}
.eyebrow {
  margin-bottom: 15px;
  color: var(--coral);
  font-size: 14px;
  font-weight: 950;
  letter-spacing: .095em;
  line-height: 1.35;
  text-transform: uppercase;
}
.hero h1 {
  max-width: 980px;
  margin-bottom: 25px;
  font-size: clamp(45px, 12.5vw, 84px);
  line-height: .94;
  letter-spacing: -.057em;
}
.heroLead {
  max-width: 700px;
  margin-bottom: 24px;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.65;
}
.heroMeta { display: flex; flex-wrap: wrap; gap: 9px; }
.heroMeta span {
  padding: 9px 11px;
  border: 2px solid var(--ink);
  border-radius: 999px;
  background: var(--paper);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.15;
}
.downLink {
  width: fit-content;
  margin-top: 42px;
  padding-bottom: 6px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border-bottom: 3px solid var(--yellow);
  font-size: 16px;
  font-weight: 950;
}

.sectionHeading { max-width: 850px; }
.sectionHeading h2, .yourTurn h2 {
  margin-bottom: 21px;
  font-size: clamp(40px, 11vw, 72px);
  line-height: .97;
  letter-spacing: -.052em;
}
.sectionHeading > p:last-child {
  max-width: 680px;
  margin-bottom: 0;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.68;
}

.videoIntro { background: var(--paper); }
.videoPlaceholder {
  width: 100%;
  aspect-ratio: 16 / 10;
  margin-top: 38px;
  padding: 26px;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 9px;
  border: 3px dashed var(--purple);
  border-radius: 26px;
  background: var(--purple-soft);
  color: var(--ink);
  font: inherit;
  text-align: center;
  cursor: pointer;
}
.videoPlaceholder span {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
  border: 3px solid var(--ink);
  border-radius: 50%;
  background: var(--yellow);
  box-shadow: 4px 5px 0 var(--ink);
  font-size: 25px;
}
.videoPlaceholder strong { margin-top: 8px; font-size: 20px; }
.videoPlaceholder small { color: var(--muted); font-size: 15px; }
.videoNote {
  max-width: 820px;
  margin: 26px 0 0;
  padding-left: 18px;
  border-left: 4px solid var(--coral);
  color: var(--muted);
  font-size: 16px;
  line-height: 1.7;
}

.audience { background: var(--yellow); }
.audienceScroller, .reelScroller {
  width: calc(100% + 36px);
  margin: 40px -18px 0;
  padding: 0 18px 18px;
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  scrollbar-color: var(--purple) rgba(33, 23, 47, .13);
}
.audienceCard {
  width: min(84vw, 390px);
  min-height: 410px;
  padding: 22px;
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  scroll-snap-align: start;
  border: 3px solid var(--ink);
  border-radius: 24px;
  background: var(--paper);
  box-shadow: 7px 8px 0 var(--ink);
}
.audienceCard > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border: 2px solid currentColor;
  border-radius: 50%;
  font-size: 13px;
  font-weight: 950;
}
.audienceCard h3 {
  margin: auto 0 18px;
  font-size: 30px;
  line-height: 1.02;
  letter-spacing: -.042em;
}
.audienceCard p { margin-bottom: 0; font-size: 17px; line-height: 1.58; opacity: .84; }
.audienceCard.yellow { background: #fff2a3; }
.audienceCard.purple { background: var(--purple); color: white; }
.audienceCard.coral { background: #ffd1cd; }
.audienceCard.green { background: #d6f0e4; }
.audienceCard.cream { background: var(--paper); }
.sectionClose {
  max-width: 760px;
  margin: 30px 0 0;
  padding-top: 22px;
  border-top: 2px solid rgba(33, 23, 47, .2);
  font-size: 18px;
  font-weight: 850;
  line-height: 1.55;
}

.examples { background: var(--purple-deep); color: white; }
.examples .eyebrow { color: var(--yellow); }
.examples .sectionHeading > p:last-child { color: rgba(255,255,255,.72); }
.reelScroller { scrollbar-color: var(--yellow) rgba(255,255,255,.15); }
.reelCard {
  width: min(87vw, 390px);
  flex: 0 0 auto;
  overflow: hidden;
  scroll-snap-align: start;
  border: 2px solid rgba(255,255,255,.28);
  border-radius: 24px;
  background: white;
  color: var(--ink);
}
.reelFrame { height: 560px; background: #f3f0f6; }
.reelFrame iframe { width: 100%; height: 100%; border: 0; }
.reelCopy { padding: 22px; }
.reelCopy > span { color: var(--coral); font-size: 14px; font-weight: 950; }
.reelCopy h3 { margin: 10px 0 12px; font-size: 27px; line-height: 1.03; letter-spacing: -.04em; }
.reelCopy p { margin-bottom: 18px; color: var(--muted); font-size: 16px; line-height: 1.62; }
.reelCopy a { color: var(--purple); font-size: 15px; font-weight: 950; }

.yourTurn {
  background: var(--coral);
  color: white;
  text-align: center;
}
.yourTurn .eyebrow { color: var(--yellow); }
.yourTurn h2 { max-width: 980px; margin-right: auto; margin-left: auto; }
.yourTurn > p:not(.eyebrow) {
  max-width: 720px;
  margin-right: auto;
  margin-left: auto;
  color: rgba(255,255,255,.88);
  font-size: 18px;
  line-height: 1.7;
}
.yourTurn > p:last-child { margin-bottom: 0; }

.toolkit { background: var(--paper); }
.productStrip {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px;
}
.productStrip img {
  width: 100%;
  height: 230px;
  object-fit: cover;
  border: 3px solid var(--ink);
  border-radius: 21px;
  background: var(--purple-soft);
  box-shadow: 5px 6px 0 var(--ink);
}
.productStrip img:first-child { grid-column: 1 / -1; height: 320px; }
.toolkitList { margin-top: 56px; border-top: 2px solid var(--ink); }
.toolkitList article {
  padding: 24px 0;
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 13px;
  border-bottom: 2px solid var(--ink);
}
.toolkitList article > span { color: var(--coral); font-size: 14px; font-weight: 950; }
.toolkitList h3 { margin-bottom: 10px; font-size: 24px; line-height: 1.08; letter-spacing: -.035em; }
.toolkitList p { margin-bottom: 0; color: var(--muted); font-size: 16px; line-height: 1.62; }

.valueSection { background: #eee3ff; }
.valueList { margin-top: 42px; border-top: 2px solid var(--ink); }
.valueList article {
  padding: 21px 0;
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 11px;
  align-items: center;
  border-bottom: 2px solid var(--ink);
}
.valueList article > span { color: var(--coral); font-size: 14px; font-weight: 950; }
.valueList h3 { margin-bottom: 8px; font-size: 19px; line-height: 1.3; }
.valueList article s {
  grid-column: 2;
  color: #625b69;
  font-size: 21px;
  font-weight: 950;
  text-decoration-color: var(--coral);
  text-decoration-thickness: 3px;
}
.totalValue {
  padding: 28px 0 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
}
.totalValue span { max-width: 130px; font-size: 14px; font-weight: 950; line-height: 1.3; text-transform: uppercase; }
.totalValue s { color: var(--purple); font-size: clamp(34px, 9vw, 48px); font-weight: 950; text-decoration-color: var(--coral); text-decoration-thickness: 4px; }

.checkout { padding: 58px 14px; background: var(--purple); }
.checkoutCard {
  max-width: 870px;
  margin: 0 auto;
  padding: 39px 22px;
  border: 3px solid var(--ink);
  border-radius: 28px;
  background: var(--yellow);
  box-shadow: 9px 10px 0 var(--ink);
}
.checkout .eyebrow { color: var(--purple); }
.checkout h2 { margin-bottom: 22px; font-size: clamp(42px, 12vw, 76px); line-height: .94; letter-spacing: -.055em; }
.checkoutLead { margin-bottom: 30px; color: #51475b; font-size: 17px; line-height: 1.65; }
.priceBlock { margin-bottom: 32px; display: grid; }
.priceBlock > span { margin-bottom: 6px; font-size: 15px; font-weight: 950; text-transform: uppercase; }
.priceBlock > s { width: fit-content; margin-bottom: 12px; color: #5f5268; font-size: clamp(34px, 9vw, 48px); font-weight: 950; line-height: 1; text-decoration-color: var(--coral); text-decoration-thickness: 4px; }
.priceBlock > strong { color: var(--purple); font-size: clamp(60px, 16vw, 100px); line-height: .9; letter-spacing: -.06em; }
.priceBlock > small { width: fit-content; margin-top: 15px; padding: 8px 12px; border: 2px solid var(--ink); border-radius: 999px; background: var(--coral); color: white; font-size: 15px; font-weight: 950; }
.buyButton {
  width: 100%;
  max-width: 440px;
  min-height: 64px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 3px solid var(--ink);
  border-radius: 16px;
  background: var(--yellow);
  box-shadow: 6px 7px 0 var(--ink);
  color: var(--ink) !important;
  font-size: 17px;
  font-weight: 950;
  line-height: 1.25;
  transition: transform .18s ease, box-shadow .18s ease;
}
.buyButton:hover { transform: translate(2px, 2px); box-shadow: 4px 5px 0 var(--ink); }
.buyButton > span:last-child { font-size: 24px; }
.buyButtonInverse { background: var(--paper); }
.checkoutNote { margin: 31px 0 0; padding-top: 20px; border-top: 1px solid rgba(33,23,47,.24); font-size: 16px; line-height: 1.65; }

.footer {
  padding: 48px 18px 120px;
  display: grid;
  justify-items: start;
  gap: 17px;
  background: var(--purple-deep);
  color: white;
}
.footer > img { width: min(280px, 76vw); }
.footer > p { margin-bottom: 0; color: rgba(255,255,255,.7); font-size: 16px; }
.footerLinks { display: flex; flex-wrap: wrap; align-items: center; gap: 13px; }
.footerLinks > a:first-child { padding-bottom: 3px; border-bottom: 2px solid var(--yellow); font-size: 16px; font-weight: 950; }
.footer small { color: rgba(255,255,255,.58); font-size: 14px; line-height: 1.5; }
.whatsappButton {
  min-height: 52px;
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 2px solid white;
  border-radius: 999px;
  background: #25d366;
  color: #102d1a !important;
  font-size: 14px;
  font-weight: 950;
}
.whatsappButton svg { width: 25px; height: 25px; flex: 0 0 auto; fill: currentColor; }

.mobileBuyBar {
  min-height: 78px;
  padding: 9px 12px;
  position: fixed;
  z-index: 30;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-top: 2px solid var(--ink);
  background: var(--paper);
  box-shadow: 0 -6px 25px rgba(36, 19, 79, .18);
  transition: transform .22s ease, opacity .22s ease;
}
.mobileBuyBarHidden { transform: translateY(110%); opacity: 0; pointer-events: none; }
.mobileBuyBar > div { display: grid; line-height: 1.05; }
.mobileBuyBar s { color: #736c79; font-size: 14px; font-weight: 850; }
.mobileBuyBar strong { color: var(--purple); font-size: 25px; }
.mobileBuyBar a { padding: 13px 16px; border: 2px solid var(--ink); border-radius: 12px; background: var(--yellow); font-size: 15px; font-weight: 950; }

@media (min-width: 760px) {
  .page { padding-bottom: 0; }
  .header { min-height: 94px; padding: 11px max(30px, calc((100vw - 1180px) / 2)); }
  .header > a:first-child { width: 240px; }
  .webAppLink { padding: 12px 18px; font-size: 14px; }
  .hero, .videoIntro, .audience, .examples, .yourTurn, .toolkit, .valueSection { padding: 110px max(30px, calc((100vw - 1180px) / 2)); }
  .hero { min-height: calc(100vh - 94px); }
  .heroLead { font-size: 20px; }
  .videoPlaceholder { aspect-ratio: 16 / 8; }
  .audienceScroller, .reelScroller {
    width: calc(100% + max(30px, calc((100vw - 1180px) / 2)));
    margin-right: calc(-1 * max(30px, calc((100vw - 1180px) / 2)));
    margin-left: 0;
    padding-right: max(30px, calc((100vw - 1180px) / 2));
    padding-left: 0;
  }
  .audienceCard { width: 390px; min-height: 440px; }
  .reelCard { width: 375px; }
  .productStrip { grid-template-columns: repeat(3, 1fr); gap: 18px; }
  .productStrip img, .productStrip img:first-child { grid-column: auto; height: 390px; }
  .toolkitList article { grid-template-columns: 52px 1fr auto; }
  .toolkitList h3 { font-size: 26px; }
  .valueSection { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; align-items: start; }
  .valueList { margin-top: 0; }
  .valueList article { grid-template-columns: 42px 1fr auto; }
  .valueList article s { grid-column: 3; margin-left: 20px; }
  .checkout { padding: 100px 30px; }
  .checkoutCard { padding: 66px; }
  .footer { padding: 50px max(30px, calc((100vw - 1180px) / 2)); grid-template-columns: auto 1fr auto; align-items: center; }
  .footer > img { width: 240px; }
  .footer small { grid-column: 1 / -1; }
  .mobileBuyBar { display: none; }
}

@media (max-width: 370px) {
  .header > a:first-child { width: 176px; }
  .webAppLink { padding: 9px 10px; font-size: 12px; }
  .hero h1 { font-size: 41px; }
  .priceBlock > strong { font-size: 54px; }
  .mobileBuyBar strong { font-size: 22px; }
  .mobileBuyBar a { padding: 12px; font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .buyButton, .mobileBuyBar { transition: none; }
}
