/* =====================================================================
   Fit With Shruti — 3.1.0 "Rich" layer
   Loads AFTER style.css. Purely additive: textures, depth, serif display
   type, botanical detail and a few meaningful motions.
   Remove this file (and its enqueue in functions.php) to revert fully.
   ===================================================================== */

:root{
  --font-display:"Fraunces","Cormorant Garamond",Georgia,"Times New Roman",serif;
  --moss:#0F3826;
  --sage:#E4EBDF;
  --ivory:#FFFDF7;
  --gold-deep:#8A6A2C;
  --gold-light:#E6C98B;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --grain-dark:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --grain-light:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.35 0 0 0 0 0.28 0 0 0 0 0.12 0 0 0 0.45 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --sprig:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 320' fill='none' stroke='%23C9A15A' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 312C58 236 80 150 150 14'/%3E%3Cg transform='translate(38 292) rotate(-30) scale(1.15)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(42 284) rotate(-165) scale(1.1)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(52 250) rotate(-28) scale(1.05)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(55 243) rotate(-160) scale(1.0)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(66 206) rotate(-26) scale(0.95)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(70 198) rotate(-158) scale(0.9)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(84 160) rotate(-24) scale(0.82)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(88 152) rotate(-156) scale(0.78)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(104 112) rotate(-22) scale(0.68)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(108 104) rotate(-154) scale(0.62)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(126 64) rotate(-20) scale(0.5)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cg transform='translate(130 56) rotate(-150) scale(0.45)'%3E%3Cpath d='M0 0C6-14 22-18 40-12C33 5 14 13 0 0Z'/%3E%3Cpath d='M3 0L36-9'/%3E%3C/g%3E%3Cpath d='M150 14C146 24 150 32 156 36C158 26 156 18 150 14Z'/%3E%3C/svg%3E");
}

html{scrollbar-color:#C9A15A #EFEADB;scrollbar-width:thin}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:#EFEADB}
::-webkit-scrollbar-thumb{background:linear-gradient(#D3AE6C,#B0863F);border-radius:10px;border:3px solid #EFEADB}

/* ---------- display typography ---------- */
body h1,body h2,body h3,
body .pillar em,body .process-item h3,body .why-card h3,
body .pcard h3,body .resource-card h3,body .oc h3,body .focus-card h3{
  font-family:var(--font-display)!important;
  font-optical-sizing:auto;
  font-weight:500;
  letter-spacing:-.018em;
}
body h1{font-weight:500;letter-spacing:-.028em}
body .hero h1{font-size:clamp(38px,5vw,66px);line-height:1.04}
body .page-hero h1{font-weight:500}
body .pcard h3,body .resource-card h3,body .focus-card h3,body .oc h3,body .why-card h3{font-weight:600;letter-spacing:-.012em}
body .hl,body .hero h1 .hl{
  font-family:var(--font-display)!important;
  font-style:italic;
  font-weight:500;
  font-size:1em;
  line-height:inherit;
  letter-spacing:-.02em;
  background:linear-gradient(transparent 80%,rgba(201,161,90,.32) 80%,rgba(201,161,90,.32) 92%,transparent 92%);
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
  padding:0 .06em;
}
body .hl-dark,body .section-dark .hl,body .cta-band .hl{
  background:linear-gradient(transparent 80%,rgba(230,201,139,.25) 80%,rgba(230,201,139,.25) 92%,transparent 92%);
}
body .hero h1 .hl{display:inline}

/* ---------- announcement bar ---------- */
.preheader{
  position:relative;
  background:linear-gradient(90deg,#08190F,var(--moss) 50%,#08190F);
  border-bottom:1px solid rgba(201,161,90,.35);
  letter-spacing:.04em;
}
.preheader::before,.preheader::after{
  content:"";display:inline-block;width:5px;height:5px;margin:0 12px;vertical-align:middle;
  background:var(--lime);transform:rotate(45deg);opacity:.9;
}

/* ---------- header: reacts to scroll ---------- */
.site-header{transition:box-shadow .3s,background-color .3s}
.site-header .nav{transition:min-height .3s var(--ease-out)}
.site-header.is-scrolled{
  background:rgba(250,248,241,.95);
  box-shadow:0 12px 32px -20px rgba(11,35,24,.45);
}
.site-header.is-scrolled .nav{min-height:60px}
.brand-mark{
  background:linear-gradient(145deg,#12452F,#0B2318);
  box-shadow:0 0 0 1px rgba(201,161,90,.55),0 8px 18px -8px rgba(11,35,24,.6);
  font-family:var(--font-display);font-style:italic;font-weight:600;
}
.brand-text strong{font-family:var(--font-display);font-weight:600;font-size:17px;letter-spacing:-.01em}
.hc-progress{
  position:fixed;top:0;left:0;right:0;height:3px;z-index:100;pointer-events:none;
  background:var(--gold-grad);transform-origin:0 50%;transform:scaleX(0);
  box-shadow:0 0 12px rgba(201,161,90,.6);
}

/* ---------- eyebrow tags: sentence case + leaf mark ---------- */
.tag{
  text-transform:none;letter-spacing:.01em;font-size:13px;font-weight:600;padding:8px 15px 8px 12px;
  background:linear-gradient(180deg,#fff,#FBF6EA);
  border-color:rgba(201,161,90,.45);
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 6px 14px -10px rgba(138,106,44,.55);
}
.tag>i{
  width:14px;height:14px;border-radius:0;background:var(--lime2);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4C11 4 5 7.4 5 14c0 3.5 2.3 6 5.5 6C16.5 20 20 13 20 4Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 4C11 4 5 7.4 5 14c0 3.5 2.3 6 5.5 6C16.5 20 20 13 20 4Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.tag.on-dark{background:rgba(255,255,255,.07);border-color:rgba(230,201,139,.4);box-shadow:none}
.tag.on-dark>i{background:var(--gold-light)}

/* ---------- buttons ---------- */
.btn-lime,.offer-cta{position:relative;overflow:hidden;isolation:isolate}
.btn-lime::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);
  transform:translateX(-130%);transition:transform .8s var(--ease-out);
}
.btn-lime:hover::after{transform:translateX(130%)}
.btn .hc-btn-icon--arrow,.pcard-link .hc-btn-icon--arrow,.offer-cta .hc-btn-icon--arrow{transition:transform .3s var(--ease-out)}
.btn:hover .hc-btn-icon--arrow,.pcard-link:hover .hc-btn-icon--arrow,.offer-cta:hover .hc-btn-icon--arrow{transform:translateX(4px)}

/* =====================================================================
   HERO — the one orchestrated moment
   ===================================================================== */
.hero{
  overflow:hidden;overflow:clip;isolation:isolate;
  background:
    radial-gradient(680px 460px at 90% 8%,rgba(201,161,90,.22),transparent 62%),
    radial-gradient(520px 380px at 2% 98%,rgba(15,56,38,.10),transparent 64%),
    linear-gradient(180deg,#FDFBF5 0%,var(--paper) 100%);
}
.hero::before{ /* paper grain */
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:var(--grain-light);opacity:.28;mix-blend-mode:multiply;
}
.hero::after{ /* botanical sprig, bottom-left */
  content:"";position:absolute;z-index:-1;pointer-events:none;
  left:-120px;bottom:-30px;width:280px;height:370px;
  background:var(--sprig) center/contain no-repeat;opacity:.3;transform:rotate(-8deg);
}
body .hero .hero-media{position:relative}
body .hero .hero-media::before{ /* slow orbit ring */
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:min(112%,620px);aspect-ratio:1;left:50%;top:44%;
  translate:-50% -50%;
  border-radius:50%;border:1px dashed rgba(176,134,63,.5);
}
body .hero .hero-media::after{ /* small gold orb */
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:84px;height:84px;right:2%;top:6%;border-radius:50%;
  background:radial-gradient(circle at 32% 30%,#F3DFA9,#C9A15A 60%,#A57B35);
  box-shadow:0 18px 36px -14px rgba(138,106,44,.7);
  opacity:.9;
}
body .hero .hero-media .hero-photo{z-index:1}
body .hero-photo::before{
  background:
    radial-gradient(240px 200px at 50% 12%,rgba(255,255,255,.55),transparent 70%),
    linear-gradient(170deg,#F4E8CB 0%,#E8D4A8 52%,#D6B97C 100%);
  box-shadow:
    inset 0 0 0 1px rgba(176,134,63,.3),
    0 0 0 10px rgba(201,161,90,.10),
    0 0 0 11px rgba(176,134,63,.34),
    0 40px 70px -40px rgba(11,35,24,.5);
}
body .hero .hero-media .hero-float{
  z-index:3;
  background:rgba(255,255,255,.72);
  -webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);
  border:1px solid rgba(255,255,255,.75);
  box-shadow:0 24px 44px -22px rgba(11,35,24,.45),0 1px 0 rgba(255,255,255,.9) inset;
}
body .hero .hero-media .hero-float b{font-family:var(--font-display);font-weight:600;font-size:16px}
body .hero .hero-media .hero-float:not(.hero-float-name){padding-left:50px;max-width:276px!important}
body .hero .hero-media .hero-float:not(.hero-float-name)::before{
  content:"";position:absolute;left:15px;top:17px;width:24px;height:24px;border-radius:50%;
  background:var(--sprig) center/62% no-repeat,linear-gradient(145deg,#F8EFD9,#EAD6A8);
  border:1px solid rgba(176,134,63,.45);
}
body .hero .hero-media .hero-float-name{
  background:linear-gradient(150deg,rgba(18,69,47,.94),rgba(11,35,24,.96))!important;
  border:1px solid rgba(230,201,139,.4)!important;
}
body .hero .hero-media .hero-float-name::after{
  content:"";position:absolute;left:18px;right:18px;bottom:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--lime),transparent);
}
.trustbar{
  position:relative;
  background:linear-gradient(90deg,#08190F,var(--moss) 50%,#08190F);
  border-top:1px solid rgba(201,161,90,.4);
  border-bottom:1px solid rgba(201,161,90,.25);
  font-family:var(--font-display);font-style:italic;font-size:15px;letter-spacing:.01em;
}
.trustbar .dot{font-size:0;display:inline-block;width:5px;height:5px;background:var(--lime);transform:rotate(45deg);opacity:.9}

/* ---- hero entrance: one sequence on load, nothing else on the page auto-plays ---- */
@media (prefers-reduced-motion:no-preference){
  @keyframes hcRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
  @keyframes hcArch{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}
  @keyframes hcFloatIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
  @keyframes hcBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
  @keyframes hcSpin{to{rotate:360deg}}
  .hero .hero-grid>div:first-child>*{animation:hcRise .95s var(--ease-out) both}
  .hero .hero-grid>div:first-child>:nth-child(1){animation-delay:.05s}
  .hero .hero-grid>div:first-child>:nth-child(2){animation-delay:.17s}
  .hero .hero-grid>div:first-child>:nth-child(3){animation-delay:.32s}
  .hero .hero-grid>div:first-child>:nth-child(4){animation-delay:.45s}
  .hero .hero-grid>div:first-child>:nth-child(5){animation-delay:.55s}
  .hero .hero-photo{animation:hcArch 1.2s var(--ease-out) .2s both}
  body .hero .hero-media .hero-float:not(.hero-float-name){animation:hcFloatIn .9s var(--ease-out) .85s both,hcBob 8s ease-in-out 1.8s infinite}
  body .hero .hero-media .hero-float-name{animation:hcFloatIn .9s var(--ease-out) 1.05s both,hcBob 9s ease-in-out 2.2s infinite reverse}
  body .hero .hero-media::before{animation:hcSpin 140s linear infinite}
}

/* ---------- pillars ---------- */
.pillars{
  position:relative;
  background:linear-gradient(180deg,#fff,#FDFAF2);
  border:1px solid rgba(201,161,90,.35);
  box-shadow:0 30px 60px -38px rgba(11,35,24,.35),0 1px 0 #fff inset;
  margin-top:-4px;
}
.pillar{transition:background-color .3s}
.pillar:hover{background:rgba(248,239,217,.45)}
.pillar::before{
  content:"";display:block;width:50px;height:50px;margin:0 auto 14px;border-radius:50%;
  border:1px solid rgba(176,134,63,.4);
  box-shadow:0 0 0 5px rgba(233,214,174,.28);
  background-repeat:no-repeat;background-position:center;background-size:22px,100%;
}
.pillar:nth-child(1)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A5C1E' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.2'/%3E%3Cpath d='M5.5 20c.8-3.8 3.3-5.8 6.5-5.8s5.7 2 6.5 5.8'/%3E%3C/svg%3E"),linear-gradient(145deg,#FBF3DF,#F1E2BF)}
.pillar:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A5C1E' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='m8.3 12.3 2.6 2.6 4.9-5.4'/%3E%3C/svg%3E"),linear-gradient(145deg,#FBF3DF,#F1E2BF)}
.pillar:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A5C1E' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7.5-4.6-7.5-10A4.3 4.3 0 0 1 12 7.4 4.3 4.3 0 0 1 19.5 10c0 5.4-7.5 10-7.5 10Z'/%3E%3C/svg%3E"),linear-gradient(145deg,#FBF3DF,#F1E2BF)}
.pillar:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A5C1E' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21v-8'/%3E%3Cpath d='M12 13C12 9 9.5 7 5.5 7c0 4 2.5 6 6.5 6Z'/%3E%3Cpath d='M12 15c0-3.2 2-5 5.5-5 0 3.2-2 5-5.5 5Z'/%3E%3C/svg%3E"),linear-gradient(145deg,#FBF3DF,#F1E2BF)}
.pillar em{font-size:21px;font-weight:600}

/* ---------- section atmosphere ---------- */
.section-alt{
  position:relative;
  background:
    radial-gradient(700px 320px at 100% 0,rgba(201,161,90,.12),transparent 65%),
    radial-gradient(600px 300px at 0 100%,rgba(15,56,38,.06),transparent 65%),
    linear-gradient(180deg,#F4EFE0 0%,#EDE6D2 100%);
}
.section-alt::before{content:"";position:absolute;inset:0;pointer-events:none;background:var(--grain-light);opacity:.2;mix-blend-mode:multiply}
.section-alt>.container{position:relative}
.section-head h2{font-size:clamp(28px,3.5vw,46px);line-height:1.1}
.section-head p{color:#56655C}

/* ---------- problem cards: quieter, warm-tinted (they describe friction) ---------- */
.oc{
  background:
    radial-gradient(260px 160px at 100% 0,rgba(181,115,90,.13),transparent 70%),
    #fff;
  border-color:rgba(181,115,90,.28);
  position:relative;
}
.oc h3{color:#4A2E22}

/* ---------- process: a real sequence, with a progress line ---------- */
.process-list{position:relative}
.process-list::before{
  content:"";position:absolute;z-index:0;left:10%;right:10%;top:49px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,var(--lime2) var(--p,0%),rgba(176,134,63,.22) var(--p,0%));
}
.process-item{position:relative;z-index:1;border-top-color:rgba(201,161,90,.4)}
.process-num{
  width:44px;height:44px;border-radius:50%;
  background:radial-gradient(circle at 30% 25%,#17583B,#0B2318);
  color:var(--gold-light);
  font-family:var(--font-display);font-style:italic;font-size:17px;font-weight:600;
  box-shadow:0 0 0 4px #FBF3DF,0 0 0 5px rgba(176,134,63,.55),0 10px 20px -8px rgba(11,35,24,.6);
}
@media(max-width:1100px){.process-list::before{display:none}}

/* ---------- dark sections: depth, grain, botanical ---------- */
.section-dark{
  position:relative;overflow:hidden;isolation:isolate;
  background:
    radial-gradient(760px 420px at 88% -8%,rgba(201,161,90,.2),transparent 62%),
    radial-gradient(620px 420px at -6% 110%,rgba(60,140,100,.2),transparent 62%),
    linear-gradient(160deg,#0B2318,#0F3826 68%,#0A1F15);
}
.section-dark::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--grain-dark);opacity:.22;mix-blend-mode:soft-light}
.section-dark::after{
  content:"";position:absolute;z-index:-1;pointer-events:none;right:-80px;bottom:-90px;width:300px;height:400px;
  background:var(--sprig) center/contain no-repeat;opacity:.2;transform:rotate(14deg) scaleX(-1);
}
.coach-grid{position:relative}
.coach-media{
  position:relative;overflow:visible!important;
  background:none!important;box-shadow:none!important;
}
.coach-media::before{
  content:"";position:absolute;z-index:-1;inset:18px -18px -18px 18px;
  border:1px solid rgba(230,201,139,.5);border-radius:var(--r-l);
}
.coach-media .hc-managed-image,.coach-media img{
  border-radius:var(--r-l);
  box-shadow:0 40px 70px -34px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.08);
}
.coach-copy{position:relative}
.coach-copy::before{
  content:"\201C";position:absolute;left:-30px;top:-104px;z-index:-1;pointer-events:none;
  font-family:var(--font-display);font-size:230px;line-height:1;color:rgba(230,201,139,.14);
}
.coach-copy h2{font-weight:500}
.coach-copy p:first-of-type{font-family:var(--font-display);font-size:clamp(19px,1.9vw,23px);line-height:1.55;color:#E4EEE7}

/* ---------- cards ---------- */
.pcard,.focus-card,.why-card,.resource-card{position:relative}
.pcard::before,.focus-card::before,.why-card::before,.resource-card::before{
  content:"";position:absolute;z-index:2;left:0;right:0;top:0;height:3px;
  background:var(--gold-grad);transform:scaleX(0);transform-origin:0 50%;
  transition:transform .5s var(--ease-out);
}
.pcard:hover::before,.focus-card:hover::before,.why-card:hover::before,.resource-card:hover::before{transform:scaleX(1)}
.pcard,.focus-card,.why-card,.resource-card,.hcp-tm-c{
  background-image:linear-gradient(180deg,rgba(255,255,255,0),rgba(248,239,217,.35));
}
.focus-card .focus-icon,.hc-semantic-icon{
  position:relative;
  background:linear-gradient(145deg,#FBF3DF,#F1E2BF);
  box-shadow:0 0 0 5px rgba(233,214,174,.28);
  transition:background-color .35s,color .35s,box-shadow .35s,transform .35s var(--ease-out);
}
.focus-card:hover .focus-icon,.why-card:hover .hc-semantic-icon,.focus-card:hover .hc-semantic-icon{
  background:linear-gradient(145deg,#17583B,#0B2318);color:var(--gold-light);
  box-shadow:0 0 0 5px rgba(201,161,90,.28);transform:translateY(-2px) rotate(-4deg);
}
.why-card>span{font-family:var(--font-display);font-style:italic;color:var(--gold-deep)}
.pcard-kicker{background:var(--sage);color:#2B5A3F;border:1px solid rgba(43,90,63,.18)}
.pcard-price{font-family:var(--font-display);font-weight:600;font-size:23px}
.pcard-price-label{font-family:Inter,sans-serif}
.pcard-link{border-bottom:1px solid transparent;transition:border-color .25s,color .25s}
.pcard-link:hover{border-bottom-color:currentColor}

/* ---------- testimonials ---------- */
body .hcp-tm .hcp-tm-c{
  position:relative;
  background:
    radial-gradient(260px 180px at 100% 0,rgba(201,161,90,.13),transparent 70%),
    linear-gradient(180deg,#FFFEFA,#FBF5E6);
  border-color:rgba(201,161,90,.4);
  box-shadow:0 1px 0 #fff inset,0 24px 44px -30px rgba(11,35,24,.4);
}
body .hcp-tm .hcp-tm-c>strong::before{
  content:"\201C";display:inline-block;margin-right:.12em;
  font-style:normal;font-size:1.9em;line-height:0;vertical-align:-.28em;color:var(--lime);
}
body .hcp-tm .hcp-tm-stars{
  color:#C28A2B!important;
  text-shadow:0 0 14px rgba(201,161,90,.55);
  letter-spacing:4px!important;
}
body .hcp-tm .hcp-tm-c>strong{
  font-family:var(--font-display)!important;font-style:italic!important;font-weight:500!important;
  color:#1B3326!important;position:relative;z-index:1;
}
body .hcp-tm .hcp-tm-ba figure{box-shadow:0 0 0 3px #fff,0 0 0 4px rgba(201,161,90,.4)}
body .hcp-tm .hcp-tm-ba figcaption{
  text-transform:none;letter-spacing:.02em;font-size:11.5px;font-weight:600;
  background:rgba(11,35,24,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  border-color:rgba(255,255,255,.35);
}
body .hcp-tm .hcp-tm-who img{border:2px solid var(--lime)!important}
body .hcp-tm .hcp-tm-who b{font-family:var(--font-display);font-weight:600;font-size:15px!important}
body .hcp-tm .hcp-tm-story-link{
  margin-left:auto;font-weight:700;font-size:13px;color:var(--gold-deep);white-space:nowrap;
  border-bottom:1px solid rgba(138,106,44,.35);transition:color .2s,border-color .2s;
}
body .hcp-tm .hcp-tm-story-link:hover{color:var(--forest);border-color:var(--forest)}

/* ---------- CTA band ---------- */
.cta-band{
  position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(150deg,#0B2318,#0F3826 60%,#0A1F15);
  border:1px solid rgba(230,201,139,.28);
  box-shadow:0 44px 80px -40px rgba(11,35,24,.8),0 1px 0 rgba(255,255,255,.07) inset;
}
.cta-band::before{
  content:"";position:absolute;z-index:-2;inset:-40%;pointer-events:none;
  background:
    radial-gradient(closest-side at 72% 28%,rgba(201,161,90,.32),transparent 70%),
    radial-gradient(closest-side at 18% 82%,rgba(70,160,115,.26),transparent 70%);
}
.cta-band::after{
  content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;
  background:var(--sprig) right -30px bottom -50px/230px no-repeat,var(--grain-dark);
  opacity:.5;mix-blend-mode:soft-light;
}
.cta-band h2{font-weight:500}
.cta-checks span::before{color:var(--gold-light)}
@media (prefers-reduced-motion:no-preference){
  @keyframes hcDrift{from{transform:translate(-3%,-2%)}to{transform:translate(4%,3%)}}
  .cta-band::before{animation:hcDrift 20s ease-in-out infinite alternate}
}

/* ---------- FAQ: a proper accordion ---------- */
.faq{display:grid;gap:12px;max-width:820px}
.faq details{
  border:1px solid var(--line);border-radius:18px;padding:0;background:#fff;
  box-shadow:0 14px 30px -26px rgba(11,35,24,.4);
  transition:border-color .3s,box-shadow .3s,background-color .3s;
}
.faq details:hover{border-color:rgba(201,161,90,.6)}
.faq details[open]{
  border-color:rgba(201,161,90,.75);
  background:linear-gradient(180deg,#fff,#FCF7E9);
  box-shadow:0 26px 44px -28px rgba(11,35,24,.45);
}
.faq summary{
  padding:19px 22px;gap:16px;font-family:var(--font-display);font-weight:500;font-size:18px;line-height:1.35;
}
.faq summary::after{
  width:30px;height:30px;flex:0 0 30px;border:1px solid rgba(176,134,63,.5);opacity:1;color:var(--gold-deep);
  background:
    linear-gradient(currentColor,currentColor) center/12px 1.6px no-repeat,
    linear-gradient(currentColor,currentColor) center/1.6px 12px no-repeat,
    #F8EFD9;
  transition:transform .4s var(--ease-out),background-color .3s;
}
.faq details[open] summary::after{
  background:
    linear-gradient(currentColor,currentColor) center/12px 1.6px no-repeat,
    linear-gradient(currentColor,currentColor) center/1.6px 12px no-repeat,
    #F1E2BF;
  transform:rotate(135deg);
}
.faq details>p{margin:0;padding:0 22px 22px;max-width:64ch;font-size:16px;line-height:1.7}
@media (prefers-reduced-motion:no-preference){
  @keyframes hcFaq{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
  .faq details[open]>p{animation:hcFaq .4s var(--ease-out)}
}

/* ---------- offer bar ---------- */
.offer-bar{
  position:relative;
  background:linear-gradient(100deg,#A9654C,#C0805F 50%,#C9A15A);
  border-top:1px solid rgba(255,255,255,.35);
}
.offer-bar::before{content:"";position:absolute;inset:0;pointer-events:none;background:var(--grain-light);opacity:.35;mix-blend-mode:multiply}
.offer-bar .container{position:relative}
.offer-copy strong{font-family:var(--font-display)!important;font-weight:600;font-size:19px;color:#10231A}
.offer-copy span{color:#1B3326;opacity:.9}
.offer-cta{background:linear-gradient(145deg,#12452F,#0B2318)!important;color:#fff!important;border:1px solid rgba(230,201,139,.5)!important}

/* ---------- inner pages ---------- */
.page-hero{
  position:relative;overflow:hidden;isolation:isolate;
  background:
    radial-gradient(620px 320px at 92% 0,rgba(201,161,90,.2),transparent 65%),
    linear-gradient(180deg,#F7F2E3,var(--paper));
  border-bottom:1px solid rgba(201,161,90,.3);
}
.page-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--grain-light);opacity:.45;mix-blend-mode:multiply}
.page-hero::after{
  content:"";position:absolute;z-index:-1;pointer-events:none;right:-20px;top:-30px;width:240px;height:320px;
  background:var(--sprig) center/contain no-repeat;opacity:.28;transform:rotate(168deg);
}
.page-hero-media.hc-has-image .hc-managed-image,.media-block .hc-managed-image{
  border-radius:var(--r-l);box-shadow:0 30px 60px -34px rgba(11,35,24,.55),0 0 0 1px rgba(201,161,90,.35);
}
.breadcrumb a{color:var(--gold-deep);font-weight:600}
.who-cta{
  background:radial-gradient(260px 160px at 100% 0,rgba(201,161,90,.18),transparent 70%),#fff;
  border-color:rgba(201,161,90,.45);
}

/* ---------- footer ---------- */
.site-footer{
  position:relative;overflow:hidden;isolation:isolate;
  background:
    radial-gradient(700px 320px at 100% 0,rgba(201,161,90,.13),transparent 65%),
    linear-gradient(180deg,#0B2318,#07160E);
}
.site-footer::before{
  content:"";position:absolute;left:0;right:0;top:0;height:2px;z-index:1;
  background:linear-gradient(90deg,transparent,var(--lime) 30%,var(--gold-light) 50%,var(--lime) 70%,transparent);
}
.site-footer::after{
  content:"";position:absolute;z-index:-1;pointer-events:none;right:-20px;bottom:-40px;width:340px;height:450px;
  background:var(--sprig) center/contain no-repeat;opacity:.16;transform:rotate(-12deg);
}
.footer-brand strong{font-family:var(--font-display)!important;font-weight:500;font-size:26px!important;letter-spacing:-.01em}
.footer-brand .small{font-family:var(--font-display);font-style:italic;font-size:16px;color:var(--gold-light)}
.site-footer h3{color:var(--gold-light);letter-spacing:.14em;font-size:12px}
.footer-social{
  display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;
  border:1px solid rgba(230,201,139,.4);color:var(--gold-light);
  transition:background-color .3s,color .3s,transform .3s var(--ease-out),border-color .3s;
}
.footer-social svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.footer-social:hover{background:var(--gold-light);color:var(--forest)!important;transform:translateY(-3px);border-color:var(--gold-light)}
.footer-bottom{border-top-color:rgba(230,201,139,.18)}

/* ---------- forms & misc ---------- */
.hc-bmi-card,.contact-form,.hc-booking-app{
  border-color:rgba(201,161,90,.4);
  box-shadow:0 1px 0 #fff inset,0 30px 54px -34px rgba(11,35,24,.4);
}
.post-body blockquote{
  border-left:3px solid var(--lime);padding:6px 0 6px 22px;margin:1.6em 0;
  font-family:var(--font-display);font-style:italic;font-size:1.2em;color:var(--forest);
}

/* ---------- scroll reveal (JS adds .hc-reveal only to sequences) ---------- */
html.hc-js .hc-reveal{opacity:0;transform:translateY(18px)}
html.hc-js .hc-reveal.is-in{
  opacity:1;transform:none;
  transition:opacity .8s var(--ease-out),transform .8s var(--ease-out);
  transition-delay:calc(var(--i,0)*110ms);
}

/* ---------- responsive tuning ---------- */
@media(max-width:900px){
  .hero::after{width:200px;height:270px;opacity:.28}
  body .hero .hero-media::before{width:104%}
  body .hero .hero-media::after{width:60px;height:60px}
  .coach-media::before{inset:12px -10px -12px 10px}
  .coach-copy::before{font-size:170px;top:-46px}
}
@media(max-width:640px){
  .trustbar .dot{display:none}
  .preheader::before,.preheader::after{display:none}
  body .hero .hero-media .hero-float:not(.hero-float-name){padding-left:13px}
  body .hero .hero-media .hero-float:not(.hero-float-name)::before{display:none}
  .faq summary{font-size:16.5px;padding:16px 16px}
  .faq details>p{padding:0 16px 18px}
  .pillar::before{width:42px;height:42px;background-size:19px,100%}
  .section-dark::after,.site-footer::after{opacity:.1}
}
@media(prefers-reduced-motion:reduce){
  html.hc-js .hc-reveal{opacity:1;transform:none}
  .hc-progress{display:none}
}

/* =====================================================================
   3.1.1 — fixes from live iPad review
   ===================================================================== */
/* iOS paints unstyled <button> text system-blue (booking time slots). :where() keeps specificity at zero,
   so the plugin's own selected/hover colours still win. */
:where(.hc-booking-app,.fx-booking) button{color:var(--forest)}

/* Footer column titles are UI labels, not display headings */
body .site-footer h3{font-family:Inter,system-ui,sans-serif!important;font-weight:700;letter-spacing:.14em}

/* Tablet: footer in two columns instead of one very long stack */
@media(min-width:641px) and (max-width:900px){
  .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px 40px!important}
  .footer-brand{grid-column:1/-1}
}
/* Tablet: the orbit ring crossed the hero text when the layout stacks */
@media(max-width:900px){
  body .hero .hero-media::before{display:none}
}
/* Tablet: keep the sticky CTA clear of the "Ask Aarohi" chat pill on the right */
@media(min-width:641px) and (max-width:1100px){
  .mobile-sticky{right:auto;width:min(520px,calc(100% - 320px))}
}
/* Contact cards: don't leave the third card orphaned beside empty space on tablets */
@media(min-width:641px) and (max-width:1000px){
  .contact-grid>.ccard:last-child:nth-child(odd){grid-column:1/-1}
}

/* =====================================================================
   3.1.2 — homepage Client stories
   ===================================================================== */
.tcarousel:has(.hcp-tm){overflow:visible;display:block;scroll-snap-type:none;padding:0}
.tcarousel .hcp-tm{margin:0}
/* Fallback only: if the plugin's original .tcard markup is ever used, give it the same family look */
.tcarousel .tcard{
  background:radial-gradient(260px 180px at 100% 0,rgba(201,161,90,.13),transparent 70%),linear-gradient(180deg,#FFFEFA,#FBF5E6);
  border-color:rgba(201,161,90,.4);
}
.tcarousel .tcard .tcard-message{font-family:var(--font-display);font-style:italic}
.tcarousel .tcard .tclient-card-identity b{font-family:var(--font-display)!important}

/* =====================================================================
   3.1.3 — single success story: Before/After fills the full hero height
   (tablet + desktop; the stacked phone layout keeps its 4:5 crop)
   ===================================================================== */
@media(min-width:761px){
  .single-hc_story .success-story-single-hero .tclient-grid{align-items:stretch!important}
  .single-hc_story .success-story-single-hero .tclient-photo{
    align-self:stretch!important;display:flex!important;height:auto!important;min-height:0!important;
  }
  .single-hc_story .success-story-single-hero .success-story-before-after{
    flex:1 1 auto;width:100%;height:auto!important;align-items:stretch!important;grid-template-rows:1fr;
  }
  .single-hc_story .success-story-single-hero .success-story-before-after figure{
    position:relative;height:auto!important;min-height:340px;aspect-ratio:auto!important;
  }
  .single-hc_story .success-story-single-hero .success-story-before-after img{
    position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover!important;
  }
}
