/**
 * /ai vertical rhythm + layout width — font sizes live in font-size.css only.
 */

body[data-ai-page="true"] #ai-prototype-root {
  --ai-line-tight: 1.2;
  --ai-line-snug: 1.35;
  --ai-line-body: 1.65;

  --ai-space-1: 0.5rem;
  --ai-space-2: 0.75rem;
  --ai-space-3: 1rem;
  --ai-space-4: 1.5rem;
  --ai-space-5: 2rem;
  --ai-space-6: 2.5rem;
  --ai-space-7: 3.5rem;
  --ai-space-section-top: clamp(2.75rem, 5vw, 4rem);
  --ai-space-section-bottom: clamp(2rem, 3.5vw, 3rem);
  --ai-space-section: var(--ai-space-section-top);
  --ai-space-block: clamp(1.75rem, 3.5vw, 2.5rem);
  --ai-grid-gap-row: clamp(1rem, 2.5vw, 1.5rem);
  --ai-grid-gap-col: clamp(1rem, 2vw, 1.35rem);
}

body[data-ai-page="true"] #ai-prototype-root .ai-hero-headline {
  line-height: var(--ai-line-tight) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-section-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-story-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-problem-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-solution-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-difference-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-projects-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-prev-courses-heading:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-obsidian-bonus-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-time-saving-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .ai-bonuses-title:not(.section__title) {
  line-height: var(--ai-line-tight) !important;
  letter-spacing: -0.01em;
}

body[data-ai-page="true"] #ai-prototype-root .ai-feature-title,
body[data-ai-page="true"] #ai-prototype-root .ai-faq-title,
body[data-ai-page="true"] #ai-prototype-root .faq-title,
body[data-ai-page="true"] #ai-prototype-root .dashboard-label,
body[data-ai-page="true"] #ai-prototype-root .ai-story-mission-title {
  line-height: var(--ai-line-snug) !important;
  margin-bottom: clamp(0.65rem, 1.5vw, 0.875rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-project-title {
  font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
  font-weight: 700 !important;
  line-height: var(--ai-line-snug) !important;
  margin-bottom: clamp(0.65rem, 1.5vw, 0.875rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root p,
body[data-ai-page="true"] #ai-prototype-root .ai-section-description,
body[data-ai-page="true"] #ai-prototype-root .ai-feature-description,
body[data-ai-page="true"] #ai-prototype-root .ai-problem-copy,
body[data-ai-page="true"] #ai-prototype-root .ai-difference-copy,
body[data-ai-page="true"] #ai-prototype-root .ai-my-story-copy,
body[data-ai-page="true"] #ai-prototype-root .ai-story-paragraph-card,
body[data-ai-page="true"] #ai-prototype-root .dashboard-description,
body[data-ai-page="true"] #ai-prototype-root .ai-faq-answer,
body[data-ai-page="true"] #ai-prototype-root .ai-faq-answer-p,
body[data-ai-page="true"] #ai-prototype-root .ai-pricing-lead-text,
body[data-ai-page="true"] #ai-prototype-root .ai-prev-text,
body[data-ai-page="true"] #ai-prototype-root .ai-henry-body,
body[data-ai-page="true"] #ai-prototype-root .ai-roadmap-intro,
body[data-ai-page="true"] #ai-prototype-root .ai-course-fit-item-text {
  line-height: var(--ai-line-body) !important;
}

body[data-ai-page="true"] #ai-prototype-root .btn-accent,
body[data-ai-page="true"] #ai-prototype-root .ai-hero-primary-cta,
body[data-ai-page="true"] #ai-prototype-root .sticky-bar-cta,
body[data-ai-page="true"] #ai-prototype-root .ai-pricing-cta,
body[data-ai-page="true"] #ai-prototype-root .ai-pricing-cta-text {
  line-height: var(--ai-line-snug) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-page-main > section.section-padding {
  padding-top: var(--ai-space-section-top) !important;
  padding-bottom: var(--ai-space-section-bottom) !important;
}

/* Testimonial embeds sit between sections — avoid double-stacked outer padding */
body[data-ai-page="true"] #ai-prototype-root .ai-testimonial-embed-section + section.section-padding {
  padding-top: clamp(2rem, 3.5vw, 2.75rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root section.section-padding:has(+ .ai-testimonial-embed-section) {
  padding-bottom: clamp(1.5rem, 3vw, 2.25rem) !important;
}

/* Projects grid is the section closer — trim trailing dead space */
body[data-ai-page="true"] #ai-prototype-root .ai-projects-section {
  padding-bottom: clamp(1.25rem, 2.5vw, 2rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-section-heading-block,
body[data-ai-page="true"] #ai-prototype-root .ai-pricing-intro-heading,
body[data-ai-page="true"] #ai-prototype-root .ai-faq-heading {
  margin-bottom: var(--ai-space-block) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-problem-title:not(.section__title) {
  margin-bottom: clamp(1.75rem, 3.5vw, 2.5rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-projects-layout {
  margin-bottom: 0 !important;
}

/* Projects mosaic — grid gap must survive flex-stack gap resets */
body[data-ai-page="true"] #ai-prototype-root .ai-projects-grid {
  row-gap: var(--ai-projects-gap-row, var(--ai-grid-gap-row)) !important;
  column-gap: var(--ai-projects-gap-col, var(--ai-grid-gap-col)) !important;
  gap: var(--ai-projects-gap-row, var(--ai-grid-gap-row)) var(--ai-projects-gap-col, var(--ai-grid-gap-col)) !important;
}

@media (min-width: 640px) {
  body[data-ai-page="true"] #ai-prototype-root .ai-projects-grid {
    --ai-projects-gap-col: clamp(1.15rem, 2.2vw, 1.5rem);
  }
}

@media (min-width: 1024px) {
  body[data-ai-page="true"] #ai-prototype-root .ai-projects-grid {
    --ai-projects-gap-row: clamp(1.25rem, 2.2vw, 1.65rem);
    --ai-projects-gap-col: clamp(1.25rem, 2vw, 1.5rem);
  }
}

body[data-ai-page="true"] #ai-prototype-root .ai-section-title:not(.section__title) {
  margin-bottom: var(--ai-space-3) !important;
}

body[data-ai-page="true"] #ai-prototype-root .container-custom,
body[data-ai-page="true"] #ai-prototype-root .content-container {
  max-width: 64rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(1rem, 2.5vw, 2rem);
  padding-right: clamp(1rem, 2.5vw, 2rem);
  box-sizing: border-box;
}

/* Section intros — headings centered, body copy left */
body[data-ai-page="true"] #ai-prototype-root .ai-section-heading-block,
body[data-ai-page="true"] #ai-prototype-root .ai-pricing-intro-heading,
body[data-ai-page="true"] #ai-prototype-root .ai-faq-heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

body[data-ai-page="true"] #ai-prototype-root .ai-section-heading-block .ai-section-description {
  align-self: center;
}

body[data-ai-page="true"] #ai-prototype-root .ai-section-description {
  text-align: left !important;
  width: 100%;
  max-width: 48rem;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 1.75 !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-solution-prose {
  width: 100%;
  max-width: 42rem;
  margin: 0 auto var(--ai-space-7);
}

body[data-ai-page="true"] #ai-prototype-root .ai-solution-prose .ai-section-description {
  margin: 0 !important;
  max-width: none;
  text-align: left !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-time-saving-description,
body[data-ai-page="true"] #ai-prototype-root .ai-problem-footer-copy,
body[data-ai-page="true"] #ai-prototype-root .ai-problem-body-row .ai-section-description,
body[data-ai-page="true"] #ai-prototype-root .simple-paragraph,
body[data-ai-page="true"] #ai-prototype-root .ai-solution-card .ai-solution-copy,
body[data-ai-page="true"] #ai-prototype-root .ai-difference-copy,
body[data-ai-page="true"] #ai-prototype-root .ai-difference-copy p,
body[data-ai-page="true"] #ai-prototype-root .ai-offer-scope-wrap,
body[data-ai-page="true"] #ai-prototype-root .ai-curriculum-build-section .ai-section-description,
body[data-ai-page="true"] #ai-prototype-root .ai-curriculum-build-section .ai-curriculum-card-text,
body[data-ai-page="true"] #ai-prototype-root .ai-credibility-container .ai-section-description,
body[data-ai-page="true"] #ai-prototype-root .ai-guarantee-card .ai-time-saving-description,
body[data-ai-page="true"] #ai-prototype-root .ai-bonuses-item-text,
body[data-ai-page="true"] #ai-prototype-root .ai-bonuses-list,
body[data-ai-page="true"] #ai-prototype-root .ai-pricing-intro-left,
body[data-ai-page="true"] #ai-prototype-root .ai-pricing-lead-text {
  text-align: left !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-curriculum-build-section .ai-roadmap-bullet-list {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Headings stay centered */
body[data-ai-page="true"] #ai-prototype-root .section__title,
body[data-ai-page="true"] #ai-prototype-root .ai-problem-title,
body[data-ai-page="true"] #ai-prototype-root .ai-problem-text-col .section__title,
body[data-ai-page="true"] #ai-prototype-root .ai-time-saving-text-col .section__title,
body[data-ai-page="true"] #ai-prototype-root .ai-section-title:not(.section__title),
body[data-ai-page="true"] #ai-prototype-root .dashboard-label,
body[data-ai-page="true"] #ai-prototype-root .ai-roadmap-title,
body[data-ai-page="true"] #ai-prototype-root .ai-feature-title {
  text-align: center !important;
}

body[data-ai-page="true"] #ai-prototype-root .section__title::after,
body[data-ai-page="true"] #ai-prototype-root .ai-problem-title::after,
body[data-ai-page="true"] #ai-prototype-root .ai-problem-text-col .section__title::after,
body[data-ai-page="true"] #ai-prototype-root .ai-time-saving-text-col .section__title::after {
  left: 50%;
  transform: translateX(-50%);
  width: min(100%, 24rem);
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-stats-stack .dashboard-label {
  text-align: center !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-stats-stack .simple-paragraph {
  text-align: center !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-stats-stack .dashboard-description {
  text-align: center !important;
}

/* Standalone CTA blocks — centered action + supporting line */
body[data-ai-page="true"] #ai-prototype-root .ai-cta-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 42rem;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-cta-row .ai-time-saving-description {
  text-align: center !important;
  max-width: 28rem;
}

body[data-ai-page="true"] #ai-prototype-root .ai-problem-block > .simple-paragraph {
  max-width: 42rem;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-solution-block > .section__title.section__title--in-flow:first-child {
  margin-bottom: clamp(1.25rem, 3vw, 2rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-solution-grid-block {
  width: 100%;
}

body[data-ai-page="true"] #ai-prototype-root .ai-solution-subtitle {
  margin-top: 0 !important;
  margin-bottom: clamp(1.5rem, 4vw, 2.5rem) !important;
  padding-bottom: 0.75rem !important;
  font-size: clamp(1.125rem, 2.5vw, 1.35rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .simple-paragraph {
  line-height: 1.75 !important;
  margin-bottom: var(--ai-space-4);
}

body[data-ai-page="true"] #ai-prototype-root .ai-offer-scope-wrap {
  max-width: 42rem;
  margin: 0 auto clamp(2rem, 5vw, 3rem);
  text-align: left;
}

body[data-ai-page="true"] #ai-prototype-root .ai-offer-scope-lede {
  margin: 0;
  font-size: clamp(1.125rem, 2.5vw, 1.375rem);
  line-height: 1.65;
  color: color-mix(in srgb, var(--ai-color-gray) 55%, var(--ai-color-white) 45%);
}

body[data-ai-page="true"] #ai-prototype-root .ai-guarantee-section .stagger-item h2 {
  padding-bottom: 16px;
  margin-bottom: 32px !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-guarantee-badge {
  display: block;
  width: min(100%, 220px);
  height: auto;
  margin: 0 auto clamp(1.25rem, 3vw, 1.75rem);
}

body[data-ai-page="true"] #ai-prototype-root .ai-guarantee-card .ai-time-saving-description + .ai-time-saving-description {
  margin-top: var(--ai-space-4) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-guarantee-card {
  width: 100%;
  max-width: 42rem;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: var(--ai-space-2);
}

body[data-ai-page="true"] #ai-prototype-root .ai-story-paragraphs {
  display: block;
}

body[data-ai-page="true"] #ai-prototype-root .ai-story-paragraph-card {
  line-height: 1.8 !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-my-story-copy-stack {
  display: flex;
  flex-direction: column;
}

body[data-ai-page="true"] #ai-prototype-root .ai-time-saving-description,
body[data-ai-page="true"] #ai-prototype-root .pricing-card__note-body,
body[data-ai-page="true"] #ai-prototype-root .ai-bonuses-item-text {
  line-height: 1.8 !important;
}


/* Problem → solution → difference: clear vertical rhythm */
body[data-ai-page="true"] #ai-prototype-root .ai-problem-block {
  margin-bottom: var(--ai-space-block) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-problem-block > .simple-paragraph:first-of-type {
  margin-top: var(--ai-space-4) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-problem-block > .simple-paragraph:last-of-type {
  margin-bottom: var(--ai-space-6) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-solution-block {
  margin-top: var(--ai-space-5) !important;
  padding-top: var(--ai-space-2) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-solution-grid {
  margin-bottom: var(--ai-space-block) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-difference-block {
  margin-top: var(--ai-space-6) !important;
  padding-top: var(--ai-space-2) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-difference-inner {
  margin-bottom: var(--ai-space-6) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-difference-grid {
  margin-top: 0 !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-block {
  margin-top: var(--ai-space-block) !important;
  margin-bottom: var(--ai-space-block) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-inner {
  margin-bottom: clamp(1.25rem, 2.2vw, 1.8rem);
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-inner > .section__title.section__title--in-flow:first-child {
  margin-bottom: clamp(1.25rem, 3vw, 2rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-inner > .ai-credibility-body-row {
  margin-top: clamp(1.5rem, 2.5vw, 2rem);
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-body-row .section__title.ai-story-title {
  margin-top: clamp(1.5rem, 2.5vw, 2rem) !important;
  margin-bottom: clamp(1.25rem, 3vw, 2rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-body-row .ai-credibility-stats-stack {
  margin-top: clamp(3rem, 6vw, 4.5rem) !important;
  margin-bottom: clamp(3rem, 6vw, 4.5rem) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-body-row .ai-robot-image-inline,
body[data-ai-page="true"] #ai-prototype-root .ai-credibility-body-row .ai-story-image-row,
body[data-ai-page="true"] #ai-prototype-root .ai-credibility-body-row .ai-story-mission-card,
body[data-ai-page="true"] #ai-prototype-root .ai-credibility-body-row .ai-my-story-photo-inline {
  margin-top: clamp(0.5rem, 2vw, 1.25rem);
  margin-bottom: clamp(0.5rem, 2vw, 1.25rem);
}

body[data-ai-page="true"] #ai-prototype-root .ai-credibility-body-row > .simple-paragraph:last-child {
  margin-bottom: var(--ai-space-6) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-my-story-block {
  margin-top: 0 !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-time-saving-title:not(.section__title) {
  margin-bottom: var(--ai-space-4) !important;
}

body[data-ai-page="true"] #ai-prototype-root .ai-roadmap-title {
  margin-bottom: var(--ai-space-3) !important;
}

/* Hero media visibility — classes only (no inline display in HTML) */
body[data-ai-page="true"] #ai-prototype-root [data-ai-hero-desktop].ai-hero-desktop-hidden {
  display: none !important;
}

body[data-ai-page="true"] #ai-prototype-root [data-ai-mobile-gif-shell].ai-hero-mobile-hidden {
  display: none !important;
}
