/* ===== Psychotherapy page (loads after style.css) ===== */
.ticks{display:grid;gap:calc(9 * var(--u,1px))}
.ticks li{position:relative;padding-left:calc(20 * var(--u,1px));font-size:calc(8.8 * var(--u,1px));color:var(--ink);line-height:1.35}
.ticks li::before{content:"✓";position:absolute;left:0;top:-1px;width:calc(15 * var(--u,1px));height:calc(15 * var(--u,1px));border-radius:50%;border:1.3px solid var(--green);color:var(--green);display:grid;place-items:center;font-size:calc(7.2 * var(--u,1px));font-weight:700}
.ticks.sm{gap:calc(6 * var(--u,1px))}
.ticks.sm li{font-size:calc(7.2 * var(--u,1px));padding-left:calc(22 * var(--u,1px))}

/* Hero */
.p-hero{display:block;min-height:calc(250 * var(--u,1px));padding:calc(20 * var(--u,1px)) 6vw calc(44 * var(--u,1px))}
.p-hero .hero-text{max-width:calc(430 * var(--u,1px))}
.crumbs{display:flex;gap:calc(8 * var(--u,1px));font-size:calc(7.2 * var(--u,1px));margin-bottom:calc(10 * var(--u,1px));color:rgba(255,255,255,.85)}
.crumbs a:hover{text-decoration:underline}
.crumbs b{font-weight:500;color:#fff}
.p-hero h1{font-size:clamp(calc(31.28 * var(--u,1px)),5.1vw,calc(57.04 * var(--u,1px)));font-weight:500;margin:0 0 calc(6 * var(--u,1px));line-height:1.05}
.sub-h{font-family:var(--sans);font-size:clamp(calc(10.4 * var(--u,1px)),1.45vw,calc(15.64 * var(--u,1px)));line-height:1.35;margin-bottom:calc(10 * var(--u,1px));max-width:calc(215 * var(--u,1px))}
.p-hero .lead{max-width:calc(250 * var(--u,1px));font-size:calc(8.4 * var(--u,1px));margin-bottom:calc(14 * var(--u,1px));line-height:1.55}
.p-hero .btn{padding:calc(9 * var(--u,1px)) calc(20 * var(--u,1px));font-size:calc(8.8 * var(--u,1px))}
.p-hero::after{background:linear-gradient(90deg,rgba(8,36,26,.55),transparent 55%)}
.p-hero .hero-script{top:10%;right:3.5vw;text-align:left;font-size:clamp(calc(16.56 * var(--u,1px)),2.4vw,calc(27.6 * var(--u,1px)));line-height:1.08}
.orn{display:block;font-style:normal;font-family:var(--sans);font-size:calc(16.56 * var(--u,1px));color:var(--gold-2);margin:calc(4 * var(--u,1px)) 0 0 calc(30 * var(--u,1px))}
.p-strip{position:absolute;left:7.2vw;right:3vw;bottom:calc(12 * var(--u,1px));display:flex;gap:calc(34 * var(--u,1px));align-items:center;flex-wrap:nowrap}
.p-strip li{white-space:nowrap}
.p-strip li{display:flex;align-items:center;gap:calc(9 * var(--u,1px));font-size:calc(6.8 * var(--u,1px));line-height:1.3;color:#fff;font-weight:500}
.p-strip img{width:calc(36 * var(--u,1px));height:calc(28 * var(--u,1px));object-fit:contain;flex:none}

/* What is */
.p-about{display:grid;grid-template-columns:280fr 163fr 206fr;gap:calc(13 * var(--u,1px));align-items:center;padding:calc(16 * var(--u,1px)) calc(34 * var(--u,1px)) calc(16 * var(--u,1px)) calc(55 * var(--u,1px));background:rgba(251,246,236,.85)}
.pa-text{align-self:center}
.pa-text h2{font-size:clamp(calc(23.92 * var(--u,1px)),3vw,calc(31.28 * var(--u,1px)));margin:calc(2 * var(--u,1px)) 0 calc(10 * var(--u,1px))}
.pa-text p:not(.eyebrow){font-size:calc(8.32 * var(--u,1px));margin-bottom:calc(9 * var(--u,1px));line-height:1.6}
.pa-photo{border-radius:calc(6 * var(--u,1px));overflow:hidden;box-shadow:0 calc(8 * var(--u,1px)) calc(24 * var(--u,1px)) rgba(0,0,0,.18);aspect-ratio:163/183;position:relative}
.pa-photo img{position:absolute;inset:0}
.pa-panel{background:rgba(230,235,221,.92);border-radius:calc(6 * var(--u,1px));padding:calc(16 * var(--u,1px)) calc(10 * var(--u,1px)) calc(16 * var(--u,1px)) calc(18 * var(--u,1px))}
.pa-panel h3{font-family:var(--sans);font-size:calc(9.6 * var(--u,1px));font-weight:600;color:var(--ink);margin-bottom:calc(12 * var(--u,1px))}
.pa-panel .ticks{gap:calc(11 * var(--u,1px))}

/* Key benefits */
.p-benefits{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:2vw;align-items:center;padding:calc(10 * var(--u,1px)) 0 calc(14 * var(--u,1px)) 5vw}
.pb-left h2{font-size:clamp(calc(22.08 * var(--u,1px)),2.6vw,calc(27.6 * var(--u,1px)));margin-bottom:calc(12 * var(--u,1px))}
.ben-row{display:grid;grid-template-columns:repeat(6,1fr);gap:calc(4 * var(--u,1px))}
.ben-row li{display:flex;flex-direction:column;align-items:center;gap:calc(6 * var(--u,1px));text-align:center;font-size:calc(7.68 * var(--u,1px));line-height:1.3;color:var(--ink);padding:0 1px;border-right:1px solid #e1dac3}
.ben-row li:last-child{border:0}
.ben-row img{width:calc(46 * var(--u,1px));height:calc(40 * var(--u,1px));object-fit:contain}
.pb-quote{position:relative;overflow:hidden;min-height:calc(116 * var(--u,1px));display:flex;align-items:center;justify-content:flex-end;z-index:0;padding:calc(14 * var(--u,1px)) 5vw calc(14 * var(--u,1px)) 30%;color:#fff}
.pb-quote .bg-img{z-index:-1}
.pb-quote blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(calc(11.2 * var(--u,1px)),1.5vw,calc(16.56 * var(--u,1px)));line-height:1.3;text-align:right;max-width:calc(150 * var(--u,1px))}
.pb-quote cite{display:block;font-family:var(--sans);font-style:normal;font-size:calc(6.8 * var(--u,1px));letter-spacing:.1em;margin-top:calc(6 * var(--u,1px));opacity:.9}

/* My Approach */
.p-approach{padding:calc(16 * var(--u,1px)) 5vw calc(6 * var(--u,1px))}
.p-approach .sec-head{margin-bottom:calc(14 * var(--u,1px))}
.p-approach .sec-head h2,.p-process .sec-head h2{font-size:calc(16.1 * var(--u,1px))}
.p-approach .sec-head p,.p-process .sec-head p{font-size:calc(8.4 * var(--u,1px))}
.ap4{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(16 * var(--u,1px))}
.ap4 article{background:rgba(255,255,255,.82);border-radius:calc(6 * var(--u,1px));padding:calc(12 * var(--u,1px)) calc(18 * var(--u,1px)) calc(14 * var(--u,1px));box-shadow:0 calc(4 * var(--u,1px)) calc(14 * var(--u,1px)) rgba(0,0,0,.06);min-width:0}
.ap4 img{width:calc(34 * var(--u,1px));height:calc(30 * var(--u,1px));object-fit:contain;margin-bottom:calc(6 * var(--u,1px))}
.ap4 h3{font-family:var(--sans);font-size:calc(8.8 * var(--u,1px));font-weight:600;color:var(--ink);margin-bottom:calc(4 * var(--u,1px))}
.ap4 p{font-size:calc(7.68 * var(--u,1px));color:var(--muted);line-height:1.5}

/* Process */
.p-process{padding:calc(6 * var(--u,1px)) 5vw calc(14 * var(--u,1px))}
.p-process .sec-head{margin-bottom:calc(12 * var(--u,1px))}
.psteps{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(34 * var(--u,1px))}
.psteps li{position:relative}
.psteps li:not(:last-child)::after{content:"→";position:absolute;right:calc(-24 * var(--u,1px));top:calc(10 * var(--u,1px));color:var(--gold);font-size:calc(11.2 * var(--u,1px))}
.st-top{display:flex;align-items:center;gap:calc(10 * var(--u,1px));margin-bottom:calc(4 * var(--u,1px))}
.st-top b{width:calc(20 * var(--u,1px));height:calc(20 * var(--u,1px));border-radius:50%;border:1px solid var(--green);color:var(--green);display:grid;place-items:center;font-size:calc(8.0 * var(--u,1px));font-weight:500;flex:0 0 calc(20 * var(--u,1px))}
.st-top img{width:calc(54 * var(--u,1px));height:calc(46 * var(--u,1px));object-fit:contain}
.psteps h3{font-family:var(--sans);font-size:calc(8.8 * var(--u,1px));font-weight:600;color:var(--ink);padding-left:calc(30 * var(--u,1px))}
.psteps p{font-size:calc(7.68 * var(--u,1px));color:var(--muted);padding-left:calc(30 * var(--u,1px));line-height:1.5;max-width:calc(210 * var(--u,1px))}

/* Session options + booking */
.p-book{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2.2vw;align-items:start;padding:calc(22 * var(--u,1px)) 5vw calc(24 * var(--u,1px))}
.opts h2,.faq h2,.cx-head h2{font-size:calc(17.02 * var(--u,1px));margin-bottom:calc(8 * var(--u,1px))}
.opt-grid{display:grid;grid-template-columns:1fr 1fr;gap:calc(14 * var(--u,1px))}
.opt{background:#fff;border-radius:calc(6 * var(--u,1px));overflow:hidden;box-shadow:0 calc(4 * var(--u,1px)) calc(14 * var(--u,1px)) rgba(0,0,0,.07);min-width:0}
.opt-ph{aspect-ratio:173/82;background:linear-gradient(135deg,#cdd8c4,#e9dcc0);overflow:hidden}
.opt-body{padding:calc(12 * var(--u,1px)) calc(14 * var(--u,1px)) calc(16 * var(--u,1px))}
.opt h3{font-family:var(--sans);font-size:calc(8.8 * var(--u,1px));font-weight:600;color:var(--ink)}
.opt p{font-size:calc(7.68 * var(--u,1px));color:var(--muted);margin:calc(2 * var(--u,1px)) 0 calc(10 * var(--u,1px))}
.bookform{background:linear-gradient(160deg,#0f3a2a,#1d4d3b);color:#fff;border-radius:calc(8 * var(--u,1px));padding:calc(20 * var(--u,1px)) calc(22 * var(--u,1px));box-shadow:0 calc(10 * var(--u,1px)) calc(30 * var(--u,1px)) rgba(0,0,0,.2);display:grid;gap:calc(6 * var(--u,1px));min-width:0}
.bookform h2{color:#fff;font-size:calc(17.48 * var(--u,1px));margin:0}
.bf-sub{font-size:calc(8.0 * var(--u,1px));margin-bottom:calc(6 * var(--u,1px));opacity:.9}
.bookform label{font-size:calc(7.6 * var(--u,1px));font-weight:500;margin-top:calc(4 * var(--u,1px))}
.bookform select,.bookform input{width:100%;min-width:0;border:0;border-radius:calc(4 * var(--u,1px));background:#fff;color:var(--ink);font:400 calc(7.6 * var(--u,1px)) var(--sans);padding:calc(7 * var(--u,1px)) calc(8 * var(--u,1px))}
.bookform select:focus-visible,.bookform input:focus-visible{outline:calc(2 * var(--u,1px)) solid var(--gold-2);outline-offset:1px}
.bf-row{display:grid;grid-template-columns:1fr 1fr;gap:calc(12 * var(--u,1px))}
.bf-row>div{min-width:0}
.bookform .btn{margin-top:calc(8 * var(--u,1px));width:100%;text-align:center;border-radius:calc(6 * var(--u,1px))}
.bf-status{font-size:calc(8.0 * var(--u,1px));color:var(--gold-2);margin-top:calc(2 * var(--u,1px))}
.or{display:flex;align-items:center;gap:calc(10 * var(--u,1px));font-size:calc(7.2 * var(--u,1px));opacity:.8;margin:calc(6 * var(--u,1px)) 0 calc(2 * var(--u,1px))}
.or::before,.or::after{content:"";flex:1;height:1px;background:rgba(255,255,255,.35)}
.or span{order:1}.or::after{order:2}
.bookform .btn-ghost{width:70%;margin:calc(4 * var(--u,1px)) auto 0;display:block;text-align:center}

/* FAQ + client experiences */
.p-faq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4vw;padding:calc(14 * var(--u,1px)) 5vw calc(28 * var(--u,1px))}
.faq details{border-top:1px solid #e3ddca}
.faq details:last-child{border-bottom:1px solid #e3ddca}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:calc(10 * var(--u,1px));padding:calc(7 * var(--u,1px)) calc(4 * var(--u,1px));font-size:calc(7.2 * var(--u,1px));color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:calc(11.2 * var(--u,1px));line-height:1;color:var(--green)}
.faq details[open] summary::after{content:"−"}
.faq details p{font-size:calc(8.0 * var(--u,1px));color:var(--muted);padding:0 calc(4 * var(--u,1px)) calc(12 * var(--u,1px));line-height:1.5}
.faq summary:focus-visible{outline:calc(2 * var(--u,1px)) solid var(--gold);outline-offset:calc(2 * var(--u,1px))}
.cx-head{display:flex;justify-content:space-between;align-items:baseline;gap:calc(10 * var(--u,1px));flex-wrap:wrap}
.cx-head .view-all{position:static;font-size:calc(7.2 * var(--u,1px))}
.cx-wrap{display:flex;align-items:center;gap:calc(10 * var(--u,1px))}
.cx-slides{flex:1;min-width:0}
.cx-card{display:flex;gap:calc(14 * var(--u,1px));align-items:flex-start;background:#fff;border-radius:calc(8 * var(--u,1px));padding:calc(18 * var(--u,1px)) calc(20 * var(--u,1px));box-shadow:0 calc(4 * var(--u,1px)) calc(18 * var(--u,1px)) rgba(0,0,0,.07)}
.cx-card[hidden]{display:none}
.cx-card .avatar{flex:0 0 calc(52 * var(--u,1px));width:calc(52 * var(--u,1px));height:calc(52 * var(--u,1px))}
.cx-card blockquote{font-family:var(--sans);font-size:calc(6.88 * var(--u,1px));line-height:1.55;font-weight:400}
.dots{display:flex;justify-content:center;gap:calc(7 * var(--u,1px));margin-top:calc(12 * var(--u,1px))}
.dots i{width:calc(6 * var(--u,1px));height:calc(6 * var(--u,1px));border-radius:50%;background:#d6cfb8}
.dots i.on{background:var(--green)}

/* CTA */
.p-cta{min-height:calc(107 * var(--u,1px));padding:calc(14 * var(--u,1px)) 6vw}
.p-cta h2{font-size:clamp(calc(20.24 * var(--u,1px)),2.7vw,calc(29.44 * var(--u,1px)));font-weight:500}
.p-cta p{font-size:calc(8.4 * var(--u,1px));margin:calc(4 * var(--u,1px)) 0 calc(14 * var(--u,1px))}
.p-cta .btn{padding:calc(7 * var(--u,1px)) calc(18 * var(--u,1px));font-size:calc(8.0 * var(--u,1px))}
.p-cta::after{background:linear-gradient(90deg,rgba(8,36,26,.5),transparent 60%)}
.p-cta .cta-script{position:absolute;right:8vw;top:16%;font-size:clamp(calc(18.4 * var(--u,1px)),2.4vw,calc(27.6 * var(--u,1px)));line-height:1.05;color:#fff;text-align:left;margin:0;max-width:none}

@media(max-width:1000px){
  .p-about,.p-benefits,.p-book,.p-faq{grid-template-columns:1fr}
  .p-benefits{padding-right:5vw}
  .pb-quote{padding-left:8vw;min-height:calc(150 * var(--u,1px))}
  .ben-row{grid-template-columns:repeat(3,1fr);gap:calc(14 * var(--u,1px)) calc(4 * var(--u,1px))}
  .ap4,.psteps{grid-template-columns:1fr 1fr}
  .psteps li::after{display:none}
  .p-strip{position:static;flex-wrap:wrap;max-width:none;margin-top:calc(18 * var(--u,1px));gap:calc(14 * var(--u,1px)) calc(24 * var(--u,1px))}
  .p-hero .hero-script,.p-cta .cta-script{display:none}
}
@media(max-width:560px){.opt-grid,.ap4,.psteps{grid-template-columns:1fr}.bf-row{grid-template-columns:1fr}.p-benefits .ben-row{grid-template-columns:repeat(2,1fr)}}

.leaf{position:absolute;z-index:-1;pointer-events:none;max-width:none;height:auto}
.p-about,.p-approach,.p-process,.p-book,.p-faq{overflow:hidden}
.lf1{left:0;top:calc(6 * var(--u,1px));width:calc(46 * var(--u,1px))}
.lf2{left:0;top:calc(4 * var(--u,1px));width:calc(55 * var(--u,1px))}
.lf3{right:0;top:calc(2 * var(--u,1px));width:calc(42 * var(--u,1px))}
.lf4{left:0;top:calc(6 * var(--u,1px));width:calc(46 * var(--u,1px))}
.lf5{right:0;top:calc(2 * var(--u,1px));width:calc(36 * var(--u,1px))}
.lf6{left:0;top:calc(2 * var(--u,1px));width:calc(52 * var(--u,1px))}
.lf7{right:0;top:calc(150 * var(--u,1px));width:calc(38 * var(--u,1px))}
.faq-list{background:#fff;border-radius:calc(6 * var(--u,1px));box-shadow:0 calc(4 * var(--u,1px)) calc(16 * var(--u,1px)) rgba(0,0,0,.07);padding:calc(2 * var(--u,1px)) calc(12 * var(--u,1px))}
.faq details:first-child{border-top:0}
.faq details:last-child{border-bottom:0}
.p-faq .t-arrow{border-color:var(--gold);background:var(--cream);color:var(--gold)}

.p-hero{margin-top:58px}
