/* Credible Transformation — first pass only. Baseline CSS remains unchanged. */
.pass1-header,
.pass1-hero,
.pass1-problem,
.pass1-coaching,
.pass1-momentum {
  --p1-ink: #202936;
  --p1-muted: #59606a;
  --p1-paper: #f8f7f4;
  --p1-accent: #bd482f;
  --p1-line: #d7d8d7;
  color: var(--p1-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", YuGothic, sans-serif;
}

.pass1-shell {
  width: min(100% - 48px, 1280px);
  margin-inline: auto;
}

.site-header.pass1-header {
  position: relative;
  background: #f8f7f4;
  border-bottom: 1px solid #d7d8d7;
}

.pass1-header .header-inner { min-height: 72px; gap: 12px; }
.pass1-header .brand-mark {
  border-radius: 0;
  width: 34px;
  height: 34px;
  background: var(--p1-ink);
  color: white;
  font-size: 15px;
  font-weight: 700;
}
.pass1-header .brand-copy { font-size: 12px; letter-spacing: .01em; }

.pass1-eyebrow {
  margin: 0 0 24px;
  font-size: 12px;
  line-height: 1.8;
  letter-spacing: .09em;
  font-weight: 700;
}

.pass1-hero { background: var(--p1-paper); padding: 32px 0 44px; }
.pass1-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; }
.pass1-hero-copy { display: contents; }
.pass1-hero-copy > .pass1-eyebrow { grid-row: 1; margin-bottom: 20px; }
.pass1-hero h1 {
  grid-row: 2;
  max-width: none;
  margin: 0 0 28px;
  font-size: clamp(32px, 9.1vw, 58px);
  font-weight: 750;
  letter-spacing: -.04em;
  line-height: 1.4;
}
.pass1-hero h1 > span { display: block; }
.pass1-hero h1 > span:first-child { color: var(--p1-accent); }
.pass1-portrait {
  grid-row: 3;
  margin: 0 -24px 28px;
  min-width: 0;
}
.pass1-portrait picture { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: #d9d5ce; }
.pass1-portrait img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 38%; }
.pass1-portrait figcaption {
  display: grid;
  gap: 5px;
  padding: 16px 24px 0;
  font-size: 14px;
  line-height: 1.8;
  color: var(--p1-muted);
}
.pass1-portrait figcaption strong { color: var(--p1-ink); font-size: 21px; font-weight: 700; letter-spacing: .01em; }
.pass1-mechanism-label {
  grid-row: 4;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 3px 6px;
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.8;
  font-weight: 700;
}
.pass1-mechanism-label span { font-size: 11px; font-weight: 400; color: var(--p1-muted); }
.pass1-hero-lead { grid-row: 5; margin: 0 0 26px; color: var(--p1-muted); font-size: 16px; line-height: 1.95; }
.pass1-hero-price { grid-row: 6; display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 12px; margin-bottom: 23px; }
.pass1-hero-price > span { font-size: 12px; color: var(--p1-muted); }
.pass1-hero-price strong { font-size: 36px; line-height: 1.2; font-weight: 600; letter-spacing: -.04em; }
.pass1-cta-wrap { grid-row: 7; max-width: 560px; }
.pass1-cta-wrap .primary-cta {
  min-height: 62px;
  border-radius: 0;
  background: var(--p1-accent);
  color: white;
  box-shadow: none;
  padding: 18px 22px;
  font-size: 15px;
  font-weight: 700;
  transition: background-color .2s;
}
.pass1-cta-wrap .primary-cta:hover { background: #9f3823; transform: none; }
.pass1-cta-wrap .primary-cta:focus-visible { outline: 3px solid var(--p1-ink); outline-offset: 4px; }
.pass1-cta-wrap .primary-cta > span:last-child { font-size: 22px; font-weight: 400; }
.pass1-cta-wrap .cta-note { margin: 14px 0 0; color: var(--p1-muted); font-size: 12px; line-height: 1.9; }
.pass1-hero-conditions { margin-top: 36px; border-top: 1px solid var(--p1-line); }
.pass1-conditions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 20px; padding: 24px 0; }
.pass1-condition { min-width: 0; }
.pass1-condition .condition-label { display: block; margin-bottom: 5px; font-size: 11px; font-weight: 500; letter-spacing: .06em; color: var(--p1-muted); }
.pass1-condition strong { display: block; font-size: 17px; font-weight: 700; line-height: 1.65; }
.pass1-condition .condition-note { display: block; margin-top: 3px; font-size: 12px; line-height: 1.75; color: var(--p1-muted); }
.pass1-hero-note { margin: 0; padding-top: 20px; border-top: 1px solid var(--p1-line); color: var(--p1-muted); font-size: 12px; line-height: 1.9; }

.pass1-problem { background: #fff; padding: 72px 0; }
.pass1-problem-grid { display: grid; gap: 36px; }
.pass1-problem h2 { font-size: 27px; line-height: 1.65; font-weight: 700; letter-spacing: -.035em; margin: 0 0 24px; }
.pass1-problem h2 .pass1-phrase { display: inline-block; }
.pass1-body { margin: 0; font-size: 16px; line-height: 2; color: var(--p1-muted); }
.pass1-question-intro { margin: 0 0 14px; font-size: 13px; font-weight: 500; color: var(--p1-muted); }
.pass1-questions ul { margin: 0; padding: 0; list-style: none; counter-reset: question; }
.pass1-questions li { display: grid; grid-template-columns: 27px minmax(0, 1fr); gap: 13px; padding: 20px 0; border-top: 1px solid var(--p1-line); font-size: 18px; font-weight: 600; line-height: 1.8; counter-increment: question; }
.pass1-questions li:last-child { border-bottom: 1px solid var(--p1-line); }
.pass1-questions li::before { content: counter(question, decimal-leading-zero); padding-top: 4px; color: var(--p1-accent); font-size: 12px; font-weight: 500; font-variant-numeric: tabular-nums; }
.pass1-problem-closing { max-width: 730px; margin: 36px 0 0 auto; font-size: 15px; color: var(--p1-muted); line-height: 2; }

.pass1-coaching { padding: 0 0 72px; background: #fff; }
.pass1-coaching-grid { display: grid; gap: 36px; }
.pass1-coaching-photo { margin: 0 -24px; }
.pass1-coaching-photo picture { display: block; aspect-ratio: 1284 / 1520; overflow: hidden; background: #d9d5ce; }
.pass1-coaching-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 48% 50%; }
.pass1-coaching-photo figcaption { padding: 14px 24px 0; font-size: 13px; line-height: 1.8; color: var(--p1-muted); }
.pass1-coaching-photo figcaption span { display: inline-block; }
.pass1-index { display: inline-block; margin-right: 22px; font-weight: 500; color: var(--p1-accent); }
.pass1-coaching h2 { margin: 0 0 28px; font-size: 44px; line-height: 1.35; font-weight: 700; letter-spacing: -.04em; }
.pass1-coaching-intro { margin: 0 0 22px; font-size: 21px; line-height: 1.8; font-weight: 600; }
.pass1-photo-note { margin: 30px 0 0; padding-top: 24px; border-top: 1px solid var(--p1-line); font-size: 14px; color: var(--p1-muted); line-height: 1.95; }

.pass1-momentum { padding: 64px 0 48px; background: #202936; color: #fff; }
.pass1-momentum-heading { display: grid; grid-template-columns: minmax(0, 1fr); }
.pass1-momentum .pass1-eyebrow { margin-bottom: 22px; color: #d4d7db; }
.pass1-momentum .pass1-index { color: #f28b72; }
.pass1-momentum h2 { margin: 0 0 26px; font-size: clamp(54px, 16vw, 100px); line-height: 1.25; font-weight: 650; letter-spacing: -.055em; }
.pass1-momentum-copy { margin-bottom: 36px; }
.pass1-momentum-copy p { margin: 0 0 18px; font-size: 17px; line-height: 1.95; color: #e3e5e8; }
.pass1-momentum-copy > span { font-size: 11px; letter-spacing: .13em; color: #bbc0c7; }
.pass1-training-photo { margin: 0 -24px; }
.pass1-training-photo picture { display: block; aspect-ratio: 962 / 714; overflow: hidden; background: #303846; }
.pass1-training-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 54%; }
.pass1-training-photo figcaption { padding: 14px 24px 0; font-size: 12px; color: #bbc0c7; }

@media (min-width: 700px) {
  .pass1-shell { width: min(100% - 96px, 1280px); }
  .pass1-hero { padding-top: 48px; }
  .pass1-hero h1 { font-size: 56px; }
  .pass1-portrait { margin-inline: 0; max-width: 620px; }
  .pass1-portrait picture { aspect-ratio: 1; }
  .pass1-portrait figcaption { padding-inline: 0; }
  .pass1-hero-lead { max-width: 620px; }
  .pass1-coaching-photo { margin: 0; max-width: 700px; }
  .pass1-coaching-photo figcaption { padding-inline: 0; }
  .pass1-training-photo { margin: 0; }
  .pass1-training-photo figcaption { padding-inline: 0; }
  .pass1-problem { padding-block: 100px; }
  .pass1-problem h2 { font-size: 34px; }
  .pass1-problem h2 .pass1-phrase { display: contents; }
}

@media (min-width: 940px) {
  .pass1-shell { width: min(100% - 128px, 1280px); }
  .pass1-header .header-inner { min-height: 82px; }
  .pass1-header .brand-copy { font-size: 14px; }
  .pass1-hero { padding: 56px 0 42px; }
  .pass1-hero-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); align-items: start; gap: 64px; }
  .pass1-hero-copy { display: block; padding-top: 8px; }
  .pass1-hero-copy > .pass1-eyebrow { max-width: 530px; margin-bottom: 24px; font-size: 12px; }
  .pass1-hero h1 { font-size: clamp(42px, 4.35vw, 64px); line-height: 1.34; margin-bottom: 24px; }
  .pass1-portrait { grid-row: auto; margin: 0; }
  .pass1-portrait picture { aspect-ratio: 4 / 5; }
  .pass1-portrait img { object-position: 50% 46%; }
  .pass1-portrait figcaption { padding-top: 18px; }
  .pass1-portrait figcaption strong { font-size: 24px; }
  .pass1-mechanism-label { font-size: 14px; gap: 5px 9px; margin-bottom: 16px; }
  .pass1-hero-lead { font-size: 16px; line-height: 1.95; margin-bottom: 22px; }
  .pass1-hero-price { margin-bottom: 21px; }
  .pass1-hero-price strong { font-size: 39px; }
  .pass1-hero-conditions { margin-top: 48px; }
  .pass1-conditions { grid-template-columns: .75fr 1fr 1.05fr 1.35fr; gap: 24px; padding-block: 25px; }
  .pass1-condition:not(:first-child) { border-left: 1px solid var(--p1-line); padding-left: 25px; }
  .pass1-condition strong { font-size: 18px; }
  .pass1-hero-note { max-width: none; border: 0; padding-top: 0; }
  .pass1-problem { padding-block: 124px 100px; }
  .pass1-problem-grid { grid-template-columns: minmax(0, 1fr) minmax(0, .96fr); gap: 100px; align-items: start; }
  .pass1-problem h2 { font-size: clamp(28px, 2.5vw, 36px); line-height: 1.6; }
  .pass1-questions { padding-top: 4px; }
  .pass1-questions li { padding-block: 21px; font-size: 20px; }
  .pass1-problem-closing { margin-top: 54px; }
  .pass1-coaching { padding-block: 24px 96px; }
  .pass1-coaching-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 56px; align-items: center; }
  .pass1-coaching-photo { max-width: none; }
  .pass1-coaching-photo img { object-position: 50% 50%; }
  .pass1-coaching h2 { margin-bottom: 36px; font-size: 64px; }
  .pass1-coaching-intro { font-size: 24px; }
  .pass1-photo-note { margin-top: 42px; padding-top: 30px; }
  .pass1-momentum { padding: 90px 0 58px; }
  .pass1-momentum-heading { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); column-gap: 100px; align-items: end; margin-bottom: 48px; }
  .pass1-momentum .pass1-eyebrow { grid-column: 1 / -1; margin-bottom: 26px; }
  .pass1-momentum h2 { margin: 0; font-size: 96px; }
  .pass1-momentum-copy { margin: 0 0 10px; }
  .pass1-momentum-copy p { font-size: 23px; line-height: 1.85; margin-bottom: 32px; }
  .pass1-training-photo picture { aspect-ratio: 1.7; }
  .pass1-training-photo img { object-position: 50% 63%; }
}
