@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;600;700;800;900&display=swap');
:root {
  --brand: #005d43;
  --deep: #003a2d;
  --dark: #072c25;
  --mint: #43c4a6;
  --pale: #eaf7f3;
  --ink: #102921;
  --muted: #486358;
  --line: #d9e8e2;
  --white: #fff;
  font-family: Heebo, Arial, sans-serif;
  color: var(--ink);
  background: #fff;
  color-scheme: light;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; }
img { display: block; width: 100%; height: auto; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid #239b81; outline-offset: 4px; }
[hidden] { display: none !important; }
.shell { width: min(1180px, calc(100% - 72px)); margin-inline: auto; }
.section { padding-block: clamp(54px, 7vw, 95px); }
section[id], article[id] { scroll-margin-top: 24px; }
.sr-only, .skip:not(:focus) { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip:focus { position: absolute; z-index: 10; padding: 12px; background: var(--mint); }
.masthead { border-bottom: 1px solid var(--line); background: #fff; }
.nav { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 94px; }
.brand { display: inline-flex; max-width: 100%; align-items: center; }
.brand img { width: auto; height: 65px; object-fit: contain; }
.nav nav { display: flex; gap: clamp(14px, 3.2vw, 44px); color: #294e41; font-weight: 700; white-space: nowrap; }
.nav nav a:hover, .text-link:hover { color: #007858; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 49px; padding: 10px 16px; border: 1px solid transparent; border-radius: 9px; font-size: .94rem; font-weight: 800; line-height: 1.35; text-align: center; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.button:hover { transform: translateY(-2px); }
.button span { flex: 0 0 auto; font-size: 1.1em; }
.primary { background: var(--brand); color: white; box-shadow: 0 6px 16px #005d4325; }
.primary:hover { background: #004b37; }
.nav-cta { background: var(--pale); color: var(--brand); border-color: #cce9e1; white-space: nowrap; }
.nav-cta:hover { background: #d9f0e8; }
.mint { background: #73ddc3; color: #062e25; }
.mint:hover { background: #9ae9d7; }
.text-link { display: inline-flex; align-items: center; gap: 7px; color: var(--brand); font-weight: 800; text-underline-offset: 5px; }
.text-link:hover { text-decoration: underline; }
.hero { overflow: hidden; background: radial-gradient(ellipse at 12% 40%, #e0f4ed 0%, transparent 57%), linear-gradient(#f8fbf9, #fff); border-bottom: 1px solid #e2eee9; }
.hero-layout { display: grid; grid-template-columns: 1fr 1.04fr; align-items: center; gap: clamp(25px, 5vw, 80px); padding-block: clamp(45px, 6.1vw, 93px) clamp(38px, 5.4vw, 74px); }
.eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 12px; color: var(--brand); font-size: .91rem; font-weight: 800; line-height: 1.4; }
.eyebrow > span { display: inline-block; inline-size: 16px; block-size: 2px; background: currentColor; }
h1, h2, h3, p { margin-top: 0; }
.hero h1 { margin-bottom: 17px; font-size: clamp(2.85rem, 5.27vw, 4.65rem); font-weight: 900; line-height: 1.015; letter-spacing: -.066em; }
.hero h1 em { font-style: normal; color: var(--brand); background: linear-gradient(transparent 75%, #9ae6d2 75%, #9ae6d2 91%, transparent 91%); }
.lead { max-width: 490px; margin-bottom: 25px; color: var(--muted); font-size: clamp(1.03rem, 1.55vw, 1.23rem); line-height: 1.7; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 13px 19px; }
.hero-actions .primary { min-height: 54px; padding-inline: 18px; }
.small-play { display: grid; place-items: center; width: 23px; height: 23px; border: 1px solid #a6d5c5; border-radius: 50%; }
.small-play::before, .media-play i, .video-play i { content: ''; display: block; width: 0; height: 0; border-top: 5px solid transparent; border-bottom: 5px solid transparent; border-left: 8px solid currentColor; }
.hero-proof { margin: 18px 0 0; font-size: .9rem; color: #49685b; }
.hero-proof span { padding-inline: 3px; color: #007858; }
.hero-media { min-width: 0; }
.hero-art { display: block; position: relative; isolation: isolate; overflow: hidden; aspect-ratio: 22/15; border: 1px solid #145f4c; border-radius: 23px; background: var(--deep); color: #fff; box-shadow: 0 21px 48px #00453625; }
.hero-photo { width: 100%; height: 100%; object-fit: cover; object-position: 17.5% center; }
.media-play { position: absolute; left: 4%; bottom: 6%; display: inline-flex; align-items: center; gap: 8px; padding: 10px 13px; border-radius: 7px; color: #052e24; background: #b5efdf; font-weight: 800; white-space: nowrap; }
.hero-art:hover .media-play { background: #dcfff5; }
.hero-markets { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 13px; margin: 13px 0 0; color: #31564a; font-size: .84rem; font-weight: 750; }
.hero-markets > span:not(.topic-he) { width: 4px; height: 4px; border-radius: 50%; background: #46bba1; }
.path-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin-block: 24px 0; scroll-margin-top: 20px; }
.path-choice { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: clamp(12px,2vw,19px); border: 1px solid var(--path-border); border-radius: 12px; background: var(--path-bg); color: var(--path-ink); transition: background-color .2s ease; }
.path-courses { --path-bg: #edf2ff; --path-hover: #e0e9ff; --path-border: #cad8ff; --path-ink: #15296d; --path-accent: #234be0; }
.path-coaching { --path-bg: #e8f8d9; --path-hover: #d9f5be; --path-border: #c6e7ac; --path-ink: #214818; --path-accent: #27643a; }
.path-choice:hover { background: var(--path-hover); }
.path-choice strong, .path-choice small { display: block; }
.path-choice strong { font-size: clamp(1.04rem,2vw,1.27rem); line-height: 1.25; }
.path-choice small { margin-top: 3px; font-size: .82rem; line-height: 1.45; }
.path-arrow { display: grid; flex: 0 0 35px; place-items: center; height: 35px; border-radius: 50%; color: #fff; background: var(--path-accent); font-weight: 900; }
.courses.section { padding-block-start: clamp(37px,5.2vw,63px); }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 26px; }
h2 { margin-bottom: 8px; font-size: clamp(2rem,4vw,3.55rem); font-weight: 900; line-height: 1.12; letter-spacing: -.06em; }
.section-head p:not(.eyebrow), .proof p:not(.eyebrow), .sample-copy p:not(.eyebrow) { margin: 0; color: var(--muted); line-height: 1.65; }
.market { margin: 0; padding: 0; border: 0; min-inline-size: 0; flex: 0 0 auto; }
.market legend { margin-bottom: 4px; color: var(--muted); font-size: .84rem; font-weight: 800; }
.market div { display: inline-flex; align-items: center; padding: 4px; gap: 4px; border: 1px solid #b9d7ca; background: #fff; border-radius: 10px; }
.market button { min-height: 41px; border: 0; border-radius: 7px; padding: 6px 11px; background: #eaf5ef; color: #224f3e; white-space: nowrap; font-weight: 800; }
.market button:hover { box-shadow: inset 0 0 0 1px #629b85; }
.market button[aria-pressed="true"] { background: var(--brand); color: #fff; }
.coaching-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 19px; }
.offer { display: flex; flex-direction: column; min-width: 0; border: 1px solid var(--offer-line); border-radius: 18px; overflow: hidden; background: #fff; box-shadow: 0 9px 28px #003a2d0c; }
.meta { --offer-accent: #5476ff; --offer-line: #d1dcff; --offer-tint: #edf1ff; --offer-ink: #182f85; --offer-cta: #244be2; --offer-cta-hover: #1c3ac1; --offer-cta-ink: #fff; }
.google { --offer-accent: #22c994; --offer-line: #bbe8d5; --offer-tint: #e0f8ed; --offer-ink: #00533b; --offer-cta: #007850; --offer-cta-hover: #006440; --offer-cta-ink: #fff; }
.consult { --offer-accent: #ffbd3c; --offer-line: #ebd6a7; --offer-tint: #fff0cd; --offer-ink: #5e340b; --offer-cta: #ffc34c; --offer-cta-hover: #ffb62c; --offer-cta-ink: #362205; }
.intensive { --offer-accent: #c9f85f; --offer-line: #44826d; --offer-tint: #193c30; --offer-ink: #e2fcb2; --offer-cta: #c9f85f; --offer-cta-hover: #dcff8a; --offer-cta-ink: #162900; }
.offer-cover { width: 100%; height: auto; }
.offer-visual { position: relative; }
.cover-portrait, .instructor-photo { aspect-ratio: 1; border-radius: 50%; overflow: hidden; }
.cover-portrait { position: absolute; width: var(--circle-width); left: var(--circle-left); top: var(--circle-top); }
.portrait-photo { position: absolute; width: var(--photo-width); max-width: none; top: var(--photo-top); left: var(--photo-left); }
.meta .cover-portrait {
  --circle-width: 21%; --circle-left: 5.35%; --circle-top: 7.85%;
  --photo-width: 145.82%; --photo-left: -37.97%; --photo-top: -54.43%;
}
.intensive .cover-portrait {
  --circle-width: 16.15%; --circle-left: 2.9%; --circle-top: 4.9%;
  --photo-width: 121.70%; --photo-left: -12.23%; --photo-top: -7.98%;
}
.offer-body { display: flex; flex: 1; flex-direction: column; gap: 10px; padding: clamp(15px,2.1vw,25px); border-block-start: 5px solid var(--offer-accent); }
.offer h3 { margin: 0; font-size: clamp(1.4rem,2.7vw,2.15rem); line-height: 1.19; letter-spacing: -.045em; font-weight: 900; }
.fit { align-self: start; margin: 0; padding: 4px 9px; border-radius: 6px; color: var(--offer-ink); background: var(--offer-tint); font-size: .89rem; font-weight: 800; line-height: 1.45; }
.checks { display: grid; gap: 5px; margin: 2px 0 4px; padding: 0; list-style: none; color: #36564b; line-height: 1.52; }
.checks li { display: flex; gap: 8px; align-items: baseline; }
.checks li::before { content: '✓'; color: #008468; font-weight: 900; flex-shrink: 0; }
.offer details { border-top: 1px solid #e3ede9; }
summary { padding-block: 10px; cursor: pointer; color: var(--brand); font-weight: 800; }
details p { margin: 0 0 11px; color: var(--muted); line-height: 1.6; }
.course-selector {
  padding: clamp(19px,3.5vw,42px);
  border-radius: 24px;
  color: #fff;
  background: radial-gradient(ellipse at 8% 20%,#216354 0,transparent 70%), #07362c;
  box-shadow: 0 15px 36px #053a2824;
}
.course-selector-heading { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-block-end: 22px; }
.course-selector-heading p { margin: 0 0 6px; color: #a8e4cd; font-size: .92rem; font-weight: 800; }
.course-selector-heading h2 { margin: 0; }
.course-selector .market legend { color: #cce9dc; }
.course-selector .market div { border-color: #9fcbb9; background: #f4fcf8; }
.course-choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.course-choice {
  display: flex; justify-content: space-between; align-items: center; gap: 10px;
  padding: clamp(11px,2vw,18px); border: 1px solid var(--offer-line); border-radius: 13px;
  background: var(--offer-tint); color: var(--offer-ink);
  transition: transform .2s ease, background-color .2s ease;
}
.course-choice:hover { transform: translateY(-2px); background: #fff; }
.course-choice strong, .course-choice small { display: block; }
.course-choice strong { font-size: clamp(1.06rem,2.15vw,1.36rem); line-height: 1.25; }
.course-choice small { margin-block-start: 4px; font-size: .84rem; line-height: 1.4; }
.course-choice-arrow {
  flex: 0 0 36px; display: grid; place-items: center; height: 36px;
  border-radius: 50%; color: #fff; background: var(--offer-cta); font-weight: 900;
}
.course-grid { display: grid; gap: clamp(18px,3vw,34px); margin-block-start: 22px; }
.course-panel {
  display: grid;
  grid-template-columns: minmax(0,1.14fr) minmax(0,1fr);
  grid-template-areas: 'intro art' 'purchase purchase' 'resources resources';
  border-radius: 22px;
}
.course-panel:target { box-shadow: 0 0 0 3px var(--offer-accent), 0 9px 28px #003a2d0c; }
.course-intro {
  grid-area: intro; align-self: center; padding: clamp(20px,3.6vw,45px);
  border-inline-start: 5px solid var(--offer-accent);
}
.course-platform { margin: 0 0 8px; color: var(--offer-ink); font-weight: 800; font-size: .91rem; }
.course-platform span { color: #526c60; padding-inline: 3px; }
.course-panel h3 { font-size: clamp(1.82rem,3.65vw,3.18rem); line-height: 1.06; }
.course-description { margin: 11px 0 15px; color: var(--muted); line-height: 1.6; }
.course-panel .checks { font-size: .93rem; }
.course-panel .checks li::before { color: var(--offer-ink); }
.course-art {
  grid-area: art; display: grid; align-items: center; min-width: 0;
  padding: clamp(15px,2.55vw,31px);
  background: radial-gradient(ellipse at 0 0,#fff 0,transparent 75%), var(--offer-tint);
}
.course-art .offer-visual { min-width: 0; }
.course-art .offer-cover { border-radius: 12px; box-shadow: 0 12px 24px #082b2333; }
.course-purchase {
  grid-area: purchase; display: grid; grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center; gap: clamp(12px,2.3vw,26px);
  padding: 14px clamp(17px,3.6vw,45px); border-block: 1px solid var(--offer-line);
  background: var(--offer-tint); color: var(--offer-ink);
}
.course-discount {
  margin: 0 0 5px; color: #99102b; font-size: .89rem; line-height: 1.2; font-weight: 900;
}
.course-discount bdi { font-size: 1.3em; }
.course-price .offer-prices .price { font-size: clamp(1.52rem,3vw,2.5rem); }
.bonus {
  margin: 0; padding: 10px 13px; border: 1px solid #d7a824; border-radius: 8px;
  background: #ffde59; color: #000; font-size: .9rem; font-weight: 800; line-height: 1.45;
}
.bonus bdi { white-space: nowrap; }
.bonus > span { margin-inline-end: 3px; }
.course-resources {
  grid-area: resources; display: grid; grid-template-columns: minmax(0,1fr) auto;
  align-items: start; gap: 8px 24px; padding-inline: clamp(17px,3.6vw,45px);
}
.course-resources .text-link { min-height: 44px; }
.course-resources .text-link { font-size: .91rem; }
.syllabus-trigger {
  align-self: start;
  justify-self: start;
  min-height: 44px;
  padding: 7px 0;
  border: 0;
  background: none;
  color: var(--offer-ink);
  text-align: start;
  font-weight: 800;
}
.syllabus-trigger:hover { text-decoration: underline; text-underline-offset: 4px; }
.syllabus-trigger span { margin-inline-start: 4px; }
.syllabus-dialog {
  --syllabus-deep: #08372c;
  --syllabus-glow: #17614d;
  width: min(880px,calc(100% - 24px));
  max-height: min(830px,calc(100vh - 24px));
  max-height: min(830px,calc(100dvh - 24px));
  padding: 0;
  overflow: hidden;
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--offer-line);
  border-radius: 20px;
  box-shadow: 0 24px 82px #061f2459;
}
.meta .syllabus-dialog { --syllabus-deep: #121e4b; --syllabus-glow: #2949a0; }
.syllabus-dialog[open] { display: grid; grid-template-rows: auto minmax(0,1fr) auto; }
.syllabus-dialog::backdrop { background: #071e29ba; }
.syllabus-header, .syllabus-footer { padding: 12px clamp(14px,3vw,26px); }
.syllabus-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  border-bottom: 1px solid var(--line);
}
.syllabus-header h2 { margin: 0; font-size: clamp(1rem,3vw,1.3rem); letter-spacing: -.025em; }
.syllabus-header h2 span { margin-inline-end: 6px; color: var(--muted); font-size: .86em; font-weight: 600; }
.syllabus-header .dialog-close { flex: none; }
.syllabus-content { min-height: 0; overflow: auto; overscroll-behavior: contain; }
.syllabus-content:focus-visible { outline: 2px solid var(--brand); outline-offset: -2px; }
.syllabus-hero {
  display: grid;
  grid-template-columns: minmax(0,1.45fr) minmax(0,1fr);
  align-items: center;
  gap: clamp(14px,3.5vw,36px);
  padding: clamp(20px,3.4vw,34px) clamp(14px,3vw,26px);
  color: #fff;
  background: radial-gradient(ellipse at 12% 8%,var(--syllabus-glow),transparent 75%), var(--syllabus-deep);
}
.syllabus-hero .syllabus-promise {
  color: #fff;
  font-size: clamp(1.65rem,4.2vw,2.75rem);
  line-height: 1.07;
  letter-spacing: -.055em;
}
.syllabus-hero-copy p { margin: 10px 0 12px; color: #edf5ff; font-size: .97rem; line-height: 1.55; }
.syllabus-facts { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.syllabus-facts li { padding: 3px 9px; border: 1px solid #ffffff52; border-radius: 6px; font-size: .83rem; font-weight: 800; }
.syllabus-art { border-radius: 9px; overflow: hidden; box-shadow: 0 10px 24px #0510185e; border: 1px solid #ffffff55; }
.syllabus-bonus {
  margin: 0;
  padding: 8px clamp(14px,3vw,26px);
  background: #ffde59;
  color: #141100;
  font-size: .9rem;
  line-height: 1.45;
}
.syllabus-bonus strong { margin-inline-end: 5px; }
.syllabus-bonus bdi { white-space: nowrap; font-weight: 800; }
.syllabus-nav {
  position: sticky;
  top: 0;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 8px clamp(14px,3vw,26px);
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.syllabus-nav button {
  min-height: 40px;
  padding: 5px 10px;
  border: 1px solid var(--offer-line);
  border-radius: 6px;
  color: var(--offer-ink);
  background: var(--offer-tint);
  font-size: .85rem;
  font-weight: 800;
}
.syllabus-nav button:hover { border-color: var(--offer-accent); }
.syllabus-chapters { display: grid; gap: 14px; padding: 14px clamp(14px,3vw,26px) 18px; }
.syllabus-chapter { min-width: 0; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.syllabus-dialog .syllabus-chapter h3 {
  margin: 0;
  padding: 11px 13px;
  color: var(--offer-ink);
  background: var(--offer-tint);
  font-size: 1.1rem;
  line-height: 1.35;
  letter-spacing: normal;
}
.syllabus-chapter h3:focus-visible { outline: 2px solid var(--brand); outline-offset: -2px; }
.syllabus-chapter-number { font-size: .83rem; font-weight: 600; margin-inline-end: 5px; }
.syllabus-lessons {
  margin: 0;
  padding: 6px 34px 12px 12px;
  color: var(--ink);
  font-size: .93rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.syllabus-lessons li { padding: 6px 0; }
.syllabus-lessons li + li { border-top: 1px solid #e9f0ed; }
.syllabus-lessons li::marker { font-weight: 800; }
.syllabus-footer {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.1fr);
  align-items: center;
  gap: 10px 16px;
  background: #fff;
  border-top: 1px solid var(--line);
  box-shadow: 0 -5px 18px #12372e0e;
}
.syllabus-price p { margin: 0 0 3px; font-size: .8rem; font-weight: 800; color: var(--muted); }
.syllabus-price .price { color: var(--ink); font-size: clamp(1.26rem,3vw,1.85rem); }
.syllabus-footer .button { min-height: 56px; font-size: 1.08rem; }
@media(max-width: 600px) {
  .syllabus-dialog { width: calc(100% - 14px); max-height: calc(100dvh - 14px); }
  .syllabus-header, .syllabus-footer { padding-block: 8px; }
  .syllabus-hero { grid-template-columns: minmax(0,1fr) minmax(0,.42fr); gap: 10px; }
  .syllabus-hero .syllabus-promise { font-size: clamp(1.42rem,5.6vw,1.75rem); }
  .syllabus-hero-copy p { margin: 7px 0 9px; font-size: .87rem; }
  .syllabus-footer { grid-template-columns: minmax(0,1fr); gap: 7px; }
  .syllabus-footer .button { min-height: 49px; }
}
@media(max-width: 830px) {
  .course-panel { grid-template-columns: minmax(0,1fr); grid-template-areas: 'intro' 'purchase' 'art' 'resources'; }
  .course-art .offer-visual, .course-art > .offer-cover { width: min(100%,545px); margin-inline: auto; }
}
@media(max-width: 540px) {
  .course-selector-heading { flex-direction: column; align-items: start; gap: 12px; margin-block-end: 14px; }
  .course-choices { grid-template-columns: minmax(0,1fr); gap: 8px; }
  .course-choice-arrow { flex-basis: 29px; height: 29px; }
  .course-purchase { grid-template-columns: minmax(0,1fr); gap: 9px; }
  .course-resources { grid-template-columns: minmax(0,1fr); gap: 0; }
  .course-resources .text-link { border-top: 1px solid var(--line); }
}
@media(min-width: 900px) {
  .course-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .course-panel {
    grid-template-columns: minmax(0,1fr);
    grid-template-areas: 'intro' 'art' 'purchase' 'resources';
    grid-template-rows: 1fr auto auto auto;
    row-gap: 0;
  }
  .course-intro { align-self: stretch; padding: clamp(20px,2.2vw,32px); }
  .course-panel h3 { font-size: clamp(1.85rem,3vw,2.8rem); }
  .course-art { padding: clamp(16px,2vw,26px); }
  .course-purchase {
    grid-template-columns: minmax(0,1fr) auto;
    grid-template-areas: 'price action' 'bonus action';
    gap: 9px 12px;
    padding-inline: clamp(16px,2vw,26px);
  }
  .course-price { grid-area: price; }
  .course-price .offer-prices .price { font-size: clamp(1.38rem,2.15vw,1.9rem); }
  .course-purchase .bonus { grid-area: bonus; }
  .course-purchase .offer-cta { grid-area: action; }
  .course-resources { padding-inline: clamp(16px,2vw,26px); }
  @supports (grid-template-rows: subgrid) {
    .course-panel { grid-row: span 4; grid-template-rows: subgrid; }
  }
}
.price-row { display: flex; align-items: end; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: clamp(12px,1.6vw,17px); border: 1px solid var(--offer-line); border-radius: 12px; background: var(--offer-tint); color: var(--offer-ink); }
.price-label { margin: 0 0 5px; font-size: .9rem; font-weight: 800; }
.offer-prices { display: flex; align-items: stretch; gap: 10px; }
.market-price { display: grid; gap: 2px; align-content: start; }
.market-price:not([hidden]) + .market-price:not([hidden]) { border-inline-start: 1px solid var(--offer-line); padding-inline-start: 10px; }
.market-price small { font-size: .76rem; line-height: 1.2; font-weight: 700; }
.offer-prices .price { display: block; color: inherit; font-size: clamp(1.55rem,2.7vw,2.35rem); line-height: 1.12; }
.offer-action { min-height: 51px; padding-inline: 13px; color: var(--offer-cta-ink); background: var(--offer-cta); box-shadow: 0 5px 12px #121f2221; }
.offer-action:hover { background: var(--offer-cta-hover); }
.course-action { min-height: 56px; font-size: 1.05rem; padding-inline: clamp(11px,1.5vw,19px); border-color: #a90626; color: #fff; background: linear-gradient(180deg,#d9153c,#ba0d30); box-shadow: 0 6px 15px #bd123c42; white-space: nowrap; }
.course-action:hover { color: #fff; background: #a80c2a; box-shadow: 0 8px 18px #bd123c62; }
.course-action:focus-visible { outline-color: #a80c2a; }
.course-action[data-select="meta"] {
  border-color: #1739b1;
  background: linear-gradient(180deg,#244be2,#1939bd);
  box-shadow: 0 6px 15px #244be242;
}
.course-action[data-select="meta"]:hover { background: #1c3ac1; box-shadow: 0 8px 18px #244be262; }
.course-action[data-select="meta"]:focus-visible { outline-color: #244be2; }
.offer-cta { display: grid; justify-items: center; gap: 5px; min-width: 0; }
.offer-cta .offer-action { width: 100%; }
/* Follow the uploaded badge outline so its white background does not cover the offer panel. */
.buy-now-badge {
  width: clamp(62px,7vw,82px);
  height: auto;
  clip-path: polygon(
    19.9% 3.7%, 17.4% 4.5%, 15.2% 6.3%, 14.1% 8.1%, 13.6% 10.4%,
    13.6% 53.9%, 4.1% 54.1%, 3.4% 55%, 3.9% 57.2%, 5.7% 59.6%,
    49.7% 98.2%, 50.9% 98.2%, 96.7% 58.7%, 97.4% 57.5%, 97.2% 56.2%,
    95.2% 54.1%, 88.4% 53.9%, 88.4% 12.2%, 87.2% 9.4%, 84% 5.8%,
    82.5% 4.6%, 80.1% 3.7%
  );
}
@media(max-width: 700px) {
  .coaching-grid .offer-cta { width: 100%; }
}
.price { color: #14382b; white-space: nowrap; font-size: clamp(1.16rem,2.2vw,1.75rem); line-height: 1.45; font-weight: 900; letter-spacing: -.04em; }
.sample { color: #fff; background: radial-gradient(ellipse at 20% 80%,#096852,transparent 62%), var(--deep); }
.sample-grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: clamp(20px,5.3vw,72px); align-items: center; }
.sample .eyebrow { color: #9aefd6; }
.sample-copy p:not(.eyebrow) { color: #e0f4eb; margin-bottom: 17px; }
.video-frame { position: relative; aspect-ratio: 16/9; background: #081813; border: 1px solid #91dfca75; border-radius: 16px; overflow: hidden; box-shadow: 0 15px 36px #00271c6e; }
.video-frame video, .video-trigger { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video-trigger { padding: 0; color: #fff; background: #081813; }
.video-trigger:focus-visible { outline-offset: -5px; }
.video-trigger::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,#031610d6,transparent 58%),#03251a26; }
.video-frame img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.video-play { position: absolute; z-index: 1; top: 50%; left: 50%; translate: -50% -50%; display: grid; place-items: center; width: clamp(49px,6vw,75px); height: clamp(49px,6vw,75px); border-radius: 50%; background: #a4ead6; color: #043428; box-shadow: 0 8px 26px #001a13a3; }
.video-play i { border-top-width: 9px; border-bottom-width: 9px; border-left-width: 14px; margin-left: 4px; }
.video-trigger:hover .video-play { background: white; }
.video-caption { position: absolute; z-index: 1; inset-inline-start: 15px; bottom: 13px; font-size: .93rem; font-weight: 800; }
.proof { display: grid; grid-template-columns: minmax(100px,175px) minmax(0,650px); justify-content: center; align-items: center; gap: clamp(19px,5vw,58px); }
.instructor-photo { position: relative; border: 3px solid #7bd4bc; --photo-width: 266%; --photo-left: -120.13%; --photo-top: -12.34%; }
.proof h2 { font-size: clamp(1.85rem,3.75vw,3.3rem); }
.proof .text-link { margin-top: 12px; }
.coaching {
  background: radial-gradient(ellipse at 90% 0%,#e2f0dd,transparent 72%), #f5faf5;
  border-block: 1px solid #d6e8d3;
}
.coaching-card {
  --coaching-padding: clamp(16px,2.3vw,28px);
  --coaching-feature-line: #ede3ce;
  --coaching-muted: #5b594c;
  --coaching-feature-icon: #80500e;
  background: #fffcf5;
  box-shadow: 0 15px 36px #12382214;
}
.coaching-card.intensive {
  --coaching-feature-line: #396452;
  --coaching-muted: #d5ebdf;
  --coaching-feature-icon: #dcf9a7;
  background: linear-gradient(155deg,#164d3c,#0b3329 65%);
  color: #fff;
}
.coaching-card > .offer-cover, .coaching-card > .offer-visual { align-self: start; }
.coaching-intro {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-content: start;
  align-items: start;
  gap: 12px;
  padding: var(--coaching-padding) var(--coaching-padding) 13px;
  border-block-start: 4px solid var(--offer-accent);
}
.coaching-format { margin: 0 0 6px; color: var(--offer-ink); font-weight: 800; font-size: .9rem; }
.coaching-card .coaching-intro h3 { font-size: clamp(1.6rem,2.8vw,2.45rem); line-height: 1.1; }
.coaching-description { margin: 8px 0 0; color: var(--coaching-muted); line-height: 1.55; }
.coaching-duration {
  display: grid;
  place-items: center;
  gap: 2px;
  min-width: 68px;
  padding: 8px 9px;
  border: 1px solid var(--offer-line);
  border-radius: 11px;
  color: var(--offer-ink);
  background: var(--offer-tint);
}
.coaching-duration strong { font-size: clamp(1.8rem,3vw,2.55rem); line-height: 1; font-weight: 900; }
.coaching-duration span { font-size: .79rem; font-weight: 800; }
.coaching-benefits {
  display: grid;
  align-content: start;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0 var(--coaching-padding) 14px;
}
.coaching-benefits li {
  display: grid;
  grid-template-columns: 31px minmax(0,1fr);
  align-items: start;
  gap: 10px;
  padding: 10px 0;
  border-block-end: 1px solid var(--coaching-feature-line);
}
.coaching-benefits li:last-child { border-block-end: 0; }
.coaching-benefits strong { font-size: .98rem; font-weight: 900; }
.coaching-benefits p { margin: 3px 0 0; color: var(--coaching-muted); font-size: .89rem; line-height: 1.48; }
.coaching-icon {
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  border-radius: 8px;
  color: var(--coaching-feature-icon);
  background: var(--offer-tint);
}
.coaching-icon::before { content: ''; display: block; }
.coaching-icon[data-icon="target"]::before {
  width: 15px; height: 15px; border: 2px solid; border-radius: 50%;
  background: radial-gradient(circle,currentColor 2px,transparent 3px);
}
.coaching-icon[data-icon="work"]::before {
  width: 14px; height: 12px; border-block: 2px solid;
  background: linear-gradient(currentColor,currentColor) center / 100% 2px no-repeat;
}
.coaching-icon[data-icon="outcome"]::before {
  width: 8px; height: 13px; border: solid currentColor; border-width: 0 2px 2px 0;
  transform: translateY(-2px) rotate(45deg);
}
.coaching-purchase { padding: 0 var(--coaching-padding) var(--coaching-padding); margin-block-start: auto; }
.coaching-purchase .price-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 10px; }
.coaching-purchase .offer-prices .price { font-size: clamp(1.42rem,2.2vw,2rem); }
.coaching-purchase .buy-now-badge { width: 48px; }
.coaching-purchase .offer-action { min-height: 50px; white-space: nowrap; }
.coaching-purchase .syllabus-trigger { margin-block-start: 3px; }
@media(min-width: 701px) {
  @supports (grid-template-rows: subgrid) {
    .coaching-card { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 0; }
    .coaching-purchase { margin-block-start: 0; }
  }
}
@media(min-width: 701px) and (max-width: 1050px), (max-width: 440px) {
  .coaching-purchase .price-row { grid-template-columns: minmax(0,1fr); }
  .coaching-purchase .offer-cta { width: 100%; }
}
.faq { display: grid; grid-template-columns: .7fr 1.3fr; gap: 22px; }
.faq details { border-bottom: 1px solid var(--line); }
.faq details:first-child { border-top: 1px solid var(--line); }
.faq summary { padding-block: 13px; }
.closeout { padding-block: 32px; color: #fff; background: var(--brand); }
.closeout .shell { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.closeout h2 { margin: 0; font-size: clamp(1.55rem,3vw,2.55rem); }
.footer { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px; padding-block: 16px 22px; }
.footer img { height: 65px; }
.mobile-cta { display: none; }
#offer-dialog { width: min(470px, calc(100% - 24px)); max-height: calc(100% - 24px); padding: 0; color: var(--ink); border: 1px solid #cde1d7; border-radius: 17px; }
#offer-dialog::backdrop { background: #072f26b0; }
.dialog-body { padding: 20px 24px 24px; }
.dialog-close { display: flex; justify-content: end; }
.dialog-close button { background: var(--pale); color: var(--brand); border: 0; border-radius: 50%; width: 43px; height: 43px; font-size: 26px; }
.dialog-body h2 { margin: 3px 0 8px; font-size: clamp(1.65rem,4vw,2.3rem); }
.dialog-body p { color: var(--muted); line-height: 1.55; }
.dialog-body .price { display: block; margin: 9px 0; font-size: clamp(1.45rem,5vw,2.15rem); }
#checkout-form { display: grid; gap: 8px; }
#checkout-fields { display: grid; gap: 5px; padding: 0; margin: 0; border: 0; min-inline-size: 0; }
#checkout-fields legend { padding: 0; margin-bottom: 8px; font-weight: 800; }
#checkout-fields label { font-size: .88rem; font-weight: 700; }
#checkout-fields input { box-sizing: border-box; width: 100%; min-height: 44px; padding: 8px 11px; margin-bottom: 5px; border: 1px solid #8fb2a4; border-radius: 8px; background: #fff; color: var(--ink); font: inherit; }
#checkout-fields input[dir="ltr"] { text-align: left; }
#checkout-fields input:focus-visible { outline: 2px solid var(--brand); outline-offset: 2px; }
#checkout-form p { margin: 0; font-size: .84rem; }
#checkout-status:empty { display: none; }
#checkout-form .button { justify-content: center; }
#checkout-form .button:disabled { cursor: default; opacity: .6; }
.purchase-page { min-height: 100vh; background: #edf6ef; }
.purchase-layout { padding-block: clamp(34px, 8vw, 100px); }
.purchase-card { padding: clamp(21px, 5vw, 48px); border: 1px solid #c6dcd1; border-radius: 22px; background: #fff; }
.purchase-card h1 { font-size: clamp(1.85rem, 4vw, 3.1rem); margin: 0 0 .7rem; }
.purchase-card .button { margin: 4px 0 12px; }
.purchase-card .text-link { display: block; width: fit-content; }
.orders-table { overflow-x: auto; }
.orders-table table { width: 100%; border-collapse: collapse; }
.orders-table th, .orders-table td { padding: .65em; text-align: start; border-bottom: 1px solid #c6dcd1; white-space: nowrap; }
#checkout-status { margin: 6px 0 8px; }
@media(max-width: 950px) {
  .shell { width: calc(100% - 44px); }
  .hero-layout { gap: 24px; }
  .nav { min-height: 82px; }
  .brand img { height: 51px; }
}
@media(max-width: 700px) {
  .shell { width: calc(100% - 30px); }
  .nav { min-height: 63px; gap: 8px; }
  .nav .brand img { height: 42px; }
  .nav nav { display: none; }
  .nav-cta { min-height: 39px; padding: 6px 8px; font-size: .8rem; }
  .hero-layout, .sample-grid, .faq { grid-template-columns: 1fr; gap: 21px; }
  .hero-layout { padding-block: 29px 24px; }
  .hero h1 { font-size: clamp(2.85rem,11.1vw,4.4rem); margin-bottom: 11px; }
  .hero .eyebrow { margin-bottom: 8px; }
  .lead { margin-bottom: 15px; }
  .hero-actions { gap: 9px 11px; }
  .hero-actions .primary { min-height: 48px; padding-inline: 10px; }
  .hero-actions .text-link { font-size: .87rem; }
  .hero-proof { margin-top: 12px; }
  .hero-art { aspect-ratio: 1.52; border-radius: 16px; }
  .section-head { flex-direction: column; align-items: start; gap: 10px; margin-bottom: 15px; }
  .coaching-grid { grid-template-columns: 1fr; gap: 13px; }
  .path-grid { grid-template-columns: 1fr; gap: 8px; margin-block-start: 16px; }
  .price-row .button { width: 100%; min-height: 48px; }
  .proof { grid-template-columns: 76px minmax(0,1fr); align-items: start; gap: 12px; }
  .proof h2 { font-size: 1.6rem; }
  .footer { padding-bottom: 81px; }
  .footer .brand img { height: 42px; }
  .mobile-cta { position: fixed; z-index: 3; display: block; inset: auto 0 0; padding: 8px 15px max(8px,env(safe-area-inset-bottom)); background: #ffffffef; border-top: 1px solid var(--line); backdrop-filter: blur(8px); }
  .mobile-cta a { display: flex; width: min(100%,420px); margin-inline: auto; min-height: 44px; }
}
@media(max-width: 355px) {
  .nav .brand img { height: 33px; }
  .media-play { font-size: .76rem; padding: 6px 7px; }
  .offer-body { gap: 8px; }
}
@media(prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition: none !important; }
}
