/* Service pages: a calm reading surface within the clinic's green identity. */
body[data-service]:not([data-service=""]){background:#f4f5ee;color:#193b2a}
.service-hero{margin:20px auto 0;width:calc(100% - 40px);max-width:1380px;background:#e6edda;border:1px solid #d8e2cd;padding:24px 0 40px;border-radius:26px;color:#193b2a}
.service-hero .breadcrumbs{margin-bottom:28px;color:#4b6354;line-height:1.6}
.service-hero .breadcrumbs a{color:inherit}
.service-hero .split{grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.service-hero h1{font-size:clamp(34px,3.5vw,52px);line-height:1.12;letter-spacing:-.025em;color:#193b2a;margin-bottom:22px}
.service-hero .eyebrow{color:#486448;font-size:13px;letter-spacing:.12em;margin-bottom:16px}
.service-hero .hero-description{font-size:19px;line-height:1.65;color:#43594b}
.service-hero .large-price{font-size:32px;color:#245b39;margin:24px 0 4px}
.service-hero small{color:#4b6354}
.service-hero .actions{margin-top:24px;gap:10px;flex-wrap:wrap}
.service-hero .actions>.button{max-width:none;font-size:16px;gap:8px}
.service-hero .actions .button span{margin:0}
.service-hero .photo-window{height:390px;border-radius:22px}
.service-hero .photo-window>img{object-fit:cover;object-position:center;transform:none}
.service-hero .mini-facts{margin-top:16px;gap:16px;display:grid;grid-template-columns:1fr 1fr}
.service-hero .mini-facts>span{font-size:23px;padding:14px 16px;background:#f6f8ef;border-radius:14px;color:#245b39}
.service-hero .mini-facts small{font-size:14px;line-height:1.4;margin-top:4px}
.article-layout{grid-template-columns:220px minmax(0,1fr);gap:36px;padding-top:40px;padding-bottom:20px}
.toc{top:20px}
.toc details{background:#e8eedf;border:1px solid #d7e0cd;border-radius:18px;padding:22px}
.toc summary{color:#193b2a;font-size:17px;cursor:pointer;line-height:1.4}
.toc a{font-size:14px;line-height:1.5;color:#405c49;border-color:#cedbc6;padding:10px 0}
.toc a:hover{color:#a91e29}
.service-article{min-width:0;counter-reset:service-section}
.service-article>section{background:#fff;border:1px solid #e0e6d9;border-radius:22px;padding:30px;margin-bottom:20px;scroll-margin-top:20px}
.service-article>section>h2{color:#193b2a;font-size:28px;line-height:1.25;letter-spacing:-.015em}
.service-article>section>h2:before{counter-increment:service-section;content:counter(service-section,decimal-leading-zero);display:block;font-size:13px;letter-spacing:.12em;color:#608365;margin-bottom:12px}
.service-article p,.service-article li{font-size:17px;line-height:1.75;color:#43594b}
.service-article h3{color:#193b2a;font-size:21px;line-height:1.35}
.service-article .eyebrow{display:none}
.service-article .care-note{background:#eef3e6;border:0;border-radius:14px;padding:18px;gap:14px}
.service-article .care-note span{font-size:15px;color:#3b5744}
.service-article .checklist{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.service-article .checklist li{background:#f1f5eb;border-radius:12px;padding:16px 18px 16px 40px;position:relative;margin:0}
.service-article .checklist li:before{content:'✓';position:absolute;left:16px;color:#477649;font-weight:700}
.service-article .article-step{margin:0;padding:22px 0;border-top:1px solid #e3e9dc;gap:18px}
.service-article .article-step>span{background:#e8efdd;color:#315e3c;border:0;border-radius:50%;font-size:17px;width:42px;height:42px}
.service-article .article-step p{margin-bottom:0}
.service-article .article-photo{margin:-30px -30px 28px;border-radius:22px 22px 0 0;background:#e8eedf}
.service-article .article-photo img{height:340px;object-fit:cover;object-position:center}
.service-article .emergency{background:#fff1e9;border-color:#d28964}
.service-article .emergency strong{color:#82482d}
.service-article .emergency p{font-size:15px;color:#704e3e}
.service-article #cost{background:#dfeacd;border-color:#cfddbe}
.service-article #cost .large-price{color:#245b39;font-size:36px}
.service-article #cost .actions{flex-wrap:wrap;gap:10px}
.service-article #cost .button span{margin:0}
.service-article .faq details{border-color:#dce5d5;padding:20px 0}
.service-article .faq summary{font-size:18px;color:#193b2a;gap:16px}
.service-article .faq summary span{color:#477649}
.service-article .faq p{font-size:16px;color:#43594b;padding-right:0}
body[data-service]:not([data-service=""]) .soft{background:#e8eedf}
body[data-service]:not([data-service=""]) .soft h2{color:#193b2a}
@media(max-width:1050px){.service-hero .split{gap:28px}.service-hero .photo-window{height:340px}.article-layout{grid-template-columns:190px minmax(0,1fr);gap:24px}.toc details{padding:18px}.service-hero .actions{flex-direction:column}}
@media(max-width:767px){
  .service-hero{width:calc(100% - 24px);margin-top:12px;padding:20px 0 24px;border-radius:20px}
  .service-hero .wrap{width:calc(100% - 32px)}
  .service-hero .breadcrumbs{font-size:13px;margin-bottom:24px}
  .service-hero .breadcrumbs a{font-size:13px}
  .service-hero .split{grid-template-columns:minmax(0,1fr);gap:26px}
  .service-hero h1{font-size:36px;line-height:1.15}
  .service-hero .hero-description{font-size:18px}
  .service-hero .actions>.button{width:100%;min-height:52px}
  .service-hero .photo-window{height:auto;aspect-ratio:4/3;border-radius:16px}
  .service-hero .mini-facts{gap:10px}
  .service-hero .mini-facts>span{font-size:21px;padding:12px}
  .service-hero .mini-facts small{font-size:13px}
  .article-layout{display:block;padding-top:24px}
  .toc{position:static;margin-bottom:20px}
  .toc summary{margin-bottom:0}
  .toc details[open] summary{margin-bottom:12px}
  .service-article>section{padding:22px;border-radius:18px;scroll-margin-top:16px}
  .service-article>section>h2{font-size:25px}
  .service-article p,.service-article li{font-size:17px;line-height:1.65}
  .service-article .article-photo{margin:-22px -22px 22px;border-radius:18px 18px 0 0}
  .service-article .article-photo img{height:auto;aspect-ratio:4/3}
  .service-article .article-step{gap:12px}
  .service-article .article-step>span{width:34px;height:34px;font-size:15px}
  .service-article #cost .actions{flex-direction:column}
  .service-article #cost .button{max-width:none;width:100%}
}
/* Preserve each photograph's original proportions at every screen size. */
body[data-service]:not([data-service=""]) .service-hero .photo-window,
body[data-service]:not([data-service=""]) .card-photo{height:auto;aspect-ratio:auto}
body[data-service]:not([data-service=""]) .service-hero .photo-window>img,
body[data-service]:not([data-service=""]) .service-article .article-photo img,
body[data-service]:not([data-service=""]) .card-photo>img{
  display:block;width:100%;height:auto;min-height:0;max-height:none;
  aspect-ratio:auto;object-fit:contain;transform:none;
}
