:root{--ink:#102b28;--green:#c3ed78;--paper:#fff;--muted:#53625e;--line:#d6dfdb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #488de0;outline-offset:6px}input:focus,select:focus,textarea:focus{outline:3px solid var(--green);outline-offset:2px}.wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}.header{position:sticky;top:0;z-index:20;min-height:90px;display:flex;align-items:center;justify-content:space-between;padding:16px 40px;background:#fff;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.brand-mark{font-size:38px;font-weight:900;letter-spacing:-4px;line-height:1}.brand-mark span{color:#397868}.brand-name{font-size:12px;font-weight:800;letter-spacing:1.1px;line-height:1.4;border-left:1px solid var(--line);padding-left:14px}nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:700}nav>a:hover,.dark-link:hover{color:#33705e}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--green);color:var(--ink);padding:16px 23px;border:1px solid transparent;font-weight:700;font-size:16px;cursor:pointer;line-height:1.4;transition:background .2s}.button:hover{background:#d6ffa0}.button-small{padding:12px 22px;background:var(--ink);color:white;font-size:14px}.button-small:hover{background:#265447}.menu-toggle{background:none;border:1px solid var(--line);padding:8px 12px;color:var(--ink)}.hero{position:relative;isolation:isolate;color:white;background:#142a27;min-height:690px;display:flex;flex-direction:column;justify-content:center}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,23,20,.94),rgba(7,23,20,.67) 40%,rgba(7,23,20,.05) 80%);z-index:-1}.hero-content{padding-block:85px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:0 0 25px}.hero .eyebrow,.contact .eyebrow{color:var(--green)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(64px,7.8vw,112px);line-height:.97;letter-spacing:-5px;margin-bottom:28px;font-weight:800}em{font-style:normal;color:#387662}h1 em,.contact h2 em{color:var(--green)}.hero-intro{font-size:18px;line-height:1.65;max-width:480px;color:#eef3ef;margin-bottom:30px}.actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap}.text-link{font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:6px}.text-link:hover{opacity:.8}.hero-note{font-size:13px;margin:24px 0 0;color:#dbe4dd}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff45;padding-block:18px;font-size:12px;letter-spacing:.6px}.credentials{background:var(--ink);color:white}.stats{display:grid;grid-template-columns:repeat(4,1fr);padding-block:30px;gap:25px}.stats div+div{border-left:1px solid #ffffff30;padding-left:30px}.stats strong{display:block;font-size:27px;letter-spacing:-.6px;line-height:1.2}.stats span{font-size:13px;color:#c9d5ce;display:block;margin-top:9px}.section{padding-block:100px}h2{font-size:clamp(38px,4.5vw,62px);letter-spacing:-2.3px;line-height:1.08;margin-bottom:26px}.about{display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.intro{font-size:21px;line-height:1.6}.about-copy>p:not(.intro),.group p:not(.eyebrow):not(.intro){color:var(--muted)}.signature{margin-top:30px;border-top:1px solid var(--line);padding-top:22px;font-size:22px;font-weight:700}.signature span{display:block;font-size:13px;font-weight:400;color:var(--muted)}.coaching{background:#f1f5f2}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:38px}.section-heading>p{max-width:370px;color:var(--muted)}.plans{display:grid;grid-template-columns:1fr 1fr;gap:24px}.plan{padding:40px;background:white;border:1px solid var(--line)}.plan h3{font-size:32px;letter-spacing:-1px;margin-bottom:10px;line-height:1.2}.plan>p:not(.eyebrow):not(.price){max-width:400px}.price{font-size:54px;font-weight:700;letter-spacing:-2px;margin:25px 0}.price span{font-size:14px;letter-spacing:0;font-weight:400}.plan .button{display:flex;width:100%;text-align:left}.button-outline{border-color:var(--ink);background:transparent}.button-outline:hover{background:#eef5e9}.plan ul{list-style:none;padding:0;margin:28px 0 0}.plan li{padding:10px 0 10px 26px;position:relative;border-top:1px solid var(--line);font-size:15px}.plan li:before{content:"✓";position:absolute;left:0;color:#367052;font-weight:bold}.plan-featured{border-top:4px solid var(--ink);padding-top:37px}.includes{font-weight:bold;margin:25px 0 0;font-size:15px}.plan-featured ul{margin-top:12px}.plan-note{font-size:14px;color:var(--muted);margin-top:25px}.group{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.session-list article{display:flex;gap:25px;border-top:1px solid var(--line);padding:28px 0}.session-day{font-size:14px;font-weight:700;background:#eef4ef;padding:12px;align-self:flex-start;min-width:65px;text-align:center}.session-list h3{font-size:24px;margin:0 0 4px;line-height:1.3}.session-list p{margin-bottom:4px;font-size:15px}.session-list .session-note{font-size:13px;border-top:1px solid var(--line);padding-top:20px}.contact{background:var(--ink);color:white}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact .intro{font-size:18px;color:#d7e3dc;max-width:430px}.contact .text-link{display:inline-block;margin-top:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:14px;margin-bottom:7px;font-weight:700}label span{font-weight:400;color:#d3ded7}input,select,textarea{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #688078;border-radius:0;background:#ffffff08;color:white;padding:12px;margin-bottom:20px}select option{background:var(--ink);color:white}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#b8ccc1;opacity:1}.privacy-note{font-size:12px;color:#c5d4ca;line-height:1.6}form .button{width:100%}form button:disabled{opacity:.65;cursor:wait}#form-status{margin:15px 0 0;font-size:14px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:35px}footer p,footer>a:last-child{font-size:12px;margin:0}.skip-link{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}@media(min-width:801px){.menu-toggle{display:none}}@media(max-width:1000px){nav{gap:18px}.wrap{width:calc(100% - 48px)}.header{padding-inline:24px}.about,.group,.contact-grid{gap:40px}.plan{padding:28px}.plan-featured{padding-top:25px}}@media(max-width:800px){.header{flex-wrap:wrap;min-height:78px}.brand-name{font-size:10px}.brand-mark{font-size:33px}.menu-toggle:not([hidden]){display:block}nav{width:100%;flex-wrap:wrap;padding-top:10px;gap:18px}.js nav:not(.is-open){display:none}.hero{min-height:650px}.hero-image{object-position:65% center}.hero:after{background:linear-gradient(90deg,rgba(7,23,20,.92),rgba(7,23,20,.58))}.hero-content{padding-block:70px}h1{letter-spacing:-3px}.hero-bottom{gap:20px}.hero-bottom span:last-child{display:none}.stats{grid-template-columns:1fr 1fr;gap:25px}.stats div+div{padding-left:0;border-left:0}.stats strong{font-size:25px}.section{padding-block:65px}.about,.group,.contact-grid,.plans{grid-template-columns:1fr;gap:30px}.section-heading{display:block}.section-heading>p{max-width:100%}.about h2 br{display:none}.plan{padding:30px}.plan-featured{padding-top:27px}footer{flex-wrap:wrap}footer p{order:3;flex-basis:100%}}@media(max-width:420px){.wrap{width:calc(100% - 36px)}.header{padding-inline:18px}.hero-intro{font-size:16px}.hero .eyebrow{font-size:11px;letter-spacing:1.1px}.actions{gap:23px}.form-row{grid-template-columns:1fr;gap:0}.plan{padding-inline:22px}.button{gap:15px;font-size:15px}.session-list article{gap:15px}h2{letter-spacing:-1.4px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand-logo{display:block;width:240px;height:62px;object-fit:contain}@media(max-width:420px){.brand-logo{width:205px;height:54px}}

/* Coach introduction portrait */
.about-with-photo{align-items:center;gap:clamp(32px,6vw,90px)}
.coach-photo{margin:0;width:100%;max-width:300px;justify-self:center}
.coach-photo img{display:block;width:100%;height:auto}
@media(max-width:800px){.about-with-photo{gap:32px}.coach-photo{max-width:240px}.about-with-photo h2 br{display:initial}}

/* Match the desktop portrait to the full introduction height. */
@media(min-width:801px){
  .about-with-photo{align-items:stretch}
  .about-with-photo .coach-photo{position:relative;max-width:none;min-height:0;align-self:stretch}
  .about-with-photo .coach-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
}

/* Corporate coaching */
.corporate{background:#f1f5f2}
.corporate-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.corporate-options article{border-top:2px solid var(--ink);padding-top:24px}
.corporate-options .eyebrow{margin-bottom:16px;font-size:11px}
.corporate h3{font-size:24px;line-height:1.25;letter-spacing:-.5px;margin-bottom:14px}
.corporate-options p:not(.eyebrow),.corporate-enquiry p{color:var(--muted)}
.corporate-enquiry{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid var(--line);margin-top:40px;padding-top:32px}
.corporate-enquiry>div{max-width:640px}
.corporate-enquiry p{margin:0}
.corporate-enquiry .button{flex-shrink:0}
@media(min-width:801px) and (max-width:1100px){.header{gap:16px}.header .brand-logo{width:180px}nav{gap:16px;font-size:13px}.corporate-enquiry{align-items:flex-start;flex-direction:column}}
@media(max-width:800px){.corporate-options{grid-template-columns:1fr;gap:24px}.corporate-enquiry{align-items:flex-start;flex-direction:column}.corporate-enquiry .button{max-width:100%}}
