/*
Theme Name: Ortho Peshawar Pro
Theme URI: https://drsulaimandawood.com
Author: Dr. Hafiz Sulaiman Dawood
Description: Pixel-perfect match to drsulaimandawood.com original design
Version: 3.4.0
License: GNU General Public License v2 or later
Text Domain: ortho-peshawar
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

/* ══════════════════════════════════════
   TOKENS — exactly matched from screenshots
══════════════════════════════════════ */
:root {
  --primary:      #1a5c9a;
  --primary-lt:   #2272bc;
  --primary-dk:   #0d3b6e;
  --primary-bg:   #eef4fb;
  --accent:       #0fa876;
  --accent-bg:    #e6f7f1;
  --fg:           #111827;
  --fg-muted:     #6b7280;
  --fg-light:     #9ca3af;
  --bg:           #ffffff;
  --bg-alt:       #f3f6fa;
  --border:       #e5e7eb;
  --border-lt:    #f3f4f6;
  --card:         #ffffff;
  --hero-grad:    linear-gradient(135deg,#0d3b6e 0%,#1a5c9a 58%,#0fa876 100%);
  --r-sm: .375rem; --r:.5rem; --r-lg:.75rem; --r-xl:1rem;
  --sh-xs: 0 1px 3px rgba(0,0,0,.06);
  --sh:    0 4px 16px rgba(0,0,0,.08);
  --sh-lg: 0 12px 40px rgba(0,0,0,.12);
  --font: 'Inter',system-ui,-apple-system,sans-serif;
}

/* ══════════════════════════════════════  RESET  */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--fg);background:var(--bg);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button,input,textarea,select{font-family:inherit;font-size:inherit}
h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.25;color:var(--fg)}
::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:3px}

/* ══════════════════════════════════════  LAYOUT  */
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}
.section-alt{background:var(--bg-alt)}
.text-center{text-align:center}

/* ══════════════════════════════════════  TYPOGRAPHY  */
.section-label{
  display:inline-block;font-size:.68rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.12em;
  color:var(--accent);background:var(--accent-bg);
  padding:.28rem .9rem;border-radius:2rem;margin-bottom:.85rem}
.section-title{font-size:clamp(1.6rem,3.5vw,2.25rem);font-weight:700;color:var(--fg);margin-bottom:.55rem;line-height:1.22}
.section-subtitle{font-size:.975rem;color:var(--fg-muted);max-width:600px;margin:0 auto;line-height:1.72}

/* ══════════════════════════════════════  BUTTONS  */
.btn{display:inline-flex;align-items:center;gap:.45rem;padding:.7rem 1.4rem;border-radius:var(--r);font-weight:600;font-size:.875rem;transition:all .2s;cursor:pointer;border:none;line-height:1;text-decoration:none;white-space:nowrap}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-lt);color:#fff;transform:translateY(-1px);box-shadow:0 4px 14px rgba(26,92,154,.28)}
.btn-green{background:#22c55e;color:#fff}
.btn-green:hover{background:#16a34a;color:#fff}
.btn-white{background:#fff;color:var(--primary);box-shadow:var(--sh)}
.btn-white:hover{background:#f8fafc;color:var(--primary)}
.btn-outline-white{background:transparent;border:2px solid rgba(255,255,255,.5);color:#fff}
.btn-outline-white:hover{background:rgba(255,255,255,.1);color:#fff}
.btn-outline-primary{background:transparent;border:2px solid var(--primary);color:var(--primary)}
.btn-outline-primary:hover{background:var(--primary);color:#fff}
.btn-lg{padding:.875rem 1.875rem;font-size:.95rem}
.btn-block{width:100%;justify-content:center}

/* ══════════════════════════════════════  TOP BAR  */
#top-bar{background:var(--primary-dk);color:rgba(255,255,255,.75);font-size:.775rem;padding:.38rem 0}
.top-bar-inner{display:flex;justify-content:space-between;align-items:center}
.top-bar-right{display:flex;align-items:center;gap:1rem}
.top-bar-right a{color:rgba(255,255,255,.72);display:inline-flex;align-items:center;gap:.35rem;transition:color .2s}
.top-bar-right a:hover{color:#fff}
.wa-badge{background:#22c55e;color:#fff!important;padding:.18rem .65rem;border-radius:.25rem;font-weight:700;font-size:.7rem;letter-spacing:.02em}

/* ══════════════════════════════════════  HEADER  */
#site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--border);transition:box-shadow .3s}
#site-header.scrolled{box-shadow:0 2px 20px rgba(0,0,0,.07)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:66px}

/* Logo */
.site-logo{display:flex;align-items:center;gap:.65rem;text-decoration:none}
.logo-mark{width:40px;height:40px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;font-size:.82rem;flex-shrink:0;overflow:hidden}
.logo-mark img,.custom-logo-link img,.site-logo img,.site-logo .custom-logo{width:40px!important;height:40px!important;object-fit:cover!important;object-position:center top!important;border-radius:50%!important;display:block!important;max-width:none!important}
.custom-logo-link{line-height:0}
.logo-text .name{font-weight:700;font-size:.875rem;color:var(--fg);line-height:1.2}
.logo-text .sub{font-size:.67rem;color:var(--fg-muted)}

/* Nav links */
.site-nav{display:flex;align-items:center;gap:.05rem}
.site-nav a{padding:.42rem .78rem;border-radius:var(--r-sm);font-size:.84rem;font-weight:500;color:var(--fg-muted);transition:all .2s}
.site-nav a:hover{color:var(--primary);background:var(--primary-bg)}
.site-nav a.active{color:var(--primary);background:var(--primary-bg)}
.nav-cta{margin-left:.65rem;background:var(--primary)!important;color:#fff!important;padding:.48rem 1.15rem!important;border-radius:var(--r)!important;font-size:.84rem!important;font-weight:600!important}
.nav-cta:hover{background:var(--primary-lt)!important;color:#fff!important}
.nav-toggle{display:none;padding:.4rem;background:none;border:none;cursor:pointer;color:var(--fg);font-size:1.4rem;line-height:1}
.mobile-nav{display:none;flex-direction:column;background:#fff;border-top:1px solid var(--border);padding:.75rem 1.5rem;gap:.25rem}
.mobile-nav.open{display:flex}
.mobile-nav a{padding:.62rem .88rem;border-radius:var(--r-sm);font-size:.875rem;font-weight:500;color:var(--fg)}
.mobile-nav a:hover,.mobile-nav a.active{background:var(--primary-bg);color:var(--primary)}

/* ══════════════════════════════════════  HERO  */
.hero-section{background:var(--hero-grad);position:relative;overflow:hidden;min-height:86vh;display:flex;align-items:center}
.hero-bg-circles{position:absolute;inset:0;opacity:.055;pointer-events:none}
.hero-bg-circles span{position:absolute;border-radius:50%;border:2px solid #fff}
.hero-bg-circles span:nth-child(1){width:340px;height:340px;top:-6%;left:-5%}
.hero-bg-circles span:nth-child(2){width:210px;height:210px;bottom:4%;right:2%}
.hero-bg-circles span:nth-child(3){width:90px;height:90px;top:44%;left:40%;border-width:1px}

.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:4.5rem 0}
.hero-avail{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.22);border-radius:2rem;padding:.38rem .95rem;margin-bottom:1.3rem;font-size:.77rem;font-weight:500;color:rgba(255,255,255,.88)}
.hero-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;flex-shrink:0;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.hero-title{font-size:clamp(2rem,5vw,3.1rem);color:#fff;line-height:1.14;margin-bottom:1.2rem;font-weight:800}
.hero-title .highlight{color:#6ee7b7}
.hero-desc{font-size:.975rem;color:rgba(255,255,255,.75);line-height:1.75;margin-bottom:1.8rem;max-width:490px}
.hero-btns{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:2.4rem}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.hero-stat-num{font-size:1.55rem;font-weight:800;color:#fff;line-height:1}
.hero-stat-lbl{font-size:.7rem;color:rgba(255,255,255,.52);margin-top:.18rem}

/* Hero photo */
.hero-img-wrap{position:relative;display:flex;justify-content:center}
.hero-img-glow{position:absolute;inset:0;border-radius:var(--r-xl);background:var(--accent);opacity:.18;filter:blur(52px)}
.hero-img{position:relative;z-index:1;border-radius:var(--r-xl);width:100%;max-width:430px;height:510px;object-fit:cover;object-position:center top;box-shadow:0 30px 65px rgba(0,0,0,.25);display:block}
.hero-img-placeholder{position:relative;z-index:1;border-radius:var(--r-xl);width:100%;max-width:430px;height:510px;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;text-align:center;color:rgba(255,255,255,.45);font-size:.875rem;border:2px dashed rgba(255,255,255,.18)}

/* Hero badges */
.hero-badge-degree{position:absolute;bottom:-14px;left:-14px;z-index:2;background:#fff;border-radius:var(--r-lg);padding:.8rem .95rem;display:flex;align-items:center;gap:.65rem;box-shadow:var(--sh-lg)}
.badge-icon{width:34px;height:34px;border-radius:50%;background:var(--primary-bg);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:.9rem;flex-shrink:0}
.badge-name{font-weight:700;font-size:.78rem;color:var(--fg);line-height:1.2}
.badge-sub{font-size:.63rem;color:var(--fg-muted)}
.hero-badge-rating{position:absolute;top:-14px;right:-14px;z-index:2;background:#22c55e;color:#fff;border-radius:var(--r-lg);padding:.6rem .8rem;display:flex;align-items:center;gap:.32rem;font-weight:700;font-size:.78rem;box-shadow:0 8px 24px rgba(34,197,94,.28)}

/* ══════════════════════════════════════  TRUST BAR  */
.trust-bar{background:#fff;border-bottom:1px solid var(--border);padding:.9rem 0}
.trust-items{display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem 1.75rem;font-size:.78rem;color:var(--fg-muted);font-weight:500}
.trust-items span{display:flex;align-items:center;gap:.32rem}
.trust-check{color:var(--accent);font-weight:700}

/* ══════════════════════════════════════  ABOUT PREVIEW  */
.about-preview{padding:5rem 0;background:#fff}
.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:center}
.about-img{border-radius:var(--r-xl);width:100%;max-height:490px;object-fit:cover;object-position:center top;box-shadow:0 20px 55px rgba(0,0,0,.1);display:block}
.about-img-placeholder{border-radius:var(--r-xl);width:100%;height:430px;background:var(--primary-bg);display:flex;align-items:center;justify-content:center;font-size:5rem}
.about-subtitle{font-size:.875rem;font-weight:600;color:var(--accent);margin-bottom:.95rem}
.about-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:.48rem;margin-bottom:1.65rem}
.about-check-item{display:flex;align-items:flex-start;gap:.42rem;font-size:.8rem;color:var(--fg)}
.check-icon{color:var(--accent);flex-shrink:0;margin-top:.1rem}

/* Info boxes — exactly like original: light gray bg, label on top, value below */
.about-info-cards{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-bottom:1.65rem}
.about-info-box{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--r);padding:.8rem .95rem}
.about-info-box .lbl{font-size:.63rem;color:var(--fg-muted);margin-bottom:.18rem;text-transform:uppercase;letter-spacing:.05em}
.about-info-box .val{font-size:.875rem;font-weight:700;color:var(--fg)}

/* ══════════════════════════════════════  SERVICE ICONS  */
.svc-card-icon-wrap{margin-bottom:.8rem}
.svc-card-icon{font-size:1.55rem;display:block;line-height:1}
.svc-card-img{width:46px;height:46px;object-fit:cover;object-position:center;border-radius:var(--r-sm);display:block}
.svc-full-icon-wrap{flex-shrink:0;margin-top:.1rem}
.svc-full-icon{font-size:1.8rem;line-height:1;display:block}
.svc-full-img{width:46px;height:46px;object-fit:cover;object-position:center;border-radius:var(--r-sm);display:block}

/* ══════════════════════════════════════  CARD BASE  */
.medical-card{background:var(--card);border-radius:var(--r-lg);border:1px solid var(--border);box-shadow:var(--sh-xs);transition:box-shadow .25s,transform .25s,border-color .25s}
.medical-card:hover{box-shadow:var(--sh);transform:translateY(-3px);border-color:#cfdcee}

/* ══════════════════════════════════════  SERVICES SECTION  */
.services-section{padding:5rem 0;background:#fff}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem;margin-top:2.75rem}
.svc-card{padding:1.45rem}
.svc-card-title{font-size:.875rem;font-weight:700;margin-bottom:.38rem;color:var(--fg)}
.svc-card-desc{font-size:.775rem;color:var(--fg-muted);line-height:1.62;margin-bottom:.8rem}
.svc-learn{font-size:.775rem;font-weight:600;color:var(--primary);display:inline-flex;align-items:center;gap:.18rem;transition:gap .2s}
.svc-card:hover .svc-learn{gap:.35rem}

/* Services full page */
.services-full-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;margin-top:2.25rem}
.svc-full-card{padding:1.65rem}
.svc-full-header{display:flex;align-items:flex-start;gap:.95rem;margin-bottom:.95rem}
.svc-full-title{font-size:.95rem;font-weight:700;margin-bottom:.22rem;color:var(--fg)}
.svc-full-desc{font-size:.78rem;color:var(--fg-muted);line-height:1.6}
.svc-detail{font-size:.815rem;color:var(--fg-muted);line-height:1.65;margin-bottom:.95rem}
.faq-box{background:var(--bg-alt);border-radius:var(--r);padding:.95rem;margin-bottom:.95rem}
.faq-box-title{font-size:.7rem;font-weight:700;color:var(--fg-muted);margin-bottom:.6rem;text-transform:uppercase;letter-spacing:.06em}
.faq-q{font-size:.815rem;font-weight:600;margin-bottom:.18rem;color:var(--fg)}
.faq-a{font-size:.785rem;color:var(--fg-muted);margin-bottom:.5rem;line-height:1.55}
.book-consult{font-size:.78rem;font-weight:600;color:var(--primary);display:inline-flex;align-items:center;gap:.22rem;margin-top:.45rem;border:1px solid var(--primary);padding:.38rem .85rem;border-radius:var(--r);transition:all .2s}
.book-consult:hover{background:var(--primary);color:#fff}

/* ══════════════════════════════════════  WHY CHOOSE  */
.why-section{background:var(--hero-grad);padding:5rem 0}
.why-header{margin-bottom:2.85rem}
.why-header .section-title{color:#fff}
.why-header .section-subtitle{color:rgba(255,255,255,.68)}
.why-header .section-label{background:rgba(255,255,255,.12);color:rgba(255,255,255,.88)}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.why-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-lg);padding:1.45rem;transition:background .2s}
.why-card:hover{background:rgba(255,255,255,.15)}
.why-emoji{font-size:1.55rem;margin-bottom:.8rem;display:block}
.why-title{font-weight:700;color:#fff;font-size:.875rem;margin-bottom:.32rem}
.why-desc{font-size:.775rem;color:rgba(255,255,255,.62);line-height:1.65}

/* ══════════════════════════════════════  TESTIMONIALS  */
.testimonials-section{padding:5rem 0;background:var(--bg-alt)}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:2.85rem}
.testi-card{padding:1.45rem}
.testi-stars{color:#f59e0b;font-size:.88rem;letter-spacing:.06em;margin-bottom:.65rem}
.testi-text{font-size:.815rem;color:#475569;line-height:1.78;margin-bottom:.95rem;font-style:italic}
.testi-author{display:flex;align-items:center;gap:.65rem;padding-top:.8rem;border-top:1px solid var(--border-lt)}
.testi-avatar{width:34px;height:34px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.76rem;flex-shrink:0}
.testi-name{font-weight:600;font-size:.815rem;color:var(--fg)}
.testi-loc{font-size:.7rem;color:var(--fg-muted)}

/* ══════════════════════════════════════  CTA  */
.appt-cta{padding:5rem 0;background:#fff}
.appt-cta-btns{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-top:2.15rem}

/* ══════════════════════════════════════  PAGE HEROES  */
.about-hero,.services-hero,.contact-hero,.blog-hero,.post-hero{background:var(--hero-grad);padding:4.25rem 0;text-align:center}
.about-hero h1,.services-hero h1,.contact-hero h1,.blog-hero h1,.post-hero h1{color:#fff;font-size:clamp(1.75rem,5vw,2.65rem)}
.about-hero p,.services-hero p,.contact-hero p,.blog-hero p,.post-hero p{color:rgba(255,255,255,.72);margin-top:.65rem;font-size:.975rem}

/* ══════════════════════════════════════  ABOUT PAGE  */
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2.65rem}
.value-card{padding:1.65rem 1.4rem;text-align:center}
/* Value card icon — matches original: light blue square with SVG icon */
.value-icon{width:50px;height:50px;border-radius:var(--r);background:var(--primary-bg);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto .9rem;color:var(--primary)}
.value-title{font-size:.875rem;font-weight:700;margin-bottom:.35rem;color:var(--fg)}
.value-desc{font-size:.775rem;color:var(--fg-muted);line-height:1.65}

/* Clinic info — 3 cards centered */
.clinic-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:700px;margin:2.15rem auto 0}
.clinic-box{padding:1.45rem;text-align:center}
.clinic-icon{font-size:1.55rem;margin-bottom:.5rem;color:var(--primary)}
.clinic-title{font-size:.8rem;font-weight:700;margin-bottom:.18rem;color:var(--fg)}
.clinic-val{font-size:.78rem;color:var(--fg-muted);line-height:1.55}

/* ══════════════════════════════════════  BLOG  */
.cat-bar{background:#fff;border-bottom:1px solid var(--border);padding:.6rem 0;position:sticky;top:66px;z-index:50}
.cat-pills{display:flex;gap:.38rem;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.cat-pills::-webkit-scrollbar{height:0}
.cat-pill{padding:.32rem .88rem;border-radius:2rem;font-size:.73rem;font-weight:600;border:1px solid var(--border);background:#fff;color:var(--fg-muted);white-space:nowrap;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}
.cat-pill:hover,.cat-pill.active{background:var(--primary);border-color:var(--primary);color:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.45rem}
.blog-card{display:flex;flex-direction:column;overflow:hidden}
.blog-card-thumb{height:172px;background:var(--bg-alt);display:flex;align-items:center;justify-content:center;font-size:3rem;overflow:hidden;flex-shrink:0}
.blog-card-thumb img{width:100%;height:100%;object-fit:cover}
.blog-card-body{padding:1.2rem;flex:1;display:flex;flex-direction:column}
.blog-cat-badge{display:inline-block;font-size:.67rem;font-weight:700;padding:.18rem .62rem;border-radius:2rem;margin-bottom:.5rem}
.cat-joint{background:#dbeafe;color:#1d4ed8}.cat-sports{background:#dcfce7;color:#15803d}
.cat-spine{background:#fce7f3;color:#9d174d}.cat-paed{background:#ede9fe;color:#6d28d9}
.cat-rehab{background:#fef9c3;color:#92400e}.cat-general{background:#f3f4f6;color:#374151}
.blog-card-title{font-size:.875rem;font-weight:700;margin-bottom:.42rem;line-height:1.35;flex:1;transition:color .2s}
.blog-card:hover .blog-card-title{color:var(--primary)}
.blog-card-excerpt{font-size:.775rem;color:var(--fg-muted);line-height:1.62;margin-bottom:.62rem}
.blog-card-meta{font-size:.69rem;color:var(--fg-muted)}
.read-article{font-size:.775rem;font-weight:600;color:var(--primary);display:inline-flex;align-items:center;gap:.18rem;margin-top:.62rem;transition:gap .2s}
.blog-card:hover .read-article{gap:.38rem}

/* ══════════════════════════════════════  SINGLE POST  */
.post-layout{display:grid;grid-template-columns:1fr 310px;gap:2.15rem;padding:2.85rem 0}
.post-content-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:2.15rem}
.post-sidebar .sidebar-widget{background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:1.35rem;margin-bottom:1rem}
.post-sidebar .sidebar-widget h3{font-size:.85rem;font-weight:700;margin-bottom:.8rem;border-bottom:1px solid var(--border);padding-bottom:.62rem}
.related-item{display:block;padding:.62rem;background:var(--bg-alt);border-radius:var(--r);margin-bottom:.38rem;transition:background .2s}
.related-item:hover{background:var(--primary-bg)}
.related-cat{font-size:.63rem;font-weight:700;color:var(--accent)}
.related-title{font-size:.78rem;font-weight:600;color:var(--fg);margin-top:.1rem;line-height:1.3}
.entry-content{line-height:1.82;color:#1e293b}
.entry-content h2{font-size:1.4rem;color:var(--primary);margin:1.85rem 0 .62rem}
.entry-content h3{font-size:1.12rem;margin:1.35rem 0 .48rem}
.entry-content p{margin-bottom:1rem}
.entry-content ul,.entry-content ol{padding-left:1.35rem;margin-bottom:1rem}
.entry-content li{margin-bottom:.28rem}
.entry-content img{border-radius:var(--r-lg);margin:1.35rem 0}
.entry-content a{color:var(--primary);text-decoration:underline}
.entry-content blockquote{border-left:4px solid var(--primary);padding:.72rem 1.15rem;background:var(--primary-bg);margin:1.35rem 0;border-radius:0 var(--r) var(--r) 0;font-style:italic}

/* ══════════════════════════════════════  CONTACT  */
.contact-layout{display:grid;grid-template-columns:3fr 2fr;gap:2.15rem;align-items:start}
.form-card{background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);padding:1.85rem;box-shadow:var(--sh-xs)}
.form-title{font-size:1.25rem;font-weight:700;margin-bottom:.28rem;color:var(--fg)}
.form-sub{font-size:.8rem;color:var(--fg-muted);margin-bottom:1.5rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.form-group{display:flex;flex-direction:column;gap:.28rem;margin-bottom:.8rem}
.form-group label{font-size:.78rem;font-weight:500;color:var(--fg)}
.form-group input,.form-group select,.form-group textarea{padding:.58rem .82rem;border:1px solid var(--border);border-radius:var(--r);font-size:.855rem;background:var(--bg-alt);outline:none;transition:border-color .2s,box-shadow .2s,background .2s;width:100%}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(26,92,154,.07);background:#fff}
.form-group textarea{resize:vertical;min-height:90px}

/* Contact sidebar info widgets */
.info-widget{display:flex;gap:.8rem;align-items:flex-start;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:.95rem 1.05rem;margin-bottom:.6rem;box-shadow:var(--sh-xs);transition:box-shadow .2s}
.info-widget:hover{box-shadow:var(--sh)}
.info-w-icon{width:36px;height:36px;border-radius:var(--r);background:var(--primary-bg);display:flex;align-items:center;justify-content:center;font-size:.88rem;flex-shrink:0;color:var(--primary)}
.info-w-label{font-size:.7rem;font-weight:600;color:var(--fg-muted);margin-bottom:.1rem}
.info-w-val{font-size:.8rem;color:var(--fg);line-height:1.45}
.info-w-val a{color:var(--fg);transition:color .2s}
.info-w-val a:hover{color:var(--primary)}
.map-box{border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--border);margin-top:.25rem;box-shadow:var(--sh-xs)}
.map-box iframe{display:block;width:100%;height:230px;border:0}
.map-placeholder{padding:2.5rem 1.5rem;text-align:center;background:var(--bg-alt);font-size:.815rem;color:var(--fg-muted)}

/* ══════════════════════════════════════  PAGE CTA  */
.page-cta{padding:3.85rem 0;background:var(--bg-alt);text-align:center}
.page-cta p{color:var(--fg-muted);margin:.45rem 0 1.85rem;font-size:.935rem}

/* ══════════════════════════════════════  FOOTER  */
#site-footer{background:var(--primary-dk);color:rgba(255,255,255,.6)}
.footer-top{padding:3.25rem 0 2.15rem}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:2.4rem}
.footer-brand .logo-line{display:flex;align-items:center;gap:.58rem;margin-bottom:.65rem}
.footer-brand .logo-mark{background:rgba(255,255,255,.12)}
.footer-brand .f-name{font-weight:700;color:#fff;font-size:.855rem}
.footer-brand p{font-size:.765rem;color:rgba(255,255,255,.48);line-height:1.72;margin-bottom:.85rem}
.socials{display:flex;gap:.38rem}
.soc{width:29px;height:29px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;font-size:.73rem;color:rgba(255,255,255,.55);transition:background .2s;text-decoration:none}
.soc:hover{background:rgba(255,255,255,.2);color:#fff}
.footer-col h4{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#fff;margin-bottom:.85rem}
.footer-col ul li{margin-bottom:.38rem}
.footer-col ul a{font-size:.765rem;color:rgba(255,255,255,.48);display:inline-flex;align-items:center;gap:.32rem;transition:color .2s}
.footer-col ul a::before{content:'•';color:var(--accent);flex-shrink:0}
.footer-col ul a:hover{color:rgba(255,255,255,.88)}
.f-contact-row{display:flex;gap:.52rem;margin-bottom:.6rem;align-items:flex-start}
.f-contact-icon{color:var(--accent);font-size:.82rem;margin-top:2px;flex-shrink:0}
.f-contact-text{font-size:.765rem;color:rgba(255,255,255,.52);line-height:1.5}
.f-contact-text a{color:rgba(255,255,255,.52);transition:color .2s}
.f-contact-text a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.07);padding:1rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.45rem;font-size:.7rem;color:rgba(255,255,255,.28)}

/* ══════════════════════════════════════  FLOATS  */
.wa-float{position:fixed;bottom:1.2rem;right:1.2rem;z-index:9999;display:flex;align-items:center;gap:.52rem;background:#22c55e;color:#fff;padding:.68rem 1.15rem;border-radius:2rem;font-weight:600;font-size:.81rem;box-shadow:0 4px 20px rgba(34,197,94,.32);transition:all .25s;text-decoration:none}
.wa-float:hover{background:#16a34a;transform:scale(1.04);color:#fff}
.scroll-top{position:fixed;bottom:1.2rem;right:9.5rem;z-index:9998;width:38px;height:38px;border-radius:50%;background:var(--primary);color:#fff;border:none;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .25s;box-shadow:0 4px 14px rgba(0,0,0,.14)}
.scroll-top.show{opacity:1;pointer-events:all}
.scroll-top:hover{background:var(--primary-lt)}
.toast{position:fixed;top:1rem;right:1rem;z-index:9998;background:#fff;border-radius:var(--r-lg);padding:.82rem 1.25rem;box-shadow:var(--sh-lg);border-left:4px solid var(--primary);max-width:315px;display:none}
.toast.show{display:block;animation:fadeInRight .3s ease}
.toast-title{font-weight:700;font-size:.81rem;margin-bottom:.1rem}
.toast-msg{font-size:.765rem;color:var(--fg-muted)}
@keyframes fadeInRight{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:translateX(0)}}

/* ══════════════════════════════════════  MISC  */
.page-404{min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center}
.page-404 .num{font-size:5rem;font-weight:800;color:var(--primary);line-height:1}
.page-content-wrap{max-width:840px;margin:0 auto;padding:4rem 1.5rem}
.pagination{display:flex;justify-content:center;gap:.32rem;margin-top:2.65rem;flex-wrap:wrap}
.pagination a,.pagination span{padding:.38rem .78rem;border-radius:var(--r-sm);border:1px solid var(--border);font-size:.78rem;font-weight:500;color:var(--fg-muted);transition:all .2s}
.pagination a:hover,.pagination .current{background:var(--primary);border-color:var(--primary);color:#fff}

/* ══════════════════════════════════════  RESPONSIVE  */
@media(max-width:1024px){
  .site-nav,.top-bar-left{display:none}
  .nav-toggle{display:flex}
  .hero-grid,.about-grid,.contact-layout,.post-layout{grid-template-columns:1fr}
  .hero-img{max-width:100%;height:360px}
  .services-grid,.why-grid,.testi-grid{grid-template-columns:repeat(2,1fr)}
  .values-grid,.footer-grid{grid-template-columns:repeat(2,1fr)}
  .services-full-grid{grid-template-columns:1fr}
  .blog-grid{grid-template-columns:repeat(2,1fr)}
  .clinic-info-grid{grid-template-columns:1fr 1fr}
  .hero-badge-degree,.hero-badge-rating{display:none}
}
@media(max-width:640px){
  .hero-grid{padding:3rem 0}
  .hero-stat-num{font-size:1.28rem}
  .services-grid,.why-grid,.testi-grid,.values-grid,.about-info-cards,
  .about-check-grid,.clinic-info-grid,.blog-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;text-align:center}
  .form-row{grid-template-columns:1fr}
  .appt-cta-btns{flex-direction:column;align-items:center}
  .wa-float span{display:none}
  .wa-float{padding:.72rem;border-radius:50%;width:46px;height:46px;justify-content:center}
  .scroll-top{right:4rem}
}
