/* ============================================================
   SERVICES — expanded discipline cards, fire & ice, FAQ
   ============================================================ */

.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);}
.svc{background:var(--bg);padding:clamp(28px,3.5vw,48px);display:flex;flex-direction:column;transition:background .22s ease;}
.svc:hover{background:var(--bg-soft);}
.svc .svc-num{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--accent);margin-bottom:22px;}
.svc .d-icon{width:34px;height:34px;margin-bottom:22px;}
.svc h3{font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.6vw,34px);letter-spacing:-0.015em;margin:0 0 14px;line-height:1.04;}
.svc > p{font-size:14px;color:var(--ink-2);line-height:1.66;margin:0 0 22px;max-width:46ch;}
.svc .svc-list{margin:auto 0 0;padding:18px 0 0;border-top:1px solid var(--line);list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;}
.svc .svc-list li{font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px;}
.svc .svc-list li::before{content:"—";color:var(--accent);}

/* FIRE & ICE (dark) */
.wellness{background:var(--ink);color:var(--bg);border-bottom:1px solid color-mix(in oklab,var(--bg) 10%,var(--ink));}
.wellness .sec-head h2{color:var(--bg);}
.wellness .sec-head h2 em{color:var(--accent-2);}
.wellness .mono{color:color-mix(in oklab,var(--bg) 52%,var(--ink));}
.wellness-intro{font-size:15px;line-height:1.66;color:color-mix(in oklab,var(--bg) 72%,var(--ink));max-width:56ch;margin:0 0 clamp(36px,5vw,56px);}
.wellness-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid color-mix(in oklab,var(--bg) 14%,var(--ink));}
.well-card{padding:34px 28px 38px;border-right:1px solid color-mix(in oklab,var(--bg) 14%,var(--ink));}
.well-card:last-child{border-right:0;}
.well-card .wc-icon{font-size:24px;margin-bottom:16px;}
.well-card h3{font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-0.01em;margin:0 0 10px;}
.well-card p{font-size:13px;line-height:1.62;color:color-mix(in oklab,var(--bg) 60%,var(--ink));margin:0;max-width:30ch;}

/* FAQ */
.faq{max-width:880px;margin:0 auto;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item:first-child{border-top:1px solid var(--line);}
.faq-q{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;text-align:left;padding:26px 0;font-family:var(--serif);font-weight:400;font-size:clamp(18px,2vw,26px);letter-spacing:-0.01em;color:var(--ink);}
.faq-q .faq-ic{flex:none;width:22px;height:22px;position:relative;}
.faq-q .faq-ic::before,.faq-q .faq-ic::after{content:"";position:absolute;background:var(--accent);transition:transform .25s ease;}
.faq-q .faq-ic::before{top:50%;left:0;right:0;height:1.5px;transform:translateY(-50%);}
.faq-q .faq-ic::after{left:50%;top:0;bottom:0;width:1.5px;transform:translateX(-50%);}
.faq-item.open .faq-q .faq-ic::after{transform:translateX(-50%) scaleY(0);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.faq-item.open .faq-a{max-height:240px;}
.faq-a p{font-size:14px;line-height:1.66;color:var(--ink-2);margin:0;padding:0 0 26px;max-width:60ch;}

@media(max-width:860px){
  .svc-grid{grid-template-columns:1fr;}
  .wellness-grid{grid-template-columns:1fr;}
  .well-card{border-right:0;border-bottom:1px solid color-mix(in oklab,var(--bg) 14%,var(--ink));}
  .well-card:last-child{border-bottom:0;}
}
@media(max-width:560px){ .svc .svc-list{grid-template-columns:1fr;} }
@media(prefers-reduced-motion:reduce){ .faq-a{transition:none;} }
