/* Mythic Frontier: a named-section presentation layer, loaded last.
   No calculator, chart, checkout, hero or navigation contracts are changed. */

.home-page :is(#tools, #the-approach, #curriculum, #fit, #instructor, #pricing, #framework, #bible, #questions, #closing-cta, #membership) {
  --sans: 'Inter', ui-sans-serif, system-ui, sans-serif;
  --serif: 'Playfair Display', Georgia, serif;
  --mono: 'JetBrains Mono', ui-monospace, monospace;
  --section-ink: #151518;
  --section-muted: #45454f;
  --section-rule: #d0d0d8;
  --section-blue: var(--mythic-blue, #1012c8);
  font-family: var(--sans);
}
.home-page :is(#tools, #the-approach, #curriculum, #instructor, #framework, #bible, #questions) {
  padding-block: clamp(68px, 7.5vw, 112px);
  background: #fff;
  color: var(--section-ink);
  border-color: var(--section-rule);
}
.home-page :is(#tools, #the-approach, #curriculum, #fit, #instructor, #pricing, #framework, #bible, #questions, #closing-cta) h2 {
  font-family: var(--serif);
  font-weight: 400;
  font-size: clamp(38px, 4.15vw, 62px);
  line-height: 1.08;
  letter-spacing: -.04em;
  color: var(--section-ink);
}
.home-page :is(#tools, #the-approach, #curriculum, #instructor, #framework, #bible, #questions) h2 em {
  color: var(--section-blue);
  font-style: normal;
  font-weight: 400;
}
.home-page :is(#tools, #the-approach, #curriculum, #instructor, #framework, #bible, #questions) :is(.eyebrow, .small-label, .kicker) {
  font-family: var(--mono);
  color: var(--section-blue);
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: .09em;
}
.home-page :is(#the-approach, #curriculum, #pricing, #questions) .section-intro {
  gap: 40px 72px;
  margin-bottom: 48px;
}
.home-page :is(#the-approach, #curriculum, #framework, #questions) :is(.section-intro > p, .framework-grid > div > p:not(.eyebrow)) {
  color: var(--section-muted);
  font-size: 15px;
  line-height: 1.8;
}
.home-page :is(#the-approach, #curriculum, #instructor, #framework, #bible, #questions) :is(.text-link, a.u) {
  color: var(--section-blue);
  text-underline-offset: 5px;
}
.home-page :is(#tools, #the-approach, #curriculum, #fit, #instructor, #pricing, #framework, #bible, #questions, #closing-cta, #membership) :is(a, summary):focus-visible {
  outline: 2px solid #1012c8;
  outline-offset: 4px;
  box-shadow: 0 0 0 4px #fff;
}

/* Free labs remain genuine, separate working tools, framed as exhibits. */
.home-page #tools .toolsplit { gap: 0; }
.home-page #tools .tool-card {
  border-radius: 0;
  border-color: var(--section-rule);
  background: #fff;
  padding: 30px;
  box-shadow: none;
}
.home-page #tools .tool-card--featured { background: #151518; border-color: #151518; }
.home-page #tools .tool-card:hover { transform: none; box-shadow: none; }
.home-page #tools .tool-card h3 { font: 400 30px/1.15 var(--serif); letter-spacing: -.03em; }
.home-page #tools .tool-card .kicker { color: var(--tool-accent); }
.home-page #tools .tool-card .body { font-size: 14px; }
.home-page #tools :is(.tool-open, .tools-availability > span) { border-radius: 0; }
.home-page #tools .tool-open { background: var(--section-blue); border-color: var(--section-blue); }
.home-page #tools :is(.tools-boundary, .lab-visual-note) { color: var(--section-muted); font-size: 12px; }

/* The method is a connected ruled sequence, not a stack of pastel cards. */
.home-page #the-approach { border-top: 1px solid var(--section-rule); }
.home-page #the-approach .method-sequence {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border-block: 1px solid var(--section-rule);
}
.home-page #the-approach .method-sequence article:nth-child(n) {
  --step-ink: #151518;
  --step-muted: #45454f;
  --step-accent: var(--section-blue);
  --step-rule: #d0d0d8;
  padding: 30px 26px;
  border: 0;
  border-right: 1px solid var(--section-rule);
  border-radius: 0;
  background: #fff;
}
.home-page #the-approach .method-sequence article:last-child {
  --step-ink: #fff;
  --step-muted: #eeeeff;
  --step-accent: #fff;
  --step-rule: #7474e5;
  background: var(--section-blue);
  border-right: 0;
}
.home-page #the-approach .method-number { font: 400 50px/1 var(--serif); letter-spacing: -.05em; }
.home-page #the-approach .method-sequence h3 { font: 400 27px/1.12 var(--serif); letter-spacing: -.025em; margin-top: 46px; }
.home-page #the-approach .method-sequence p { font-size: 14px; line-height: 1.75; }
.home-page #the-approach .method-output { font: 400 10px/1.6 var(--mono); letter-spacing: .025em; }
.home-page #the-approach .research-bridge {
  padding: 30px 0;
  border: 0;
  border-bottom: 1px solid var(--section-rule);
  border-radius: 0;
  gap: 28px;
  background: #fff;
}
.home-page #the-approach .research-bridge h3 { font: 400 29px/1.2 var(--serif); }
.home-page #the-approach .research-bridge p { color: var(--section-muted); font-size: 14px; }

/* Native details/summary: a generous white syllabus table. */
.home-page #curriculum .curriculum-list { gap: 0; border-top: 1px solid var(--section-ink); }
.home-page #curriculum .curriculum-row {
  border: 0;
  border-bottom: 1px solid var(--section-rule);
  border-radius: 0;
  background: #fff;
}
.home-page #curriculum .curriculum-row[open] { border-color: var(--section-blue); box-shadow: none; }
.home-page #curriculum .curriculum-row > summary {
  grid-template-columns: 56px minmax(0, 1fr) 78px 36px;
  min-height: 116px;
  padding: 26px 16px;
  gap: 24px;
  border-radius: 0;
}
.home-page #curriculum .curriculum-row > summary:hover { background: #f6f6fa; }
.home-page #curriculum .session-number,
.home-page #curriculum .curriculum-row[open] .session-number {
  width: auto;
  height: auto;
  display: block;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--section-blue);
  font: 400 35px/1 var(--serif);
}
.home-page #curriculum .session-title { font: 400 clamp(23px, 2.15vw, 31px)/1.2 var(--serif); letter-spacing: -.025em; }
.home-page #curriculum .session-heading .small-label { color: var(--section-muted); margin-bottom: 8px; }
.home-page #curriculum .session-time { border: 0; border-radius: 0; padding: 0; color: var(--section-muted); font-size: 11px; }
.home-page #curriculum .detail-icon,
.home-page #curriculum .curriculum-row[open] .detail-icon { border-radius: 0; background: transparent; color: var(--section-blue); }
.home-page #curriculum .session-content { padding: 0 76px 36px 96px; }
.home-page #curriculum .session-output {
  background: transparent;
  border-left: 2px solid var(--section-blue);
  border-radius: 0;
  padding: 8px 16px;
  color: var(--section-ink);
  font-size: 14px;
}
.home-page #curriculum .session-output span { color: var(--section-blue); font-size: 10px; }
.home-page #curriculum .session-topics { gap: 28px 36px; }
.home-page #curriculum .session__item :is(b, p) { font-size: 14px; line-height: 1.8; }
.home-page #curriculum .session__item p { color: var(--section-muted); }
.home-page #curriculum .curriculum-note { background: transparent; border: 0; border-radius: 0; padding: 20px 0 0; font-size: 12px; color: var(--section-muted); }

/* Application shell only: its analytical figure and controls keep their skin. */
.home-page #covenant-desk { background: #fff; border-color: #d0d0d8; }
.home-page #covenant-desk .application-copy h2 { font: 400 clamp(38px, 4vw, 60px)/1.1 'Playfair Display', Georgia, serif; letter-spacing: -.04em; }
.home-page #covenant-desk .application-copy h2 em { font-style: normal; color: var(--mythic-blue, #1012c8); }
.home-page #covenant-desk .application-copy p:not(.eyebrow) { color: #45454f; font: 400 15px/1.8 'Inter', sans-serif; }
.home-page #covenant-desk .application-copy :is(.eyebrow, .text-link) { color: var(--mythic-blue, #1012c8); }

/* A dark editorial break, followed by the real person behind the programme. */
.home-page #fit.fit-band { background: #151518; border: 0; padding-block: 70px; color: #fff; }
.home-page #fit.fit-band h2 { color: #fff; font-size: clamp(38px, 3.7vw, 54px); }
.home-page #fit.fit-band h2 em { color: #fff; font-style: normal; }
.home-page #fit.fit-band :is(p, .eyebrow) { color: #e0e0e7; font-size: 14px; line-height: 1.8; }
.home-page #fit.fit-band .eyebrow { font-size: 10px; }
.home-page #fit.fit-band .wrap > div + div { border-left: 1px solid #5c5c69; padding-left: 32px; }
.home-page #fit.fit-band .text-link { color: #fff; font-size: 13px; }
.home-page #instructor .instructor { grid-template-columns: minmax(230px, .7fr) minmax(0, 1.5fr); gap: 70px; }
.home-page #instructor .mythic-instructor-portrait > img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 0; mix-blend-mode: screen; filter: none; pointer-events: none; }
.home-page #instructor .instructor .body { font-size: 15px !important; line-height: 1.85; color: var(--section-muted); }
.home-page #instructor .instructor .kicker { color: var(--section-muted); font-size: 11px; }
.home-page #instructor .stats { border-top: 1px solid var(--section-rule); padding-top: 25px; flex-wrap: wrap; gap: 20px 32px; }
.home-page #instructor .stats b { font: 400 27px/1.2 var(--serif); color: var(--section-blue); }
.home-page #instructor .stats span { font: 400 10px/1.7 var(--mono); color: var(--section-muted); }

/* Engraved linework dissolves into a blue plate, never a pale photographic matte.
   The explicit backdrop keeps screen blending inside this isolated image group. */
.home-page #instructor .mythic-instructor-portrait { position: relative; margin: 0; padding: 0; width: 100%; align-self: center; background: var(--section-blue); border: 0; overflow: hidden; isolation: isolate; }
.home-page #instructor .mythic-instructor-portrait > img { display: block; mask-image: radial-gradient(ellipse at 50% 42%,#000 53%,#000e 69%,transparent 98%); }
/* Intersect tracking cuts with the authored portrait fade; the source and
   decorative copies retain the same screen blend, aspect ratio and crop. */
.home-page #instructor .mythic-instructor-portrait.mythic-signal-ready > img:not(.mythic-signal-slice) { mask-image: radial-gradient(ellipse at 50% 42%,#000 53%,#000e 69%,transparent 98%), var(--mythic-signal-cut, linear-gradient(#000, #000)); mask-composite: intersect; }
.home-page #instructor .mythic-signal-toggle { top: auto; bottom: 14px; }

/* One ultramarine invitation, with plain white cohort-selection panels. */
.home-page #pricing {
  --cloud-dark: #fff;
  background: var(--section-blue);
  border: 0;
  color: #fff;
  padding-block: clamp(28px, 3vw, 48px);
}
.home-page #pricing .section-intro :is(h2, h2 em, p) { color: #fff; }
.home-page #pricing .section-intro h2 em { font-style: normal; }
.home-page #pricing .section-intro > p { font-size: 15px; line-height: 1.8; }
.home-page #pricing :is(.eyebrow, .small-label) { font: 400 10px/1.7 var(--mono); letter-spacing: .09em; }
.home-page #pricing .enrolment-grid { gap: 38px; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
.home-page #pricing .programme-package { background: transparent; border: 1px solid #8585e7; border-radius: 0; padding: 36px; }
.home-page #pricing .programme-package h3 { font: 400 34px/1.15 var(--serif); color: #fff; letter-spacing: -.02em; }
.home-page #pricing .package-price strong { font: 400 clamp(76px, 7.5vw, 108px)/1 var(--serif); letter-spacing: -.05em; color: #fff; }
.home-page #pricing .programme-package :is(.small-label, .package-price > span, .package-founding, .package-dates, .refund-note, .refund-note > span, .refund-note strong, .deliv b, .deliv span, a, summary) { color: #fff; }
.home-page #pricing .package-price > span { font-size: 12px; }
.home-page #pricing .package-founding { font-size: 11px; line-height: 1.8; }
.home-page #pricing .package-dates { text-decoration-color: currentColor; }
.home-page #pricing :is(.package-founding, .included-details, .programme-package .deliv li) { border-color: #8585e7; }
.home-page #pricing .package-highlights li { font-size: 14px; line-height: 1.7; }
.home-page #pricing .package-highlights li::before,
.home-page #pricing .programme-package .deliv li::before { color: #fff; }
.home-page #pricing .programme-package .deliv li { font-size: 13px; }
.home-page #pricing .included-details > summary { font-size: 13px; }
.home-page #pricing .included-details > summary span { border-radius: 0; border-color: #8585e7; color: #fff; }
.home-page #pricing .programme-package .refund-note { border: 0; border-radius: 0; border-top: 1px solid #8585e7; padding: 22px 0 0; background: transparent; }
.home-page #pricing .refund-note p { color: #fff; font-size: 13px; }
.home-page #pricing .cohort-options { gap: 22px; }
.home-page #pricing .cohort-option,
.home-page #pricing .cohort-option + .cohort-option { border: 0; border-radius: 0; background: #fff; padding: 32px; color: var(--section-ink); }
.home-page #pricing .cohort-heading > .small-label { color: var(--section-blue); }
.home-page #pricing .cohort-format { border: 0; border-radius: 0; padding: 0; background: transparent; color: var(--section-muted); font: 400 10px/1.7 var(--mono); }
.home-page #pricing .cohort-option h3 { font: 400 43px/1.15 var(--serif); letter-spacing: -.035em; color: var(--section-ink); }
.home-page #pricing .cohort-option h3 em { color: var(--section-blue); font-style: normal; }
.home-page #pricing .cohort-option p { color: var(--section-muted); font-size: 13px; line-height: 1.8; }
.home-page #pricing .cohort-option .cohort-dates,
.home-page #pricing .cohort-option + .cohort-option .cohort-dates { padding: 0; border-radius: 0; background: transparent; font-size: 14px; color: var(--section-ink); }
.home-page #pricing .cohort-option .home-primary { border-radius: 0; background: var(--section-blue); border-color: var(--section-blue); color: #fff; font-size: 13px; min-height: 56px; }
.home-page #pricing .checkout-note { color: #eeeefe; font-size: 12px; line-height: 1.8; }
.home-page #pricing .after-enrolment { border-color: #8585e7; padding: 27px 0; gap: 26px; }
.home-page #pricing .after-enrolment :is(.small-label, p) { color: #fff; }
.home-page #pricing .after-enrolment p { font-size: 13px; line-height: 1.8; }
.home-page #pricing .team-offer { background: transparent; border: 0; border-bottom: 1px solid #8585e7; border-radius: 0; padding: 30px 0; margin-top: 0; }
.home-page #pricing .team-offer h3 { font: 400 34px/1.15 var(--serif); color: #fff; }
.home-page #pricing .team-offer :is(.eyebrow, p:not(.eyebrow), strong) { color: #fff; }
.home-page #pricing .team-offer p:not(.eyebrow) { font-size: 14px; line-height: 1.8; }
.home-page #pricing .team-offer .home-secondary { border-radius: 0; background: #fff; border-color: #fff; color: var(--section-blue); }
.home-page #pricing .private-addon { border: 0; padding-top: 0; color: #fff; font-size: 13px; }
.home-page #pricing .private-addon :is(strong, a) { color: #fff; }

/* Research and publications: clean gallery walls and fine technical rules. */
.home-page #framework .evidence-card { border: 0; border-left: 1px solid var(--section-rule); border-radius: 0; background: #fff; padding: 0 0 0 38px; }
.home-page #framework .evidence-card h3 { font: 400 32px/1.2 var(--serif); color: var(--section-ink); }
.home-page #framework .evidence-card p { color: var(--section-muted); font-size: 14px; line-height: 1.8; }
.home-page #framework .evidence-card details { border-color: var(--section-rule); }
.home-page #framework .evidence-card summary { color: var(--section-ink); font-size: 13px; }
.home-page #framework .evidence-card summary > span { background: transparent; border-radius: 0; color: var(--section-blue); }
.home-page #bible { border-block: 1px solid var(--section-rule); }
.home-page #bible > .wrap > .body { color: var(--section-muted); font-size: 15px; line-height: 1.8; }
.home-page #bible .publication-grid { gap: 0; }
.home-page #bible .publication-grid .publication-card {
  --publication-ink: #151518;
  --publication-muted: #45454f;
  --publication-accent: var(--section-blue);
  --publication-line: #d0d0d8;
  padding: 30px;
  border: 1px solid var(--section-rule);
  border-radius: 0;
  background: #fff;
}
.home-page #bible .publication-grid .publication-card--bible {
  --publication-ink: #fff;
  --publication-muted: #e0e0e7;
  --publication-accent: #fff;
  --publication-line: #5c5c69;
  background: #151518;
  border-color: #151518;
}
.home-page #bible .publication-mark { min-height: 186px; align-items: center; justify-content: center; margin-bottom: 30px; }
.home-page #bible .publication-mark svg { width: 180px; height: 130px; }
.home-page #bible .publication-card .h3 { font: 400 33px/1.15 var(--serif); letter-spacing: -.025em; }
.home-page #bible .publication-card .body { font-size: 14px; line-height: 1.8; }
.home-page #bible .publication-card .arrow { padding: 13px 0; border: 0; border-top: 1px solid var(--publication-line); border-radius: 0; background: transparent; color: var(--publication-accent); font-size: 13px; }
.home-page #bible .publication-card .arrow:hover { color: var(--publication-accent); background: transparent; border-color: var(--publication-accent); }
.home-page #bible .callout { padding-block: 12px; border-color: var(--section-blue); background: transparent; }
.home-page #bible .callout > p { color: var(--section-muted); font-size: 12px; }

/* Practical questions are another simple, keyboard-native disclosure table. */
.home-page #questions .faq-list { gap: 0; border-top: 1px solid var(--section-ink); }
.home-page #questions .faq-list details,
.home-page #questions .faq-list details[open] { border: 0; border-bottom: 1px solid var(--section-rule); border-radius: 0; background: #fff; }
.home-page #questions .faq-list summary { padding: 24px 8px; border-radius: 0; font-size: 16px; color: var(--section-ink); }
.home-page #questions .faq-list summary:hover { background: #f6f6fa; }
.home-page #questions .faq-list summary > span,
.home-page #questions .faq-list details[open] summary > span { border: 0; border-radius: 0; background: transparent; color: var(--section-blue); }
.home-page #questions .faq-list details p { padding: 0 64px 27px 8px; font-size: 14px; line-height: 1.85; color: var(--section-muted); }
.home-page #questions :is(.faq-list, .section-intro) a { color: var(--section-blue); }

.home-page #closing-cta { padding: 90px 0; background: var(--section-blue); color: #fff; }
.home-page #closing-cta > .wrap { padding-block: 0; border: 0; border-radius: 0; background: transparent; }
.home-page #closing-cta h2 { color: #fff; font-size: clamp(46px, 6.5vw, 88px); }
.home-page #closing-cta h2 em { color: #fff; font-style: normal; }
.home-page #closing-cta :is(p, .final-assurance) { color: #eeeefe; font-size: 14px; }
.home-page #closing-cta .eyebrow { max-width: 65ch; border-color: #8585e7; font: 400 10px/1.8 var(--mono); letter-spacing: .075em; }
.home-page #closing-cta .home-primary { min-width: 240px; border-radius: 0; background: #fff; border-color: #fff; color: var(--section-blue); }
.home-page #membership { background: #fff; color: var(--section-ink); }
.home-page #membership .secondary-offer { border-color: var(--section-rule); }
.home-page #membership .secondary-offer > summary { color: var(--section-ink); }
.home-page #membership .secondary-offer > summary > span { color: var(--section-muted); }
.home-page #membership .secondary-offer .feature { border-radius: 0; background: #151518; }
.home-page #membership .secondary-offer .feature .display { font-family: var(--serif); font-weight: 400; }
.home-page #membership .btn { border-radius: 0; }

/* Second-pass composition: open editorial sequences instead of nested boxes.
   Supporting sections use typography, not repeated decorative figures. */
.home-page #the-approach .method-sequence { display: block; border-top: 1px solid #151515; }
.home-page #the-approach .method-sequence article:nth-child(n) { display: grid; grid-template-columns: 74px minmax(0, 1fr) minmax(0, 1.1fr) minmax(140px, .55fr); align-items: start; gap: 26px; padding: 35px 0; border: 0; border-bottom: 1px solid #cbccd5; background: #fff; --step-ink: #151515; --step-muted: #484850; --step-accent: #1012c8; --step-rule: #cbccd5; }
.home-page #the-approach .method-number { font: 400 38px/1 var(--mono); color: #1012c8; }
.home-page #the-approach .method-number > span { display: none; }
.home-page #the-approach .method-sequence h3 { margin: 0; font-size: 33px; }
.home-page #the-approach .method-sequence p { margin: 0; }
.home-page #the-approach .method-output { margin: 0; padding: 0 0 0 20px; border: 0; border-left: 1px solid #cbccd5; }
.home-page #tools .toolsplit { border-top: 1px solid #151515; }
.home-page #tools .tool-card:nth-child(n) { --tool-ink: #151515; --tool-muted: #484850; --tool-accent: #1012c8; --tool-line: #cbccd5; background: #fff; border: 0; border-right: 1px solid #cbccd5; border-bottom: 1px solid #cbccd5; padding: 30px; }
.home-page #tools .tool-card:last-child { border-right: 0; }
.home-page #tools .tool-card .lab-diagram { --tool-accent: #fff; --tool-muted: #e5e5ff; --tool-line: #999aee; background: #1012c8; color: #fff; border: 0; border-radius: 0; }
/* Decorative engravings sit below the unchanged schematic, never tint its marks.
   Absolute positioning also preserves the featured card's stretched tablet layout. */
.home-page #tools .lab-diagram { position: relative; isolation: isolate; overflow: hidden; }
.home-page #tools .lab-diagram > .tool-creature-art { position: absolute; z-index: 0; inset: 0; display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: center 42%; opacity: .23; mix-blend-mode: screen; filter: grayscale(1); pointer-events: none; user-select: none; }
.home-page #tools .lab-diagram > :is(svg, figcaption) { position: relative; z-index: 1; }
.home-page #tools .tool-card :is(h3, .body) { color: #151515; }
.home-page #tools .tool-card .tool-controls li { border-radius: 0; border: 0; border-bottom: 1px solid #cbccd5; padding-inline: 0; margin-right: 12px; color: #484850; }
.home-page #tools .tool-open { background: #1012c8; color: #fff; border-color: #1012c8; border-radius: 0; }
.home-page #fit.fit-band { background: #1012c8; border-top: 1px solid #7778e5; }
.home-page #fit.fit-band .wrap > div + div { border-color: #7778e5; }
.home-page #covenant-desk .rights-exhibit { border-radius: 0; border-color: #1012c8; box-shadow: none; }
.home-page #covenant-desk :is(.lens-choice, .lens-panel, .exhibit-question) { border-radius: 0; }
.home-page #covenant-desk .rights-exhibit > h2 { font-family: var(--serif); font-weight: 400; }
.home-page #framework { padding: 0; overflow-x: clip; }
.home-page #framework .framework-grid { display: block; }
.home-page #framework .mythic-framework-opening { display: block; position: relative; isolation: isolate; color: #fff; background: #1012c8; gap: 40px; }
.home-page #framework .mythic-framework-opening::before { content: ''; position: absolute; z-index: -1; inset-block: 0; left: 50%; width: 100vw; transform: translateX(-50%); background: #1012c8; }
.home-page #framework .mythic-framework-copy { padding: clamp(64px,6vw,120px) 0; display: grid; grid-template-columns: minmax(0,1.25fr) minmax(0,1fr); gap: 20px 6vw; align-items: end; }
.home-page #framework .mythic-framework-copy > .eyebrow { grid-column: 1/-1; }
.home-page #framework .mythic-framework-copy :is(h2, h2 em, p, .eyebrow) { color: #fff; }
.home-page #framework .mythic-framework-copy h2 { font-size: clamp(45px, 5.2vw, 104px); }
.home-page #framework .mythic-framework-copy p:not(.eyebrow) { margin-top: 28px; font: 15px/1.85 var(--sans); max-width: 59ch; }
.home-page #framework .evidence-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 22px 70px; padding: 55px 0 65px; border: 0; background: #fff; }
.home-page #framework .evidence-card > .small-label { grid-column: 1/-1; }
.home-page #framework .evidence-card h3 { grid-column: 1; grid-row: 2 / 4; margin: 0; font-size: clamp(30px, 3.2vw, 46px); }
.home-page #framework .evidence-card > p { margin: 0; }
.home-page #framework .evidence-card details { grid-column: 1/-1; margin-top: 8px; padding-top: 18px; }
.home-page #bible .publication-grid .publication-card:nth-child(n) { --publication-ink: #151515; --publication-muted: #484850; --publication-accent: #1012c8; --publication-line: #cbccd5; background: #fff; border: 0; border-right: 1px solid #cbccd5; border-bottom: 1px solid #cbccd5; padding: 0 25px 30px; }
.home-page #bible .publication-grid .publication-card:first-child { padding-left: 0; }
.home-page #bible .publication-grid .publication-card:last-child { border-right: 0; padding-right: 0; }
.home-page #bible .publication-mark { background: #1012c8; display: block; position: relative; isolation: isolate; height: clamp(220px, 24vw, 355px); overflow: hidden; border: 0; padding: 0; margin-bottom: 28px; }
.home-page #bible .publication-card--lmt .publication-mark { border: 0; padding: 0; }
.home-page #bible .publication-mark img { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: center; mix-blend-mode: screen; filter: grayscale(1); pointer-events: none; }
.home-page #bible .publication-card--bible .publication-mark img { object-position: 56% 34%; }
.home-page #bible .publication-card--book .publication-mark img { object-position: 50% 36%; }
.home-page #bible .publication-card--lmt .publication-mark img { object-position: 46% 54%; }
.home-page #bible .publication-card .kicker { color: #484850; }
.home-page #bible .publication-card .h3 { color: #151515; }
.home-page #bible .publication-card .body { color: #484850; }
.home-page #closing-cta { padding: 0; text-align: left; overflow: hidden; }
.home-page #closing-cta > .wrap { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); align-items: center; gap: clamp(24px,3vw,76px); max-width: 2400px; padding-inline: var(--mythic-gutter); position: relative; isolation: isolate; background: var(--section-blue); min-height: clamp(540px,35vw,840px); }
.home-page #closing-cta .mythic-closing-copy { padding: clamp(70px,6vw,136px) 0; position: relative; z-index: 1; }
.home-page #closing-cta h2 { font-size: clamp(45px, 4.55vw, 108px); line-height: 1.08; max-width: none; }
.home-page #closing-cta .mythic-closing-art { position: absolute; inset-block: 0; right: 0; width: 57%; margin: 0; padding: 0; min-width: 0; overflow: hidden; pointer-events: none; mix-blend-mode: screen; opacity: .68; mask-image: linear-gradient(to right,transparent,#000 32%); }
.home-page #closing-cta .mythic-closing-art img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 72% 40%; filter: grayscale(1); }
.home-page #closing-cta .eyebrow { margin-left: 0; padding: 0; border: 0; background: transparent; }
.home-page #closing-cta .home-primary { margin-block: 20px 0; }
.home-page #membership .secondary-offer .feature { background: #1012c8; }
.home-page :is(#tools, #the-approach, #curriculum, #covenant-desk, #fit, #instructor, #pricing, #framework, #bible, #questions, #closing-cta) :is(h2,h3) em { font: inherit; color: inherit; }


@media (hover: hover) {
  .home-page #pricing .cohort-option .home-primary:hover { background: #080986; border-color: #080986; color: #fff; }
  .home-page #pricing .team-offer .home-secondary:hover,
  .home-page #closing-cta .home-primary:hover { background: #ededff; border-color: #ededff; color: var(--section-blue); }
}
@media (max-width: 1100px) {
  .home-page #the-approach .method-sequence { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page #the-approach .method-sequence article:nth-child(n) { border-bottom: 1px solid var(--section-rule); }
  .home-page #the-approach .method-sequence article:nth-child(2n) { border-right: 0; }
  .home-page #pricing .enrolment-grid { gap: 22px; }
  .home-page #pricing :is(.programme-package, .cohort-option) { padding: 28px; }
  .home-page #instructor .instructor { gap: 40px; }
}
@media (max-width: 760px) {
  .home-page :is(#the-approach, #curriculum, #pricing, #questions) .section-intro { grid-template-columns: minmax(0, 1fr); gap: 24px; margin-bottom: 34px; }
  .home-page #the-approach .method-sequence article:nth-child(n) { padding: 25px 20px; }
  .home-page #the-approach .method-sequence h3 { margin-top: 30px; font-size: 26px; }
  .home-page #the-approach .research-bridge { padding: 26px 0; gap: 16px; }
  .home-page #curriculum .curriculum-row > summary { grid-template-columns: 34px minmax(0, 1fr) 28px; gap: 14px; padding: 24px 0; min-height: 112px; }
  .home-page #curriculum .session-number { font-size: 29px; }
  .home-page #curriculum .session-time { display: none; }
  .home-page #curriculum .detail-icon { width: 28px; height: 28px; }
  .home-page #curriculum .session-content { padding: 0 0 28px; }
  .home-page #curriculum .session-topics { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .home-page #fit.fit-band .wrap > div + div { padding-left: 20px; }
  .home-page #instructor .instructor { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .home-page #instructor .mythic-instructor-portrait > img { max-width: 100%; }
  .home-page #pricing .enrolment-grid { grid-template-columns: minmax(0, 1fr); }
  .home-page #pricing .cohort-option h3 { font-size: 38px; }
  .home-page #pricing .after-enrolment { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .home-page #pricing .team-offer { padding-block: 30px; }
  .home-page #framework .evidence-card { border-left: 0; border-top: 1px solid var(--section-rule); padding: 30px 0 0; }
  .home-page #bible .publication-grid { gap: 18px; }
  .home-page #bible .publication-grid .publication-card { padding: 28px; }
  .home-page #bible .publication-mark { min-height: 160px; }
  .home-page #questions .faq-list summary { padding-inline: 0; gap: 18px; }
  .home-page #questions .faq-list details p { padding-inline: 0; }
  .home-page #closing-cta { padding: 70px 0; }
  .home-page #closing-cta > .wrap { padding-inline: 24px; }
  .home-page #closing-cta .home-primary { width: auto; min-width: 220px; }
}
@media (max-width: 520px) {
  .home-page #the-approach .method-sequence { grid-template-columns: minmax(0, 1fr); }
  .home-page #the-approach .method-sequence article:nth-child(n) { padding: 28px 24px; border-right: 0; }
  .home-page #tools .tool-card { padding: 25px; }
  .home-page #pricing :is(.programme-package, .cohort-option) { padding: 26px 22px; }
  .home-page #pricing .package-price { flex-wrap: wrap; }
  .home-page #pricing .cohort-option .home-primary { padding-inline: 16px; }
  .home-page #bible .publication-grid .publication-card { padding: 26px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page #tools .tool-card,
  .home-page #tools .tool-open,
  .home-page #bible .publication-card,
  .home-page #bible .publication-card .arrow,
  .home-page #pricing .home-primary,
  .home-page #closing-cta .home-primary { transition: none; }
}

/* Final responsive composition rules also cover the inherited section skin. */
@media (max-width: 960px) {
  .home-page #the-approach .method-sequence article:nth-child(n) { grid-template-columns: 58px minmax(0, 1fr) minmax(0, 1fr); padding-inline: 0; border-right: 0; }
  .home-page #the-approach .method-output { grid-column: 2/-1; border: 0; padding: 0; }
  .home-page #framework .mythic-framework-copy { padding-block: 52px; }
  .home-page #framework .mythic-framework-copy h2 { font-size: 48px; }
  .home-page #closing-cta h2 { font-size: clamp(37px,4.6vw,52px); }
}
@media (max-width: 760px) {
  .home-page #the-approach .method-sequence article:nth-child(n) { grid-template-columns: 46px minmax(0, 1fr); gap: 18px; padding-block: 28px; }
  .home-page #the-approach .method-sequence h3 { margin: 0; }
  .home-page #the-approach .method-sequence p, .home-page #the-approach .method-output { grid-column: 2; }
  .home-page #tools .tool-card:nth-child(n) { border-right: 0; padding-inline: 0; }
  .home-page #framework .mythic-framework-opening { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .home-page #framework .mythic-framework-copy { padding-block: 52px; grid-template-columns: minmax(0,1fr); gap: 12px; }
  .home-page #framework .mythic-framework-copy h2 { font-size: 43px; }
  .home-page #framework .evidence-card { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 38px 0; }
  .home-page #framework .evidence-card h3 { grid-row: auto; }
  .home-page #bible .publication-grid .publication-card:nth-child(n) { border-right: 0; padding: 0 0 30px; }
  .home-page #bible .publication-mark { height: 310px; }
  .home-page #closing-cta { padding: 0; }
  .home-page #closing-cta > .wrap { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .home-page #closing-cta .mythic-closing-copy { padding: 64px 0 12px; }
  .home-page #closing-cta .mythic-closing-art { position: relative; inset: auto; height: clamp(330px,80vw,530px); width: calc(100% + 48px); margin-inline: -24px; opacity: .62; mask-image: linear-gradient(to bottom,transparent,#000 18%); }
  .home-page #closing-cta .mythic-closing-art img { object-position: 72% 33%; }
  .home-page #closing-cta h2 { font-size: clamp(43px, 10vw, 65px); max-width: 18ch; }
}
@media print {
  .home-page #framework .mythic-framework-opening::before { display: none; }
  .home-page #tools .lab-diagram > .tool-creature-art { display: none; }
}

/* Broad shared rhythm: paper chapters, blue instruments, one strong closing. */
.home-page :is(#tools,#the-approach,#curriculum,#covenant-desk,#instructor,#bible,#questions) { padding-block: clamp(64px,6vw,136px); }
/* Consecutive paper sections share a compact transition, not two full openings. */
.home-page :is(#curriculum, #bible) { padding-bottom: clamp(28px, 3vw, 48px); }
.home-page #curriculum + #instructor,
.home-page #bible + #questions { padding-top: clamp(28px, 3vw, 48px); }
.home-page :is(#tools,#the-approach,#curriculum,#covenant-desk,#instructor,#questions) h2 { color: #1012c8; }
.home-page :is(#tools,#the-approach,#curriculum,#covenant-desk,#instructor,#questions) .section-intro { grid-template-columns: minmax(0,1.25fr) minmax(0,1fr); gap: 32px 6vw; }
.home-page :is(#tools,#the-approach,#curriculum,#covenant-desk,#questions) .section-intro > p { max-width: 62ch; }
.home-page #framework .evidence-card { padding-block: clamp(54px,5vw,100px); }
.home-page #framework .evidence-card p { max-width: 76ch; }
.home-page #questions .faq-list { max-width: none; }
.home-page #questions .faq-list details p { max-width: 86ch; }
.home-page #instructor .instructor { grid-template-columns: minmax(230px,.6fr) minmax(0,1.5fr); gap: clamp(36px,5vw,110px); }
.home-page #instructor .mythic-instructor-portrait > img { max-height: 620px; object-position: 52% 50%; }
.home-page #instructor .instructor .body { max-width: 76ch; }
.home-page #pricing .programme-package { border: 0; border-top: 1px solid #8585e7; padding-inline: 0; }
.home-page #pricing .enrolment-grid { gap: 6vw; }
.home-page #pricing .cohort-option h3 em { color: inherit; }
.home-page #membership .secondary-offer .feature { border-radius: 0; box-shadow: none; }
@media (min-width:1800px) {
 .home-page :is(#tools,#the-approach,#curriculum,#covenant-desk,#instructor,#pricing,#bible,#questions) h2 { font-size: 82px; }
 .home-page #the-approach .method-sequence article:nth-child(n) { padding-block: 44px; }
 .home-page #curriculum .session-title { font-size: 38px; }
 .home-page #questions .faq-list summary { font-size: 21px; padding-block: 32px; }
 .home-page #pricing .cohort-option { padding: 44px; }
}
@media (max-width:760px) {
 .home-page :is(#tools,#the-approach,#curriculum,#covenant-desk,#instructor,#questions) .section-intro { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .home-page #instructor .instructor { grid-template-columns: minmax(0,1fr); gap: 32px; }
 .home-page #instructor .mythic-instructor-portrait { max-width: 430px; }
 .home-page #pricing .enrolment-grid { gap: 38px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-page #instructor .mythic-instructor-portrait.mythic-signal-ready > img:not(.mythic-signal-slice) { mask-image: radial-gradient(ellipse at 50% 42%,#000 53%,#000e 69%,transparent 98%) !important; }
}
@media print { .home-page :is(.publication-mark,.mythic-closing-art) { display: none !important; } .home-page #closing-cta > .wrap { display: block; } .home-page #instructor .mythic-instructor-portrait.mythic-signal-ready > img:not(.mythic-signal-slice), .home-page #instructor .mythic-instructor-portrait > img { mask-image: none !important; } }
