.marketing-site {
  --site-yellow: #ffd200;
  --site-ink: #0f0f0f;
  --site-muted: #595959;
  min-width: 320px;
  background: #fff;
  color: var(--site-ink);
}
.marketing-site .site-shell { width: min(1420px, calc(100% - 112px)); margin-inline: auto; }
.marketing-site .site-nav { display: flex; height: 116px; align-items: center; justify-content: space-between; }
.marketing-site .site-nav__brand, .marketing-site .site-footer__brand { display: inline-flex; }
.marketing-site .site-nav__brand .brand-logo { width: 158px; }
.marketing-site .site-nav__links { display: flex; align-items: center; gap: 30px; font-size: .94rem; font-weight: 700; }
.marketing-site .site-nav__text:hover, .marketing-site .site-footer a:hover { opacity: .58; }
.marketing-site .site-button { display: inline-flex; min-height: 54px; align-items: center; justify-content: center; border: 2px solid var(--site-ink); border-radius: 999px; padding-inline: 30px; background: var(--site-yellow); color: #000; box-shadow: 0 4px 0 var(--site-ink); font-weight: 800; cursor: pointer; }
.marketing-site .site-button--compact { min-height: 46px; padding-inline: 24px; font-size: .88rem; }
.marketing-site .site-button--dark { background: var(--site-ink); color: #fff; box-shadow: none; }
.marketing-site .site-button--blue { border-color: #1ca3ec; background: #1ca3ec; color: #fff; box-shadow: 0 4px 0 #0f6fa8; }
.marketing-site .site-button--blue:hover, .marketing-site .site-button--blue:focus-visible { box-shadow: 0 2px 0 #0f6fa8; transform: translateY(2px); }
.marketing-site .site-button:disabled { cursor: not-allowed; opacity: .72; }
.marketing-site .site-eyebrow { margin: 0 0 17px; font-size: .72rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }

.feature-hero { display: grid; min-height: 690px; grid-template-columns: minmax(0, .9fr) minmax(480px, 1.1fr); align-items: center; gap: clamp(50px, 7vw, 120px); padding-block: 50px 92px; }
.feature-hero__copy h1, .affiliate-hero h1, .about-hero h1, .pricing-hero h1, .legal-header h1 { margin: 0; font: 800 clamp(3.7rem, 5.5vw, 6.4rem)/.93 var(--font-display); letter-spacing: -.06em; }
.feature-hero__lede { max-width: 620px; margin: 27px 0 34px; color: #333; font-size: clamp(1.08rem, 1.45vw, 1.3rem); line-height: 1.5; }
.feature-hero__note { max-width: 540px; margin: 22px 0 0; color: var(--site-muted); font-size: .78rem; line-height: 1.5; }
.feature-hero__visual { margin: 0; }
.feature-hero__visual img { width: 100%; height: auto; }
.feature-hero__visual--profile img, .feature-hero__visual--course img { max-width: 680px; margin-inline: auto; }
.feature-hero__visual--autodm img { max-width: 720px; margin-inline: auto; }

.bio-editorial { display: grid; grid-template-columns: .85fr 1.15fr; gap: 100px; padding-block: 124px; }
.bio-editorial h2, .steps h2, .affiliate-explainer h2, .course-flow h2, .about-statement h2 { margin: 0; font: 800 clamp(2.8rem, 4.7vw, 5.2rem)/.96 var(--font-display); letter-spacing: -.055em; }
.bio-editorial__list { border-top: 1.5px solid var(--site-ink); }
.bio-editorial__list article { display: grid; min-height: 150px; grid-template-columns: 48px 1fr; gap: 24px; align-items: start; border-bottom: 1.5px solid var(--site-ink); padding: 28px 4px; }
.bio-editorial__list span { font-size: .72rem; font-weight: 800; }
.bio-editorial__list h3 { margin: 0 0 7px; font: 700 1.38rem var(--font-display); }
.bio-editorial__list p { max-width: 540px; margin: 0; color: var(--site-muted); }

.trigger-strip { border-block: 1px solid #ddd; background: #f7f7f4; }
.trigger-strip__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.trigger-strip article { min-height: 270px; padding: 50px 42px; border-right: 1px solid #ddd; }
.trigger-strip article:first-child { border-left: 1px solid #ddd; }
.trigger-strip span { display: inline-grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; background: var(--site-yellow); font-size: .7rem; font-weight: 800; }
.trigger-strip h2 { margin: 54px 0 8px; font: 700 1.55rem var(--font-display); }
.trigger-strip p { max-width: 340px; margin: 0; color: var(--site-muted); }
.steps { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; padding-block: 124px; }
.steps ol { margin: 0; padding: 0; list-style: none; border-top: 1.5px solid var(--site-ink); }
.steps li { display: flex; min-height: 86px; align-items: center; gap: 25px; border-bottom: 1.5px solid var(--site-ink); font-weight: 650; }
.steps li span { display: grid; width: 31px; height: 31px; flex: 0 0 auto; place-items: center; border: 1px solid; border-radius: 50%; font-size: .72rem; }
.steps__note { grid-column: 2; max-width: 620px; margin: -55px 0 0; color: var(--site-muted); font-size: .8rem; }

.affiliate-hero { display: grid; min-height: 690px; grid-template-columns: 1fr .9fr; align-items: center; gap: 110px; padding-block: 56px 100px; }
.affiliate-hero__copy > p:not(.site-eyebrow) { max-width: 570px; margin: 30px 0 35px; color: #333; font-size: 1.22rem; }
.affiliate-hero__rail { transform: rotate(-2deg); }
.affiliate-hero__rail > div { display: grid; min-height: 120px; grid-template-columns: 1fr auto; align-content: center; gap: 4px 25px; border: 1.5px solid var(--site-ink); border-radius: 22px; padding: 24px 28px; background: #fff; box-shadow: 5px 5px 0 var(--site-ink); }
.affiliate-hero__rail > div + div { margin-top: 16px; }
.affiliate-hero__rail > div:nth-child(2) { margin-left: 46px; }
.affiliate-hero__rail span { grid-column: 1 / -1; color: var(--site-muted); font-size: .7rem; font-weight: 800; text-transform: uppercase; }
.affiliate-hero__rail strong { font: 700 1.2rem var(--font-display); }
.affiliate-hero__rail small { color: var(--site-muted); }
.affiliate-explainer { display: grid; grid-template-columns: 1fr .85fr; gap: 100px; padding-block: 130px; border-top: 1px solid #ddd; }
.affiliate-explainer p { margin: 0 0 24px; color: #333; font-size: 1.12rem; line-height: 1.55; }
.collection-callout { background: var(--site-yellow); }
.collection-callout .site-shell { min-height: 440px; display: flex; flex-direction: column; justify-content: center; }
.collection-callout h2 { max-width: 900px; margin: 0; font: 800 clamp(2.9rem, 5vw, 5.4rem)/.96 var(--font-display); letter-spacing: -.055em; }
.collection-callout p:last-child { max-width: 650px; margin: 26px 0 0; font-size: 1.1rem; }

.course-flow { background: var(--site-ink); color: #fff; }
.course-flow__inner { display: grid; grid-template-columns: .95fr 1.05fr; gap: 100px; padding-block: 125px; }
.course-flow ol { display: grid; margin: 0; padding: 0; list-style: none; }
.course-flow li { display: grid; grid-template-columns: 54px 140px 1fr; align-items: baseline; border-top: 1px solid #555; padding: 24px 0; }
.course-flow li:last-child { border-bottom: 1px solid #555; }
.course-flow li span { color: #aaa; font-size: .72rem; }
.course-flow h3 { margin: 0; font: 700 1.3rem var(--font-display); }
.course-flow li p { margin: 0; color: #ccc; }
.course-truth { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; padding-block: 105px; }
.course-truth h2 { margin: 0; font: 800 clamp(2.5rem, 4vw, 4.2rem)/.98 var(--font-display); letter-spacing: -.05em; }
.course-truth p { max-width: 620px; margin: 0; color: var(--site-muted); font-size: 1.08rem; line-height: 1.6; }

.also { padding-block: 100px 112px; }
.also__links { border-top: 1.5px solid var(--site-ink); }
.also__links a { display: flex; min-height: 78px; align-items: center; justify-content: space-between; border-bottom: 1.5px solid var(--site-ink); font: 700 clamp(1.3rem, 2vw, 1.9rem) var(--font-display); }
.also__links a:hover span:first-child { transform: translateX(8px); }
.also__links span { transition: transform 150ms ease; }
.site-cta { background: var(--site-ink); color: #fff; }
.site-cta__inner { display: flex; min-height: 340px; align-items: center; justify-content: space-between; gap: 50px; }
.site-cta h2 { max-width: 900px; margin: 0; font: 800 clamp(2.8rem, 4.6vw, 5rem)/.96 var(--font-display); letter-spacing: -.055em; }

.about-hero { min-height: 620px; display: flex; flex-direction: column; justify-content: center; }
.about-hero h1 { max-width: 1120px; }
.about-hero > p:last-child { max-width: 700px; margin: 32px 0 0; color: var(--site-muted); font-size: 1.25rem; }
.about-statement { background: var(--site-yellow); }
.about-statement__inner { display: grid; min-height: 520px; grid-template-columns: 1fr .8fr; align-items: center; gap: 100px; }
.about-statement__inner > div p { margin: 0 0 22px; font-size: 1.08rem; line-height: 1.55; }
.about-principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 60px; padding-block: 110px; }
.about-principles article { border-top: 1.5px solid; padding-top: 22px; }
.about-principles span { font-size: .7rem; font-weight: 800; }
.about-principles h2 { margin: 60px 0 10px; font: 700 1.55rem var(--font-display); }
.about-principles p { margin: 0; color: var(--site-muted); }
.about-contact { display: flex; justify-content: space-between; border-top: 1px solid #ddd; padding-block: 52px 92px; font-size: 1.1rem; }
.about-contact a { font-weight: 800; text-decoration: underline; text-underline-offset: 4px; }

.pricing-hero { padding-block: 85px 70px; text-align: center; }
.pricing-hero p:last-child { max-width: 650px; margin: 26px auto 0; color: var(--site-muted); font-size: 1.14rem; }
.launch-pricing { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 22px; max-width: 1180px; padding-bottom: 75px; align-items: stretch; }
.launch-plan { display: flex; min-height: 560px; flex-direction: column; border: 1.5px solid var(--site-ink); border-radius: 30px; padding: 34px; background: #fff; }
.launch-plan--pro { border-width: 2.5px; border-color: #9333ea; background: #faf5ff; box-shadow: 0 10px 28px rgba(147, 51, 234, .12); transform: translateY(-8px); }
.launch-plan h2 { margin: 0; font: 800 2rem var(--font-display); }
.launch-plan__price { margin: 2px 0 28px; white-space: nowrap; font: 800 3.4rem var(--font-display); }
.launch-plan__currency { font: 700 1.5rem var(--font-body); }
.launch-plan__price small { font: 600 .78rem var(--font-body); }
.launch-plan ul { display: grid; gap: 10px; margin: 0 0 35px; padding: 0; list-style: none; }
.launch-plan li::before { margin-right: 10px; content: "✓"; font-weight: 900; }
.launch-plan .site-button { margin-top: auto; width: 100%; }
.launch-plan__note { margin: 16px 0 0; color: var(--site-muted); font-size: .75rem; text-align: center; }
.pricing-fineprint { max-width: 1180px; border-top: 1px solid #ddd; padding-block: 35px 105px; color: var(--site-muted); font-size: .82rem; }

.legal-wrap { padding-block: 75px 120px; }
.legal-header { max-width: 900px; padding-bottom: 64px; border-bottom: 1px solid #ddd; }
.legal-header h1 { font-size: clamp(3.6rem, 6vw, 6.7rem); }
.legal-header > p:last-child { margin: 24px 0 0; color: var(--site-muted); }
.legal-layout { display: grid; grid-template-columns: 230px minmax(0, 760px); gap: 90px; padding-top: 66px; }
.legal-toc { position: sticky; top: 32px; align-self: start; display: grid; gap: 9px; font-size: .78rem; }
.legal-toc strong { margin-bottom: 8px; font-size: .85rem; }
.legal-toc a { color: var(--site-muted); }
.legal-copy section { scroll-margin-top: 30px; }
.legal-copy h2 { margin: 0 0 10px; padding-top: 38px; font: 700 1.45rem var(--font-display); }
.legal-copy section:first-child h2 { padding-top: 0; }
.legal-copy p, .legal-copy li { color: #444; font-size: 1rem; line-height: 1.72; }
.legal-copy p { margin: 0 0 13px; }
.legal-copy ul { margin: 4px 0 0; padding-left: 22px; }
.legal-copy a { font-weight: 650; text-decoration: underline; text-underline-offset: 3px; }

.site-footer { background: #fff; }
.site-footer__grid { display: grid; min-height: 390px; grid-template-columns: 1.25fr 1fr .8fr 1.1fr; gap: 62px; padding-block: 78px 55px; }
.site-footer__brand .brand-logo { width: 164px; }
.site-footer__identity p { margin: 45px 0 0; line-height: 1.25; }
.site-footer__identity small { display: block; margin-top: 48px; }
.site-footer__column { display: grid; align-content: start; gap: 14px; font-size: .94rem; }
.site-footer__column h2 { margin: 0 0 5px; font: 800 .96rem var(--font-body); }
.site-footer__contact { padding-top: 22px; }
.site-footer__contact p { margin: 0 0 22px; line-height: 1.3; }
.site-footer__email { display: flex; min-height: 50px; align-items: center; justify-content: center; border: 1.5px solid; border-radius: 999px; font-size: .88rem; font-weight: 800; }

@media (max-width: 980px) {
  .marketing-site .site-shell { width: min(100% - 48px, 820px); }
  .feature-hero, .affiliate-hero, .bio-editorial, .steps, .affiliate-explainer, .course-flow__inner, .course-truth, .about-statement__inner { grid-template-columns: 1fr; gap: 55px; }
  .feature-hero, .affiliate-hero { padding-block: 75px 110px; }
  .trigger-strip__grid, .about-principles { grid-template-columns: 1fr; }
  .trigger-strip article { min-height: auto; border: 0; border-bottom: 1px solid #ddd; padding: 38px 0; }
  .trigger-strip article:first-child { border-left: 0; }
  .trigger-strip h2 { margin-top: 26px; }
  .steps__note { grid-column: auto; margin-top: -20px; }
  .course-flow li { grid-template-columns: 50px 120px 1fr; }
  .about-statement__inner { padding-block: 95px; }
  .about-principles { gap: 45px; }
  .about-principles h2 { margin-top: 30px; }
  .site-footer__grid { grid-template-columns: repeat(2, 1fr); }
  .launch-pricing { grid-template-columns: 1fr; max-width: 520px; }
  .launch-plan--pro { transform: none; }
}

@media (max-width: 640px) {
  .marketing-site .site-shell { width: calc(100% - 40px); }
  .marketing-site .site-nav { height: 88px; }
  .marketing-site .site-nav__brand .brand-logo { width: 124px; }
  .marketing-site .site-nav__links { gap: 13px; }
  .marketing-site .site-nav__links a:first-child { display: none; }
  .marketing-site .site-nav__text { font-size: .84rem; }
  .marketing-site .site-button--compact { min-height: 42px; padding-inline: 14px; font-size: .74rem; }
  .feature-hero, .affiliate-hero { min-height: auto; gap: 46px; padding-block: 58px 85px; }
  .feature-hero__copy h1, .affiliate-hero h1, .about-hero h1, .pricing-hero h1, .legal-header h1 { font-size: clamp(3.15rem, 15vw, 4.4rem); }
  .feature-hero__lede, .affiliate-hero__copy > p:not(.site-eyebrow) { font-size: 1rem; }
  .bio-editorial, .steps, .affiliate-explainer { padding-block: 82px; }
  .bio-editorial h2, .steps h2, .affiliate-explainer h2, .course-flow h2, .about-statement h2 { font-size: 2.8rem; }
  .affiliate-hero__rail > div:nth-child(2) { margin-left: 0; }
  .affiliate-hero__rail { transform: none; }
  .collection-callout .site-shell { min-height: 410px; }
  .collection-callout h2 { font-size: 2.9rem; }
  .course-flow__inner { padding-block: 82px; }
  .course-flow li { grid-template-columns: 38px 1fr; gap: 5px; }
  .course-flow li p { grid-column: 2; }
  .course-truth { padding-block: 80px; }
  .also { padding-block: 76px 88px; }
  .also__links a { min-height: 72px; font-size: 1.18rem; }
  .site-cta__inner { min-height: 420px; flex-direction: column; align-items: flex-start; justify-content: center; }
  .site-cta h2 { font-size: 2.75rem; }
  .about-hero { min-height: 560px; }
  .about-principles { padding-block: 80px; }
  .about-contact { flex-direction: column; gap: 15px; }
  .launch-pricing { grid-template-columns: 1fr; }
  .launch-plan { min-height: 520px; padding: 28px; }
  .launch-plan--pro { transform: none; }
  .legal-wrap { padding-block: 55px 85px; }
  .legal-header { padding-bottom: 45px; }
  .legal-layout { grid-template-columns: 1fr; gap: 45px; padding-top: 42px; }
  .legal-toc { position: static; grid-template-columns: repeat(2, 1fr); border-bottom: 1px solid #ddd; padding-bottom: 30px; }
  .legal-toc strong { grid-column: 1 / -1; }
  .legal-copy p, .legal-copy li { font-size: 1rem; }
  .site-footer__grid { grid-template-columns: 1fr; gap: 44px; padding-block: 68px; }
  .site-footer__identity p, .site-footer__identity small { margin-top: 30px; }
  .site-footer__contact { padding-top: 0; }
  .site-footer__email { max-width: 300px; }
}

@media (prefers-reduced-motion: reduce) {
  .marketing-site *, .marketing-site *::before, .marketing-site *::after { transition: none !important; }
}

.marketing-site .site-button--pro { background: #9333ea; border-color: #9333ea; color: #fff; }
.marketing-site .site-button--pro:hover { background: #7e22ce; border-color: #7e22ce; }

.feature-hero__visual--profile img { display: block; width: auto; max-width: 100%; max-height: 640px; border-radius: 22px; }
.feature-hero__visual--affiliates img { display: block; max-width: 470px; margin-inline: auto; }
.marketing-site .site-button--pro:focus-visible { background: #7e22ce; border-color: #7e22ce; }
