.coaching-page { --coaching-highlight: #9fbecb; --coaching-highlight-soft: #d9e6eb; background: #efe9dc; }
.coaching-hero { min-height: 760px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(390px, .95fr); gap: clamp(2.5rem, 6vw, 5.5rem); align-items: center; padding-block: 70px 90px; }
.coaching-hero > * { min-width: 0; }
.coaching-hero h1 { max-width: 700px; margin-bottom: 1.5rem; font-size: clamp(3.4rem, 5.2vw, 4.5rem); line-height: .86; }
.coaching-hero .headline-line { display: block; }
.coaching-hero .headline-ink { color: var(--ink); }
.coaching-hero .headline-orange { color: var(--orange); }
.coaching-lede { max-width: 680px; font-size: clamp(1.1rem, 1.7vw, 1.35rem); line-height: 1.65; }
.offer-router { border: 2px solid var(--ink); background: var(--ink); box-shadow: 16px 16px 0 var(--coaching-highlight); }
.router-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .85rem 1rem; border-bottom: 1px solid rgba(255,255,255,.2); color: white; }
.router-head span { color: var(--coaching-highlight); font-size: .64rem; font-weight: 700; letter-spacing: .14em; }
.router-head b { font-size: .78rem; }
.route-card { padding: clamp(1.2rem, 2.5vw, 1.8rem); background: white; }
.route-card + .route-card { border-top: 2px solid var(--ink); }
.route-private { background: #fffdf8; }
.route-group { background: var(--coaching-highlight-soft); }
.route-top { display: grid; grid-template-columns: auto 1fr auto; gap: .75rem; align-items: baseline; }
.route-top span { display: grid; width: 28px; aspect-ratio: 1; place-items: center; background: var(--ink); color: white; font-size: .62rem; font-weight: 700; }
.route-top p { margin: 0; font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.route-top strong { font-family: var(--display); font-size: 1.85rem; letter-spacing: -.07em; }
.route-card h2 { margin: 1rem 0 .55rem; font-size: clamp(1.7rem, 3vw, 2.4rem); line-height: .95; }
.route-card > p { margin: 0 0 1.1rem; font-size: .93rem; line-height: 1.5; }
.route-card small { display: block; margin-top: .7rem; color: #55564f; font-size: .68rem; text-align: center; }
.prompt-window { border: 2px solid var(--ink); background: var(--ink); color: white; box-shadow: 18px 18px 0 var(--coaching-highlight); transform: rotate(1.5deg); }
.prompt-bar { display: flex; gap: .4rem; align-items: center; padding: .9rem 1rem; border-bottom: 1px solid rgba(255,255,255,.2); font-size: .65rem; letter-spacing: .12em; }
.prompt-bar span { width: 9px; height: 9px; border-radius: 50%; background: var(--coaching-highlight); }.prompt-bar b { margin-left: auto; }
.prompt-window ol { margin: 0; padding: .5rem 1.5rem 1.5rem; list-style: none; }.prompt-window li { display: grid; grid-template-columns: 46px 1fr; gap: 1rem; padding: 1.35rem 0; border-bottom: 1px solid rgba(255,255,255,.15); line-height: 1.45; }.prompt-window li:last-child { border: 0; }.prompt-window li b { color: var(--coaching-highlight); font-family: var(--display); }
.tool-strip { overflow: hidden; padding: 1rem 0; background: var(--orange); color: white; font-family: var(--display); font-size: clamp(.9rem, 2vw, 1.3rem); letter-spacing: .05em; white-space: nowrap; }.tool-strip div { width: max-content; animation: tool-slide 28s linear infinite; }
@keyframes tool-slide { to { transform: translateX(-35%); } }
.coaching-pain { padding-block: 120px; }.coaching-pain .section-heading { max-width: 920px; }.pain-list { border-top: 2px solid var(--ink); }.pain-list article { display: grid; grid-template-columns: 70px 1fr; gap: 2rem; padding: 2rem 0; border-bottom: 1px solid var(--line); }.pain-list b { color: var(--orange); font-family: var(--display); }.pain-list h3 { margin-bottom: .6rem; font-family: var(--display); font-size: clamp(1.5rem, 3vw, 2.5rem); letter-spacing: -.045em; }.pain-list p { max-width: 760px; margin: 0; color: var(--muted); font-size: 1.03rem; line-height: 1.65; }
.coaching-options { padding-block: 120px; }.coaching-options .section-heading { max-width: 850px; }.option-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin-top: 3.5rem; }
.coaching-card { position: relative; padding: clamp(1.6rem, 4vw, 3rem); border: 2px solid var(--ink); background: white; }.coaching-card h3 { max-width: 520px; margin-bottom: 1rem; font-family: var(--display); font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.055em; line-height: .95; }.group-card { background: var(--ink); color: white; box-shadow: 12px 12px 0 var(--coaching-highlight); }.private-card { box-shadow: 12px 12px 0 var(--orange); }.card-tag { color: var(--orange); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.group-card .card-tag { color: var(--coaching-highlight); }.session-price { margin: 1.5rem 0; font-family: var(--display); font-size: clamp(4rem, 8vw, 6.8rem); letter-spacing: -.08em; line-height: .85; }.session-price sup { font-size: .35em; vertical-align: top; }.session-price span { display: block; margin-top: .8rem; font-family: var(--body); font-size: .8rem; font-weight: 500; letter-spacing: .03em; }.coaching-card > p:not(.card-tag,.session-price,.cta-note) { line-height: 1.65; }.coaching-card .check-list { min-height: 230px; margin-block: 2rem; }.group-card .check-list li { border-color: rgba(255,255,255,.2); }.group-card .cta-note { color: rgba(255,255,255,.65); }
.curriculum { padding-block: 120px; background: #d9c9bb; }.curriculum .section-heading { max-width: 860px; }.lesson-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-top: 3rem; border: 1px solid var(--ink); background: var(--ink); }.lesson-grid article { min-height: 280px; padding: 2rem; background: var(--paper); }.lesson-grid span { color: var(--orange); font-size: .7rem; font-weight: 700; letter-spacing: .12em; }.lesson-grid h3 { margin: 3rem 0 1rem; font-family: var(--display); font-size: clamp(1.6rem, 3vw, 2.4rem); letter-spacing: -.045em; line-height: 1; }.lesson-grid p { color: var(--muted); line-height: 1.6; }
.fit-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 5rem; padding-block: 120px; }.fit-section h2 { font-size: clamp(2.6rem, 5vw, 5rem); }.fit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }.fit-grid p { margin: 0; padding: 1.5rem; border-left: 5px solid var(--orange); background: white; font-weight: 500; line-height: 1.55; }
.coaching-faq { padding-block: 40px 120px; }.coaching-claim { background: var(--orange); }.coaching-claim .eyebrow { color: white; }
@media (max-width: 900px) { .coaching-hero, .option-grid, .fit-section { grid-template-columns: 1fr; }.coaching-hero { gap: 3.5rem; }.offer-router { max-width: 650px; }.coaching-card .check-list { min-height: 0; } }
@media (max-width: 640px) { .coaching-hero { padding-block: 54px 72px; }.coaching-hero h1 { font-size: clamp(2.6rem, 10.2vw, 3.5rem); }.coaching-lede { line-height: 1.5; }.offer-router { box-shadow: 8px 8px 0 var(--coaching-highlight); }.route-card { padding: 1.2rem; }.lesson-grid, .fit-grid { grid-template-columns: 1fr; }.coaching-options, .curriculum, .fit-section, .coaching-pain { padding-block: 80px; }.pain-list article { grid-template-columns: 42px 1fr; gap: 1rem; }.tool-strip { font-size: .75rem; }.nav-links a:first-child { display: none; } }
@media (prefers-reduced-motion: reduce) { .tool-strip div { animation: none; } }
