:root{--ink:#171614;--brown:#24170f;--paper:#fff;--cream:#f5f1eb;--gold:#b8843f;--muted:#6b665f;--serif:"Libre Caslon Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--wrap:min(1180px,calc(100% - 40px));}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);line-height:1.65;background:#fff}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h2{font-size:clamp(2rem,4vw,3.6rem);margin:0 0 40px;text-align:center}.wrap{width:var(--wrap);margin-inline:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;z-index:99;background:#fff;padding:12px}.site-header{height:78px;background:#111;color:#fff;position:relative;z-index:10;border-bottom:1px solid #333}.nav-wrap{height:100%;display:flex;align-items:center;gap:30px}.brand{text-decoration:none;font:600 16px var(--sans);letter-spacing:.09em;white-space:nowrap}.brand span{font:400 33px var(--serif);color:var(--gold);margin-right:5px}.site-header nav{margin-left:auto}.site-header ul{display:flex;list-style:none;gap:28px;padding:0;margin:0}.site-header nav a{text-decoration:none;font-size:14px}.site-header nav a:hover,.site-header nav a:focus{color:#e6b86e}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:#fff;text-transform:uppercase;text-decoration:none;font-weight:700;font-size:13px;letter-spacing:.04em;padding:15px 23px;border:1px solid var(--gold);transition:.2s}.button:hover,.button:focus{background:#9e6e31;border-color:#9e6e31}.button-outline{background:transparent;border-color:var(--gold)}.button-small{padding:11px 16px}.menu-toggle{display:none}.hero{min-height:670px;background:#111;color:#fff;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0;background:linear-gradient(90deg,#101010 0%,rgba(16,16,16,.96) 32%,rgba(16,16,16,.25) 65%),url('../images/hero.png') center 25%/cover no-repeat}.hero-inner{position:relative;display:flex;align-items:center;min-height:670px}.hero-copy{max-width:560px}.hero h1{font-size:clamp(3.8rem,7.3vw,6.8rem);margin:0 0 28px}.hero h1:after{content:"";display:block;width:58px;height:2px;background:var(--gold);margin-top:27px}.hero p{font-size:18px;max-width:520px;margin-bottom:32px}.actions{display:flex;gap:16px;flex-wrap:wrap}.help,.process,.testimonials,.faq{padding:88px 0}.help h2:after,.programs-band h2:after,.process h2:after,.testimonials h2:after,.faq h2:after{content:"";display:block;width:44px;height:2px;background:var(--gold);margin:16px auto}.help-grid{display:grid;grid-template-columns:repeat(5,1fr)}.help-grid>div{padding:5px 24px;text-align:center;border-right:1px solid #ddc9ab}.help-grid>div:last-child{border:0}.help-grid h3{font-size:21px}.help-grid p{font-size:14px;color:var(--muted)}.line-icon{display:block;color:var(--gold);font-size:38px}.programs-band{background:var(--ink);color:#fff;padding:90px 0}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.program-grid article{border-left:1px solid var(--gold);padding-left:24px}.program-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.8)}.program-grid h3{font-size:25px;margin-bottom:8px}.program-grid p{color:#d4d1cc}.program-grid a{color:#e4b264;font-weight:700;text-decoration:none}.process ol{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0}.process li{position:relative;text-align:center;padding:20px 22px}.process li:not(:last-child):after{content:"";position:absolute;top:38px;right:-12%;width:24%;border-top:1px dashed var(--gold)}.process b{display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;color:var(--gold)}.process h3{font-size:22px}.coach{background:#111;color:#fff}.coach-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:70px}.coach img{height:560px;width:100%;object-fit:cover;object-position:center}.coach h2{text-align:left;margin-bottom:25px}.coach p{color:#d8d5d0;font-size:17px}.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.quote-grid blockquote{margin:0;padding:28px 34px;border-right:1px solid #ddc9ab;font:400 20px/1.6 var(--serif)}.quote-grid blockquote:last-child{border:0}.quote-grid cite{display:block;font:14px var(--sans);margin-top:20px}.disclaimer{font-size:12px;color:var(--muted);text-align:center}.faq{background:var(--ink);color:#fff}.faq .wrap{max-width:900px}.faq details{border-top:1px solid #555;padding:18px 0}.faq details:last-child{border-bottom:1px solid #555}.faq summary{cursor:pointer;font-weight:600}.faq p{color:#ccc}.final-cta{background:var(--brown);color:#fff;padding:75px 0;text-align:center}.final-cta h2{margin-bottom:15px}.site-footer{background:#0d0d0d;color:#bbb;padding:58px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.site-footer h2{text-align:left;font:700 14px var(--sans);text-transform:uppercase;color:#fff;margin:10px 0}.site-footer ul{list-style:none;padding:0}.site-footer a{text-decoration:none}.copyright{border-top:1px solid #333;margin-top:35px;padding-top:20px;font-size:13px}.page-hero{background:var(--brown);color:#fff;padding:105px 0}.page-hero h1{font-size:clamp(3rem,7vw,6rem);margin:0}.page-content,.prose{max-width:850px;padding-block:70px}.prose h2{text-align:left;font-size:2.4rem;margin-top:55px;margin-bottom:20px}.prose h3{font-size:1.6rem;margin-top:34px}.prose .wp-block-button__link{background:var(--gold);border-radius:0}.jbp-booking{display:grid;gap:18px;background:var(--cream);padding:32px}.jbp-booking label{font-weight:600}.jbp-booking input,.jbp-booking select,.jbp-booking textarea{width:100%;padding:13px;border:1px solid #aaa;background:#fff;font:inherit}.jbp-booking button{cursor:pointer}.notice{padding:14px;border-left:4px solid var(--gold);background:#f5f1eb}
@media(max-width:900px){.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#111;padding:20px}.site-header nav.open{display:block}.site-header ul{flex-direction:column}.menu-toggle{display:block;margin-left:auto;background:transparent;border:1px solid #777;color:#fff;padding:8px 12px}.nav-cta{display:none}.hero,.hero-inner{min-height:610px}.hero-media{opacity:.58;background-position:60% center}.help-grid{grid-template-columns:1fr 1fr}.help-grid>div{border-bottom:1px solid #ddc9ab}.program-grid{grid-template-columns:1fr}.process ol{grid-template-columns:1fr 1fr}.process li:after{display:none}.coach-grid{grid-template-columns:1fr;gap:0}.coach img{height:420px}.coach-grid>div{padding:55px 0}.quote-grid{grid-template-columns:1fr}.quote-grid blockquote{border-right:0;border-bottom:1px solid #ddc9ab}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:560px){:root{--wrap:min(100% - 28px,1180px)}.site-header{height:68px}.site-header nav{top:68px}.brand span{font-size:27px}.hero h1{font-size:3.35rem}.hero p{font-size:16px}.button{width:100%}.help,.process,.testimonials,.faq{padding:65px 0}.help-grid,.process ol,.footer-grid{grid-template-columns:1fr}.help-grid>div{border-right:0;padding:22px 10px}.programs-band{padding:65px 0}.coach img{height:340px}.page-hero{padding:75px 0}.page-content{padding-block:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* Blog and Resources centered section titles */
body .jbp-blog-hero > h2,
body .jbp-blog-heading > h2 {
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center !important;
}


/* Booking page centered section titles */
body .jbp-booking-hero > h2,
body .jbp-booking-heading > h2,
body .jbp-booking-seo-intro > h2,
body .jbp-booking-faq > h2 {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center !important;
}


/* Lighthouse accessibility fixes */
.button:not(.button-outline),
.nav-cta {
  color: #171614 !important;
}
.process b {
  color: #76501f !important;
  border-color: #76501f !important;
}
.process li {
  color: #312820;
}
a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 3px solid #efb77d;
  outline-offset: 3px;
}
