.coaching-page { overflow-x: hidden; }
.coaching-page .site-header nav a.active { opacity: 1; color: var(--blue); }
.coaching-hero { min-height: 100svh; position: relative; display: flex; align-items: center; overflow: hidden; background: #02050a; color: white; }
.coaching-hero > figure { position: absolute; inset: 0; margin: 0; }
.coaching-hero > figure img { width: 100%; height: 100%; object-fit: cover; object-position: 72% center; filter: saturate(.78) contrast(1.08) brightness(.72); animation: coachingImageIn 1.2s cubic-bezier(.2,.8,.2,1) both; }
.coaching-hero-overlay { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(1,4,9,.96) 0%,rgba(1,4,9,.83) 38%,rgba(1,4,9,.18) 72%); }
.coaching-hero-copy { position: relative; z-index: 2; width: min(650px,calc(100vw - 64px)); margin-left: max(32px,calc((100vw - 1240px) / 2)); padding-top: var(--header-height); animation: heroReveal .85s .1s cubic-bezier(.2,.8,.2,1) both; }
.coaching-hero h1 { max-width: 690px; margin: 22px 0 24px; font-size: clamp(62px,6.7vw,104px); line-height: .84; letter-spacing: -.072em; text-transform: uppercase; }
.coaching-hero h1 em { color: var(--blue); font-style: normal; }
.coaching-hero-copy > p:not(.hero-brand) { max-width: 600px; color: rgba(255,255,255,.68); font-size: 17px; line-height: 1.65; }
.coaching-price { margin-top: 30px; display: flex; align-items: flex-end; gap: 18px; }
.coaching-price strong { font-size: 67px; line-height: .76; letter-spacing: -.07em; }
.coaching-price span { color: rgba(255,255,255,.53); font-size: 8px; font-weight: 900; letter-spacing: .13em; line-height: 1.65; }
.coaching-hero-actions { margin-top: 28px; display: flex; gap: 11px; }
.coaching-hero-copy > small { margin-top: 18px; display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.48); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.coaching-hero-copy > small i { width: 6px; height: 6px; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 5px rgba(59,167,255,.11); }
.coaching-principle { position: absolute; z-index: 2; right: 32px; bottom: 24px; color: rgba(255,255,255,.36); font-size: 8px; font-weight: 950; letter-spacing: .18em; }
.coaching-principle span { color: var(--blue); }

.coaching-intro { padding: 118px 0 140px; display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(70px,10vw,150px); }
.coaching-intro h2,.coaching-system h2,.everfit-detail h2,.coaching-process h2,.coaching-boundary h2,.coaching-offer h2 { margin: 20px 0 0; font-size: clamp(48px,5.5vw,78px); line-height: .95; letter-spacing: -.055em; text-transform: uppercase; }
.coaching-intro h2 span,.coaching-system h2 span,.everfit-detail h2 span,.coaching-process h2 span,.coaching-boundary h2 span,.coaching-offer h2 span { color: #188fe6; }
.coaching-intro-copy > p { margin: 0; max-width: 650px; color: var(--muted); font-size: 18px; line-height: 1.72; }
.coaching-intro-copy dl { margin: 42px 0 0; display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid var(--line-light); }
.coaching-intro-copy dl div { padding: 22px 20px 22px 0; border-bottom: 1px solid var(--line-light); }
.coaching-intro-copy dl div:nth-child(even) { padding-left: 20px; border-left: 1px solid var(--line-light); }
.coaching-intro-copy dt { font-size: 9px; font-weight: 950; letter-spacing: .1em; text-transform: uppercase; }
.coaching-intro-copy dd { margin: 9px 0 0; color: #68737f; font-size: 12px; }

.coaching-system { padding: 114px 0 135px; background: var(--navy-section); color: white; }
.coaching-system-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(70px,10vw,150px); align-items: start; }
.coaching-system header { position: sticky; top: 122px; }
.coaching-system header > p:last-child { max-width: 440px; color: rgba(255,255,255,.6); font-size: 16px; line-height: 1.65; }
.coaching-system-list { border-top: 1px solid var(--line-dark); }
.coaching-system-list article { min-height: 165px; display: grid; grid-template-columns: 58px 1fr; gap: 27px; padding: 31px 0; border-bottom: 1px solid var(--line-dark); }
.coaching-system-list article > span { width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(59,167,255,.45); border-radius: 50%; color: var(--blue); font-size: 10px; font-weight: 950; }
.coaching-system-list h3 { margin: 5px 0 0; font-size: clamp(23px,2.3vw,32px); letter-spacing: -.04em; }
.coaching-system-list p { max-width: 620px; margin: 13px 0 0; color: rgba(255,255,255,.57); font-size: 14px; line-height: 1.65; }

.everfit-detail { padding: 120px 0 145px; display: grid; grid-template-columns: minmax(500px,1.12fr) minmax(300px,.88fr); gap: clamp(75px,9vw,140px); align-items: center; }
.everfit-media { position: relative; min-height: 720px; }
.everfit-media figure { position: absolute; inset: 0 12% 10% 0; margin: 0; overflow: hidden; background: #0a121b; box-shadow: 0 40px 110px rgba(7,13,20,.24); }
.everfit-media figure::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(3,8,14,.95),transparent 60%); }
.everfit-media figure img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.78) contrast(1.04); transition: transform .75s cubic-bezier(.2,.8,.2,1); }
.everfit-media:hover figure img { transform: scale(1.025); }
.everfit-media figcaption { position: absolute; z-index: 2; inset: auto 32px 36px; color: white; }
.everfit-media figcaption small,.everfit-media figcaption strong { display: block; }
.everfit-media figcaption small { color: var(--blue); font-size: 8px; font-weight: 950; letter-spacing: .16em; }
.everfit-media figcaption strong { margin-top: 10px; font-size: clamp(31px,3.8vw,53px); line-height: .92; letter-spacing: -.05em; text-transform: uppercase; }
.everfit-workout { position: absolute; z-index: 3; right: 0; bottom: 0; width: min(410px,72%); padding: 25px; border: 1px solid #d7dfe6; background: #f8fafc; box-shadow: 0 28px 80px rgba(5,11,18,.25); }
.everfit-workout > small { color: #1688df; font-size: 7px; font-weight: 950; letter-spacing: .13em; }
.everfit-workout h3 { margin: 10px 0 0; font-size: 28px; }
.everfit-workout > p { margin: 6px 0 18px; color: #6c7783; font-size: 11px; }
.everfit-workout ol { margin: 0; padding: 0; list-style: none; }
.everfit-workout li { display: grid; grid-template-columns: 24px 1fr auto; gap: 9px; padding: 13px 0; border-top: 1px solid rgba(11,16,24,.12); }
.everfit-workout li b,.everfit-workout li strong { color: #1688df; font-size: 7px; }
.everfit-workout li span { font-size: 10px; font-weight: 900; }
.everfit-workout li em { display: block; margin-top: 4px; color: #7c8792; font-size: 7px; font-style: normal; font-weight: 500; }
.everfit-copy > p:not(.kicker) { color: var(--muted); font-size: 16px; line-height: 1.7; }
.everfit-copy ul { margin: 28px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line-light); }
.everfit-copy li { padding: 15px 0; border-bottom: 1px solid var(--line-light); color: #56616d; font-size: 12px; }
.everfit-copy li::before { content: '✓'; margin-right: 12px; color: #1688df; font-weight: 950; }
.everfit-copy > small { display: block; margin-top: 18px; color: #7d8792; font-size: 8px; line-height: 1.5; }

.coaching-process { padding: 116px 0 138px; background: #050a11; color: white; }
.coaching-process-grid { display: grid; grid-template-columns: minmax(300px,.72fr) minmax(0,1.28fr); gap: clamp(70px,10vw,150px); }
.coaching-process header { position: sticky; top: 122px; align-self: start; }
.coaching-process header > p:last-child { max-width: 440px; color: rgba(255,255,255,.58); font-size: 16px; line-height: 1.65; }
.coaching-process ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-dark); }
.coaching-process li { min-height: 165px; display: grid; grid-template-columns: 58px 1fr; gap: 27px; padding: 31px 0; border-bottom: 1px solid var(--line-dark); }
.coaching-process li > span { width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(59,167,255,.45); border-radius: 50%; color: var(--blue); font-size: 10px; font-weight: 950; }
.coaching-process li:last-child > span { background: var(--blue); color: #04111d; }
.coaching-process strong { display: block; margin-top: 5px; font-size: clamp(22px,2.2vw,31px); letter-spacing: -.035em; }
.coaching-process li p { max-width: 590px; margin: 13px 0 0; color: rgba(255,255,255,.57); font-size: 14px; line-height: 1.65; }

.coaching-boundary { padding: 118px 0 140px; display: grid; grid-template-columns: .76fr 1.24fr; gap: clamp(70px,9vw,135px); align-items: start; }
.coaching-boundary > div:first-child > p:last-child { max-width: 560px; color: var(--muted); font-size: 16px; line-height: 1.7; }
.boundary-details { display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid var(--line-light); }
.boundary-details article { min-height: 390px; padding: 32px 32px 32px 0; }
.boundary-details article + article { padding-left: 32px; border-left: 1px solid var(--line-light); }
.boundary-details article > small { color: #1688df; font-size: 8px; font-weight: 950; letter-spacing: .14em; }
.boundary-details h3 { margin: 24px 0 0; font-size: clamp(28px,3vw,43px); line-height: .96; letter-spacing: -.045em; }
.boundary-details ul { margin: 30px 0 0; padding: 0; list-style: none; border-top: 1px solid var(--line-light); }
.boundary-details li { padding: 14px 0; border-bottom: 1px solid var(--line-light); color: #5e6975; font-size: 11px; }
.boundary-details li::before { content: '✓'; margin-right: 10px; color: #1688df; font-weight: 950; }
.boundary-details > .button { grid-column: 1 / -1; width: 100%; }

.coaching-offer { padding: 110px 0 125px; background: var(--navy-section); color: white; }
.coaching-offer-grid { display: grid; grid-template-columns: 1fr .72fr; gap: 100px; align-items: end; }
.coaching-offer-grid > div:first-child > p:last-child { max-width: 620px; color: rgba(255,255,255,.6); font-size: 16px; line-height: 1.7; }
.coaching-offer-price { display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: end; }
.coaching-offer-price > strong { font-size: clamp(90px,10vw,140px); line-height: .72; letter-spacing: -.08em; }
.coaching-offer-price > span { color: rgba(255,255,255,.5); font-size: 8px; font-weight: 900; letter-spacing: .12em; line-height: 1.6; }
.coaching-offer-price .button,.coaching-offer-price small { grid-column: 1 / -1; }
.coaching-offer-price small { color: rgba(255,255,255,.46); font-size: 8px; text-align: center; }

@keyframes coachingImageIn { from { opacity: 0; transform: scale(1.035); } to { opacity: 1; transform: scale(1); } }

@media (max-width:960px) {
  .coaching-intro,.coaching-system-grid,.everfit-detail,.coaching-process-grid,.coaching-boundary,.coaching-offer-grid { grid-template-columns: 1fr; gap: 62px; }
  .coaching-system header,.coaching-process header { position: static; }
  .coaching-hero-copy { margin-left: 22px; }
}

@media (max-width:620px) {
  .coaching-hero { min-height: 980px; align-items: flex-end; padding-bottom: 60px; }
  .coaching-hero > figure img { object-position: 62% top; }
  .coaching-hero-overlay { background: linear-gradient(0deg,rgba(1,4,9,.98) 0%,rgba(1,4,9,.9) 52%,rgba(1,4,9,.12) 82%); }
  .coaching-hero-copy { width: calc(100vw - 42px); margin-left: 21px; padding-top: 440px; }
  .coaching-hero h1 { max-width: 360px; font-size: 49px; }
  .coaching-hero-copy > p:not(.hero-brand) { font-size: 14px; }
  .coaching-price strong { font-size: 57px; }
  .coaching-hero-actions { flex-direction: column; }
  .coaching-hero-actions .button { width: 100%; }
  .coaching-principle { display: none; }
  .coaching-intro,.everfit-detail,.coaching-boundary { padding: 78px 0 95px; }
  .coaching-system,.coaching-process,.coaching-offer { padding: 78px 0 95px; }
  .coaching-intro h2,.coaching-system h2,.everfit-detail h2,.coaching-process h2,.coaching-boundary h2,.coaching-offer h2 { font-size: 43px; }
  .coaching-intro-copy dl { grid-template-columns: 1fr; }
  .coaching-intro-copy dl div:nth-child(even) { padding-left: 0; border-left: 0; }
  .coaching-system-list article,.coaching-process li { min-height: 0; grid-template-columns: 50px 1fr; gap: 20px; }
  .coaching-system-list article > span,.coaching-process li > span { width: 50px; height: 50px; }
  .everfit-media { min-height: 610px; }
  .everfit-media figure { inset: 0 0 14% 0; }
  .everfit-media figcaption { inset: auto 22px 26px; }
  .everfit-workout { width: calc(100% - 22px); padding: 20px; }
  .boundary-details { grid-template-columns: 1fr; }
  .boundary-details article { min-height: 0; padding: 28px 0; }
  .boundary-details article + article { padding-left: 0; border-left: 0; border-top: 1px solid var(--line-light); }
  .coaching-offer-price { grid-template-columns: 1fr; }
  .coaching-offer-price > span { margin-top: -8px; }
}
