/* Second review version: same burgundy/gold palette, calmer editorial rhythm. */
:root { --display: 'Geist', Arial, sans-serif; }
html { scroll-padding-top: 110px; }
main > section[id] { scroll-margin-top: 110px; }
body { overflow-x: clip; }
.manager-contact-bar { width: max-content; max-width: calc(100% - 24px); min-height: 0; padding: 8px 10px 8px 16px; bottom: 14px; right: 14px; left: auto; transform: none; border-radius: 18px; }
.manager-contact-bar .manager-contact-links > span { display: none; }
h1, h2, h3 { text-wrap: balance; }
h2 { font-family: var(--display); font-weight: 590; letter-spacing: -.018em; line-height: 1.08; }
h3 { letter-spacing: -.01em; }
.hero h1 { font-family: var(--display); font-weight: 560; letter-spacing: .005em; line-height: 1.11; font-size: clamp(43px, 4.7vw, 67px); }
.hero-note { max-width: 590px; }
.hero-author-label { text-align: center; }
.hero-author-label b { font-size: 14px; }
.hero-primary-cta { position: relative; isolation: isolate; animation: cta-breath 2.8s ease-in-out infinite; }
.hero-primary-cta::after { content: ''; position: absolute; z-index: -1; inset: -5px; border: 1px solid rgba(255, 219, 130, .65); border-radius: 20px; animation: cta-ring 2.8s ease-out infinite; }
@keyframes cta-breath { 0%,100% { box-shadow: 0 14px 42px rgba(83,36,8,.35), 0 1px inset rgba(255,255,255,.75); } 50% { box-shadow: 0 17px 52px rgba(83,36,8,.55), 0 1px inset rgba(255,255,255,.75); } }
@keyframes cta-ring { 0%,100% { opacity: .32; transform: scale(1); } 55% { opacity: .8; transform: scale(1.035); } }
.section-heading { margin-bottom: clamp(42px, 5vw, 70px); }
.section-heading > p { font-size: 17px; line-height: 1.65; }
.light-section, .skills-section, .platform-section, .career-section, .cases-section, .reviews-section, .faq-section { padding-block: clamp(76px, 9vw, 126px); }
.opportunity-card h3, .audience-grid h3, .case-copy h3 { line-height: 1.15; }
.audience .persona-grid { margin-top: 18px; }
.audience .no-code-visual { margin-top: 32px; }

/* Special offer: one clear headline, date and a scannable benefit grid. */
.second-wave-offer { padding: clamp(76px, 9vw, 126px) 0; }
.second-wave-head { grid-template-columns: minmax(0,1.5fr) minmax(190px,.5fr); align-items: center; }
.second-wave-head h2 { max-width: 820px; font-size: clamp(38px, 5vw, 66px); }
.offer-clock { min-width: 0; }
.second-wave-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
.second-wave-item { min-height: 0; padding: 30px; border-bottom: 1px solid var(--line); }
.second-wave-item:nth-child(3) { border-right: 0; }
.second-wave-item h3 { margin: 22px 0 12px; font-size: 25px; line-height: 1.16; }
.second-wave-item p { font-size: 15px; }

/* Skill list is a compact syllabus; examples are a single, separate gallery. */
.skills-section .section-heading { margin-bottom: 42px; }
.skill-row { grid-template-columns: 46px minmax(0,1fr) minmax(178px,220px); gap: 24px; min-height: 0; padding: 28px 0; }
.skill-row .skill-mark { display: none; }
.skill-row h3 { font-family: var(--display); font-weight: 590; font-size: clamp(27px,3vw,37px); letter-spacing: -.015em; }
.skill-row p { max-width: 590px; font-size: 15px; line-height: 1.6; }
.skill-outcome { justify-items: start; align-self: center; }
.skill-outcome > strong { text-align: left; }
.skill-market-price { text-align: left; }
.skill-work-gallery, .income-example { width: min(1180px,calc(100% - 48px)); margin: clamp(72px,8vw,112px) auto 0; }
.skill-gallery-intro { max-width: 760px; margin-bottom: 32px; }
.skill-gallery-intro .addition-eyebrow, .income-example .addition-eyebrow { color: var(--gold); }
.skill-gallery-intro h3, .income-example h3 { margin: 0; font-family: var(--display); font-size: clamp(35px,4.5vw,58px); font-weight: 590; line-height: 1.1; letter-spacing: -.018em; }
.skill-gallery-intro > p:last-child, .income-example > div > p:last-child { color: rgba(255,255,255,.7); max-width: 660px; margin: 16px 0 0; font-size: 15px; line-height: 1.6; }
.skill-work-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.skill-work-card { min-width: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.2); border-radius: 22px; background: rgba(255,255,255,.065); }
.skill-work-image { display: grid; place-items: center; height: 220px; padding: 14px; background: #f3f0eb; }
.skill-work-image img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.skill-work-copy { padding: 20px 22px 24px; }
.skill-work-type { color: var(--gold); font-size: 11px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.skill-work-copy h4 { min-height: 52px; margin: 12px 0 12px; font-family: var(--display); font-size: 24px; font-weight: 590; line-height: 1.14; }
.skill-work-copy p { margin: 0; color: rgba(255,255,255,.7); font-size: 13px; line-height: 1.5; }
.skill-work-copy .skill-work-label { margin: 0 0 8px; color: rgba(255,255,255,.58); font-size: 12px; }
.skill-work-value { display: inline-block; padding: 9px 12px; border: 1px solid rgba(236,208,128,.65); border-radius: 10px; color: var(--gold); font-size: 21px; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1; }
.income-example { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 48px; padding: clamp(28px,4vw,52px); border: 1px solid rgba(236,208,128,.5); border-radius: 30px; background: rgba(255,255,255,.045); }
.income-example ol { margin: 0; padding: 0; list-style: none; counter-reset: orders; }
.income-example li { display: flex; justify-content: space-between; gap: 18px; padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.16); counter-increment: orders; }
.income-example li::before { content: counter(orders,decimal-leading-zero); color: var(--gold); font-size: 13px; font-weight: 800; }
.income-example li span { flex: 1; }
.income-example li strong { color: var(--gold); white-space: nowrap; }

/* Portfolio: typography and full-size screenshots. */
.results-board { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.results-board article { min-width: 0; min-height: 0; padding: 22px; }
.results-board h3 { min-height: 0; margin: 20px 0 18px; font-family: var(--display); font-size: clamp(20px,1.7vw,25px); font-weight: 590; line-height: 1.16; overflow-wrap: normal; }
.results-board .mini-scene { margin-top: auto; overflow: hidden; border: 1px solid #e7e1dd; border-radius: 14px; background: #f7f4f1; }
.results-board .mini-scene img { position: static; display: block; width: 100%; height: 100%; object-fit: contain; transform: none !important; }
.portfolio-banner { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); margin-top: 24px; gap: 36px; }
.portfolio-banner h3 { font-family: var(--display); font-weight: 590; letter-spacing: -.018em; line-height: 1.12; }

/* Program: image beside lesson description, result as a full-width footer. */
.program-heading { margin-bottom: 54px; }
.module-list { gap: 28px; }
.module-card { grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); grid-template-areas: 'lesson image' 'result result'; gap: 0 30px; min-height: 0; padding: 30px; }
.module-copy { grid-area: lesson; padding: 10px 6px 28px 4px; }
.module-copy h3 { margin: 20px 0 20px; font-family: var(--display); font-size: clamp(30px,3vw,42px); font-weight: 590; letter-spacing: -.015em; line-height: 1.1; }
.module-copy li { padding-block: 6px; font-size: 15px; line-height: 1.5; }
.module-visual { grid-area: image; align-self: stretch; min-height: 270px; max-height: 340px; padding: 16px; background: #f5f1ed !important; border: 1px solid #ebe3de; border-radius: 18px; }
.module-visual img { position: static; width: 100%; height: 100%; object-fit: contain; }
.module-result { grid-area: result; flex-direction: row; align-items: center; gap: 28px; min-height: 0; padding: 20px 26px; border-radius: 17px; }
.module-result > strong { flex: 0 0 130px; color: var(--gold); font-size: 13px; text-transform: uppercase; letter-spacing: .08em; }
.module-result > p { flex: 1; margin: 0; font-size: 18px; line-height: 1.45; }
.module-market-price { flex: 0 0 230px; margin: 0; padding: 12px 15px; }
.module-market-price b { font-size: 15px; }

/* Stories: remove duplicate highlights and increase separation/legibility. */
.student-results-section { padding-block: clamp(90px,11vw,150px); }
.student-story-grid { gap: 24px; }
.student-story-card { min-width: 0; }
.student-story-copy > strong { letter-spacing: -.015em; line-height: 1.14; }
.student-story-photo img { object-fit: contain !important; background: #f2efed; }
.student-story-copy p { line-height: 1.55; }
.more-stories { margin-top: 34px; }
.more-stories > summary { cursor: pointer; display: flex; width: fit-content; min-height: 52px; align-items: center; justify-content: center; gap: 16px; margin: 0 auto; padding: 12px 22px; border: 1px solid var(--wine); border-radius: 999px; color: var(--wine); font-weight: 750; list-style: none; }
.more-stories > summary::-webkit-details-marker { display: none; }
.more-stories > summary span { font-size: 20px; }
.more-stories-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin-top: 32px; }
.cases-section .case-image img { object-fit: contain !important; background: #f0ebe6; }

@media (max-width: 1050px) {
  .skill-work-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .results-board { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .module-result { flex-wrap: wrap; }
  .module-market-price { flex: 1 1 220px; }
}
@media (max-width: 820px) {
  .hero h1 { font-size: clamp(43px,8vw,66px); }
  .second-wave-head, .income-example { grid-template-columns: 1fr; }
  .second-wave-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .second-wave-item:nth-child(3) { border-right: 1px solid var(--line); }
  .second-wave-item:nth-child(even) { border-right: 0; }
  .skill-row { grid-template-columns: 44px minmax(0,1fr); }
  .skill-outcome { grid-column: 2; }
  .module-card { grid-template-columns: 1fr; grid-template-areas: 'lesson' 'image' 'result'; gap: 16px; }
  .module-visual { min-height: 250px; max-height: none; aspect-ratio: 4 / 3; }
  .portfolio-banner { grid-template-columns: 1fr; }
  .more-stories-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .manager-contact-bar { width: max-content; padding: 8px; bottom: 10px; right: 10px; left: auto; transform: none; }
  .hero h1 { font-size: clamp(39px,10vw,49px); line-height: 1.08; }
  .hero-copy { padding-bottom: 36px; }
  .hero-visual { height: 450px; }
  .second-wave-grid, .skill-work-grid, .results-board { grid-template-columns: 1fr; }
  .second-wave-item { border-right: 0 !important; }
  .skill-work-gallery, .income-example { width: min(100% - 32px, 680px); }
  .skill-work-image { height: 245px; }
  .results-board article { display: grid; grid-template-columns: 40px minmax(0,1fr); align-items: center; gap: 10px 12px; }
  .results-board article > span { grid-row: 1; }
  .results-board h3 { grid-row: 1; margin: 0; font-size: 23px; }
  .results-board .mini-scene { grid-column: 1 / -1; width: 100%; }
  .module-card { padding: 16px; }
  .module-copy { padding: 4px 4px 14px; }
  .module-copy h3 { font-size: 31px; }
  .module-result { display: block; padding: 22px; }
  .module-result > p { margin: 12px 0; font-size: 17px; }
  .module-market-price { margin-top: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-primary-cta, .hero-primary-cta::after { animation: none; }
}
