/* A focused coaching landing page within Sam's established visual system. */
.coaching-page{--coaching-space:clamp(56px,7vw,104px)}
.coaching-page .shell{max-width:1240px}
.coaching-page .eyebrow{margin:0 0 18px;line-height:1.6}
.coaching-page p{line-height:1.7}
.coaching-page h1,.coaching-page h2{font-family:Manrope,sans-serif;letter-spacing:-.03em;font-weight:700}
.coaching-page h2{font-size:clamp(2.15rem,4.1vw,3.8rem);line-height:1.09;margin:0 0 24px}
.coaching-page .btn{min-height:50px;padding:14px 22px;font-size:.95rem}
.coaching-page .coaching-skip{position:absolute;left:16px;top:12px;transform:translateY(-160%);z-index:100;padding:12px 18px;background:var(--accent);color:var(--button);font-weight:700}
.coaching-page .coaching-skip:focus{transform:none}
.coaching-header{border-bottom:1px solid var(--rule)}
.coaching-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:82px}
.coaching-mobile-label{display:none}
.coaching-hero{padding:clamp(40px,5vw,76px) 0 clamp(48px,6vw,88px)}
.coaching-hero-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr);gap:clamp(28px,5.5vw,80px);align-items:center}
.coaching-hero h1{font-size:clamp(2.8rem,5.2vw,4.6rem);line-height:1.03;max-width:15ch;margin:0 0 24px}
.coaching-hero h1>span{color:var(--accent)}
.coaching-hero-copy>p:not(.eyebrow):not(.coaching-offer-facts):not(.coaching-lead){color:var(--muted);font-size:1.05rem;margin:0 0 14px;max-width:57ch}
.coaching-hero-copy>.coaching-lead{color:var(--ink);font-size:1.18rem;line-height:1.6;margin:0 0 14px;max-width:57ch}
.coaching-action{margin-top:28px}
.coaching-action p{font-size:.9rem;color:var(--muted);max-width:43ch;margin:12px 0 0;line-height:1.55}
.coaching-offer-facts{font-size:.86rem;font-weight:600;color:var(--muted);margin:26px 0 0;padding-top:20px;border-top:1px solid var(--rule);display:flex;gap:12px;flex-wrap:wrap}
.coaching-offer-facts>span{color:var(--accent)}
.coaching-portrait{margin:0;max-width:440px;justify-self:end;align-self:center}
.coaching-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}
.coaching-portrait figcaption{margin-top:15px;padding-top:14px;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:18px;line-height:1.55;font-size:.82rem}
.coaching-portrait figcaption strong{font-family:Manrope,sans-serif;font-size:.95rem;white-space:nowrap}
.coaching-portrait figcaption span{color:var(--muted);text-align:right}
.coaching-section{padding:var(--coaching-space) 0;border-top:1px solid var(--rule)}
.coaching-paper{--bg:#f2eee5;--surface:#e8e3d9;--ink:#252e31;--muted:#505c60;--accent:#355d6b;--rule:#c9cdc7;background:var(--bg);color:var(--ink)}
.coaching-need-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,7vw,96px)}
.coaching-need-copy>p{color:var(--muted);margin:0 0 20px}
.coaching-need-copy>p:last-child{margin:22px 0 0}
.coaching-pressure-list{list-style:none;padding:0;margin:24px 0;border-top:1px solid var(--rule)}
.coaching-pressure-list li{padding:16px 0;border-bottom:1px solid var(--rule);font-weight:600;line-height:1.6}
.coaching-section-heading{max-width:820px;margin-bottom:44px}
.coaching-section-heading>p:last-child{color:var(--muted);max-width:60ch;margin:0}
.coaching-focus-list{margin:0;border-top:1px solid var(--rule)}
.coaching-focus-list>div{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:clamp(24px,6vw,90px);padding:29px 0;border-bottom:1px solid var(--rule)}
.coaching-focus-list dt{font-family:Manrope,sans-serif;font-size:clamp(1.3rem,2.3vw,1.85rem);font-weight:700;letter-spacing:-.035em;line-height:1.25}
.coaching-focus-list dd{margin:0;color:var(--muted);line-height:1.75;max-width:66ch}
.coaching-program{background:var(--surface)}
.coaching-program-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(36px,8vw,110px)}
.coaching-program-intro{max-width:47ch;color:var(--muted)}
.coaching-inclusions{list-style:none;margin:32px 0 0;padding:0;border-top:1px solid var(--rule)}
.coaching-inclusions li{padding:19px 0;border-bottom:1px solid var(--rule);line-height:1.6}
.coaching-inclusions strong{display:block;font-size:1.05rem}
.coaching-inclusions span{display:block;color:var(--muted);font-size:.96rem;margin-top:4px}
.coaching-investment{align-self:center}
.coaching-price{font-family:Manrope,sans-serif;font-size:clamp(3.7rem,7vw,6.2rem);font-weight:700;letter-spacing:-.075em;line-height:1.1!important;margin:0 0 24px;white-space:nowrap}
.coaching-price span{font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:500;letter-spacing:0;margin-left:12px;color:var(--muted)}
.coaching-investment>p:not(.eyebrow):not(.coaching-price){color:var(--muted);max-width:35ch}
.coaching-investment .btn{margin-top:12px}
.coaching-price-note{font-size:.85rem;margin-top:13px}
.coaching-experience-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.coaching-location-photo{margin:0}
.coaching-location-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.coaching-location-photo figcaption{font-size:.78rem;color:var(--muted);line-height:1.55;margin-top:12px;max-width:60ch}
.coaching-experience-copy>p:not(.eyebrow){color:var(--muted);margin:0 0 18px}
.coaching-text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);font-weight:700;line-height:1.5;text-decoration:underline;text-underline-offset:4px}
.coaching-questions-layout{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:clamp(28px,6vw,88px)}
.coaching-questions-layout .faq-list{width:100%}
.coaching-questions-layout .faq-list summary{font-size:1.14rem;letter-spacing:-.02em;padding:22px 0;min-height:52px}
.coaching-questions-layout .faq-list details p{font-size:1rem;line-height:1.75}
.coaching-final-inner{max-width:850px!important;text-align:center}
.coaching-final h2{font-size:clamp(2.35rem,4.5vw,4.2rem)}
.coaching-final-inner>p:not(.eyebrow){color:var(--muted)}
.coaching-final .btn{margin-top:15px}
.coaching-final-alternative{font-size:.9rem;margin-top:24px}
.coaching-final-alternative a{text-decoration:underline;text-underline-offset:4px}
.coaching-page .footer{border-top:1px solid var(--rule)}
.coaching-page .footer .shell{align-items:center}
@media(max-width:1000px){
  .coaching-hero-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:30px}
  .coaching-portrait figcaption{display:block}
  .coaching-portrait figcaption span{display:block;text-align:left;margin-top:5px}
}
@media(max-width:800px){
  .coaching-hero-layout,.coaching-need-layout,.coaching-program-layout,.coaching-experience-layout,.coaching-questions-layout{grid-template-columns:1fr}
  .coaching-hero h1{font-size:clamp(2.7rem,7.2vw,4.2rem);max-width:19ch}
  .coaching-portrait{width:min(100%,360px);justify-self:start;margin-top:16px}
  .coaching-portrait figcaption{display:flex}
  .coaching-portrait figcaption span{text-align:right;margin:0}
  .coaching-program-layout{gap:42px}
  .coaching-investment{padding-top:32px;border-top:1px solid var(--rule)}
  .coaching-investment>p:not(.eyebrow):not(.coaching-price){max-width:55ch}
  .coaching-experience-copy{grid-row:1}
  .coaching-questions-layout{gap:20px}
}
@media(max-width:520px){
  .coaching-header-inner{min-height:72px}
  .coaching-header .wordmark{font-size:1.15rem}
  .coaching-header .coaching-header-cta{min-height:44px;padding:10px 14px;font-size:.84rem}
  .coaching-desktop-label{display:none}
  .coaching-mobile-label{display:inline}
  .coaching-hero{padding-top:34px}
  .coaching-hero h1{font-size:clamp(2.45rem,9.8vw,3.15rem);letter-spacing:-.025em;max-width:17ch}
  .coaching-hero-copy>.coaching-lead{font-size:1.08rem}
  .coaching-hero-copy>p:not(.eyebrow):not(.coaching-offer-facts):not(.coaching-lead){font-size:1rem}
  .coaching-portrait figcaption{display:block}
  .coaching-portrait figcaption span{text-align:left;margin-top:4px}
  .coaching-offer-facts{gap:8px;font-size:.8rem}
  .coaching-focus-list>div{grid-template-columns:1fr;gap:12px;padding:24px 0}
  .coaching-page h2{font-size:clamp(2rem,7.8vw,2.55rem);letter-spacing:-.04em}
  .coaching-price{font-size:4rem}
  .coaching-final h2{font-size:clamp(2.05rem,8vw,2.7rem)}
}
