/* Final visual rhythm for the first LP page; manuscript and component order stay intact. */
body[data-page="home"] {
  --paper: #f4f2ed;
  --paper-2: #eae7e0;
  --ink: #27241f;
  --muted-light: #5c5850;
  --muted-dark: #eeeeec;
  --gold: #b99c64;
  --gold-light: #ddc991;
  --line-light: rgba(55, 47, 33, .16);
  --line-gold: rgba(185, 156, 100, .28);
}

/* A quieter hierarchy, with clear sentence endings and balanced headings. */
body[data-page="home"] main :is(h2, h3, p) { line-break: strict; }
body[data-page="home"] main :is(h2, h3) { text-wrap: balance; }
body[data-page="home"] main p { text-wrap: pretty; }
body[data-page="home"] main p strong { font-weight: 600; }
body[data-page="home"] :is(.section-heading h2, .about-message > h2, .instructor-intro-title, .method-heading h2, .materials-heading h2, .free-copy-block h2, .final-cta h2) {
  font-family: var(--serif);
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: -.015em;
}
body[data-page="home"] :is(.section-heading h2, .method-heading h2, .materials-heading h2, .free-copy-block h2) { font-size: clamp(27px, 2.8vw, 38px); }
body[data-page="home"] :is(.instructor-intro-title, .method-heading h2, .materials-heading h2) strong { font-weight: 600; }
body[data-page="home"] :is(.instructor-principle h3, .method-output-header h3, .community-essay-header h3 > strong, .community-essay-section h4, .member-community-purpose-title) { font-weight: 600; }
body[data-page="home"] :is(.section-kicker, .materials-kicker, .eyebrow) { font-family: var(--sans); font-weight: 500; letter-spacing: .1em; }
body[data-page="home"] #method .method-heading .section-kicker { font-weight: 500; }

/* Continuous prose shares one reading scale; labels and buttons keep Sans. */
body[data-page="home"] :is(.about-message-body p, .instructor-intro-copy p, .instructor-principle p:not(.instructor-principle-lead):not(.instructor-principle-closing), .community-essay-body, .member-community-story, .method-heading > p:last-child, .method-practice-text > p, .method-output-columns, .materials-copy > p:not(.materials-kicker), .free-copy-block > p:not(.section-kicker), .final-cta > .shell > p:not(.eyebrow)) {
  font-family: var(--serif);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.9;
  letter-spacing: .015em;
}
body[data-page="home"] :is(.instructor-intro-copy p + p, .instructor-principle p + p, .community-essay-body p + p) { margin-top: 18px; }
body[data-page="home"] .community-essay-header h3 > strong { line-height: 1.65; }
body[data-page="home"] .about-message-body .about-message-prompt { font-weight: 500; }
body[data-page="home"] .about-message .about-message-definition { font-weight: 400; }
body[data-page="home"] .community-essay-section + .community-essay-section { margin-top: 28px; padding-top: 24px; }
body[data-page="home"] .community-essay-header { margin-bottom: 24px; }
body[data-page="home"] .community-essay-header::before { height: 2px; background: #b99c64; }
body[data-page="home"] #method .method-output-columns p + p { margin-top: 18px; }
body[data-page="home"] :is(.instructor-principle-lead, .instructor-principle-closing, .method-output-conclusion) { text-wrap: balance; }

/* Keep original editor newlines while presenting paragraph groups cleanly. */
body[data-page="home"] #main :is(.lp-copy-preserved-break, .lp-copy-soft-break) { display: none; }
body[data-page="home"] .lp-copy-block { display: block; }
body[data-page="home"] .lp-copy-block ~ .lp-copy-block { margin-top: 18px; }
body[data-page="home"] #method .method-heading > [data-cms-field="home.t1062"] {
  max-width: 46em;
  margin: 24px auto 0;
  text-align: left;
}
body[data-page="home"] #member-trades .member-community-story { line-height: 1.9; }
body[data-page="home"] #member-trades .member-community-story strong { font-weight: 600; }
body[data-page="home"] #member-trades .member-community-story .lp-copy-block:last-child > strong:last-child {
  display: block;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--line-light);
  font-size: 19px;
  line-height: 1.8;
}

/* Section spacing follows the existing layout, with lighter framing. */
body[data-page="home"] .section-pad { padding-block: clamp(56px, 6vw, 80px); }
body[data-page="home"] :is(.instructor-trade-panel, .member-community-panel, .method, .materials) {
  border-color: rgba(172, 144, 88, .28);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .1);
}
body[data-page="home"] :is(.instructor-trade-panel, .method, .materials) { margin-top: 36px; }
body[data-page="home"] .about { background: linear-gradient(145deg, #f6f4ef, #efede6); }
body[data-page="home"] .member-dms { background: #f3f1ec; }
body[data-page="home"] .mentors { background: #eae7e0; }
body[data-page="home"] :is(.method, .materials) { background: #141412; }
body[data-page="home"] .instructor-trade-panel { background: linear-gradient(135deg, #121211, #1a1916); }
body[data-page="home"] .member-count-badge {
  box-shadow: 0 8px 24px rgba(0, 0, 0, .16), inset 0 1px rgba(224, 202, 151, .2);
}
body[data-page="home"] .member-count-badge h2 strong {
  background-image: linear-gradient(175deg, #e5d3a1, #c5a45f 65%, #dfc58b);
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, .24));
}
body[data-page="home"] .market-tape b { color: #bda773; }

/* Keep compact instructor cards readable without introducing heavy bold runs. */
body[data-page="home"] #mentors .mentor-card {
  border-radius: 8px;
  border-color: rgba(68, 57, 36, .16);
  background: #f7f5f0;
  box-shadow: 0 5px 18px rgba(32, 27, 18, .06);
}
body[data-page="home"] #mentors :is(.fukuzawa-identity h3, .mentor-secondary-identity h3) { font-weight: 500; }
body[data-page="home"] #mentors :is(.fukuzawa-bio p, .mentor-secondary-bio p) { color: #38352f; line-height: 1.85; }
body[data-page="home"] #mentors :is(.fukuzawa-bio strong, .mentor-secondary-bio strong) { font-weight: 600; }
body[data-page="home"] #mentors :is(.fukuzawa-hobbies, .mentor-secondary-hobbies) { color: #625d54; }
body[data-page="home"] #method .learning-staircase :is(.learning-cycle-steps h3, .learning-cycle-action, .learning-cycle-number) { font-weight: 600; }
body[data-page="home"] #method .learning-staircase .learning-cycle-steps > li { border-top-color: rgba(185, 156, 100, .28) !important; }
body[data-page="home"] .principle-example-note { font-size: 12px; line-height: 1.75; color: #c7c7c3; }
body[data-page="home"] .principle-image-notice { color: #d4bd87; border-color: #9c824e; }
body[data-page="home"] #member-dms .member-voice-card h3 { font-weight: 500; }
body[data-page="home"] .final-cta { padding-block: clamp(64px, 7vw, 88px); }
body[data-page="home"] .final-cta h2 { font-size: clamp(30px, 3.4vw, 46px); }
body[data-page="home"] .final-cta::before { border-color: rgba(205, 181, 127, .14); }
body[data-page="home"] .final-cta::after { background: radial-gradient(circle at 50% 100%, rgba(210, 170, 85, .07), transparent 45%); }

@media (max-width: 760px) {
  body[data-page="home"] :is(.section-heading h2, .method-heading h2, .materials-heading h2, .free-copy-block h2) { font-size: clamp(23px, 6vw, 28px); line-height: 1.6; }
  body[data-page="home"] :is(.instructor-trade-panel, .method, .materials) { margin-top: 28px; }
  body[data-page="home"] :is(.instructor-intro-copy p + p, .instructor-principle p + p, .community-essay-body p + p) { margin-top: 16px; }
  body[data-page="home"] .lp-copy-block ~ .lp-copy-block { margin-top: 16px; }
  body[data-page="home"] #method .method-output-columns p + p { margin-top: 16px; }
  body[data-page="home"] #method .method-heading > [data-cms-field="home.t1062"] { margin-top: 20px; }
  body[data-page="home"] .community-essay-section + .community-essay-section { margin-top: 24px; padding-top: 20px; }
  body[data-page="home"] .final-cta { padding-block: 56px; }
  body[data-page="home"] .final-cta h2 { font-size: clamp(25px, 6.6vw, 31px); }
}
