/* ═══════════════════════════════════════════════
   DESIGN TOKENS
═══════════════════════════════════════════════ */
:root {
  --forest:     #3B5143;
  --forest-mid: #4E6B59;
  --forest-pale:#E8EFE9;
  --sage:       #7A9882;
  --earth:      #7C5C3E;
  --earth-pale: #F2EAE1;
  --cream:      #F7F4EE;
  --paper:      #FAFAF7;
  --ink:        #1E1E1A;
  --ink-soft:   #3D3D38;
  --ink-muted:  #72726C;
  --stone:      #9B9790;
  --rule:       rgba(30,30,26,0.09);
  --rule-soft:  rgba(30,30,26,0.05);
  --radius:     3px;
}

/* ═══════════════════════════════════════════════
   RESET & BASE
═══════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Instrument Sans',sans-serif;
  background:var(--paper);
  color:var(--ink);
  font-size:16px;
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

/* ═══════════════════════════════════════════════
   ANIMATIONS
═══════════════════════════════════════════════ */
@keyframes fadeUp{
  from{opacity:0;transform:translateY(22px);}
  to{opacity:1;transform:translateY(0);}
}
@keyframes fadeIn{
  from{opacity:0;}to{opacity:1;}
}
.anim{opacity:0;animation:fadeUp 0.75s ease forwards;}
.d1{animation-delay:0.08s;}
.d2{animation-delay:0.2s;}
.d3{animation-delay:0.34s;}
.d4{animation-delay:0.48s;}
.d5{animation-delay:0.62s;}
.d6{animation-delay:0.76s;}

/* ═══════════════════════════════════════════════
   PAGE SYSTEM — only active page shown
═══════════════════════════════════════════════ */
.page{display:none;}
.page.active{display:block;}

/* ═══════════════════════════════════════════════
   NAV
═══════════════════════════════════════════════ */
nav{
  position:sticky;top:0;z-index:200;
  background:var(--paper);
  border-bottom:1px solid var(--rule);
  display:flex;justify-content:space-between;align-items:center;
  padding:1.1rem 3rem;
}
.nav-logo{
  display:flex;align-items:center;gap:0.75rem;cursor:pointer;
}
.nav-logo-mark{
  width:34px;height:34px;
  background:var(--forest);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.nav-logo-mark svg{width:18px;height:18px;fill:none;stroke:rgba(255,255,255,0.85);stroke-width:1.5;}
.nav-logo-text{
  display:flex;flex-direction:column;gap:1px;
}
.nav-logo-name{
  font-family:'Cormorant',serif;
  font-size:16px;font-weight:500;letter-spacing:0.03em;
  color:var(--ink);line-height:1;
}
.nav-logo-tag{
  font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--forest-mid);font-weight:400;
}
.nav-links{
  display:flex;gap:0;list-style:none;
}
.nav-links li a{
  display:block;
  padding:0.5rem 1rem;
  font-size:12px;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--ink-muted);font-weight:400;
  transition:color 0.2s;
  border-radius:var(--radius);
}
.nav-links li a:hover,.nav-links li a.active{color:var(--forest);}
.nav-links li a.active{font-weight:500;}
.nav-contact-btn{
  font-size:11px;letter-spacing:0.12em;text-transform:uppercase;
  background:var(--forest);color:white;
  padding:0.6rem 1.5rem;border-radius:var(--radius);
  border:1px solid var(--forest);
  transition:background 0.2s;cursor:pointer;
}
.nav-contact-btn:hover{background:var(--forest-mid);}

/* Mobile nav hamburger (hidden on desktop) */
.nav-hamburger{
  display:none;
  flex-direction:column;gap:5px;cursor:pointer;
  padding:4px;background:none;border:none;
}
.nav-hamburger span{
  display:block;width:22px;height:2px;
  background:var(--ink);border-radius:2px;
  transition:all 0.2s;
}
.nav-mobile-open .nav-hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.nav-mobile-open .nav-hamburger span:nth-child(2){opacity:0;}
.nav-mobile-open .nav-hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ═══════════════════════════════════════════════
   SHARED UTILITIES
═══════════════════════════════════════════════ */
.wrap{max-width:1160px;margin:0 auto;padding:0 3rem;}
.kicker{
  font-size:10.5px;letter-spacing:0.22em;text-transform:uppercase;
  color:var(--forest-mid);font-weight:400;margin-bottom:0.9rem;
}
.kicker.earth{color:var(--earth);}
h1,h2,h3,h4{font-family:'Cormorant',serif;font-weight:400;line-height:1.2;}
h1{font-size:clamp(2.8rem,5vw,4.4rem);letter-spacing:-0.015em;}
h2{font-size:clamp(2rem,3.5vw,2.8rem);letter-spacing:-0.01em;}
h3{font-size:1.5rem;}
h4{font-size:1.2rem;}
em{font-style:italic;color:var(--forest-mid);}
em.earth{color:var(--earth);}

.serif-body{
  font-family:'Cormorant',serif;font-size:1.1rem;font-weight:300;
  color:var(--ink-soft);line-height:1.85;
}
.body-copy{
  font-size:15px;color:var(--ink-muted);line-height:1.85;font-weight:300;
}

.btn-primary{
  display:inline-block;
  font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;
  background:var(--ink);color:var(--paper);
  padding:0.85rem 2.1rem;border-radius:var(--radius);
  border:1px solid var(--ink);transition:all 0.2s;cursor:pointer;
}
.btn-primary:hover{background:var(--ink-soft);}
.btn-outline{
  display:inline-block;
  font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;
  background:transparent;color:var(--ink);
  padding:0.85rem 2.1rem;border-radius:var(--radius);
  border:1px solid var(--rule);transition:all 0.2s;cursor:pointer;
}
.btn-outline:hover{border-color:var(--ink);}
.btn-forest{
  display:inline-block;
  font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;
  background:var(--forest);color:white;
  padding:0.85rem 2.1rem;border-radius:var(--radius);
  border:1px solid var(--forest);transition:all 0.2s;cursor:pointer;
}
.btn-forest:hover{background:var(--forest-mid);}
.btn-earth{
  display:inline-block;
  font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;
  background:var(--earth);color:white;
  padding:0.85rem 2.1rem;border-radius:var(--radius);
  border:1px solid var(--earth);transition:all 0.2s;cursor:pointer;
}
.btn-earth:hover{background:#6A4E34;}

.divider{border:none;border-top:1px solid var(--rule);margin:0;}
.section-pad{padding:5.5rem 0;}

/* ═══════════════════════════════════════════════
   FOOTER (shared)
═══════════════════════════════════════════════ */
.site-footer{
  background:var(--ink);
  padding:4rem 3rem 2rem;
}
.footer-inner{
  max-width:1160px;margin:0 auto;
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;
  padding-bottom:2.5rem;
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.footer-brand-name{
  font-family:'Cormorant',serif;font-size:18px;font-weight:400;
  color:rgba(255,255,255,0.85);margin-bottom:0.5rem;
}
.footer-brand-tag{
  font-size:10px;letter-spacing:0.18em;text-transform:uppercase;
  color:rgba(122,152,130,0.7);margin-bottom:1.25rem;
}
.footer-brand p{
  font-size:13px;color:rgba(255,255,255,0.38);line-height:1.75;
}
.footer-col h4{
  font-size:10px;letter-spacing:0.18em;text-transform:uppercase;
  color:rgba(255,255,255,0.28);margin-bottom:1rem;
}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:0.6rem;}
.footer-col ul li{font-size:13px;color:rgba(255,255,255,0.45);}
.footer-col ul li a{color:rgba(255,255,255,0.45);transition:color 0.2s;}
.footer-col ul li a:hover{color:rgba(255,255,255,0.75);}
.footer-legal{
  max-width:1160px;margin:0 auto;
  padding-top:1.75rem;
  display:flex;justify-content:space-between;align-items:center;
  font-size:11px;color:rgba(255,255,255,0.22);letter-spacing:0.05em;
}

/* ═══════════════════════════════════════════════
   PAGE: HOME
═══════════════════════════════════════════════ */
/* Hero */
.home-hero{
  min-height:92vh;
  display:grid;grid-template-columns:1fr 1fr;
  border-bottom:1px solid var(--rule);
}
.hero-left{
  padding:6rem 4rem 5rem 3rem;
  display:flex;flex-direction:column;justify-content:space-between;
  border-right:1px solid var(--rule);
}
.hero-left h1{margin-bottom:1.75rem;}
.hero-left .serif-body{max-width:440px;margin-bottom:2.5rem;}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;}
.hero-footnote{
  margin-top:2.5rem;padding-top:1.5rem;
  border-top:1px solid var(--rule-soft);
  font-size:11px;color:var(--stone);letter-spacing:0.06em;
}
.hero-right{display:flex;flex-direction:column;}
.hero-panel{
  flex:1;padding:2.75rem 3rem;
  border-bottom:1px solid var(--rule);
  display:flex;flex-direction:column;justify-content:center;
}
.hero-panel:last-child{border-bottom:none;}
.hero-panel.p-forest{background:var(--forest-pale);}
.hero-panel.p-earth{background:var(--earth-pale);}
.hero-panel.p-cream{background:var(--cream);}
.hero-panel-label{
  font-size:10px;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--stone);margin-bottom:0.85rem;
}
.hero-panel blockquote{
  font-family:'Cormorant',serif;font-size:1.05rem;font-style:italic;
  font-weight:300;color:var(--ink-soft);line-height:1.8;
}
.hero-panel p{
  font-size:14px;color:var(--ink-muted);line-height:1.8;font-weight:300;
}

/* Home: What We Offer */
.home-offer{background:var(--cream);}
.offer-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.5rem;margin-top:3rem;
}
.offer-card{
  background:white;border:1px solid var(--rule);
  border-radius:var(--radius);padding:2rem 1.75rem;
  transition:transform 0.2s,box-shadow 0.2s;cursor:pointer;
}
.offer-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(30,30,26,0.07);}
.offer-icon{
  width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:1.25rem;
}
.offer-icon.forest{background:var(--forest-pale);border:1px solid rgba(59,81,67,0.2);}
.offer-icon.earth{background:var(--earth-pale);border:1px solid rgba(124,92,62,0.2);}
.offer-icon.stone-bg{background:var(--cream);border:1px solid var(--rule);}
.offer-icon svg{width:16px;height:16px;stroke-width:1.5;}
.offer-card h3{font-size:1.3rem;margin-bottom:0.5rem;color:var(--ink);}
.offer-card p{font-size:13.5px;color:var(--ink-muted);line-height:1.8;font-weight:300;margin-bottom:1.25rem;}
.offer-link{
  font-size:11px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--forest-mid);font-weight:400;
  transition:color 0.2s;
}
.offer-card:hover .offer-link{color:var(--forest);}

/* Home: Coherence */
.home-coherence{background:var(--ink);}
.coherence-grid{
  display:grid;grid-template-columns:1fr 1.1fr;gap:5rem;align-items:start;
}
.coherence-grid h2{color:white;}
.coherence-grid h2 em{color:rgba(122,152,130,0.9);}
.coherence-grid .kicker{color:rgba(122,152,130,0.8);}
.coherence-text p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:rgba(255,255,255,0.55);line-height:1.95;margin-bottom:1rem;
}
.coherence-text p strong{color:rgba(255,255,255,0.85);font-weight:400;}
.coherence-cards{display:flex;flex-direction:column;gap:1.25rem;}
.coh-card{
  border:1px solid rgba(255,255,255,0.09);
  border-radius:var(--radius);padding:1.6rem 1.75rem;
}
.coh-card.c-forest{
  background:rgba(59,81,67,0.12);
  border-color:rgba(59,81,67,0.35);
}
.coh-card.c-earth{
  background:rgba(124,92,62,0.1);
  border-color:rgba(124,92,62,0.3);
}
.coh-card-label{
  font-size:10px;letter-spacing:0.18em;text-transform:uppercase;
  color:rgba(255,255,255,0.3);margin-bottom:0.6rem;
}
.coh-card h3{
  font-size:1.05rem;color:rgba(255,255,255,0.82);margin-bottom:0.4rem;
}
.coh-card p{font-size:13px;color:rgba(255,255,255,0.45);line-height:1.8;}

/* Home: Collective Trauma */
.collective-section{}
.collective-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;
  margin-top:3rem;
}
.collective-copy p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}
.collective-copy p strong{color:var(--ink);font-weight:400;}
.collective-pull{
  background:var(--earth-pale);
  border-left:3px solid var(--earth);
  border-radius:0 var(--radius) var(--radius) 0;
  padding:2.25rem 2.25rem 1.75rem;
}
.collective-pull blockquote{
  font-family:'Cormorant',serif;font-size:1.3rem;font-style:italic;
  font-weight:300;color:var(--ink);line-height:1.65;margin-bottom:0.75rem;
}
.collective-pull cite{
  font-size:11px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--earth);font-style:normal;
}

/* Home: Lane teaser */
.lane-teaser{background:var(--forest-pale);}
.lane-teaser-inner{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;
}
.lane-copy h2{margin-bottom:1rem;}
.lane-copy p{
  font-size:15px;color:var(--ink-muted);line-height:1.85;
  font-weight:300;margin-bottom:1rem;
}
.lane-copy .spiral-line{
  font-family:'Cormorant',serif;font-size:1.35rem;font-style:italic;
  font-weight:300;color:var(--forest);margin:1.5rem 0;line-height:1.6;
}
.lane-photo-wrap{
  position:relative;
}
.lane-photo-frame{
  background:var(--cream);
  border:1px solid var(--rule);
  border-radius:var(--radius);
  padding:2rem;
  display:flex;flex-direction:column;gap:1.25rem;
}
.lane-photo-frame img{
  width:100%;border-radius:var(--radius);
  aspect-ratio:4/5;object-fit:cover;
}
.lane-credentials{
  display:flex;flex-direction:column;gap:0.5rem;
}
.lane-cred{
  font-size:12px;color:var(--ink-muted);letter-spacing:0.04em;
  display:flex;align-items:center;gap:0.5rem;
}
.lane-cred::before{
  content:'';width:4px;height:4px;border-radius:50%;
  background:var(--forest);flex-shrink:0;
}

/* ═══════════════════════════════════════════════
   PAGE: ABOUT
═══════════════════════════════════════════════ */
.about-hero{
  background:var(--cream);
  border-bottom:1px solid var(--rule);
  padding:5.5rem 0 0;
}
.about-hero-inner{
  max-width:1160px;margin:0 auto;padding:0 3rem;
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:end;
}
.about-hero-copy h1{margin-bottom:1.25rem;}
.about-hero-copy .serif-body{max-width:480px;margin-bottom:2rem;}
.about-hero-copy .spiral-quote{
  font-family:'Cormorant',serif;font-size:1.25rem;font-style:italic;
  font-weight:300;color:var(--forest);
  border-left:3px solid var(--forest);
  padding:0.75rem 0 0.75rem 1.5rem;
  margin:1.5rem 0 2rem;
  line-height:1.6;
}
.about-hero-photo{
  align-self:end;
}
.about-hero-photo img{
  width:100%;max-width:420px;
  border-radius:var(--radius) var(--radius) 0 0;
  display:block;margin:0 auto;
}
.about-pillars{padding:5rem 0;}
.about-pillars-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;
  margin-top:3rem;
}
.about-pillar{
  padding:2.25rem 2rem;border-right:1px solid var(--rule);
  background:white;transition:background 0.2s;
}
.about-pillar:last-child{border-right:none;}
.about-pillar:hover{background:var(--forest-pale);}
.about-pillar-num{
  font-family:'Cormorant',serif;font-size:2.4rem;font-style:italic;
  color:var(--forest);opacity:0.3;line-height:1;margin-bottom:0.85rem;
}
.about-pillar h3{font-size:1.15rem;color:var(--ink);margin-bottom:0.5rem;}
.about-pillar p{font-size:13px;color:var(--ink-muted);line-height:1.8;font-weight:300;}

.about-long{padding:5.5rem 0;background:white;}
.about-long-inner{
  max-width:1160px;margin:0 auto;padding:0 3rem;
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.about-long p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}
.about-long p strong{color:var(--ink);font-weight:400;}
.about-long .attunement-block{
  border-left:3px solid var(--forest);
  padding-left:1.5rem;margin:2rem 0;
}
.about-long .attunement-block p{
  font-size:1rem;margin-bottom:0.5rem;
}
.about-cta-strip{
  background:var(--ink);padding:4rem 3rem;text-align:center;
}
.about-cta-strip h2{color:white;}
.about-cta-strip h2 em{color:rgba(122,152,130,0.85);}
.about-cta-strip p{
  font-size:15px;color:rgba(255,255,255,0.5);
  max-width:520px;margin:1rem auto 2rem;font-weight:300;
}
.about-cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;}

/* ═══════════════════════════════════════════════
   PAGE: THERAPY
═══════════════════════════════════════════════ */
.therapy-hero{
  background:var(--forest-pale);
  border-bottom:1px solid var(--rule);
  padding:5.5rem 0;
}
.therapy-hero-inner{
  max-width:1160px;margin:0 auto;padding:0 3rem;
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;
}
.therapy-hero h1{margin-bottom:1.25rem;}
.therapy-hero .serif-body{margin-bottom:2rem;}
.therapy-approach-label{
  font-size:10px;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--stone);margin-bottom:0.75rem;
}
.therapy-approach-quote{
  font-family:'Cormorant',serif;font-size:1.1rem;font-style:italic;
  font-weight:300;color:var(--ink-soft);line-height:1.8;
}
.therapy-panels{display:flex;flex-direction:column;gap:1.25rem;}
.therapy-panel{
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:1.6rem 1.75rem;
}
.therapy-panel h3{font-size:1.1rem;margin-bottom:0.35rem;color:var(--ink);}
.therapy-panel p{font-size:13px;color:var(--ink-muted);line-height:1.8;font-weight:300;}

.therapy-works{padding:5.5rem 0;}
.works-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin-top:3rem;align-items:start;
}
.works-list{list-style:none;display:flex;flex-direction:column;gap:0.75rem;}
.works-list li{
  display:flex;align-items:flex-start;gap:0.75rem;
  font-size:14.5px;color:var(--ink-soft);font-weight:300;line-height:1.7;
}
.works-dot{
  width:7px;height:7px;min-width:7px;border-radius:50%;
  background:var(--forest);margin-top:7px;
}
.works-copy h3{font-size:1.75rem;margin-bottom:1.25rem;}
.works-copy p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}

.therapy-session{background:var(--cream);padding:4.5rem 0;}
.session-grid{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;
  margin-top:3rem;
}
.session-card{
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:1.75rem;
}
.session-card h3{font-size:1.15rem;margin-bottom:0.5rem;color:var(--ink);}
.session-card p{font-size:13.5px;color:var(--ink-muted);line-height:1.8;font-weight:300;}
.session-card .duration{
  margin-top:0.75rem;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--forest-mid);font-weight:400;
}

.therapy-cta{padding:5rem 0;text-align:center;}
.therapy-cta h2{margin-bottom:1rem;}
.therapy-cta p{
  font-size:15px;color:var(--ink-muted);max-width:500px;
  margin:0 auto 2.5rem;font-weight:300;
}

/* ═══════════════════════════════════════════════
   PAGE: CONSULTING
═══════════════════════════════════════════════ */
.consult-hero{
  min-height:72vh;
  display:grid;grid-template-columns:1fr 1fr;
  border-bottom:1px solid var(--rule);
}
.consult-hero-left{
  padding:5.5rem 3.5rem 5rem 3rem;
  border-right:1px solid var(--rule);
  display:flex;flex-direction:column;justify-content:center;
}
.consult-hero-left h1{margin-bottom:1.25rem;}
.consult-hero-left .serif-body{margin-bottom:2.5rem;max-width:460px;}
.consult-hero-right{
  background:var(--ink);
  padding:5.5rem 3.5rem;
  display:flex;flex-direction:column;justify-content:center;
  gap:1.5rem;
}
.consult-hero-right h2{color:white;font-size:1.9rem;margin-bottom:1.5rem;}
.consult-hero-right h2 em{color:rgba(122,152,130,0.85);}
.resilience-item{
  border-left:2px solid rgba(59,81,67,0.45);
  padding-left:1.25rem;
}
.resilience-item p{
  font-family:'Cormorant',serif;font-size:0.98rem;font-style:italic;
  color:rgba(255,255,255,0.55);line-height:1.8;
}
.resilience-item strong{color:rgba(255,255,255,0.8);font-weight:400;}

.consult-focus{padding:5.5rem 0;background:var(--cream);}
.focus-grid{
  display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;
  margin-top:3rem;
}
.focus-item{
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:1.5rem 1.25rem;text-align:center;
  transition:transform 0.2s;
}
.focus-item:hover{transform:translateY(-3px);}
.focus-item-icon{
  width:40px;height:40px;border-radius:50%;
  background:var(--forest-pale);border:1px solid rgba(59,81,67,0.2);
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 0.85rem;
}
.focus-item-icon svg{width:18px;height:18px;stroke:var(--forest-mid);stroke-width:1.5;fill:none;}
.focus-item h4{font-size:1rem;color:var(--ink);margin-bottom:0.35rem;}
.focus-item p{font-size:12px;color:var(--ink-muted);line-height:1.7;}

.consult-approach{padding:5.5rem 0;}
.consult-approach-inner{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.consult-approach-copy h2{margin-bottom:1.25rem;}
.consult-approach-copy p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}
.consult-approach-copy p strong{color:var(--ink);font-weight:400;}
.consult-approach-copy .btns{margin-top:2rem;display:flex;gap:1rem;flex-wrap:wrap;}
.consult-outcomes{display:flex;flex-direction:column;gap:1rem;}
.outcome-row{
  display:flex;gap:1.25rem;align-items:flex-start;
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:1.4rem 1.6rem;
}
.outcome-num{
  font-family:'Cormorant',serif;font-size:1.8rem;font-style:italic;
  color:var(--forest);opacity:0.35;line-height:1;flex-shrink:0;
}
.outcome-text h4{font-size:1.05rem;color:var(--ink);margin-bottom:0.2rem;}
.outcome-text p{font-size:13px;color:var(--ink-muted);line-height:1.75;}

/* ═══════════════════════════════════════════════
   PAGE: TIC CERTIFICATION
═══════════════════════════════════════════════ */
.cert-hero{
  background:var(--ink);
  padding:5.5rem 0 0;
  border-bottom:1px solid rgba(255,255,255,0.08);
}
.cert-hero-inner{
  max-width:1160px;margin:0 auto;padding:0 3rem;
}
.cert-hero h1{color:white;margin-bottom:1.25rem;}
.cert-hero h1 em{color:rgba(122,152,130,0.85);}
.cert-hero .kicker{color:rgba(122,152,130,0.8);}
.cert-hero .serif-body{
  color:rgba(255,255,255,0.55);max-width:600px;margin-bottom:3rem;
}
.cert-paths-bar{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border-top:1px solid rgba(255,255,255,0.08);
  margin-top:3rem;
}
.cert-path-tab{
  padding:1.75rem 2rem;
  border-right:1px solid rgba(255,255,255,0.08);
  cursor:pointer;
  transition:background 0.2s;
}
.cert-path-tab:last-child{border-right:none;}
.cert-path-tab:hover,.cert-path-tab.active{background:rgba(59,81,67,0.15);}
.cert-path-num{
  font-size:10px;letter-spacing:0.2em;text-transform:uppercase;
  color:rgba(255,255,255,0.28);margin-bottom:0.5rem;
}
.cert-path-name{
  font-family:'Cormorant',serif;font-size:1.15rem;
  color:rgba(255,255,255,0.75);font-weight:400;
}
.cert-path-sub{
  font-size:12px;color:rgba(255,255,255,0.35);margin-top:0.25rem;
}

.cert-paths{padding:5.5rem 0;}
.cert-path-card{
  border:1px solid var(--rule);border-radius:var(--radius);
  background:white;overflow:hidden;margin-bottom:2rem;
}
.cert-card-head{
  display:grid;grid-template-columns:auto 1fr auto;gap:2rem;
  align-items:center;padding:2rem 2.5rem;
  background:var(--cream);border-bottom:1px solid var(--rule);
}
.cert-card-head .path-num{
  font-family:'Cormorant',serif;font-size:3rem;font-style:italic;
  color:var(--forest);opacity:0.25;line-height:1;
}
.cert-card-head h3{font-size:1.5rem;color:var(--ink);}
.cert-card-head p{font-size:13px;color:var(--ink-muted);}
.cert-badge{
  font-size:10px;letter-spacing:0.14em;text-transform:uppercase;
  padding:5px 14px;border-radius:20px;white-space:nowrap;
}
.cert-badge.forest{background:var(--forest-pale);color:var(--forest);border:1px solid rgba(59,81,67,0.25);}
.cert-badge.earth{background:var(--earth-pale);color:var(--earth);border:1px solid rgba(124,92,62,0.2);}
.cert-badge.stone{background:var(--cream);color:var(--stone);border:1px solid var(--rule);}
.cert-card-body{
  display:grid;grid-template-columns:1fr 1fr;
  padding:2rem 2.5rem;gap:2.5rem;
}
.cert-card-body p{font-size:14px;color:var(--ink-muted);line-height:1.85;font-weight:300;margin-bottom:0.75rem;}
.cert-includes h4{font-size:1rem;margin-bottom:0.75rem;color:var(--ink);}
.cert-includes ul{list-style:none;display:flex;flex-direction:column;gap:0.5rem;}
.cert-includes li{
  display:flex;align-items:flex-start;gap:0.6rem;
  font-size:13px;color:var(--ink-muted);line-height:1.7;
}
.ci-dot{
  width:5px;height:5px;min-width:5px;border-radius:50%;
  background:var(--forest);margin-top:7px;
}

.cert-phases{background:var(--cream);padding:5rem 0;}
.phases-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;
}
.phase-card{
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:2rem;
}
.phase-card .ph-num{
  font-family:'Cormorant',serif;font-size:3rem;font-style:italic;
  color:var(--forest);opacity:0.2;line-height:1;margin-bottom:1rem;
}
.phase-card h3{font-size:1.2rem;margin-bottom:0.75rem;}
.phase-card ul{list-style:none;display:flex;flex-direction:column;gap:0.4rem;}
.phase-card li{font-size:13px;color:var(--ink-muted);padding-left:0.85rem;position:relative;}
.phase-card li::before{content:'—';position:absolute;left:0;color:var(--stone);font-size:12px;}

.cert-pricing{padding:5.5rem 0;}
.pricing-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;
}
.pricing-card{
  border:1px solid var(--rule);border-radius:var(--radius);
  background:white;padding:2rem;
  transition:transform 0.2s;
}
.pricing-card:hover{transform:translateY(-4px);}
.pricing-card.featured{
  border-color:rgba(59,81,67,0.35);
  background:var(--forest-pale);
}
.pricing-tier{
  font-size:10px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--stone);margin-bottom:0.5rem;
}
.pricing-card h3{font-size:1.25rem;margin-bottom:0.5rem;}
.pricing-range{
  font-family:'Cormorant',serif;font-size:1.75rem;font-style:italic;
  color:var(--forest);margin:0.75rem 0;
}
.pricing-timeline{
  font-size:11px;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--stone);margin-bottom:1rem;
  padding-bottom:1rem;border-bottom:1px solid var(--rule-soft);
}
.pricing-card p{font-size:13px;color:var(--ink-muted);line-height:1.8;font-weight:300;margin-bottom:0.75rem;}
.pricing-card ul{list-style:none;display:flex;flex-direction:column;gap:0.4rem;margin-top:0.5rem;}
.pricing-card li{font-size:12.5px;color:var(--ink-muted);padding-left:0.85rem;position:relative;}
.pricing-card li::before{content:'✦';position:absolute;left:0;color:var(--forest);font-size:9px;top:3px;}

.cert-cta{background:var(--ink);padding:5rem 3rem;text-align:center;}
.cert-cta h2{color:white;margin-bottom:1rem;}
.cert-cta h2 em{color:rgba(122,152,130,0.85);}
.cert-cta p{font-size:15px;color:rgba(255,255,255,0.48);max-width:520px;margin:0 auto 2.5rem;font-weight:300;}
.cert-cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;}

/* ═══════════════════════════════════════════════
   PAGE: CONTACT
═══════════════════════════════════════════════ */
.contact-wrap{
  display:grid;grid-template-columns:1fr 1fr;min-height:88vh;
}
.contact-left{
  padding:5.5rem 4rem 5rem 3rem;
  border-right:1px solid var(--rule);
  display:flex;flex-direction:column;justify-content:space-between;
}
.contact-left h1{margin-bottom:1.5rem;}
.contact-left .serif-body{max-width:440px;margin-bottom:2.5rem;}
.contact-meta{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem;}
.contact-meta-item{display:flex;gap:1rem;align-items:flex-start;}
.contact-meta-icon{
  width:36px;height:36px;min-width:36px;border-radius:50%;
  background:var(--forest-pale);border:1px solid rgba(59,81,67,0.2);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.contact-meta-icon svg{width:16px;height:16px;stroke:var(--forest);stroke-width:1.5;fill:none;}
.contact-meta-text h4{font-size:0.95rem;margin-bottom:0.15rem;color:var(--ink);}
.contact-meta-text p{font-size:13.5px;color:var(--ink-muted);}

.contact-right{
  padding:5.5rem 3.5rem 5rem;
  background:var(--cream);
}
.contact-right h2{margin-bottom:0.5rem;}
.contact-right > p{font-size:14px;color:var(--ink-muted);margin-bottom:2.5rem;}
.contact-form{display:flex;flex-direction:column;gap:1.25rem;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;}
.form-group{display:flex;flex-direction:column;gap:0.4rem;}
.form-group label{
  font-size:11px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--stone);font-weight:400;
}
.form-group input,.form-group textarea,.form-group select{
  background:white;border:1px solid var(--rule);
  border-radius:var(--radius);padding:0.75rem 1rem;
  font-family:'Instrument Sans',sans-serif;font-size:15px;
  color:var(--ink);outline:none;
  transition:border-color 0.2s;width:100%;
}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{
  border-color:var(--forest);
}
.form-group textarea{resize:vertical;min-height:120px;}
.form-note{font-size:12px;color:var(--stone);font-style:italic;margin-top:0.5rem;}
.contact-purpose-tags{
  display:flex;flex-wrap:wrap;gap:0.6rem;margin-bottom:0.5rem;
}
.purpose-tag{
  font-size:11.5px;padding:0.4rem 1rem;
  border:1px solid var(--rule);border-radius:20px;
  color:var(--ink-muted);cursor:pointer;background:white;
  transition:all 0.2s;
}
.purpose-tag.selected,.purpose-tag:hover{
  background:var(--forest-pale);border-color:rgba(59,81,67,0.35);
  color:var(--forest);
}
.contact-spiral-quote{
  margin-top:2.5rem;padding:1.5rem 1.75rem;
  border-left:3px solid var(--forest);
  background:white;border-radius:0 var(--radius) var(--radius) 0;
}
.contact-spiral-quote p{
  font-family:'Cormorant',serif;font-size:1.1rem;font-style:italic;
  font-weight:300;color:var(--ink-soft);line-height:1.75;
}

/* ═══════════════════════════════════════════════
   SUPERVISION SECTION (reusable)
═══════════════════════════════════════════════ */
.supervision-section{background:var(--cream);}
.supervision-inner{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.supervision-copy h2{margin-bottom:1.1rem;}
.supervision-copy p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}
.supervision-copy p strong{color:var(--ink);font-weight:400;}
.sup-points{list-style:none;display:flex;flex-direction:column;gap:0.8rem;margin-top:1.25rem;}
.sup-points li{
  display:flex;gap:0.85rem;align-items:flex-start;
  font-size:14px;color:var(--ink-soft);line-height:1.7;
}
.sp-dot{
  width:6px;height:6px;min-width:6px;border-radius:50%;
  background:var(--forest);margin-top:7px;
}
.sup-cards{display:flex;flex-direction:column;gap:1.25rem;}
.sup-quote-card{
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:1.75rem;
}
.sup-quote-card.mossy{background:var(--forest-pale);border-color:rgba(59,81,67,0.2);}
.sup-quote-card blockquote{
  font-family:'Cormorant',serif;font-size:1.05rem;font-style:italic;
  font-weight:300;color:var(--ink-soft);line-height:1.8;
}

/* ═══════════════════════════════════════════════
   PAGE: SUPERVISION (dedicated)
═══════════════════════════════════════════════ */
.sup-page-hero{
  min-height:72vh;
  display:grid;grid-template-columns:1fr 1fr;
  border-bottom:1px solid var(--rule);
}
.sup-hero-left{
  padding:5.5rem 4rem 5rem 3rem;
  border-right:1px solid var(--rule);
  display:flex;flex-direction:column;justify-content:space-between;
}
.sup-hero-left h1{margin-bottom:1.25rem;}
.sup-hero-left .serif-body{max-width:460px;margin-bottom:2.5rem;}
.sup-hero-right{
  display:flex;flex-direction:column;
}
.sup-hero-panel{
  flex:1;padding:2.75rem 3rem;
  border-bottom:1px solid var(--rule);
  display:flex;flex-direction:column;justify-content:center;
}
.sup-hero-panel:last-child{border-bottom:none;}
.sup-hero-panel.p-forest{background:var(--forest-pale);}
.sup-hero-panel.p-earth{background:var(--earth-pale);}
.sup-hero-panel.p-dark{background:var(--ink);}
.sup-hero-panel-label{
  font-size:10px;letter-spacing:0.2em;text-transform:uppercase;
  color:var(--stone);margin-bottom:0.85rem;
}
.sup-hero-panel.p-dark .sup-hero-panel-label{color:rgba(255,255,255,0.3);}
.sup-hero-panel blockquote{
  font-family:'Cormorant',serif;font-size:1.05rem;font-style:italic;
  font-weight:300;color:var(--ink-soft);line-height:1.8;
}
.sup-hero-panel.p-dark blockquote{color:rgba(255,255,255,0.6);}

/* What supervision is */
.sup-what{background:var(--cream);}
.sup-what-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.sup-what-copy p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}
.sup-what-copy p strong{color:var(--ink);font-weight:400;}
.sup-markers{display:flex;flex-direction:column;gap:1rem;}
.sup-marker{
  display:flex;gap:1.25rem;align-items:flex-start;
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:1.4rem 1.6rem;
}
.sup-marker-circle{
  width:34px;height:34px;min-width:34px;border-radius:50%;
  background:var(--forest-pale);border:1px solid rgba(59,81,67,0.25);
  display:flex;align-items:center;justify-content:center;margin-top:2px;
}
.sup-marker-circle span{
  font-family:'Cormorant',serif;font-size:13px;font-style:italic;color:var(--forest);
}
.sup-marker-text h4{font-size:1rem;color:var(--ink);margin-bottom:0.2rem;}
.sup-marker-text p{font-size:13px;color:var(--ink-muted);line-height:1.75;}

/* Coherence in supervision */
.sup-coherence{background:var(--ink);}
.sup-coherence-inner{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.sup-coherence-left h2{color:white;}
.sup-coherence-left h2 em{color:rgba(122,152,130,0.85);}
.sup-coherence-left .kicker{color:rgba(122,152,130,0.8);}
.sup-coherence-left p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:rgba(255,255,255,0.55);line-height:1.95;margin-bottom:1rem;
}
.sup-coherence-left p strong{color:rgba(255,255,255,0.85);font-weight:400;}
.sup-coherence-right{display:flex;flex-direction:column;gap:1.25rem;}
.sup-coh-card{
  border:1px solid rgba(255,255,255,0.09);
  border-radius:var(--radius);padding:1.6rem 1.75rem;
}
.sup-coh-card.c-forest{background:rgba(59,81,67,0.12);border-color:rgba(59,81,67,0.35);}
.sup-coh-card.c-earth{background:rgba(124,92,62,0.1);border-color:rgba(124,92,62,0.3);}
.sup-coh-label{
  font-size:10px;letter-spacing:0.18em;text-transform:uppercase;
  color:rgba(255,255,255,0.3);margin-bottom:0.6rem;
}
.sup-coh-card h3{font-size:1.05rem;color:rgba(255,255,255,0.82);margin-bottom:0.4rem;}
.sup-coh-card p{font-size:13px;color:rgba(255,255,255,0.45);line-height:1.8;}

/* Formats */
.sup-formats{}
.sup-formats-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;
}
.sup-format-card{
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:2rem 1.75rem;transition:transform 0.2s,box-shadow 0.2s;
}
.sup-format-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(30,30,26,0.07);}
.sup-format-icon{
  width:40px;height:40px;border-radius:50%;
  background:var(--forest-pale);border:1px solid rgba(59,81,67,0.2);
  display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;
}
.sup-format-icon svg{width:18px;height:18px;stroke:var(--forest-mid);stroke-width:1.5;fill:none;}
.sup-format-card h3{font-size:1.2rem;margin-bottom:0.5rem;color:var(--ink);}
.sup-format-card p{font-size:13.5px;color:var(--ink-muted);line-height:1.8;font-weight:300;margin-bottom:1.25rem;}
.sup-format-detail{
  font-size:11px;letter-spacing:0.1em;text-transform:uppercase;
  color:var(--forest-mid);padding-top:1rem;
  border-top:1px solid var(--rule-soft);
}

/* Who it's for */
.sup-who{background:var(--cream);}
.sup-who-inner{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.sup-who-copy h2{margin-bottom:1.25rem;}
.sup-who-copy p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}
.sup-who-copy p strong{color:var(--ink);font-weight:400;}
.sup-audience-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:0.85rem;
}
.sup-audience-item{
  background:white;border:1px solid var(--rule);border-radius:var(--radius);
  padding:1.1rem 1.25rem;
  font-size:13.5px;color:var(--ink-soft);line-height:1.6;
  display:flex;align-items:flex-start;gap:0.65rem;
}
.sup-audience-item::before{
  content:'';width:5px;height:5px;min-width:5px;border-radius:50%;
  background:var(--forest);margin-top:6px;
}

/* Collective trauma section */
.sup-collective{border-top:1px solid var(--rule);}
.sup-collective-inner{
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;
}
.sup-collective-copy p{
  font-family:'Cormorant',serif;font-size:1.05rem;font-weight:300;
  color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;
}
.sup-collective-copy p strong{color:var(--ink);font-weight:400;}
.sup-collective-pull{
  background:var(--earth-pale);
  border-left:3px solid var(--earth);
  border-radius:0 var(--radius) var(--radius) 0;
  padding:2.25rem 2.25rem 1.75rem;
  margin-top:2rem;
}
.sup-collective-pull blockquote{
  font-family:'Cormorant',serif;font-size:1.3rem;font-style:italic;
  font-weight:300;color:var(--ink);line-height:1.65;margin-bottom:0.75rem;
}
.sup-collective-pull cite{
  font-size:11px;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--earth);font-style:normal;
}

/* Investment */
.sup-invest{background:white;border-top:1px solid var(--rule);}
.sup-invest-grid{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;margin-top:3rem;
}
.sup-invest-card{
  border:1px solid var(--rule);border-radius:var(--radius);
  background:var(--paper);padding:2rem;
}
.sup-invest-card.featured{
  background:var(--forest-pale);border-color:rgba(59,81,67,0.3);
}
.sup-invest-tier{
  font-size:10px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--stone);margin-bottom:0.5rem;
}
.sup-invest-card h3{font-size:1.2rem;margin-bottom:0.4rem;}
.sup-invest-price{
  font-family:'Cormorant',serif;font-size:1.75rem;font-style:italic;
  color:var(--forest);margin:0.65rem 0;
}
.sup-invest-card p{font-size:13.5px;color:var(--ink-muted);line-height:1.8;font-weight:300;}

/* CTA */
.sup-cta{background:var(--ink);padding:5rem 3rem;text-align:center;}
.sup-cta h2{color:white;margin-bottom:1rem;}
.sup-cta h2 em{color:rgba(122,152,130,0.85);}
.sup-cta p{font-size:15px;color:rgba(255,255,255,0.48);max-width:520px;margin:0 auto 2.5rem;font-weight:300;}
.sup-cta-btns{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;}


/* ═══════════════════════════════════════════════
   MOBILE RESPONSIVE — ≤ 768px
   Every grid/flex layout forced to single column.
   Typography scales down. Padding tightened.
═══════════════════════════════════════════════ */
@media (max-width: 768px) {

  /* --- NAV --- */
  nav {
    padding: 0.9rem 1.25rem;
    flex-wrap: wrap;
    gap: 0;
    position: sticky;
    top: 0;
  }
  .nav-logo-tag { display: none; }
  .nav-logo-name { font-size: 14px; }
  .nav-links { display: none; flex-direction: column; width: 100%; }
  .nav-links.open { display: flex; padding: 0.75rem 0 1rem; gap: 0; }
  .nav-links li a { padding: 0.65rem 0; font-size: 11px; }
  .nav-contact-btn { display: none; }
  .nav-hamburger { display: flex; }

  /* --- SHARED --- */
  .wrap { padding: 0 1.25rem; }
  .section-pad { padding: 3.5rem 0; }
  h1 { font-size: clamp(2.2rem, 8vw, 3rem); }
  h2 { font-size: clamp(1.7rem, 6vw, 2.2rem); }
  h3 { font-size: 1.3rem; }

  /* --- FOOTER --- */
  .site-footer { padding: 3rem 1.25rem 1.5rem; }
  .footer-inner {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .footer-legal {
    flex-direction: column;
    gap: 0.5rem;
    text-align: center;
  }

  /* ─── HOME ─── */
  .home-hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .hero-left {
    padding: 3rem 1.25rem 2.5rem;
    border-right: none;
    border-bottom: 1px solid var(--rule);
  }
  .hero-right { border-top: none; }
  .hero-panel { padding: 2rem 1.25rem; flex: unset; }
  .hero-btns { flex-direction: column; }
  .hero-btns .btn-primary,
  .hero-btns .btn-outline { width: 100%; text-align: center; }

  .offer-grid { grid-template-columns: 1fr; gap: 1rem; }
  /* Full-width offer card inner layout fix */
  .offer-card[style] { display: block !important; }
  .offer-card[style] > div { grid-template-columns: 1fr !important; gap: 1rem !important; }
  .offer-card[style] .offer-link { display: inline-block; margin-top: 0.5rem; }

  .coherence-grid { grid-template-columns: 1fr; gap: 2.5rem; }

  .collective-grid { grid-template-columns: 1fr; gap: 2rem; }

  .lane-teaser-inner { grid-template-columns: 1fr; gap: 2.5rem; }
  .lane-teaser-inner > div:last-child { order: -1; }
  .lane-copy > div[style] { flex-direction: column !important; }
  .lane-copy > div[style] .btn-forest,
  .lane-copy > div[style] .btn-outline { width: 100%; text-align: center; }

  /* ─── ABOUT ─── */
  .about-hero { padding: 3rem 0 0; }
  .about-hero-inner {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding: 0 1.25rem;
  }
  .about-hero-photo { order: -1; }
  .about-hero-photo img { max-width: 100%; border-radius: var(--radius) var(--radius) 0 0; }
  .about-pillars { padding: 3rem 0; }
  .about-pillars-grid {
    grid-template-columns: 1fr;
    border-radius: var(--radius);
  }
  .about-pillar { border-right: none; border-bottom: 1px solid var(--rule); }
  .about-pillar:last-child { border-bottom: none; }
  .about-long-inner {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    padding: 0 1.25rem;
  }
  .about-cta-strip { padding: 3rem 1.25rem; }
  .about-cta-btns { flex-direction: column; align-items: center; }
  .about-cta-btns .btn-forest,
  .about-cta-btns .btn-outline { width: 100%; max-width: 320px; text-align: center; }

  /* ─── THERAPY ─── */
  .therapy-hero { padding: 3rem 0; }
  .therapy-hero-inner {
    grid-template-columns: 1fr;
    gap: 2.5rem;
    padding: 0 1.25rem;
  }
  .works-grid { grid-template-columns: 1fr; gap: 2rem; }
  .session-grid { grid-template-columns: 1fr; gap: 1rem; }
  .supervision-inner { grid-template-columns: 1fr; gap: 2.5rem; }

  /* ─── CONSULTING ─── */
  .consult-hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .consult-hero-left {
    padding: 3rem 1.25rem 2.5rem;
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,0.08);
  }
  .consult-hero-left > div[style] { flex-direction: column !important; }
  .consult-hero-left > div[style] .btn-primary,
  .consult-hero-left > div[style] .btn-outline { width: 100%; text-align: center; }
  .consult-hero-right { padding: 2.5rem 1.25rem; }
  .focus-grid { grid-template-columns: 1fr 1fr; gap: 0.85rem; }
  .consult-approach-inner { grid-template-columns: 1fr; gap: 2.5rem; }
  .consult-approach-copy .btns { flex-direction: column; }
  .consult-approach-copy .btns .btn-primary,
  .consult-approach-copy .btns .btn-outline { width: 100%; text-align: center; }

  /* ─── CERTIFICATION ─── */
  .cert-hero { padding: 3rem 0 0; }
  .cert-hero-inner { padding: 0 1.25rem; }
  .cert-paths-bar { grid-template-columns: 1fr; }
  .cert-path-tab { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.08); }
  .cert-path-tab:last-child { border-bottom: none; }
  .cert-card-head {
    grid-template-columns: auto 1fr;
    gap: 1rem;
  }
  .cert-badge { grid-column: 1 / -1; justify-self: start; }
  .cert-card-body {
    grid-template-columns: 1fr;
    padding: 1.5rem 1.25rem;
    gap: 1.5rem;
  }
  .phases-grid { grid-template-columns: 1fr; gap: 1rem; }
  .pricing-grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .cert-pricing .wrap > div[style] {
    grid-template-columns: 1fr !important;
  }
  .cert-pricing .wrap > div[style] > div[style] {
    justify-content: flex-start !important;
    flex-direction: column;
  }
  .cert-pricing .wrap > div[style] .btn-forest,
  .cert-pricing .wrap > div[style] .btn-outline { width: 100%; text-align: center; }
  .cert-cta { padding: 3.5rem 1.25rem; }
  .cert-cta-btns { flex-direction: column; align-items: center; }
  .cert-cta-btns button { width: 100%; max-width: 320px; text-align: center; }

  /* ─── CONTACT ─── */
  .contact-wrap {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .contact-left {
    padding: 3rem 1.25rem 2.5rem;
    border-right: none;
    border-bottom: 1px solid var(--rule);
  }
  .contact-right { padding: 2.5rem 1.25rem 3rem; }
  .form-row { grid-template-columns: 1fr; gap: 1.25rem; }

  /* ─── SUPERVISION ─── */
  .sup-page-hero {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .sup-hero-left {
    padding: 3rem 1.25rem 2.5rem;
    border-right: none;
    border-bottom: 1px solid var(--rule);
  }
  .sup-hero-left > div[style] { flex-direction: column !important; }
  .sup-hero-left > div[style] .btn-forest,
  .sup-hero-left > div[style] .btn-outline { width: 100%; text-align: center; }
  .sup-hero-panel { flex: unset; padding: 2rem 1.25rem; }

  .sup-what-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .sup-coherence-inner { grid-template-columns: 1fr; gap: 2.5rem; }
  .sup-formats-grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .sup-who-inner { grid-template-columns: 1fr; gap: 2.5rem; }
  .sup-audience-grid { grid-template-columns: 1fr; }
  .sup-collective-inner { grid-template-columns: 1fr; gap: 2.5rem; }
  .sup-invest-grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .sup-cta { padding: 3.5rem 1.25rem; }
  .sup-cta-btns { flex-direction: column; align-items: center; }
  .sup-cta-btns button { width: 100%; max-width: 320px; text-align: center; }

  /* Inline style overrides for grid/flex layouts set directly on elements */
  /* Supervision who section audience grid */
  .sup-who .sup-audience-grid[style] { grid-template-columns: 1fr !important; }

  /* Supervision invest sliding-scale row */
  .sup-invest .wrap > div[style] {
    flex-direction: column !important;
    gap: 1.25rem !important;
  }
  .sup-invest .wrap > div[style] button { width: 100%; text-align: center; }

  /* Cert pricing retainer row */
  div[style*="grid-template-columns:1fr 1fr"][style*="gap:2rem"] {
    grid-template-columns: 1fr !important;
  }
}

/* Extra small phones (≤ 400px) */
@media (max-width: 400px) {
  h1 { font-size: 2rem; }
  h2 { font-size: 1.55rem; }
  .focus-grid { grid-template-columns: 1fr; }
  .sup-audience-grid { grid-template-columns: 1fr; }
  nav { padding: 0.8rem 1rem; }
}

/* ═══════════════════════════════════════════════
   PAGE: OUR TEAM
═══════════════════════════════════════════════ */
.team-hero {
  background: var(--cream);
  border-bottom: 1px solid var(--rule);
  padding: 5.5rem 0;
}
.team-hero-inner {
  max-width: 1160px; margin: 0 auto; padding: 0 3rem;
}
.team-hero h1 { margin-bottom: 1.25rem; }
.team-hero .serif-body { max-width: 580px; margin-bottom: 0; }

/* Lane director feature */
.team-director {
  padding: 5.5rem 0;
  background: white;
  border-bottom: 1px solid var(--rule);
}
.team-director-inner {
  max-width: 1160px; margin: 0 auto; padding: 0 3rem;
  display: grid; grid-template-columns: 280px 1fr; gap: 4rem; align-items: start;
}
.team-director-photo {
  position: relative;
}
.team-director-photo img {
  width: 100%; border-radius: var(--radius);
  aspect-ratio: 1/1; object-fit: cover;
  display: block;
}
.team-director-badge {
  position: absolute; bottom: -1px; left: 0; right: 0;
  background: var(--forest);
  padding: 0.65rem 1rem;
  border-radius: 0 0 var(--radius) var(--radius);
  text-align: center;
}
.team-director-badge span {
  font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase;
  color: rgba(255,255,255,0.85); font-weight: 400;
}
.team-director-copy .kicker { margin-bottom: 0.5rem; }
.team-director-copy h2 { margin-bottom: 0.5rem; }
.team-director-creds {
  display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1.1rem 0 1.5rem;
}
.team-cred-tag {
  font-size: 11px; letter-spacing: 0.08em;
  background: var(--forest-pale); color: var(--forest);
  border: 1px solid rgba(59,81,67,0.2);
  border-radius: 20px; padding: 4px 12px;
}
.team-director-copy p {
  font-family: 'Cormorant', serif; font-size: 1.05rem; font-weight: 300;
  color: var(--ink-soft); line-height: 1.9; margin-bottom: 1rem;
}

/* Team grid */
.team-members {
  padding: 5.5rem 0;
  background: var(--paper);
}
.team-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 2rem; margin-top: 3rem;
}
.team-card {
  background: white; border: 1px solid var(--rule);
  border-radius: var(--radius); overflow: hidden;
  transition: transform 0.2s, box-shadow 0.2s;
}
.team-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(30,30,26,0.07);
}
.team-card-photo {
  width: 100%; aspect-ratio: 1/1; object-fit: cover;
  display: block;
}
.team-card-body {
  padding: 1.6rem 1.75rem 2rem;
}
.team-card-name {
  font-family: 'Cormorant', serif; font-size: 1.3rem; font-weight: 400;
  color: var(--ink); margin-bottom: 0.2rem; line-height: 1.2;
}
.team-card-title {
  font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--forest-mid); margin-bottom: 1rem; line-height: 1.6;
}
.team-card-bio {
  font-size: 13.5px; color: var(--ink-muted); line-height: 1.85;
  font-weight: 300;
}
.team-card-bio p { margin-bottom: 0.75rem; }
.team-card-bio p:last-child { margin-bottom: 0; }

/* Team CTA */
.team-cta {
  background: var(--ink); padding: 5rem 3rem; text-align: center;
}
.team-cta h2 { color: white; margin-bottom: 1rem; }
.team-cta h2 em { color: rgba(122,152,130,0.85); }
.team-cta p {
  font-size: 15px; color: rgba(255,255,255,0.48);
  max-width: 520px; margin: 0 auto 2.5rem; font-weight: 300;
}
.team-cta-btns { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; }

/* Team mobile */
@media (max-width: 768px) {
  .team-hero { padding: 3rem 0; }
  .team-hero-inner { padding: 0 1.25rem; }
  .team-director { padding: 3.5rem 0; }
  .team-director-inner {
    grid-template-columns: 1fr;
    gap: 2rem;
    padding: 0 1.25rem;
  }
  .team-director-photo { max-width: 240px; }
  .team-members { padding: 3.5rem 0; }
  .team-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .team-cta { padding: 3.5rem 1.25rem; }
  .team-cta-btns { flex-direction: column; align-items: center; }
  .team-cta-btns button { width: 100%; max-width: 320px; text-align: center; }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .team-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ═══════════════════════════════════════════════
   ADDED 2026-10: EVENTS, RESEARCH, RATES, MISC
═══════════════════════════════════════════════ */

/* Therapy rates */
.session-price{
  margin-top:0.35rem;
  font-family:'Cormorant',serif;font-size:1.6rem;font-weight:400;color:var(--ink);
}
.session-note{
  margin-top:1.75rem;font-size:14px;color:var(--ink-muted);font-weight:300;
}

/* Research links on consulting/certification */
.research-link{margin-top:1.5rem !important;font-size:13px !important;letter-spacing:0.08em;}
.research-link a{color:var(--forest-mid);border-bottom:1px solid rgba(78,107,89,0.3);padding-bottom:2px;transition:border-color 0.2s;}
.research-link a:hover{border-color:var(--forest-mid);}
.research-link.on-dark a{color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.25);}
.research-link.on-dark{text-align:center;margin-top:2rem !important;}

/* Team card pull quote */
.team-card-quote{
  margin-top:1rem;padding-left:1rem;border-left:2px solid var(--sage);
  font-family:'Cormorant',serif;font-style:italic;font-size:1rem;line-height:1.6;color:var(--ink-soft);
}
.team-card-quote cite{
  display:block;margin-top:0.4rem;font-family:'Instrument Sans',sans-serif;font-style:normal;
  font-size:10.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--stone);
}

/* Home: upcoming events strip */
.events-strip{
  display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap;
  background:var(--forest);color:white;padding:1rem 3rem;text-align:center;
  transition:background 0.2s;
}
.events-strip:hover{background:var(--forest-mid);}
.events-strip-label{font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.6);}
.events-strip-text{font-family:'Cormorant',serif;font-size:1.15rem;}
.events-strip-link{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,0.4);padding-bottom:1px;}

/* Standalone sub-pages (events, research) */
.sub-hero{background:var(--cream);border-bottom:1px solid var(--rule);padding:5rem 0 4.5rem;}
.sub-hero h1{margin-bottom:1.25rem;}
.sub-hero .serif-body{max-width:640px;}
.sub-hero-meta{margin-top:1.5rem;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-muted);}

/* Events */
.events-list{padding:5rem 0;display:flex;flex-direction:column;gap:4rem;}
.event-card{
  display:grid;grid-template-columns:minmax(260px,380px) 1fr;gap:3.5rem;align-items:start;
  background:white;border:1px solid var(--rule);border-radius:var(--radius);padding:2.5rem;
  scroll-margin-top:90px;
}
.event-graphic img{width:100%;height:auto;border-radius:var(--radius);box-shadow:0 10px 28px rgba(30,30,26,0.08);}
.event-date-kicker{font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:var(--earth);margin-bottom:0.75rem;}
.event-card h2{font-size:clamp(2rem,3.2vw,2.6rem);margin-bottom:0.35rem;}
.event-subtitle{font-family:'Cormorant',serif;font-style:italic;font-size:1.3rem;color:var(--forest-mid);line-height:1.4;margin-bottom:1.5rem;}
.event-meta{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.85rem 2rem;
  padding:1.25rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:1.5rem;
}
.event-meta div{font-size:14px;color:var(--ink-soft);}
.event-meta span{display:block;font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--stone);margin-bottom:0.15rem;}
.event-desc{font-family:'Cormorant',serif;font-size:1.15rem;font-weight:300;color:var(--ink-soft);line-height:1.85;margin-bottom:1.75rem;}
.event-register{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:2rem;}
.event-register .btn-forest[aria-disabled="true"]{background:var(--stone);border-color:var(--stone);cursor:default;}
.event-register-note{font-size:12.5px;color:var(--ink-muted);}
.event-facilitators h4{font-family:'Instrument Sans',sans-serif;font-size:10.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--forest-mid);margin-bottom:1rem;font-weight:400;}
.facilitator{margin-bottom:1.1rem;}
.facilitator-name{font-family:'Cormorant',serif;font-size:1.2rem;color:var(--ink);margin-bottom:0.2rem;}
.facilitator p{font-size:13.5px;color:var(--ink-muted);line-height:1.8;font-weight:300;}
.facilitator a{color:var(--forest-mid);border-bottom:1px solid rgba(78,107,89,0.3);}
.event-card.is-past{opacity:0.6;}
.events-signup{background:var(--forest-pale);padding:4rem 0;text-align:center;}
.events-signup h2{margin-bottom:0.75rem;}
.events-signup p{font-size:15px;color:var(--ink-muted);max-width:540px;margin:0 auto 2rem;font-weight:300;}

/* Research */
.research-body{padding:4.5rem 0 5rem;}
.research-inner{max-width:760px;margin:0 auto;padding:0 3rem;}
.research-inner h2{font-size:clamp(1.7rem,3vw,2.2rem);margin:3rem 0 1rem;}
.research-inner h2:first-child{margin-top:0;}
.research-inner p,.research-inner li{font-family:'Cormorant',serif;font-size:1.2rem;font-weight:300;color:var(--ink-soft);line-height:1.85;}
.research-inner p{margin-bottom:1rem;}
.research-inner ul{margin:0 0 1rem 1.25rem;}
.research-inner li{margin-bottom:0.85rem;}
.research-inner sup{font-family:'Instrument Sans',sans-serif;font-size:0.6em;color:var(--forest-mid);}
.research-inner sup a{color:var(--forest-mid);}
.research-callout{
  background:var(--cream);border-left:3px solid var(--forest-mid);padding:1.5rem 1.75rem;margin:2.5rem 0;
}
.research-callout p{margin:0 !important;}
.research-ctas{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2.5rem;}
.references{background:var(--cream);border-top:1px solid var(--rule);padding:4rem 0;}
.references h2{font-size:1.6rem;margin-bottom:1.5rem;}
.references ol{margin-left:1.25rem;}
.references li{font-size:13.5px;color:var(--ink-muted);line-height:1.75;margin-bottom:0.9rem;font-weight:300;scroll-margin-top:90px;}
.references li a{color:var(--forest-mid);word-break:break-all;}

@media (max-width: 768px){
  .events-strip{padding:1rem 1.25rem;gap:0.5rem 1rem;}
  .sub-hero{padding:3.25rem 0 3rem;}
  .events-list{padding:3rem 0;gap:2.5rem;}
  .event-card{grid-template-columns:1fr;gap:2rem;padding:1.5rem;}
  .event-graphic{max-width:300px;margin:0 auto;}
  .event-meta{grid-template-columns:1fr 1fr;gap:0.75rem 1rem;}
  .research-body{padding:3rem 0 3.5rem;}
  .research-inner{padding:0 1.25rem;}
  .research-inner p,.research-inner li{font-size:1.1rem;}
}

/* Nav: keep 9 links on one line at every desktop width */
.nav-links li a,.nav-contact-btn,.nav-logo-name,.nav-logo-tag{white-space:nowrap;}
@media (min-width: 769px) and (max-width: 1480px){
  nav{padding-left:2rem;padding-right:2rem;}
  .nav-logo-tag{display:none;}
  .nav-links li a{padding:0.5rem 0.6rem;letter-spacing:0.07em;}
}
@media (min-width: 769px) and (max-width: 1220px){
  .nav-contact-btn{display:none;}
  .nav-links li a{padding:0.5rem 0.5rem;font-size:11px;letter-spacing:0.05em;}
}
@media (min-width: 769px) and (max-width: 1040px){
  nav{flex-wrap:wrap;padding:0.9rem 1.5rem;}
  .nav-links{display:none;flex-direction:column;width:100%;}
  .nav-links.open{display:flex;padding:0.75rem 0 1rem;}
  .nav-links li a{padding:0.65rem 0;font-size:11px;}
  .nav-hamburger{display:flex;}
}

/* Facilitator photos on event listings */
.facilitator.has-photo{display:grid;grid-template-columns:72px 1fr;gap:1.1rem;align-items:start;}
.facilitator-photo{width:72px;height:72px;border-radius:50%;object-fit:cover;}
.facilitator p + p{margin-top:0.6rem;}
@media (max-width: 768px){
  .facilitator.has-photo{grid-template-columns:56px 1fr;gap:0.9rem;}
  .facilitator-photo{width:56px;height:56px;}
}

/* Mobile: buttons go full-width so stacked pairs line up */
@media (max-width: 768px){
  .btn-primary,.btn-outline,.btn-forest,.btn-earth{
    display:block;width:100%;text-align:center;
  }
  .team-cta-btns button,.cert-cta-btns button,.about-cta-btns button{max-width:none;}
}

/* Mobile: Lane's director block lines up with the full content width */
@media (max-width: 768px){
  .team-director-photo{max-width:none;width:100%;}
  .team-director-creds{flex-direction:column;align-items:stretch;}
  .team-cred-tag{display:block;text-align:center;}
}
