.page-hero{background:var(--sand)}
.fees{background:var(--ivory);border-top:1px solid var(--hair)}
/* Fee schedule — one block per clinician, driven by content/site.php */
.fee-block{border:1px solid var(--hair);background:var(--white);margin-bottom:28px}
.fee-head{padding:34px 40px 26px;border-bottom:1px solid var(--hair)}
.fee-head h3{font-family:'Fraunces',serif;font-size:26px;font-weight:400}
.fee-head p{font-size:11px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-dark);margin-top:10px}
.fee-table{width:100%;border-collapse:collapse}
.fee-table td{padding:20px 40px;border-bottom:1px solid var(--hair);font-weight:300}
.fee-table tr:last-child td{border-bottom:0}
.fee-table .len{font-family:'Fraunces',serif;font-size:18px;color:var(--wine);width:26%}
.fee-table .svc{color:var(--muted);font-size:15.5px}
.fee-table .amt{text-align:right;font-family:'Fraunces',serif;font-size:26px;width:18%}
.fee-table .amt small{display:block;font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.fee-block .fine,.fees>.wrap>.fine{font-size:13.5px;color:var(--muted);font-weight:300;padding:0 40px 26px}
.fees>.wrap>.fine{padding:22px 0 0;max-width:70ch}
.fee-pending{padding:30px 40px}

.policy{background:var(--white);border-top:1px solid var(--hair)}
.policy .grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;align-items:start}
.policy p{color:var(--muted);font-weight:300;font-size:17px;margin-bottom:18px}
.tbd{display:inline-block;background:#fff3cd;border:1px dashed #c1934f;color:#6b4e12;font-size:12.5px;letter-spacing:.04em;padding:7px 13px;border-radius:2px;font-family:'Inter',sans-serif}

.oon{background:var(--ink);color:var(--ivory);position:relative;overflow:hidden}
.oon::before{content:"";position:absolute;inset:0;background:radial-gradient(800px 400px at 15% 115%,rgba(169,38,62,.38),transparent 65%)}
.oon>.wrap{position:relative}
.oon .grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}
.oon p{color:#cbb9c7;font-weight:300;margin-bottom:18px;font-size:17px}
.oonsteps{counter-reset:s}
.oonsteps .row{display:flex;gap:30px;padding:30px 0;border-top:1px solid rgba(250,246,240,.16)}
.oonsteps .row:last-child{border-bottom:1px solid rgba(250,246,240,.16)}
.oonsteps .n{font-family:'Fraunces',serif;font-size:34px;font-weight:300;color:var(--gold);line-height:1;min-width:44px}
.oonsteps h4{font-family:'Fraunces',serif;font-size:19px;font-weight:450;margin-bottom:6px}
.oonsteps p{font-size:14.5px;margin:0}

.carriers{background:var(--white);text-align:center;border-top:1px solid var(--hair)}
.carriers .row{display:flex;justify-content:center;flex-wrap:wrap;gap:0;margin:54px 0 30px}
.carriers .c{font-family:'Fraunces',serif;font-size:23px;font-weight:340;color:var(--ink);padding:10px 40px;border-left:1px solid var(--hair);opacity:.75}
.carriers .c:first-child{border-left:0}
.carriers .fine{font-size:13px;color:var(--muted);max-width:64ch;margin:0 auto;font-weight:300}

.cpt{background:var(--sand)}
.cpt .grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;align-items:start}
.cpt p{color:var(--muted);font-weight:300;font-size:17px;margin-bottom:18px}
.cpt table{width:100%;border-collapse:collapse;background:var(--white);border:1px solid var(--hair)}
.cpt th{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;text-align:left;padding:18px 26px;border-bottom:1px solid var(--hair);color:var(--gold-dark)}
.cpt td{padding:18px 26px;border-bottom:1px solid var(--hair);font-size:15px}
.cpt td:first-child{font-family:'Fraunces',serif;font-size:19px;color:var(--wine)}
.cpt tr:last-child td{border-bottom:0}

.sliding{background:var(--ivory)}
.sliding .grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.sliding p{color:var(--muted);font-weight:300;font-size:17px;margin-bottom:18px}
.sliding .big{font-family:'Fraunces',serif;font-style:italic;font-size:clamp(26px,2.8vw,38px);line-height:1.35;color:var(--wine);font-weight:340}

.faq{background:var(--white);border-top:1px solid var(--hair)}
.faq .narrow{max-width:820px}
details{border-bottom:1px solid var(--hair);padding:26px 0}
details:first-of-type{border-top:1px solid var(--hair)}
summary{font-family:'Fraunces',serif;font-weight:450;font-size:20px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:'Fraunces',serif;font-size:26px;color:var(--gold-dark);font-weight:300}
details[open] summary::after{content:"–"}
details p{font-size:15.5px;margin-top:14px;color:var(--muted);font-weight:300}
.cta{position:relative;background:var(--ink);color:var(--ivory);text-align:center;padding:140px 6%;overflow:hidden}
.cta::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 380px at 50% 120%,rgba(169,38,62,.4),transparent 70%)}
.cta>*{position:relative}
.cta h2{font-size:clamp(32px,4vw,52px);font-weight:340;max-width:22ch;margin:0 auto 24px}
.cta p{max-width:52ch;margin:0 auto 42px;opacity:.85;font-weight:300}
@media(max-width:900px){
  .oon .grid,.cpt .grid,.sliding .grid,.policy .grid{grid-template-columns:1fr;gap:60px}
  .fee-head,.fee-table td,.fee-block .fine,.fee-pending{padding-left:24px;padding-right:24px}
  .fee-table .amt{font-size:21px}
}