/* Glam & Fab — treatment page extras. Loads after gnf-post.css + gnf-branch.css. */

.spec{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;background:var(--blush);border:1px solid var(--blush);border-radius:6px;overflow:hidden;margin-bottom:.4rem;}
.spec div{background:var(--white);padding:1.1rem 1.2rem;}
.spec dt{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem;font-weight:500;}
.spec dd{font-size:.92rem;color:var(--deep);font-weight:400;line-height:1.5;}
.spec dd .price{font-family:'Cormorant Garamond',serif;font-size:1.35rem;color:var(--rose);}

.prose{max-width:760px;}
.prose p{font-size:.94rem;font-weight:300;line-height:2;color:#4a3733;margin-bottom:1.4rem;}
.prose h3{font-family:'Jost',sans-serif;font-size:.92rem;font-weight:500;letter-spacing:.04em;color:var(--rose);margin:1.9rem 0 .7rem;}
.prose ul{list-style:none;margin:0 0 1.5rem;}
.prose li{font-size:.9rem;font-weight:300;line-height:1.9;color:#4a3733;padding-left:1.4rem;position:relative;margin-bottom:.6rem;}
.prose li::before{content:'';position:absolute;left:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--blush);border:1px solid var(--rose);}
.prose li strong{font-weight:500;color:var(--deep);}
.prose a{color:var(--rose);text-decoration:none;border-bottom:1px solid var(--blush);}
.prose a:hover{border-color:var(--rose);}

/* Safety / medical note — deliberately quiet, never hidden. */
.note{border:1px solid var(--blush);background:var(--white);border-left:3px solid var(--gold);border-radius:0 5px 5px 0;padding:1.2rem 1.4rem;margin:2rem 0 0;max-width:760px;}
.note p{font-size:.82rem;font-weight:300;line-height:1.85;color:var(--muted);margin:0;}
.note strong{color:var(--deep);font-weight:500;}

.step{counter-reset:s;list-style:none;margin:0 0 1.5rem;}
.step li{counter-increment:s;position:relative;padding-left:2.4rem;margin-bottom:1rem;font-size:.9rem;font-weight:300;line-height:1.9;color:#4a3733;}
.step li::before{content:counter(s);position:absolute;left:0;top:.05em;width:24px;height:24px;border-radius:50%;background:var(--blush);color:var(--rose);font-family:'Jost',sans-serif;font-size:.72rem;font-weight:500;display:flex;align-items:center;justify-content:center;}

.tx-links{display:flex;flex-wrap:wrap;gap:.55rem;}
.tx-link{background:var(--white);border:1px solid var(--blush);border-radius:20px;padding:.45rem 1.05rem;font-size:.78rem;color:var(--deep);font-weight:300;text-decoration:none;transition:border-color .3s,color .3s;}
.tx-link:hover{border-color:var(--rose);color:var(--rose);}

@media(max-width:600px){
  .spec{grid-template-columns:1fr;}
}

/* Category pages: service cards */
.svc-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;margin:1.4rem 0 2rem;}
.svc{background:var(--white);border:1px solid var(--blush);border-radius:6px;padding:1.5rem 1.4rem 1.3rem;display:flex;flex-direction:column;}
.svc h3{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:500;color:var(--deep);margin-bottom:.5rem;line-height:1.25;}
.svc>p{font-size:.86rem;font-weight:300;line-height:1.75;color:#4a3733;margin-bottom:1rem;}
.svc-meta{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1rem;}
.svc-meta dt{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem;font-weight:500;}
.svc-meta dd{font-size:.8rem;color:var(--deep);line-height:1.5;}
.svc-price{margin-top:auto;font-family:'Cormorant Garamond',serif;font-size:1.2rem;color:var(--rose);}
.svc-more{align-self:flex-start;margin-top:.7rem;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rose);text-decoration:none;border-bottom:1px solid var(--blush);padding-bottom:2px;}
.svc-more:hover{border-color:var(--rose);}
@media(max-width:480px){.svc-list{grid-template-columns:1fr;}.svc-meta{grid-template-columns:1fr;}}

/* Photo on service cards (category pages) */
.svc{overflow:hidden;}
.svc-img{display:block;width:calc(100% + 2.8rem);max-width:none;margin:-1.5rem -1.4rem 1.1rem;aspect-ratio:4/3;height:auto;object-fit:cover;transition:transform .5s ease;}
.svc:hover .svc-img{transform:scale(1.03);}
