/* Praxis Wellness: light clinic site in the logo's green. Photos run full-bleed as section backgrounds
   under soft paper or green washes. Deliberately single (light) theme. */
html{-webkit-text-size-adjust:100%}
body{margin:0}
img{max-width:100%;height:auto}
[hidden]{display:none!important}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:14px;counter-reset:s}
.steps li{display:grid;grid-template-columns:30px 1fr;gap:12px;font-size:15px;counter-increment:s}
.steps li::before{content:counter(s);width:30px;height:30px;border-radius:50%;border:1.5px solid #2F5A43;display:grid;place-items:center;font-weight:700;font-size:13px;color:#2F5A43}
.steps b{display:block}
/* self-check result flow: 3 steps */
.stepdots{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:#566258}
.stepdots span{display:flex;align-items:center;gap:6px}
.stepdots i{width:22px;height:22px;border-radius:50%;border:1.5px solid #E0E4D7;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:700}
.stepdots .on i{background:#2F5A43;border-color:#2F5A43;color:#fff}
.stepdots .done i{background:#E4ECE3;border-color:#E4ECE3;color:#2F5A43}
.stepdots b{font-weight:600}
.stepdots .sep{width:18px;height:1.5px;background:#E0E4D7}
.scorebox{background:#fff;border:1px solid #E0E4D7;border-radius:16px;padding:20px 22px;display:grid;gap:4px}
.scorebox .score{font-family:"Gloock",Georgia,serif;font-size:30px;line-height:1;color:#566258;margin:2px 0 0}
.scorebox .score span{font-size:64px;color:#2F5A43}
.scorebox .result-band{font-size:38px;margin-top:6px}
.btn.wide{width:100%;justify-content:center}
.steplinks{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px}
.linkbtn{background:none;border:0;color:#2F5A43;font:600 15px "Figtree",sans-serif;cursor:pointer;padding:6px 0;text-decoration:underline;text-underline-offset:3px}
.guidebox{background:#FBF0D9;border-radius:14px;padding:20px;display:grid;gap:12px}
.guidebox label{display:grid;gap:5px;font-size:14px;font-weight:600}
.guidebox input[type=email]{font:16px "Figtree",sans-serif;padding:11px 12px;border:1.5px solid #E0E4D7;border-radius:8px;background:#fff;width:100%}
.langpick{display:flex;gap:8px;flex-wrap:wrap}
.langpick button{border:1.5px solid #E0E4D7;background:#fff;border-radius:999px;padding:8px 14px;font:600 14px "Figtree","Noto Sans Gurmukhi","Noto Sans Devanagari",sans-serif;cursor:pointer;color:#24302A}
.langpick button[aria-pressed="true"]{background:#2F5A43;border-color:#2F5A43;color:#fff}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:8px;z-index:99;background:#fff;padding:8px 12px;border-radius:8px}
:root{
  color-scheme:light;
  --paper:#FBFAF6; --paper-rgb:251,250,246; --tint:#F1F3EB; --card:#FFFFFF; --ink:#24302A; --muted:#566258; --line:#E0E4D7;
  --green:#2F5A43; --green-rgb:38,74,55; --green-2:#4D7A5F; --on-green:#FFFFFF; --mist:#E4ECE3;
  --marigold:#D9A040; --marigold-soft:#FBF0D9; --gold-ink:#8A5E0E;
  --warn-bg:#FBE9E2; --warn-ink:#8A3317; --note-bg:#FFF6CF; --note-ink:#5A4300;
  --f-display:"Gloock", Georgia, serif;
  --f-body:"Figtree", "Noto Sans Gurmukhi", "Noto Sans Devanagari", system-ui, sans-serif;
  --f-pa:"Noto Sans Gurmukhi", "Figtree", sans-serif;
  --f-hi:"Noto Sans Devanagari", "Figtree", sans-serif;
  --r:16px;
}
*{box-sizing:border-box}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.65;padding-inline:16px;padding-block:0;overflow-x:hidden}
.wrap{max-width:1140px;margin-inline:auto}
h1,h2,h3{font-family:var(--f-display);font-weight:400;line-height:1.12;text-wrap:balance;margin:0;color:var(--ink)}
h1{font-size:clamp(40px,5.6vw,68px);letter-spacing:-.01em}
h2{font-size:clamp(30px,4vw,44px)}
h3{font-size:24px}
p{margin:0}
a{color:var(--green)}
:focus-visible{outline:3px solid var(--marigold);outline-offset:2px;border-radius:6px}
.pa{font-family:var(--f-pa)} .hi{font-family:var(--f-hi)}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.lede{color:var(--muted);max-width:62ch;font-size:18px}
.muted{color:var(--muted)}
section{padding-block:76px}
.full{margin-inline:-16px;padding-inline:16px}
.tint{background:var(--tint)}
.sec-head{display:grid;gap:12px;margin-bottom:36px}
.stack-sm{display:grid;gap:14px}

/* photo backgrounds */
.bg{background:linear-gradient(rgba(var(--paper-rgb),var(--ov,.88)),rgba(var(--paper-rgb),var(--ov,.88))),var(--img) center/cover no-repeat}
.bg-green{background:linear-gradient(rgba(var(--green-rgb),.84),rgba(var(--green-rgb),.84)),var(--img) center/cover no-repeat;color:var(--on-green)}
.bg-green h2,.bg-green h3{color:var(--on-green)}
.bg-green .eyebrow{color:#CFE3D3}
.bg-green .lede,.bg-green .muted{color:#E3ECE5}
.bghero{min-height:600px;display:flex;align-items:center;padding-block:80px;
  background:linear-gradient(90deg,rgba(var(--paper-rgb),.97) 0%,rgba(var(--paper-rgb),.93) 38%,rgba(var(--paper-rgb),.45) 66%,rgba(var(--paper-rgb),.05) 100%),var(--img) var(--pos,center)/cover no-repeat}
.bghero .inner{max-width:600px}
.bghero .sub{font-size:20px;color:var(--muted);margin-top:20px;max-width:44ch}
.bghero .ctas{margin-top:28px}
@media (max-width:860px){.bghero{min-height:0;padding-block:56px;background:linear-gradient(rgba(var(--paper-rgb),.86),rgba(var(--paper-rgb),.92)),var(--img) var(--pos,center)/cover no-repeat}}

.btn{display:inline-flex;align-items:center;gap:8px;font:600 16px/1 var(--f-body);padding:15px 22px;border-radius:999px;border:1.5px solid var(--green);background:var(--green);color:var(--on-green);text-decoration:none;cursor:pointer}
.btn:hover{background:var(--green-2);border-color:var(--green-2)}
.btn.ghost{background:rgba(255,255,255,.6);color:var(--green)}
.btn.ghost:hover{background:var(--mist)}
.btn.small{padding:10px 16px;font-size:14px}
.btn.light{background:var(--on-green);color:var(--green);border-color:var(--on-green)}
.btn.light-ghost{background:transparent;color:var(--on-green);border-color:var(--on-green)}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.trust{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:26px;font-size:14px;color:var(--muted)}
.trust span::before{content:"✓ ";color:var(--green-2);font-weight:700}

/* header */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(251,250,246,.97);border-bottom:1px solid var(--line);margin-inline:-16px;padding:10px 16px}
.nav{display:flex;align-items:center;gap:16px;justify-content:space-between;position:relative}
.brand img{height:46px;width:auto;display:block}
.nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0;font-size:15px}
.nav ul a{text-decoration:none;color:var(--muted);padding:8px 10px;border-radius:999px;display:block;white-space:nowrap}
.nav ul a:hover{color:var(--ink);background:var(--tint)}
.nav ul a[aria-current="page"]{color:var(--green);background:var(--mist);font-weight:600}
.nav-right{display:flex;gap:10px;align-items:center}
.menu-btn{display:none;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:9px 14px;font:600 14px var(--f-body);color:var(--ink);cursor:pointer}
@media (max-width:1240px){
  .menu-btn{display:block}
  .nav ul{display:none;position:absolute;left:-16px;right:-16px;top:calc(100% + 10px);background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;padding:8px 16px 16px}
  .nav ul.open{display:flex}
  .nav ul a{padding:12px 8px;font-size:17px}
}
@media (max-width:520px){.nav-right .btn{display:none}}

/* press strip */
.press{display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;justify-content:center;padding-block:22px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted);text-align:center}
.press b{font-family:var(--f-display);font-weight:400;font-size:18px;color:var(--ink)}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:10px 16px;font:500 15px var(--f-body);color:var(--ink);cursor:pointer;text-decoration:none}
.chip:hover{border-color:var(--green)}
.chip em{font-style:normal;color:var(--green-2);font-size:13px;margin-left:6px}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pillar{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:grid;gap:10px;align-content:start}
.pillar .tag{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.pillar.base{background:var(--mist);border-color:transparent}
.pillar p{color:var(--muted);font-size:15px}
@media (max-width:860px){.pillars{grid-template-columns:1fr}}

/* OFFER */
.offer-top{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.offer-top > *{min-width:0}
.pain{display:grid;gap:12px;margin-top:22px}
.pain p{font-size:18px}
.dream{display:grid;gap:10px;margin-top:22px;padding:22px;border-radius:var(--r);background:var(--card);border:1px solid var(--line)}
.dream li{font-size:17px}
.dream ul{margin:0;padding-left:20px;display:grid;gap:6px}
.vstack{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 10px 40px rgba(36,48,42,.08)}
.vstack .vh{padding:20px 22px;border-bottom:1px solid var(--line);display:grid;gap:4px}
.vstack .vh h3{font-size:26px}
.vrow{display:grid;grid-template-columns:1fr auto;gap:6px 16px;padding:16px 22px;border-bottom:1px solid var(--line)}
.vrow b{display:block;font-size:16px}
.vrow small{display:block;color:var(--muted);font-size:14px;line-height:1.45}
.vrow .val{font-variant-numeric:tabular-nums;color:var(--muted);font-size:15px;white-space:nowrap;text-align:right}
.vrow .tagb{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink);background:var(--marigold-soft);border-radius:4px;padding:2px 6px;margin-bottom:4px}
.vtotal{padding:18px 22px;display:grid;gap:6px;background:var(--tint)}
.vtotal .line{display:flex;justify-content:space-between;gap:12px;font-variant-numeric:tabular-nums}
.vtotal .strike{color:var(--muted);text-decoration:line-through}
.vtotal .price{font-family:var(--f-display);font-size:34px;color:var(--green)}
.vfoot{padding:18px 22px;display:grid;gap:10px}
.promise{border:1.5px dashed var(--green-2);border-radius:var(--r);padding:20px 22px;background:var(--card)}
.promise b{font-family:var(--f-display);font-weight:400;font-size:22px;display:block;margin-bottom:6px}
.way{margin-top:22px;padding:22px;border-radius:var(--r);background:var(--mist);display:grid;gap:14px}
.way ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:w}
.way li{display:grid;grid-template-columns:34px 1fr;gap:12px;counter-increment:w;font-size:15px}
.way li::before{content:counter(w);width:34px;height:34px;border-radius:50%;background:var(--green);color:var(--on-green);display:grid;place-items:center;font-weight:700}
.way li b{display:block;font-size:17px}
.way .greek{font-family:var(--f-display);font-size:20px}
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch;margin-top:8px}
.tier{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;display:grid;grid-template-rows:auto auto auto 1fr auto;gap:12px;position:relative}
.tier.best{border:2px solid var(--green);box-shadow:0 14px 44px rgba(36,48,42,.14)}
.tier .badge{position:absolute;top:-13px;left:24px;background:var(--marigold);color:#3A2705;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:4px 12px}
.tier h3{font-size:24px}
.tier .amt{font-family:var(--f-display);font-size:42px;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink)}
.tier.best .amt{color:var(--green)}
.tier .amt small{font-family:var(--f-body);font-size:15px;color:var(--muted)}
.tier .sub{font-size:14px;color:var(--muted)}
.tier ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px;align-content:start}
.tier li{padding-left:24px;position:relative}
.tier li::before{content:"✓";position:absolute;left:0;color:var(--green-2);font-weight:700}
.tier li.no{color:var(--muted);text-decoration:line-through}
.tier li.no::before{content:"–";color:var(--muted)}
.tier li.plus::before{content:"+";color:var(--gold-ink)}
.tier .btn{justify-content:center}
@media (max-width:900px){.tiers{grid-template-columns:1fr}.tier.best{order:-1}}
.scarce{display:flex;gap:10px;align-items:center;font-size:15px;font-weight:600;color:var(--gold-ink)}
.scarce i{width:10px;height:10px;border-radius:50%;background:var(--marigold);flex:none}
@media (max-width:900px){.offer-top{grid-template-columns:1fr}}

.grid4{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid4 > div{display:grid;gap:8px;align-content:start;border-top:2px solid var(--green-2);padding-top:18px}
.grid4 h3{font-size:21px}
.grid4 p{color:var(--muted);font-size:15px}
@media (max-width:760px){.grid4{grid-template-columns:1fr}}

/* service tiles with photo backgrounds */
.svc{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.svc a{position:relative;min-height:260px;border-radius:var(--r);overflow:hidden;text-decoration:none;color:#fff;display:flex;align-items:flex-end;
  background:linear-gradient(180deg,rgba(20,32,25,0) 30%,rgba(20,32,25,.82) 100%),var(--img) center/cover no-repeat}
.svc a:hover{outline:3px solid var(--marigold);outline-offset:-3px}
.svc .body{padding:22px;display:grid;gap:6px}
.svc h3{color:#fff}
.svc p{font-size:15px;color:#E7EEE9}
.svc .go{font-weight:600;font-size:15px;color:#F6DCA4}
@media (max-width:900px){.svc{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.svc{grid-template-columns:1fr}}

/* quiz cards */
.quizgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.qcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;display:grid;gap:10px;align-content:start;text-align:left;font:inherit;color:inherit;cursor:pointer}
.qcard:hover{border-color:var(--green)}
.qcard .meta{font-size:13px;color:var(--muted)}
.qcard p{font-size:15px;color:var(--muted)}
.qcard .go{font-weight:600;color:var(--green);font-size:15px}
.qcard.court{background:var(--marigold-soft);border-color:transparent}
@media (max-width:1000px){.quizgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.quizgrid{grid-template-columns:1fr}}
.fine{font-size:13px;color:var(--muted);margin-top:18px;max-width:80ch}

/* generic */
.stack{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.stack .row{display:flex;justify-content:space-between;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line);font-size:15px}
.stack .row:last-child{border-bottom:0}
.stack .row span:last-child{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;text-align:right}
.stack .total{background:var(--green);color:var(--on-green);font-weight:600}
.stack .total span:last-child{color:var(--on-green)}
.bullets{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px}
.bullets li{padding-left:26px;position:relative}
.bullets li::before{content:"";position:absolute;left:2px;top:.6em;width:10px;height:10px;transform:rotate(45deg);background:var(--marigold)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.two > *{min-width:0}
@media (max-width:860px){.two{grid-template-columns:1fr}}
.panelcard{background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:var(--r);padding:30px;max-width:640px;display:grid;gap:14px}

.phases{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.phase{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:10px;align-content:start}
.phase .n{font-size:13px;font-weight:700;color:var(--green-2);letter-spacing:.06em}
.phase ul{margin:0;padding-left:18px;color:var(--muted);font-size:15px;display:grid;gap:4px}
@media (max-width:860px){.phases{grid-template-columns:1fr}}

/* about */
.about{display:grid;grid-template-columns:340px 1fr;gap:52px;align-items:center}
.about > *{min-width:0}
.portrait{border-radius:var(--r);overflow:hidden;aspect-ratio:1089/1444;max-width:100%;background:var(--mist)}
.portrait img{width:100%;height:100%;object-fit:contain;display:block}
.creds{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.creds span{font-size:13px;border:1px solid var(--line);border-radius:8px;padding:5px 10px;background:var(--card)}
@media (max-width:760px){.about{grid-template-columns:1fr}.portrait{max-width:340px}}
.timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;border-left:2px solid var(--line);margin-left:6px}
.timeline li{position:relative;padding:0 0 26px 26px}
.timeline li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--green-2)}
.timeline b{display:block;font-size:17px}
.timeline span{color:var(--muted);font-size:15px}
.cover{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:var(--marigold-soft);border-radius:var(--r);padding:22px}
.cover .mag{width:84px;aspect-ratio:3/4;border-radius:6px;background:linear-gradient(160deg,var(--marigold),#B9792A);display:grid;place-items:center;color:#fff;font:700 11px/1.2 var(--f-body);text-align:center;padding:6px;letter-spacing:.04em}

.bi{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.bi > div{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:var(--r);padding:26px;display:grid;gap:12px;align-content:start}
.bi .pa p,.bi .hi p{font-size:18px;line-height:1.8}
@media (max-width:760px){.bi{grid-template-columns:1fr}}

.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.price{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;display:grid;gap:8px;align-content:start}
.price .amt{font-family:var(--f-display);font-size:32px;font-variant-numeric:tabular-nums}
.price .amt small{font-family:var(--f-body);font-size:14px;color:var(--muted)}
.price p{font-size:14px;color:var(--muted)}
@media (max-width:820px){.prices{grid-template-columns:1fr}}

.booker{display:grid;grid-template-columns:1.3fr 1fr;gap:28px}
.booker > *{min-width:0}
fieldset{border:0;padding:0;margin:0 0 24px}
legend{font-weight:600;margin-bottom:10px;padding:0}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts input{position:absolute;opacity:0;pointer-events:none}
.opts label{border:1.5px solid var(--line);background:var(--card);border-radius:10px;padding:11px 15px;cursor:pointer;font-size:15px}
.opts input:checked + label{border-color:var(--green);background:var(--green);color:var(--on-green)}
.opts input:focus-visible + label{outline:3px solid var(--marigold);outline-offset:2px}
.summary{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:14px;align-content:start}
.summary dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:15px}
.summary dt{color:var(--muted)} .summary dd{margin:0;font-weight:600}
@media (max-width:820px){.booker{grid-template-columns:1fr}}

details{border-bottom:1px solid var(--line);padding-block:18px}
summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:16px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--f-display);font-size:24px;line-height:1;color:var(--green-2)}
details[open] summary::after{content:"–"}
details p{color:var(--muted);margin-top:10px;max-width:70ch}

.band{padding-block:80px}
.band .inner{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center}
.band p{margin-top:8px;color:#E3ECE5}

/* footer */
.site-foot{margin-inline:-16px;padding:56px 16px 40px;background:var(--tint);border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.site-foot .foot-h{margin:0 0 12px;color:var(--ink);font:700 12px var(--f-body);letter-spacing:.12em;text-transform:uppercase}
.site-foot a:not(.btn){color:var(--muted);text-decoration:none}
.site-foot a:not(.btn):hover{color:var(--green)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1.3fr .9fr 1.2fr;gap:40px}
.foot-brand{display:grid;gap:12px;align-content:start;justify-items:start}
.foot-brand p{margin:0;max-width:34ch}
.site-foot .foot-contact a{color:var(--green);font-weight:600}
.foot-col{display:grid;align-content:start;gap:7px}
.foot-col .foot-h{margin-bottom:5px}
.foot-services{grid-template-columns:1fr 1fr;column-gap:20px}
.foot-services .foot-h{grid-column:1/-1}
.footer-signup label{font-size:14px}
.fs-row{display:flex;gap:8px;margin-top:8px}
.fs-row input{flex:1;min-width:0;padding:10px 12px;border:1.5px solid var(--line);border-radius:8px;font:15px var(--f-body);background:#fff}
.fs-consent{display:flex;gap:8px;align-items:flex-start;font-size:12px!important;margin-top:10px;line-height:1.45}
.fs-msg{font-size:13px;margin-top:6px}
.creds-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.cred{display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;line-height:1.35}
.cred b{display:block;color:var(--ink);font-size:14px}
.cred span:last-child{font-size:12.5px}
.seal{flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font:700 11px var(--f-body);letter-spacing:.04em;box-shadow:inset 0 0 0 3px var(--green),inset 0 0 0 4px rgba(255,255,255,.55)}
.seal img{width:100%;height:100%;object-fit:contain;border-radius:50%;background:#fff}
.foot-crisis{margin-top:36px;background:var(--warn-bg);color:var(--warn-ink);border-radius:12px;padding:12px 16px;font-size:13.5px}
.site-foot .foot-crisis a{color:inherit;font-weight:700;text-decoration:underline}
.foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;margin-top:20px;font-size:12.5px}
@media (max-width:980px){.foot-grid{grid-template-columns:1fr 1fr}.creds-strip{grid-template-columns:1fr}}
@media (max-width:560px){.foot-grid{grid-template-columns:1fr;gap:30px}}
@media (max-width:760px){.site-foot{padding-bottom:110px}}
.crisis{background:var(--warn-bg);color:var(--warn-ink);border-radius:var(--r);padding:16px 18px}
.crisis b{display:block}


.mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--paper);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));gap:10px}
.mbar .btn{flex:1;justify-content:center}
@media (max-width:720px){.mbar{display:flex}}

.note{display:block;background:var(--note-bg);color:var(--note-ink);font-size:13px;line-height:1.45;border-radius:8px;padding:8px 12px;margin-top:14px;max-width:72ch}
.note::before{content:"Review note · ";font-weight:700}
.note.internal::before{content:"Internal only · ";}
body.hide-notes .note{display:none}
.notes-toggle{position:fixed;right:16px;bottom:16px;z-index:31;background:var(--note-bg);color:var(--note-ink);border:1px solid var(--note-ink);border-radius:999px;font:600 13px var(--f-body);padding:9px 14px;cursor:pointer}
@media (max-width:720px){.notes-toggle{bottom:84px}}

.modal{position:fixed;inset:0;z-index:50;background:rgba(36,48,42,.45);display:grid;place-items:center;padding:16px}
.panel{background:var(--paper);color:var(--ink);width:min(640px,100%);max-height:calc(100% - 16px);overflow:auto;border-radius:20px;padding:28px;display:grid;gap:18px}
.ph{display:flex;justify-content:space-between;gap:12px;align-items:start}
.x{border:0;background:transparent;color:var(--muted);font-size:28px;line-height:1;cursor:pointer;padding:0 4px}
.prog{height:6px;background:var(--line);border-radius:6px;overflow:hidden}
.prog i{display:block;height:100%;background:var(--green-2);transition:width .25s}
.qtext{font-size:21px;font-weight:600;line-height:1.35}
.qframe{font-size:14px;color:var(--muted)}
.answers{display:grid;gap:8px}
.answers button{text-align:left;border:1.5px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:13px 16px;font:500 16px var(--f-body);cursor:pointer}
.answers button:hover{border-color:var(--green)}
.answers button.sel{border-color:var(--green);background:var(--green);color:var(--on-green)}
.qnav{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.qnav button{border:0;background:none;color:var(--green);font:600 14px var(--f-body);cursor:pointer;padding:0}
.sdrow{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.sdrow button{border:1.5px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;padding:14px 0;font:600 16px var(--f-body);cursor:pointer}
.sdrow button:hover{border-color:var(--green)}
.sdrow button.sel{background:var(--green);color:var(--on-green);border-color:var(--green)}
.sdends{display:flex;justify-content:space-between;font-weight:600;font-size:16px}
.content-note{background:var(--tint);border-radius:10px;padding:14px 16px;font-size:15px}
.result-band{font-family:var(--f-display);font-size:34px}
.scale{display:flex;gap:3px;height:12px;margin-top:6px}
.scale span{flex:1;background:var(--mist);border-radius:4px}
.scale span.on{background:var(--green)}
.scale-l{display:flex;gap:3px;font-size:12px;color:var(--muted);margin-top:4px}
.scale-l span{flex:1}
.gate{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;display:grid;gap:12px}
.gate label{font-size:14px;font-weight:600;display:grid;gap:5px}
.gate input[type=text],.gate input[type=email],.gate input[type=date],.gate input:not([type]),.gate textarea,.gate select{font:16px var(--f-body);padding:11px 12px;border:1.5px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);width:100%}
.gate .consent{display:flex;gap:10px;font-weight:400;font-size:13px;color:var(--muted);align-items:start}
.gate .consent input{margin-top:3px}
.ok{background:var(--marigold-soft);border-radius:10px;padding:14px 16px;font-size:15px}
.err{color:var(--warn-ink);font-size:14px}
.plan{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:15px;margin:0}
.plan dt{color:var(--muted)} .plan dd{margin:0;font-weight:600}
.sharebox{background:var(--mist);border-radius:var(--r);padding:20px;display:grid;gap:10px}
.sharebox .btn{justify-self:start}
.sumprev{white-space:pre-wrap;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:13px/1.5 ui-monospace,Consolas,monospace;max-height:200px;overflow:auto;margin:0}
.gate .opts label{font-weight:500}
.choices{display:grid;gap:8px}
.choice{display:flex!important;gap:12px;align-items:flex-start;border:1.5px solid var(--line);background:var(--paper);border-radius:10px;padding:12px 14px;font-weight:400!important;font-size:15px!important;cursor:pointer}
.choice:has(input:checked){border-color:var(--green);background:var(--mist)}
.choice input{width:18px;height:18px;margin-top:2px;accent-color:var(--green);flex:none}
.subopt{margin-left:30px;display:grid;gap:8px}
.done-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.done-list li{display:grid;grid-template-columns:24px 1fr;gap:10px}
.done-list li::before{content:"✓";width:22px;height:22px;border-radius:50%;background:var(--green);color:var(--on-green);display:grid;place-items:center;font-weight:700;font-size:13px}

/* related service links and "also helping with" row */
.related{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.related a{display:grid;gap:2px;padding:16px 18px;background:var(--card);border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink)}
.related a:hover{border-color:var(--green-2)}
.related a b{font-weight:600;color:var(--green)}
.related a span{font-size:14px;color:var(--muted)}
.also{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:15px;color:var(--muted)}
.also a{font-weight:600}
.media-card{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}
.media-card .yt{width:120px;aspect-ratio:16/9;border-radius:10px;background:#1c1c1c center/cover no-repeat;position:relative}
.media-card .yt::after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:22px}
.phases.four{grid-template-columns:repeat(4,1fr)}@media (max-width:1000px){.phases.four{grid-template-columns:1fr 1fr}}@media (max-width:560px){.phases.four{grid-template-columns:1fr}}
.approach-stack{display:grid;gap:14px}.approach-stack .pillar{margin:0}
.cover .mag-img{width:120px;height:auto;border-radius:8px;display:block;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.recog{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center}.recog img{width:120px;height:auto;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.office{margin:0}.office img{width:100%;height:auto;max-height:420px;object-fit:cover;border-radius:var(--r);display:block}.office figcaption{font-size:13px;color:var(--muted);margin-top:6px}
@media (max-width:760px){.home-hero{--img:url('/img/hero-bridge-900.webp')!important}}
/* articles */
.article{max-width:760px;padding-block:48px 24px}
.article h1{font-size:clamp(34px,5vw,52px);margin:12px 0 14px}
.article .eyebrow a{color:inherit;text-decoration:none}
.article .byline{font-size:14px;color:var(--muted);margin:10px 0 28px}
.prose h2{font-size:28px;margin:34px 0 10px}
.prose p,.prose li{font-size:18px;line-height:1.7}
.prose p{margin:0 0 14px}
.prose ul{padding-left:22px;margin:8px 0 14px}
.prose li{margin-bottom:6px}
.article-cta{margin-top:36px;background:var(--tint);border-radius:var(--r);padding:24px}
.article-cta h2{font-size:26px;margin-bottom:6px}
.articles-list .date{font-size:12px;color:var(--muted);margin-top:4px}
/* home: ways to start */
.start-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.start-card{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;text-decoration:none;color:var(--ink);transition:border-color .15s}
.start-card:hover{border-color:var(--green-2)}
.start-card h3{font-size:24px}
.start-card p{font-size:15px;color:var(--muted);margin:0}
.start-card .amt{font:400 26px var(--f-display);color:var(--ink);margin-top:auto}
.start-card .amt.small{font-size:18px;margin-top:0}
.start-card .amt small{font:500 13px var(--f-body);color:var(--muted)}
.start-card .go{font-weight:600;color:var(--green);margin-top:8px}
@media (max-width:1000px){.start-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.start-grid{grid-template-columns:1fr}}
/* what happens when you book */
.nextsteps{padding-block:26px 8px}
.steps3{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.steps3 li{display:flex;gap:12px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;font-size:14px;color:var(--muted);line-height:1.45}
.steps3 li b{display:block;color:var(--ink);font-size:15px}
.steps3 .n{flex:none;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font:700 14px var(--f-body)}
.nextsteps .reassure{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.6}
.nextsteps .reassure b{color:var(--ink);font-weight:600}
@media (max-width:760px){.steps3{grid-template-columns:1fr}}
/* mid-page booking button */
.mid-cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding-block:8px 36px}
.mid-cta span{font-size:14px;color:var(--muted)}
/* couples card with two links */
div.start-card .go.sub{margin-top:0;font-weight:500;color:var(--muted);font-size:14px}
div.start-card a.go{text-decoration:none}
/* Praxis Way extras collapsed */
.vmore{border-top:1px solid var(--line);margin-top:6px}
.vmore summary{cursor:pointer;padding:14px 20px;font-weight:600;color:var(--green);list-style:none}
.vmore summary::-webkit-details-marker{display:none}
.vmore summary::after{content:" +";}
.vmore[open] summary::after{content:" −";}
/* Counsellor card, header call link, ask-a-question form */
.meet{display:flex;gap:16px;align-items:center;margin-top:18px;padding:14px 16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.meet img{width:88px;height:88px;border-radius:50%;object-fit:cover;flex:none}
.meet p{font-size:15px;line-height:1.55;margin:0}
.meet a{white-space:nowrap}
@media (max-width:520px){.meet{align-items:flex-start}.meet img{width:64px;height:64px}}
.nav-call{width:40px;height:40px;flex:none;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--green);background:var(--card)}
.nav-call:hover{background:var(--mist)}
.nav-right .btn{white-space:nowrap}
@media (max-width:720px){.nav-call{display:none}}
.mbar .btn{padding:13px 10px;font-size:15px}
.mbar .btn.call{flex:0 0 auto;padding-inline:16px}
.mid-cta .ask-link{flex-basis:100%;font-size:14px}
.ask{max-width:560px}
.ask textarea{resize:vertical}
.ask-msg{font-weight:600;color:var(--green)}
.photo-fig{margin:0}.photo-fig img{width:100%;height:auto;border-radius:var(--r);display:block}
/* Hero headings: the keyword line is the real <h1>, styled as the small eyebrow; the big line keeps the h1 look */
h1.eyebrow{font-family:var(--f-body);font-size:13px;font-weight:700;letter-spacing:.12em;line-height:1.45;text-transform:uppercase;color:var(--green);text-wrap:pretty}
.h1{font-family:var(--f-display);font-weight:400;line-height:1.12;text-wrap:balance;margin:0;color:var(--ink);font-size:clamp(40px,5.6vw,68px);letter-spacing:-.01em}
#ask,#join,#consult{scroll-margin-top:96px}
#questions{scroll-margin-top:96px}
