/* ============================================================
   NEW CHAPTERS THERAPY · PACIFIC SLATE
   Palette applied per study 04. Structure, content, type, UX unchanged.
   ============================================================ */
:root{
  --bg:#F4F0E8;          /* background · attachment swatch */
  --surface:#FFFFFF;
  --tint:#ECE6D9;
  --line:#E2DACA;
  --ink:#1E3245;         /* deep · attachment swatch */
  --muted:#5A6A7A;
  --brand:#2E4A62;       /* primary · attachment swatch */
  --deep:#1E3245;
  --gold:#C9A97A;        /* accent gold · attachment swatch */
  --gold-lg:#A9834E;     /* derived: gold for large text on light ground */
  --gold-ink:#7E6134;    /* derived: gold for small text on light ground */
  --seafoam:#A8C5B5;     /* highlight · attachment swatch */
  --panel-tx:#D9E1E9;
  --footer:#1E3245;
  --footer-tx:#C2CBD4;
  --card-sh:0 10px 26px rgba(30,50,69,.08);
  --logo:url("data:image/png;base64,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");
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}
body{background:var(--bg);color:var(--ink);font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding:0 40px}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:4px}
.nav :focus-visible,.m-menu :focus-visible,.letter :focus-visible,.cta :focus-visible,footer :focus-visible{outline-color:#fff}
section{padding:84px 0;scroll-margin-top:84px}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:40;background:var(--brand);border-bottom:1px solid #3C5A75}
.nav .wrap{display:flex;align-items:center;gap:28px;height:66px}
.brand{display:flex;align-items:center;gap:11px;font-weight:700;color:#fff;font-size:16.5px;letter-spacing:-.01em}
.logo-mark{display:block;width:35px;height:36px;flex:0 0 auto;background:var(--gold);-webkit-mask-image:var(--logo);-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:var(--logo);mask-size:contain;mask-repeat:no-repeat;mask-position:center}
.home-link{display:inline-flex;align-items:center}
.m-menu .m-home{display:flex;align-items:center;gap:10px}
.nav-links{display:flex;gap:26px;margin-left:auto;align-items:center}
.nav-links a{font-size:14.5px;font-weight:600;color:#D9E1E9;transition:color .15s ease}
.nav-links a:hover{color:#fff}
.burger{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:22px;line-height:1;cursor:pointer;padding:6px}
.m-menu{display:none;background:var(--deep);border-top:1px solid #3C5A75}
.m-menu.open{display:block}
.m-menu a{display:block;padding:15px 40px;font-weight:600;font-size:15.5px;color:#D9E1E9;border-bottom:1px solid rgba(255,255,255,.08)}
.m-menu a:hover{color:#fff}
.m-menu .m-book{color:var(--gold);font-weight:700}

/* ---------- buttons ---------- */
.btn-p{display:inline-flex;align-items:center;justify-content:center;background:var(--gold);color:var(--deep);font-weight:700;font-size:15px;line-height:1;min-height:50px;padding:0 26px;border-radius:999px;border:0;cursor:pointer;transition:transform .15s ease,background .15s ease}
.btn-p:hover{transform:translateY(-1px);background:#D6B98E}
.btn-g{display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--ink);font-weight:700;font-size:15px;line-height:1;min-height:50px;padding:0 24px;border-radius:999px;border:1.5px solid var(--line);cursor:pointer;transition:border-color .15s ease}
.btn-g:hover{border-color:var(--muted)}
.btn-sm{min-height:40px;padding:0 18px;font-size:14px}

/* ---------- labels + headings ---------- */
.sec-label{display:inline-flex;align-items:center;gap:9px;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink)}
.sec-label::before{content:"";width:22px;height:2px;background:var(--gold-lg);border-radius:2px}
h1,h2{font-family:'Fraunces',serif;font-weight:560;letter-spacing:-.015em;line-height:1.06;color:var(--ink)}
h1 em,h2 em{font-style:italic;font-weight:560;color:var(--gold-lg)}
h1{font-size:clamp(40px,5vw,60px);margin:16px 0 20px}
h2{font-size:clamp(30px,3.6vw,42px);margin:14px 0 14px}
.sub{color:var(--muted);font-size:17px;max-width:60ch}

/* ---------- hero ---------- */
.hero{padding:76px 0 84px}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.hero p.lede{color:var(--muted);font-size:17.5px;max-width:52ch}
.acts{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap;align-items:center}
.areas{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--card-sh)}
.areas h3{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.a-row{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--line)}
.a-row:first-of-type{border-top:0;padding-top:0}
.a-ico{flex:0 0 38px;height:38px;border-radius:10px;background:var(--seafoam);display:grid;place-items:center;font-size:17px}
.a-t{font-weight:700;font-size:15px}
.a-desc{color:var(--muted);font-size:14px}

/* ---------- letter (slate panel) ---------- */
.letter{background:var(--brand);border-top:1px solid #3C5A75;border-bottom:1px solid #3C5A75}
.letter .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px}
.letter h2{color:#fff}
.letter h2 em{color:var(--gold)}
.letter .sec-label{color:var(--seafoam)}
.letter .sec-label::before{background:var(--seafoam)}
.note-video{margin-top:30px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.22);background:#0B1420;box-shadow:0 18px 44px rgba(0,0,0,.3);aspect-ratio:752/534}
.note-video video{width:100%;height:100%;display:block;object-fit:cover}
.letter-body p{color:var(--panel-tx);font-size:16.5px;margin-bottom:18px}
.letter-body p:first-child{color:#fff;font-weight:600}
.sig{margin-top:26px}
.sig .dash{font-weight:700;color:#fff}
.sig-mark{font-family:'Fraunces',serif;font-style:italic;font-weight:460;font-size:30px;color:var(--gold);margin-top:4px}

/* ---------- experience band ---------- */
.exp .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.exp-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:var(--card-sh)}
.exp-card .k{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}
.exp-card h4{font-family:'Fraunces',serif;font-weight:560;font-size:20px;margin:10px 0 8px;line-height:1.2}
.exp-card p{color:var(--muted);font-size:14.5px}

/* ---------- testimonials ---------- */
.testi .grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;margin-top:34px}
.t-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:var(--card-sh)}
.stars{color:var(--gold-lg);letter-spacing:.2em;font-size:15px;margin-bottom:14px}
.t-card blockquote{color:var(--ink);font-size:15.5px}
.t-meta{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.t-name{font-weight:700;font-size:14.5px}
.t-spec{color:var(--muted);font-size:13px;margin-top:2px}

/* ---------- generic grids/cards ---------- */
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 40px;margin-top:36px}
.c{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:var(--card-sh)}
.c h4{font-family:'Fraunces',serif;font-weight:560;font-size:19.5px;margin-bottom:8px;line-height:1.22}
.c p{color:var(--muted);font-size:14.5px}
.m-item{border-top:2px solid var(--line);padding-top:18px}
.m-item h4{font-family:'Fraunces',serif;font-weight:560;font-size:20px;margin-bottom:8px;line-height:1.22}
.m-item p{color:var(--muted);font-size:15px}

/* ---------- services ---------- */
.svc{background:var(--tint)}
.num{font-family:'Fraunces',serif;font-weight:640;font-size:26px;color:var(--gold-lg);line-height:1}
.badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--deep);background:var(--seafoam);border-radius:999px;padding:5px 12px}
.c .top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;min-height:28px}
.more{display:inline-block;margin-top:14px;font-weight:700;font-size:14px;color:var(--gold-ink)}

/* ---------- process ---------- */
.step{display:flex;gap:18px;align-items:flex-start}
.step .num{flex:0 0 auto;font-size:24px;padding-top:2px}
.step h4{font-family:'Fraunces',serif;font-weight:560;font-size:19.5px;margin-bottom:6px;line-height:1.22}
.step p{color:var(--muted);font-size:14.5px}

/* ---------- faq ---------- */
.faq-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.faq-list{margin-top:34px;border-top:1px solid var(--line)}
.q{border-bottom:1px solid var(--line)}
.q-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:none;border:0;cursor:pointer;text-align:left;padding:20px 0;font-family:inherit;font-weight:700;font-size:16.5px;color:var(--ink)}
.q .pm{color:var(--gold-lg);font-size:22px;font-weight:400;line-height:1;flex:0 0 auto;transition:transform .2s ease}
.q .a{color:var(--muted);font-size:15px;max-width:72ch;overflow:hidden;max-height:0;visibility:hidden;transition:max-height .28s ease,padding .28s ease,visibility 0s linear .28s}
.q.open .a{padding-bottom:20px;visibility:visible;transition:max-height .28s ease,padding .28s ease}
.q.open .pm{transform:rotate(45deg)}

/* ---------- cta (slate band) ---------- */
.cta{background:var(--brand);text-align:center}
.cta .sec-label{justify-content:center;color:var(--seafoam)}
.cta .sec-label::before{display:none}
.cta h2{margin-top:14px;color:#fff}
.cta h2 em{color:var(--gold)}
.cta-sub{color:var(--panel-tx);font-size:17px;max-width:52ch;margin:0 auto}
.cta .acts{justify-content:center;margin-top:30px}
.cta .link{font-weight:700;color:var(--seafoam)}

/* ---------- footer ---------- */
footer{background:var(--footer);color:var(--footer-tx);padding:64px 0 34px}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.f-brand{display:flex;gap:12px;align-items:flex-start}
.f-brand .nm{color:#fff;font-weight:700;font-size:16px}
.f-brand .tg{font-size:13.5px;margin-top:2px}
.f-contact{margin-top:18px;font-size:14px;line-height:1.9}
.f-contact a:hover{color:#fff}
.f-social{margin-top:12px;font-size:13px}
.f-social a{color:#fff;font-weight:600;margin-right:16px;border-bottom:1px solid rgba(201,169,122,.5)}
footer h5{color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
footer ul{list-style:none}
footer li{margin-bottom:10px;font-size:14px}
footer li a:hover{color:#fff}
.copy{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.18);font-size:13px}

/* ---------- responsive ---------- */
@media (max-width:980px){
  .exp .grid{grid-template-columns:1fr 1fr}
  .g3{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .wrap{padding:0 22px}
  .nav-links,.nav .btn-p{display:none}
  .burger{display:block}
  .m-menu a{padding:15px 22px}
  .hero .wrap,.letter .wrap{grid-template-columns:1fr;gap:36px}
  .g3,.g2{grid-template-columns:1fr}
  section{padding:64px 0;scroll-margin-top:74px}
  .hero{padding:52px 0 64px}
  .hero .acts{flex-direction:column;align-items:stretch}
  .hero .acts .btn-p,.hero .acts .btn-g{width:100%}
  h1{font-size:clamp(34px,9vw,44px)}
  h2{font-size:clamp(27px,7.5vw,34px)}
  footer .cols{grid-template-columns:1fr 1fr}
  /* "Swipe through their experiences." — snap carousel on mobile */
  .testi .grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:8px;-webkit-overflow-scrolling:touch}
  .t-card{flex:0 0 86%;scroll-snap-align:start}
}
@media (max-width:460px){
  .exp .grid{grid-template-columns:1fr}
  footer .cols{grid-template-columns:1fr}
}

/* ---------- subpage hero ---------- */
.page-hero{background:var(--tint);border-bottom:1px solid var(--line);padding:64px 0 56px}
.page-hero h1{font-size:clamp(36px,4.4vw,52px);margin:14px 0 16px}
.page-hero .sub{font-size:17px}
.nav-links a[aria-current="page"]{color:#fff;border-bottom:2px solid var(--gold);padding-bottom:4px}

/* ---------- photos trio (More Than A Therapist) ---------- */
.photos{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.photos .g3{margin-top:38px}
.ph-card{background:var(--bg);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--card-sh)}
.ph-card img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.ph-card figcaption{padding:16px 20px 18px;color:var(--muted);font-size:14px;line-height:1.55}
.ph-card figcaption strong{display:block;color:var(--ink);font-size:14.5px;margin-bottom:3px}

/* ---------- pricing ---------- */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.price-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:var(--card-sh);display:flex;flex-direction:column}
.price-card.feat{border:2px solid var(--brand);position:relative}
.price-card .tier{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}
.price-card h4{font-family:'Fraunces',serif;font-weight:560;font-size:21px;margin:10px 0 2px}
.price-card .amt{font-family:'Fraunces',serif;font-weight:640;font-size:40px;color:var(--ink);margin-top:10px}
.price-card .amt sup{font-size:20px;font-weight:560;margin-right:2px}
.price-card .per{color:var(--muted);font-size:13.5px;margin:2px 0 16px}
.price-card ul{list-style:none;border-top:1px solid var(--line);padding-top:16px;margin-top:auto}
.price-card li{font-size:14px;color:var(--muted);padding:5px 0 5px 24px;position:relative}
.price-card li::before{content:"✓";position:absolute;left:0;color:var(--gold-lg);font-weight:700}
.feat-tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--brand);color:#fff;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:5px 14px;white-space:nowrap}

/* ---------- resources ---------- */
.res-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:var(--card-sh);display:flex;flex-direction:column}
.res-card .r-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.r-emoji{font-size:30px;line-height:1}
.res-card h4{font-family:'Fraunces',serif;font-weight:560;font-size:19.5px;margin-bottom:8px;line-height:1.22}
.res-card p{color:var(--muted);font-size:14.5px}
.res-card .more{margin-top:auto;padding-top:14px}
.crisis{background:var(--tint);border:1px solid var(--line);border-radius:18px;padding:28px;margin-top:44px}
.crisis h3{font-family:'Fraunces',serif;font-weight:560;font-size:22px;margin-bottom:8px}
.crisis p{color:var(--muted);font-size:15px;max-width:70ch}
.crisis ul{list-style:none;margin-top:14px;display:flex;gap:12px 28px;flex-wrap:wrap}
.crisis li{font-size:14.5px}
.crisis li a{font-weight:700;color:var(--brand);border-bottom:1px solid rgba(46,74,98,.35)}

/* ---------- faq groups ---------- */
.faq-group{margin-top:44px;scroll-margin-top:96px}
.faq-group h3{font-family:'Fraunces',serif;font-weight:560;font-size:23px}
.faq-group .faq-list{margin-top:16px}
.cred-chips{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 4px}
.cred-chips span{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:600;color:var(--ink)}

/* ---------- message form ---------- */
.msg-wrap{max-width:640px;margin:0 auto}
.msg-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:36px;box-shadow:var(--card-sh)}
.msg-field{margin-bottom:22px}
.msg-field label{display:block;font-weight:700;font-size:15px;margin-bottom:8px}
.msg-field .hint{font-weight:400;color:var(--muted);font-size:13.5px;margin-top:2px}
.msg-field input,.msg-field textarea{width:100%;font-family:inherit;font-size:15.5px;color:var(--ink);background:var(--bg);border:1.5px solid var(--line);border-radius:12px;padding:13px 16px;transition:border-color .15s ease}
.msg-field input:focus,.msg-field textarea:focus{outline:none;border-color:var(--brand)}
.msg-field textarea{min-height:140px;resize:vertical;line-height:1.55}
.msg-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:6px}
.resp-badge{display:flex;align-items:center;gap:11px}
.resp-badge img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--gold)}
.resp-badge .t1{font-weight:700;font-size:13.5px;color:var(--ink);line-height:1.3}
.resp-badge .t2{color:var(--muted);font-size:12.5px}
.hp-field{position:absolute;left:-9999px;opacity:0;pointer-events:none}
.msg-ok{text-align:center;padding:24px 8px}
.msg-ok .big{font-size:44px;line-height:1}
.msg-ok h3{font-family:'Fraunces',serif;font-weight:560;font-size:26px;margin:14px 0 8px}
.msg-ok p{color:var(--muted);font-size:15.5px;max-width:44ch;margin:0 auto}
.msg-ok .acts{justify-content:center}
.msg-err{background:#FBF1EC;border:1px solid #E8CDBC;border-radius:12px;padding:14px 18px;font-size:14.5px;color:#7A4A2B;margin-bottom:18px;display:none}
.msg-err a{font-weight:700;text-decoration:underline}

/* ---------- footer locations ---------- */
.f-loc{margin-top:22px}
.f-loc h6{color:var(--gold);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}
.loc-row{display:flex;gap:22px}
.loc{display:flex;align-items:center;gap:10px}
.loc svg{display:block;width:44px;height:48px;color:var(--footer-tx);opacity:.85;flex:0 0 auto}
.loc svg .st{fill:rgba(255,255,255,.05);stroke:currentColor;stroke-width:2.5;stroke-linejoin:round}
.loc svg .dot{fill:var(--gold)}
.loc .city{color:#fff;font-weight:600;font-size:13.5px;line-height:1.35}
.loc .st-name{font-size:12px;color:var(--footer-tx)}
.f-lic{margin-top:12px;font-size:12.5px;color:var(--footer-tx);opacity:.85}

@media (max-width:980px){
  .price-grid{grid-template-columns:1fr;max-width:460px}
}
@media (max-width:760px){
  .page-hero{padding:48px 0 44px}
  .msg-card{padding:26px 20px}
  .msg-actions{flex-direction:column-reverse;align-items:stretch}
  .msg-actions .btn-p{width:100%}
  .resp-badge{justify-content:center}
  .photos .g3{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:8px;-webkit-overflow-scrolling:touch}
  .photos .ph-card{flex:0 0 78%;scroll-snap-align:start}
}
