/* Shared clinic design system — loaded after the project's existing styles.css */
:root {
  --clinic-ink:#193a36; --clinic-muted:#617b73; --clinic-primary:#137d6d;
  --clinic-primary-dark:#0e5d52; --clinic-mint:#eaf6f1; --clinic-line:#dceae4;
  --clinic-bg:#f7faf8; --clinic-surface:#fff; --clinic-gold:#c6a66b;
  --clinic-shadow:0 15px 42px rgba(20,72,61,.075);
  --clinic-radius:22px;
}
html { scroll-behavior:smooth; }
body.clinic-body { font-family:inherit,"Vazirmatn",Tahoma,sans-serif; color:var(--clinic-ink); background:var(--clinic-bg); line-height:1.85; }
.clinic-body * { box-sizing:border-box; }
.clinic-body img { max-width:100%; }
.clinic-body :focus-visible { outline:3px solid #d8a14d; outline-offset:3px; }
.skip-link { position:absolute; inset-inline-start:1rem; top:-5rem; z-index:3000; padding:.7rem 1.1rem; background:#fff; color:var(--clinic-ink); border-radius:12px; }
.skip-link:focus {top:1rem}
.clinic-header {position:relative; z-index:20; background:rgba(255,255,255,.98);border-bottom:1px solid var(--clinic-line);}
.clinic-navbar {padding:.85rem 0}
.clinic-brand {color:var(--clinic-ink)!important;text-decoration:none;letter-spacing:-.025em}
.clinic-brand__logo {object-fit:contain;border-radius:50%;background:#f3faf6}
.clinic-brand span {display:grid;line-height:1.5}
.clinic-brand strong {font-size:1.18rem;font-weight:850}
.clinic-brand small {color:var(--clinic-muted);font-size:.78rem;font-weight:400}
.clinic-navbar .nav-link {color:#47655d!important;font-weight:650;padding:.55rem .8rem!important;border-radius:11px}
.clinic-navbar .nav-link:hover {color:var(--clinic-primary)!important;background:#edf7f2}
.clinic-nav-toggle {border:1px solid var(--clinic-line);border-radius:12px;box-shadow:none!important}
.clinic-btn {display:inline-flex;justify-content:center;align-items:center;gap:.7rem;min-height:47px; border-radius:12px; padding:.7rem 1.4rem; font-weight:750;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s}
.clinic-btn:hover {transform:translateY(-1px)}
.clinic-btn--primary {background:var(--clinic-primary); color:white!important;border:1px solid var(--clinic-primary)}
.clinic-btn--primary:hover {background:var(--clinic-primary-dark);border-color:var(--clinic-primary-dark)}
.clinic-btn--outline {background:#fff;color:var(--clinic-primary);border:1px solid #a9d0c3}
.clinic-btn--outline:hover {background:var(--clinic-mint); color:var(--clinic-primary-dark)}
.clinic-btn--soft {background:var(--clinic-mint);color:var(--clinic-primary-dark);border:1px solid #d0e9df}
.clinic-btn[disabled], .clinic-btn:disabled {transform:none;opacity:.47;cursor:not-allowed}
.clinic-kicker {display:inline-block;color:var(--clinic-primary);font-size:.85rem;font-weight:800;letter-spacing:.02em}
.clinic-heading {font-weight:850;letter-spacing:-.04em;line-height:1.48}
.clinic-lead {color:var(--clinic-muted);font-size:1.06rem;max-width:640px}
.clinic-panel {border:1px solid var(--clinic-line);background:#fff;border-radius:var(--clinic-radius);box-shadow:var(--clinic-shadow)}
.clinic-mini-label {color:var(--clinic-muted);font-size:.86rem}
.clinic-pill {display:inline-flex;align-items:center;gap:.45rem;background:var(--clinic-mint);color:var(--clinic-primary-dark);border-radius:999px;padding:.2rem .7rem;font-size:.82rem;font-weight:700}
.clinic-alert {border-radius:14px}

/* Landing page */
.clinic-hero {position:relative;overflow:hidden;background:linear-gradient(115deg,#ebf7f1,#f9fcf9 62%,#ecf4ed);padding:clamp(3.25rem,8vw,7rem) 0}
.clinic-hero:after {content:"";position:absolute;inset-inline-end:-130px;top:-180px;width:500px;height:500px;border:90px solid rgba(37,137,110,.055);border-radius:50%;pointer-events:none}
.clinic-hero__content {position:relative;z-index:2}
.clinic-hero h1 {font-size:clamp(2.1rem,4.6vw,4.1rem);max-width:670px;margin:1rem 0;line-height:1.45}
.clinic-hero__visual {position:relative;min-height:325px; border-radius:30px;background:linear-gradient(145deg,#c9e7dc,#87bfae);overflow:hidden;box-shadow:0 26px 60px rgba(19,93,73,.17)}
.clinic-hero__visual img {width:100%;height:100%;min-height:325px;object-fit:cover}
.clinic-hero__visual:has(img):after {content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,66,50,.15),transparent 60%);pointer-events:none}
.clinic-hero__emblem {position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:clamp(6rem,13vw,12rem);font-weight:250;text-shadow:0 10px 28px rgba(0,0,0,.1);}
.clinic-hero__caption {position:absolute;bottom:22px;inset-inline:22px;background:rgba(255,255,255,.96);padding:1rem 1.25rem;border-radius:18px;box-shadow:0 12px 26px rgba(0,0,0,.08);z-index:2}
.clinic-section {padding:clamp(3rem,6vw,5.5rem) 0}
.clinic-section--alt {background:#eff7f2}
.clinic-service-card {height:100%;padding:1.4rem;border:1px solid var(--clinic-line);border-radius:18px;background:#fff;transition:transform .2s,border-color .2s}
.clinic-service-card:hover {transform:translateY(-3px);border-color:#a1cdbd}
.clinic-service-card__icon {display:grid;place-items:center;width:46px;height:46px;margin-bottom:1.2rem;background:var(--clinic-mint);color:var(--clinic-primary);font-size:1.4rem;border-radius:14px}
.clinic-service-card h3 {font-size:1.12rem;font-weight:800;margin-bottom:.35rem}
.clinic-service-card p {font-size:.9rem;color:var(--clinic-muted);margin:0}
.clinic-branch-card {border:1px solid var(--clinic-line);border-radius:22px;background:#fff;overflow:hidden;height:100%;box-shadow:var(--clinic-shadow)}
.clinic-branch-card__body {padding:1.5rem}
.clinic-branch-card h3 {font-size:1.45rem;font-weight:800}
.clinic-branch-card__map {height:250px;background:#e9f2ed;position:relative}
.clinic-branch-card__map iframe {width:100%;height:100%;border:0}
.clinic-branch-card address {color:#5e756e;line-height:2.1;font-size:.94rem;margin-bottom:1rem}
.clinic-callout {background:linear-gradient(110deg,#125e54,#168b78);color:white;border-radius:28px;padding:clamp(1.6rem,5vw,3rem)}
.clinic-callout p {color:#d9f0e7}
.clinic-footer {background:#173831;color:#eef8f3;padding:3.6rem 0 1.25rem;margin-top:auto}
.clinic-footer__brand {font-size:1.35rem;font-weight:800;margin-bottom:.75rem}
.clinic-footer__text {color:#bfdbd1;max-width:380px}
.clinic-footer__heading {font-weight:800;font-size:1rem;margin-bottom:1rem;color:#fff}
.clinic-footer__link {display:block;width:max-content;max-width:100%;color:#d7eee5;text-decoration:none;margin:.5rem 0;transition:color .2s}
.clinic-footer__link:hover {color:#fff;text-decoration:underline}
.clinic-footer__bottom {display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid #35584f;margin-top:2.5rem;padding-top:1.3rem;color:#a4c4b7;font-size:.84rem}
.clinic-mobile-bottom-nav{display:none}
@media(max-width:991px){
 .clinic-navbar .navbar-collapse {padding:1rem 0}
 .clinic-navbar .navbar-nav {margin-bottom:1rem}
 .clinic-hero__visual {max-height:430px}
 .clinic-header .navbar-toggler,.clinic-header #clinicNav{display:none!important}
  .clinic-header .clinic-nav-inner{justify-content:center}
  .clinic-header .clinic-brand{margin:0}
  .clinic-body{padding-bottom:calc(77px + env(safe-area-inset-bottom,0px))}
  .clinic-mobile-bottom-nav{display:flex;position:fixed;z-index:1035;inset:auto 0 0;align-items:stretch;justify-content:space-around;gap:.15rem;padding:.45rem .4rem calc(.45rem + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.98);border-top:1px solid #dbece3;box-shadow:0 -7px 30px rgba(18,62,48,.09)}
  .clinic-mobile-tab{display:flex;min-width:0;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:#526b61;font-weight:750;font-size:.76rem;min-height:56px;border-radius:14px}
  .clinic-mobile-tab>span{font-size:1.5rem;line-height:1.25}
  .clinic-mobile-tab small{font-size:.69rem;white-space:nowrap}
  .clinic-mobile-tab:hover,.clinic-mobile-tab:focus-visible{color:#095f4b;background:#edf7f1;outline-offset:2px}
  .clinic-mobile-tab--book{background:#116b60;color:#fff;box-shadow:0 4px 16px rgba(17,107,96,.24)}
  .clinic-mobile-tab--book:hover,.clinic-mobile-tab--book:focus-visible{background:#0d554a;color:white}
}
@media(max-width:575px){.clinic-brand strong {font-size:1rem}.clinic-brand__logo {height:40px;width:40px}.clinic-hero__visual {min-height:230px}.clinic-hero__visual img{min-height:230px}.clinic-section {padding:3rem 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* The legacy styles.css may hide #services on booking pages; keep the homepage section visible. */
.clinic-home #services {display:block!important}