:root{--ink:#12261f;--paper:#f8f6f0;--cream:#eeeadf;--lime:#c7e85c;--coral:#f39b78;--muted:#66746e;--line:rgba(18,38,31,.18);--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}img{display:block;max-width:100%}a{color:inherit;text-underline-offset:.18em}.skip-link{position:absolute;left:1rem;top:-4rem;background:var(--lime);padding:.6rem 1rem;z-index:20}.skip-link:focus{top:1rem}.site-header{min-height:84px;padding:0 clamp(1.25rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;gap:2rem;background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{font-size:1.1rem;font-weight:800;text-decoration:none;letter-spacing:-.03em;line-height:1.05}.brand span{display:block;font-weight:450}.site-nav{display:flex;align-items:center;gap:clamp(.8rem,2vw,1.8rem);font-size:.86rem;font-weight:650}.site-nav>a:not(.button){text-decoration:none}.site-nav>a:not(.button):hover,.site-nav>a:not(.button):focus-visible{color:#4a6948}.menu-button{display:none;background:none;border:1px solid var(--ink);padding:.5rem .7rem;font:inherit;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:.72rem 1.1rem;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-weight:750;text-decoration:none;transition:transform .2s,background .2s}.button:hover,.button:focus-visible{background:#244a3c;transform:translateY(-2px)}.button-light{border-color:var(--lime);background:var(--lime);color:var(--ink)}.button-light:hover,.button-light:focus-visible{background:#dcf28c}.button-small{min-height:38px;padding:.45rem .75rem;font-size:.8rem}.section{padding:clamp(4.5rem,9vw,9rem) clamp(1.25rem,8vw,11rem)}.section-dark{background:var(--ink);color:var(--paper)}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:800;margin:0 0 1.25rem;color:#677e72}.section-dark .eyebrow{color:var(--lime)}h1,h2,h3{line-height:.98;letter-spacing:-.055em;margin:0;font-weight:800}h1,h2{font-size:clamp(2.65rem,6vw,6.15rem)}h2{font-size:clamp(2.15rem,4.1vw,4.6rem)}h3{font-size:clamp(1.45rem,2.2vw,2.45rem)}p{margin:0 0 1.25rem}.hero{padding:clamp(3rem,7vw,8rem) clamp(1.25rem,8vw,11rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.84fr);gap:clamp(2rem,7vw,8rem);align-items:end;min-height:680px}.hero-copy{position:relative;z-index:1}.hero h1{max-width:9ch}.hero-lede{font-size:clamp(1.1rem,1.6vw,1.45rem);max-width:34rem;margin:2rem 0}.hero-image{align-self:stretch;object-fit:cover;min-height:420px;max-height:650px;border-radius:0 5rem 0 0}.split{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.1fr);gap:clamp(2rem,8vw,9rem);align-items:start}.split>img{width:100%;aspect-ratio:1.1;object-fit:cover}.intro>img{aspect-ratio:1.1;object-position:center}.split>div{max-width:52rem}.split p{font-size:1.05rem}.text-link{font-weight:800;text-decoration:none;border-bottom:2px solid var(--lime);padding-bottom:.25rem}.quote{margin:0;padding:clamp(3.5rem,8vw,8rem) clamp(1.25rem,14vw,16rem);font:clamp(1.65rem,3.1vw,3.5rem)/1.12 var(--serif);text-align:center}.quote-light{background:var(--coral);color:var(--ink)}.section-heading{max-width:55rem;margin-bottom:3rem}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:7rem minmax(10rem,1fr) minmax(13rem,1.2fr) minmax(14rem,1.5fr);gap:1.5rem;padding:2.25rem 0;border-bottom:1px solid var(--line)}.service-list article>span{font-weight:800;color:#6e8879}.service-list p{font-size:.95rem}.service-list .service-tagline{font-weight:750;font-size:1.1rem}.service-list .text-link{align-self:start;width:max-content}.contact-section{display:grid;grid-template-columns:1fr minmax(280px,.8fr);gap:clamp(2rem,8vw,8rem)}.contact-section>div{max-width:43rem}.contact-form{display:grid;gap:1rem}.contact-form label{font-size:.84rem;font-weight:800}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:.35rem;padding:.8rem;border:1px solid rgba(248,246,240,.55);background:transparent;color:var(--paper);font:inherit}.contact-form textarea{resize:vertical}.contact-form .button{justify-self:start}.bio>img{border-radius:50%}.media{background:var(--cream)}.media-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.media-grid a{background:var(--paper);text-decoration:none;font-weight:800}.media-grid img{width:100%;aspect-ratio:1.4;object-fit:cover}.media-grid span{display:flex;justify-content:space-between;gap:1rem;padding:1.2rem}.media-grid b{color:#4d7b4d}.insights{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:center}.gallery{display:grid;grid-template-columns:1.05fr .95fr;gap:1rem}.gallery img{width:100%;height:300px;object-fit:cover}.gallery img:last-child{object-position:center 30%}footer{padding:2.8rem clamp(1.25rem,5vw,5rem);display:flex;justify-content:space-between;align-items:end;gap:2rem;background:var(--ink);color:var(--paper);border-top:1px solid rgba(248,246,240,.22)}footer p{font-size:.8rem;margin:0;color:#cbd5cd}.page-hero{position:relative;min-height:620px;color:var(--paper);display:grid;place-items:end start;padding:clamp(3rem,7vw,8rem) clamp(1.25rem,8vw,11rem);overflow:hidden}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,28,22,.88),rgba(10,28,22,.35))}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero>div{position:relative;z-index:1;max-width:800px}.page-hero h1{margin-bottom:1.5rem}.page-hero p:not(.eyebrow){font-size:1.15rem;max-width:44rem;margin-bottom:2rem}.training-intro{max-width:900px;margin:auto;text-align:center}.training-intro>p:last-child{font-size:1.15rem;margin-top:2rem}.formats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;padding:0;background:var(--line)}.formats article{padding:clamp(2.5rem,5vw,5rem);background:var(--paper)}.formats span{color:#63874d;font-weight:850}.formats h3{margin:2rem 0 1.2rem}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.two-column ul{list-style:none;padding:0;margin:2rem 0 0}.two-column li{padding:1rem 0;border-top:1px solid rgba(248,246,240,.25);font-size:1.15rem}.faq{max-width:1000px;margin:auto}.faq h2{margin-bottom:3rem}.faq details{border-top:1px solid var(--line);padding:1.35rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:800;font-size:1.2rem;list-style-position:outside}.faq summary::marker{color:#598144}.faq details p{max-width:700px;margin:1rem 0 0}.cta{text-align:center}.cta h2{max-width:800px;margin:0 auto 2rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:900px){.site-header{min-height:72px}.menu-button{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:1rem 1.25rem 1.5rem;background:var(--paper);border-bottom:1px solid var(--line);align-items:stretch;gap:1rem}.site-nav.is-open{display:flex;flex-direction:column}.site-nav .button{width:max-content}.hero{grid-template-columns:1fr;min-height:auto}.hero-image{max-height:450px;min-height:300px}.service-list article{grid-template-columns:4rem 1fr;gap:.7rem 1.5rem}.service-list article>p,.service-list article>a{grid-column:2}.contact-section,.insights{grid-template-columns:1fr}.split{gap:2.5rem}.media-grid{grid-template-columns:1fr}.two-column{gap:2.5rem}}@media(max-width:650px){h1{font-size:clamp(2.6rem,13vw,4rem)}.section{padding:4.25rem 1.25rem}.split{grid-template-columns:1fr}.split>img{max-width:440px}.quote{padding:4rem 1.25rem}.service-list article{display:block;padding:2rem 0}.service-list article>span{display:block;margin-bottom:1.2rem}.formats{grid-template-columns:1fr}.two-column{grid-template-columns:1fr}.two-column li{font-size:1rem}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:220px}footer{align-items:start;flex-direction:column}.page-hero{min-height:560px;padding:3rem 1.25rem}.page-hero h1{font-size:clamp(2.5rem,12vw,3.6rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
