:root{--ink:#1d2225;--paper:#f4f2ef;--white:#fff;--line:#c9c5bf;--accent:#d8b77a;--max:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:var(--paper);font-size:17px;line-height:1.65}
h1,h2,h3,.brand,summary{font-family:Georgia,'Times New Roman',serif}
h1{font-size:clamp(3.4rem,9vw,7.5rem);line-height:.94;margin:.2em 0}
h2{font-size:clamp(2.4rem,5vw,4.7rem);line-height:1.05;margin:.15em 0 .45em}
h3{font-size:1.55rem;line-height:1.2}
.nav{height:82px;position:sticky;top:0;z-index:20;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:rgba(10,12,13,.94);color:white;backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-size:1.25rem}
.mark{border:1px solid white;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font:700 12px Arial}
.nav nav{display:flex;gap:28px}
.nav nav a,footer a{color:inherit;text-decoration:none}
.menu{display:none;background:none;border:0;color:white;font-size:1.8rem}
.hero{min-height:calc(100svh - 82px);position:relative;display:grid;place-items:center;overflow:hidden;background:#080909;color:white}
.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:grayscale(1);opacity:.62}
.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.18) 70%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 60%)}
.hero-copy{position:relative;width:min(var(--max),calc(100% - 48px));padding:80px 0;max-width:1180px}
.hero-copy>p:not(.eyebrow){font-family:Georgia,serif;font-size:clamp(1.2rem,2.6vw,2rem);max-width:680px}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.8rem;font-weight:bold;color:var(--accent)}
.eyebrow.dark{color:#765728}
.button,.choose{display:inline-block;border:1px solid currentColor;padding:15px 25px;margin-top:18px;text-decoration:none;font-weight:700;cursor:pointer;background:transparent;color:inherit;font-size:1rem}
.button.light:hover{background:white;color:#111}
.intro{text-align:center;padding:clamp(70px,10vw,130px) 24px;max-width:900px;margin:auto}
.intro>p:first-child{letter-spacing:.14em;text-transform:uppercase;font-size:.8rem;font-weight:bold}
.intro>p:last-child{font-family:Georgia,serif;font-size:1.25rem}
.section{padding:clamp(70px,9vw,120px) max(24px,calc((100vw - var(--max))/2))}
.pale{background:#fff}
.heading{max-width:760px;margin-bottom:48px}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.card{display:grid;grid-template-columns:44% 1fr;background:var(--ink);color:white;min-height:420px}
.card img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.card>div{padding:38px;display:flex;flex-direction:column;align-items:flex-start}
.card span{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.card strong{font-size:1.3rem;margin-top:auto}
.choose{border-color:#777;margin-top:14px}
.choose:hover{border-color:white}
.text-card{grid-template-columns:1fr;background:#e9e6e1;color:var(--ink);min-height:280px}
.text-card .choose{border-color:#777}
.coach{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,90px);align-items:center}
.coach img{width:100%;height:clamp(520px,58vw,760px);object-fit:cover;object-position:center top;filter:none}
.coach h3{font-family:Arial,sans-serif;font-size:1.15rem;font-style:italic;font-weight:400}
.accordions{max-width:900px}
.accordions details{border-top:1px solid #777;padding:22px 0}
.accordions details:last-child{border-bottom:1px solid #777}
.accordions summary{font-size:1.55rem;cursor:pointer;padding-right:30px}
.prices{columns:2}
.form-section{background:#1d2225;color:white}
.form-section form{max-width:920px}
.form-section label{display:block;font-weight:700;margin:20px 0}
.form-section input,.form-section select,.form-section textarea{width:100%;margin-top:8px;padding:15px;border:1px solid #64696b;background:#292e31;color:white;font:inherit;border-radius:0}
.two,.three{display:grid;gap:18px}
.two{grid-template-columns:1fr 1fr}
.three{grid-template-columns:repeat(3,1fr)}
.consent{display:flex!important;align-items:flex-start;gap:12px;font-weight:400!important;font-size:.9rem}
.consent input{width:auto!important;margin-top:6px!important}
.submit{background:var(--accent);color:#151515;border:0}
.note{font-size:.9rem;color:#bbc0c2}
footer{padding:32px max(24px,calc((100vw - var(--max))/2));display:flex;justify-content:space-between;background:#0b0d0e;color:white;font-size:.9rem}
footer div{display:flex;gap:20px}
@media(max-width:800px){body{font-size:16px}
.nav{height:68px}
.menu{display:block}
.nav nav{display:none;position:absolute;left:0;right:0;top:68px;padding:24px;background:#111;flex-direction:column}
.nav nav.open{display:flex}
.hero{min-height:780px}
.hero>img{object-position:center top}
.cards,.coach{grid-template-columns:1fr}
.card{grid-template-columns:38% 1fr;min-height:330px}
.card>div{padding:24px}
.text-card{grid-template-columns:1fr}
.coach img{height:min(125vw,680px);min-height:480px}
.two,.three{grid-template-columns:1fr}
.prices{columns:1}
footer{gap:20px;flex-direction:column}
}
@media(max-width:480px){.card{grid-template-columns:1fr}
.card img{height:380px}
.hero-copy{width:calc(100% - 36px)}
h1{font-size:3.7rem}
}
