@font-face{font-family:Montserrat;src:url("../fonts/montserrat-variable.ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Montserrat;src:url("../fonts/montserrat-italic-variable.ttf") format("truetype");font-style:italic;font-weight:100 900;font-display:swap}
:root{--ink:#0d0d0d;--off:#f7f7f7;--gray:#555;--silver:#c0c1c3;--green:#387820;--container:1280px;--gutter:80px;--section:120px;--font-h2:40px;--font-h3:24px;--font-h4:20px;--font-eyebrow:20px;--card-p:24px;--ease:cubic-bezier(.19,1,.22,1);--z-nav-hidden:-1;--z-background:0;--z-content:1;--z-nav:1;--z-nav-control:2;--z-header:20;--z-home-header:39;--z-home-promo:40;--z-home-menu:50;--z-modal:60}
html.is-locked,html.is-locked body{overflow:hidden}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.button{align-self:flex-start;width:fit-content}
.brand--image img{width:149px;height:auto}
.socials a{border:0}.socials img{width:30px;height:30px}
.footer__links{grid-template-columns:1fr 1.35fr 1fr 1fr}.footer__links>div{padding-inline:24px;border-left:1px solid #333}.footer__links>div:first-child{padding-left:0;border-left:0}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--off);font-family:Montserrat,Arial,sans-serif;font-size:18px;font-weight:500;line-height:1.5}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(100% - (2 * var(--gutter)),var(--container));margin-inline:auto}.section{padding-block:var(--section)}h1,h2,h3,h4,p{margin-top:0}h2{font-size:var(--font-h2);line-height:1.3;margin-bottom:16px}h3{font-size:var(--font-h3);line-height:1.3}h4{font-size:var(--font-h4);line-height:1.5}.eyebrow{display:flex;gap:10px;align-items:center;text-transform:uppercase;font-size:var(--font-eyebrow);font-weight:700;margin-bottom:8px}.eyebrow::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--green);flex:none}.accent-rule{display:block;width:103px;height:3px;border-radius:2px;background:var(--green);margin:8px 0 24px}.button{display:inline-flex;align-items:center;gap:10px;background:var(--green);color:var(--off);padding:12px 10px 12px 16px;border:0;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.checks{list-style:none;padding:0;margin:0}.checks li{position:relative;padding-left:28px;margin:8px 0}.checks li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:700}.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}.promo{min-height:48px;padding:6px var(--gutter);display:flex;justify-content:center;align-items:center;gap:12px;background:var(--ink);font-size:14px}.promo a{background:var(--green);padding:6px 10px;border-radius:4px;font-size:16px}.site-header{position:absolute;z-index:var(--z-header);top:48px;left:0;right:0;min-height:68px;padding:8px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid rgb(255 255 255/.4);background:rgb(255 255 255/.1);backdrop-filter:blur(60px)}.brand{font-size:18px;font-weight:700}.brand span{font-family:Georgia,serif;font-size:28px;font-style:italic}.brand--image{width:149px;height:52px;overflow:hidden}.brand--image img{width:149px;height:52px}.site-header nav{display:flex;gap:32px;font-size:16px}.site-header nav a,.footer__links a{position:relative}.site-header nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:2px;background:var(--green);transition:right .35s var(--ease)}.site-header nav a:hover::after{right:0}.socials{display:flex;gap:8px}.socials a{display:grid;place-items:center;width:30px;height:30px;border:1px solid currentColor;border-radius:50%;font-size:14px}.nav-toggle{display:none;background:none;border:0;padding:8px}.nav-toggle span:not(.sr-only){display:block;width:25px;height:2px;background:currentColor;margin:5px}.reveal{opacity:0;transform:translateY(48px);transition:opacity 1s var(--ease),transform 1s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.reveal:nth-child(2){transition-delay:.1s}.reveal:nth-child(3){transition-delay:.2s}footer{background:#080808}.footer__statement{text-align:center;padding:76px var(--gutter) 36px;overflow:hidden}.footer__wordmark{font-size:9.2vw;font-weight:700;color:#171717;white-space:nowrap;line-height:1}.footer__statement h2{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:-80px}.footer__statement h2 i,.newsletter i{width:12px;height:12px;border-radius:50%;background:var(--green)}.footer__statement .accent-rule{margin:10px auto 24px;width:200px}.footer__statement p{max-width:844px;margin:0 auto 12px;color:var(--silver)}.footer__links{padding:72px 0;display:grid;grid-template-columns:1fr 1.35fr 1fr 1fr;gap:48px;border-top:1px solid #333}.footer__links div{display:flex;flex-direction:column;gap:8px}.footer__links h3{font-size:16px;margin:0 0 8px}
.footer__statement--layered{position:relative;min-height:301px;padding:39px var(--gutter);display:flex;align-items:center;justify-content:center}.footer__statement--layered .footer__wordmark{position:absolute;left:50%;top:50%;width:min(1056.75px,calc(100% - (2 * var(--gutter))));height:auto;max-width:none;transform:translate(-50%,-50%);pointer-events:none}.footer__statement-content{position:relative;width:min(100%,844px);display:flex;flex-direction:column;align-items:center;gap:24px}.footer__statement-heading{display:flex;flex-direction:column;align-items:center;gap:12px}.footer__statement--layered h2{margin:0;white-space:nowrap}.footer__statement--layered .accent-rule{margin:0}.footer__statement-copy{width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.footer__statement-copy p{margin:0;color:var(--silver)}.footer__statement-copy p:nth-child(2){max-width:648px}.footer__statement-copy .footer__thanks{color:var(--green);font-weight:700}
@media(max-width:480px){.footer__statement--layered h2{gap:8px;font-size:20px;white-space:nowrap}.footer__statement h2 i{width:8px;height:8px}.footer__statement--layered .accent-rule{width:120px}}
.nav-close{display:none}
@media(max-width:1200px) and (min-width:1101px){
  :root{--gutter:40px;--section:96px}
}
@media(max-width:1100px){
  :root{--gutter:40px;--section:88px;--font-h2:36px;--font-h3:22px;--font-eyebrow:16px}
  .site-header{padding-inline:var(--gutter)}
  .nav-open .site-header{backdrop-filter:none}
  .socials{display:none}
  .nav-toggle{display:block;min-width:44px;min-height:44px;cursor:pointer}
  .site-header nav{position:fixed;inset:0;height:100dvh;min-height:0;overflow-y:auto;overscroll-behavior:contain;z-index:var(--z-nav-hidden);padding:130px 32px 48px;background:var(--green);display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:18px;font-size:30px;opacity:0;transform:translateY(-100%);transition:transform .6s var(--ease),opacity .35s ease}
  .nav-open .site-header nav{z-index:var(--z-nav);opacity:1;transform:none}
  .nav-open .nav-toggle{position:relative;z-index:var(--z-nav-control);visibility:hidden}
  .nav-close{position:absolute;z-index:var(--z-nav-control);top:24px;right:24px;display:grid;place-items:center;min-width:50px;min-height:50px;aspect-ratio:1;padding:12px;border:1px solid rgb(247 247 247/.7);border-radius:50%;background:transparent;color:var(--off);cursor:pointer}
  .nav-close::before,.nav-close::after{content:"";grid-area:1/1;width:24px;height:2px;background:currentColor}
  .nav-close::before{transform:rotate(45deg)}
  .nav-close::after{transform:rotate(-45deg)}
  .footer__links{grid-template-columns:1fr 1fr}
  .footer__links .brand{grid-column:1/-1}
  .footer__statement h2{margin-top:-40px}
  .promo a,.site-header nav a,.footer__links a,.card a,.text-link{display:flex;align-items:center;min-height:44px}
}
@media(max-width:900px){
  :root{--gutter:20px;--section:64px;--font-h2:32px;--font-h3:22px;--font-h4:18px;--font-eyebrow:16px;--card-p:20px}
  body{font-size:16px}
  .promo span{display:none}
  .promo{justify-content:flex-end;padding-inline:var(--gutter)}
  .footer__statement h2{margin-top:-15px;font-size:26px}
  .footer__wordmark{font-size:12vw}
}
@media(max-width:480px){:root{--gutter:16px;--section:48px;--font-h2:26px;--font-h3:20px;--font-h4:18px;--font-eyebrow:14px;--card-p:16px}.eyebrow{gap:8px}.eyebrow::before{width:8px;height:8px}.accent-rule{width:64px;margin:6px 0 16px}.footer__links{grid-template-columns:1fr}.footer__links .brand{grid-column:auto}footer .footer__statement--layered h2{gap:8px;font-size:20px;white-space:nowrap}footer .footer__statement h2 i{width:8px;height:8px}footer .footer__statement--layered .accent-rule{width:120px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Shared Figma button/nav fidelity. */
.promo,
.promo__title,
.site-header nav,
.site-header nav a{
  font-weight:500;
}
.button__icon{
  display:grid;
  place-items:center;
  flex:none;
  width:28px;
  height:28px;
  border-radius:2px;
  background:var(--off);
}
.button__icon img,
.inline-link img{
  width:15px;
  height:10px;
  max-width:none;
  transform:scaleX(-1);
}
.inline-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:fit-content;
}
.button,
.promo a,
.clarity-popup__submit{
  transition:filter .24s ease,box-shadow .24s ease,transform .24s var(--ease);
}
.button__icon,
.inline-link img{
  transition:translate .24s var(--ease);
}
.site-header nav a,
.footer__links a,
.inline-link,
.text-link{
  transition:color .24s ease,opacity .24s ease;
}
.brand,
.socials a,
.nav-toggle,
.nav-close,
.clarity-popup__close{
  transition:opacity .24s ease,transform .24s var(--ease);
}
@media(hover:hover){
  .button:hover,
  .promo a:hover,
  .clarity-popup__submit:hover{
    filter:brightness(1.12);
    box-shadow:0 8px 18px rgb(56 120 32/.28);
    transform:translateY(-2px);
  }
  .button:hover .button__icon,
  .clarity-popup__submit:hover .button__icon,
  .inline-link:hover img{
    translate:3px 0;
  }
  .site-header nav a:hover,
  .footer__links a:hover,
  .inline-link:hover,
  .text-link:hover{
    color:var(--green);
  }
  .brand:hover,
  .socials a:hover,
  .nav-toggle:hover,
  .nav-close:hover,
  .clarity-popup__close:hover{
    opacity:.78;
    transform:translateY(-1px);
  }
}
.button:focus-visible,
.promo a:focus-visible,
.clarity-popup__submit:focus-visible{
  filter:brightness(1.12);
  box-shadow:0 8px 18px rgb(56 120 32/.28);
  transform:translateY(-2px);
}
.button:focus-visible .button__icon,
.clarity-popup__submit:focus-visible .button__icon,
.inline-link:focus-visible img{
  translate:3px 0;
}
.footer__links a:focus-visible,
.inline-link:focus-visible,
.text-link:focus-visible{
  color:var(--green);
}

/* Shared Figma header states: an 80px transparent hero navigation is replaced
   by the compact 68px fixed navigation after the first section. */
.site-header--hero{
  position:absolute;
  top:var(--promo-height,48px);
  left:0;
  right:0;
  min-height:80px;
  margin:0;
  padding:14px var(--gutter);
  z-index:var(--z-header);
  border-bottom-color:rgb(255 255 255/.4);
  background:rgb(255 255 255/.1);
  backdrop-filter:blur(60px);
  font-weight:500;
}
.site-header--sticky{
  position:fixed;
  top:0;
  left:0;
  right:0;
  min-height:68px;
  margin:0;
  padding:14px var(--gutter);
  z-index:var(--z-home-promo);
  border-bottom-color:var(--gray);
  background:var(--ink);
  backdrop-filter:blur(20px);
  font-weight:500;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .12s ease,visibility 0s linear .12s;
}
.has-sticky-navigation .site-header--sticky{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition-delay:0s;
}
.site-header--hero .brand--image,
.site-header--hero .brand--image img{width:148.828px;height:52px}
.site-header--sticky .brand--image,
.site-header--sticky .brand--image img{width:114.483px;height:40px}
.nav-toggle{color:var(--off)}
.nav-open .site-header.is-menu-open{
  top:0;
  z-index:var(--z-home-menu);
}
html{--promo-height:48px;--hero-header-height:80px;--header-height:68px;--sticky-offset:68px;scroll-padding-top:84px}
main section[id]{scroll-margin-top:84px}
@media(max-width:1100px){
  .nav-open .site-header:not(.is-menu-open) nav{
    z-index:var(--z-nav-hidden);
    opacity:0;
    transform:translateY(-100%);
    pointer-events:none;
  }
  .nav-open .site-header.is-menu-open nav{
    z-index:var(--z-nav);
    opacity:1;
    transform:none;
    pointer-events:auto;
  }
}

.button {
  align-self: flex-start;
  width: fit-content;
}

.brand--image img {
  width: 149px;
  height: auto;
}

.socials a {
  border: 0;
}

.socials img {
  width: 30px;
  height: 30px;
}

.footer__links {
  grid-template-columns: .8fr 1.5fr 1.2fr .8fr;
  gap: 24px;
  padding-block: 48px;
}

.footer__links > div {
  padding-inline: 24px;
  border-left: 1px solid #333;
}

.footer__links > div:first-child {
  padding-left: 0;
  border-left: 0;
}

.footer__links a,
.footer__links span {
  overflow-wrap: anywhere;
}

.copyright {
  margin: 0;
  padding: 14px var(--gutter);
  border-top: 1px solid #333;
  color: var(--silver);
  font-size: 14px;
  text-align: center;
}

@media (max-width: 1024px) {
  .footer__links {
    grid-template-columns: 1fr 1fr;
  }

  .footer__links > div:nth-child(odd) {
    padding-left: 0;
    border-left: 0;
  }
}

@media (max-width: 480px) {
  .footer__links {
    grid-template-columns: 1fr;
    gap: 0;
    padding-block: 32px;
  }

  .footer__links > div {
    padding-inline: 0;
    padding-block: 16px;
    border-left: 0;
    border-top: 1px solid #333;
  }

  .footer__links > div:first-child {
    border-top: 0;
  }
}

/* Keep user-entered or future CMS copy inside its responsive content box. */
body {
  overflow-wrap: anywhere;
}

@media (min-width: 901px) and (max-width: 1315px) {
  .book__grid {
    grid-template-columns: 45% 1fr;
  }

  .book__media {
    height: auto;
  }

  .book__media img {
    height: auto;
    transform: none;
  }

  .coaching__intro,
  .about__grid,
  .contact__grid {
    grid-template-columns: 1fr 1fr;
    gap: 48px;
  }

  .about__copy,
  .about__media,
  .book__copy,
  .book__media {
    min-width: 0;
  }
}

@media (max-width: 900px) {
  .book__grid,
  .coaching__intro,
  .about__grid,
  .contact__grid {
    grid-template-columns: 1fr;
  }
}


/* WordPress menu-list wrapper generated by wp_nav_menu(). */
.site-header .primary-menu{
  display:flex;
  align-items:center;
  gap:32px;
  margin:0;
  padding:0;
  list-style:none;
}
.site-header .primary-menu li{margin:0;padding:0}
@media(max-width:900px){
  .site-header .primary-menu{
    flex-direction:column;
    gap:18px;
  }
}


/* WordPress footer menu wrappers generated by wp_nav_menu(). */
.footer-menu,
.legal-menu{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.footer-menu li,
.legal-menu li{
  margin:0;
  padding:0;
}
.footer-menu a,
.legal-menu a{
  width:fit-content;
}


/* Contact Form 7 preserves the supplied form classes on its generated <form>. */
.contact__grid > .wpcf7,
.clarity-popup__panel > .wpcf7{
  display:contents;
}
.wpcf7 form .wpcf7-response-output{
  margin:16px 0 0;
}
