:root{
  --ink:#15263a; --soft:#5a6b80; --bg:#f1f6fb; --paper:#fff; --line:#e0e9f2;
  --p1:#1b9aaa; --p1-d:#15828f; --accent:#2f6df0; --dark:#102236;
  --r:18px; --shadow:0 16px 40px rgba(21,38,58,.1);
  --sans:'Inter',sans-serif; --display:'Lexend',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.65;overflow-x:hidden}
.container{width:90%;max-width:1180px;margin:0 auto}
h1,h2,h3,h4,.brand{font-family:var(--display);font-weight:700}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
section{padding:96px 0}
.kicker{display:inline-block;color:var(--p1);font-weight:600;text-transform:uppercase;letter-spacing:2.5px;font-size:.76rem;margin-bottom:12px}
.kicker.light{color:#7fd4dd}
.sec-head{text-align:center;max-width:620px;margin:0 auto 50px}
.sec-head h2{font-size:clamp(1.9rem,4.5vw,3rem);line-height:1.1;margin-bottom:12px}
.sec-head p{color:var(--soft)}
.btn{display:inline-flex;align-items:center;gap:9px;padding:14px 28px;border-radius:50px;font-family:var(--display);font-weight:600;font-size:.95rem;cursor:pointer;border:none;transition:.25s}
.btn-primary{background:var(--p1);color:#fff;box-shadow:0 10px 24px rgba(27,154,170,.32)}
.btn-primary:hover{background:var(--p1-d);transform:translateY(-3px)}
.btn-ghost{background:var(--bg);color:var(--ink)}
.btn-ghost:hover{transform:translateY(-3px);box-shadow:var(--shadow)}

#navbar{position:fixed;top:0;width:100%;z-index:1000;padding:18px 0;transition:.3s}
#navbar.scrolled{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);padding:12px 0;box-shadow:0 6px 24px rgba(21,38,58,.07)}
.nav-inner{display:flex;align-items:center;justify-content:space-between}
.brand{font-size:1.45rem;display:flex;align-items:center;gap:9px;color:var(--ink)}
.brand i{color:var(--p1)}
.brand span{color:var(--p1)}
.brand.light{color:#fff}
.nav-menu{display:flex;align-items:center;gap:6px;list-style:none}
.nav-link{padding:9px 16px;border-radius:50px;color:var(--soft);font-weight:600;font-size:.95rem;transition:.2s}
.nav-link:hover,.nav-link.active{color:var(--p1)}
.nav-cta{background:var(--p1);color:#fff!important}
.nav-cta:hover{background:var(--p1-d)}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer}
.hamburger span{width:26px;height:3px;background:var(--ink);border-radius:3px;transition:.3s}
.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

/* hero */
.hero{padding:150px 0 80px;background:linear-gradient(180deg,#e6f3f5,#fff)}
.hero-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:8px;background:#fff;padding:8px 18px;border-radius:50px;font-weight:600;font-size:.85rem;color:var(--p1);box-shadow:var(--shadow);margin-bottom:20px}
.hero-text h1{font-size:clamp(2.4rem,5vw,3.7rem);line-height:1.05;margin-bottom:18px}
.hl{color:var(--p1)}
.hero-text>p{color:var(--soft);font-size:1.1rem;max-width:500px;margin-bottom:28px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}
.hero-mini{display:flex;gap:30px;flex-wrap:wrap}
.hero-mini>div{display:flex;align-items:center;gap:12px}
.hero-mini i{width:42px;height:42px;border-radius:50%;background:rgba(27,154,170,.12);color:var(--p1);display:grid;place-items:center}
.hero-mini strong{display:block;font-family:var(--display);font-size:.95rem}
.hero-mini span{color:var(--soft);font-size:.85rem}
.hero-art{position:relative}
.hero-art>img{width:100%;border-radius:24px;box-shadow:var(--shadow)}
.float-card{position:absolute;background:#fff;border-radius:14px;padding:12px 18px;box-shadow:var(--shadow);display:flex;align-items:center;gap:12px}
.float-card i{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:#fff;font-size:1rem}
.fc1{top:30px;left:-22px}.fc1 i{background:var(--p1)}
.fc2{bottom:36px;right:-18px}.fc2 i{background:var(--accent)}
.float-card strong{display:block;font-family:var(--display);font-size:1.1rem}
.float-card span{color:var(--soft);font-size:.78rem}

/* trust bar */
.trust-bar{background:var(--dark);padding:54px 0}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.trust-bar .stats .count{color:#fff}
.stats .count{font-family:var(--display);font-size:2.6rem;display:block}
.trust-bar .stats small{color:#8ba3bd}
.stats small{font-size:.85rem;color:var(--soft)}

/* services */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.svc{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:32px 28px;transition:.3s}
.svc:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:transparent}
.si{width:58px;height:58px;border-radius:16px;background:rgba(27,154,170,.1);color:var(--p1);display:grid;place-items:center;font-size:1.4rem;margin-bottom:18px}
.svc h3{font-size:1.3rem;margin-bottom:10px}
.svc p{color:var(--soft);font-size:.95rem}

/* doctors */
.doctors{background:var(--bg)}
.doc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.doc{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);transition:.3s}
.doc:hover{transform:translateY(-6px)}
.doc img{width:100%;height:280px;object-fit:cover}
.doc figcaption{padding:22px;text-align:center}
.doc figcaption strong{display:block;font-family:var(--display);font-size:1.2rem}
.doc figcaption span{color:var(--p1);font-size:.88rem;font-weight:600}
.d-soc{display:flex;justify-content:center;gap:10px;margin-top:12px}
.d-soc a{width:34px;height:34px;border-radius:50%;background:var(--bg);color:var(--p1);display:grid;place-items:center;transition:.2s}
.d-soc a:hover{background:var(--p1);color:#fff}

/* why */
.why-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:54px;align-items:center}
.why-art img{width:100%;border-radius:24px;box-shadow:var(--shadow)}
.why-text h2{font-size:clamp(1.9rem,4vw,2.7rem);line-height:1.1;margin-bottom:14px}
.why-text>p{color:var(--soft);font-size:1.05rem;margin-bottom:24px}
.why-list{list-style:none}
.why-list li{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.why-list i{color:var(--p1);font-size:1.3rem;margin-top:2px}
.why-list strong{display:block;font-family:var(--display);font-size:1.1rem;margin-bottom:2px}
.why-list p{color:var(--soft);font-size:.92rem}

/* quote */
.quote{background:linear-gradient(135deg,var(--p1),var(--p1-d));color:#fff;text-align:center}
.quote .container{max-width:760px}
.quote>.container>i{font-size:2.4rem;opacity:.4;margin-bottom:18px}
.quote p{font-family:var(--display);font-size:clamp(1.3rem,3vw,1.9rem);line-height:1.4;font-weight:500;margin-bottom:24px}
.q-who{display:flex;align-items:center;justify-content:center;gap:14px}
.q-who img{width:54px;height:54px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.5)}
.q-who strong{display:block;font-family:var(--display)}
.q-who span{opacity:.85;font-size:.88rem}

/* contact */
.contact{background:var(--bg)}
.contact-inner{display:grid;grid-template-columns:1fr 1.05fr;gap:54px;align-items:center}
.contact-text h2{font-size:clamp(1.9rem,4vw,2.7rem);line-height:1.1;margin-bottom:14px}
.contact-text>p{color:var(--soft);font-size:1.05rem;margin-bottom:24px}
.contact-list{list-style:none}
.contact-list li{display:flex;align-items:center;gap:14px;padding:9px 0;color:var(--soft)}
.contact-list i{color:var(--p1);width:20px}
.contact-form{background:#fff;border-radius:20px;padding:34px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow)}
.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form input,.contact-form select,.contact-form textarea{padding:13px 15px;border:1px solid var(--line);border-radius:12px;font-family:var(--sans);font-size:.95rem;color:var(--ink);resize:none;background:#fafcfd}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:var(--p1)}
.form-submit{justify-content:center}

/* footer */
.footer{background:#0c1a2b;color:#8ba3bd;padding:70px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.3fr;gap:36px;margin-bottom:42px}
.footer .brand{margin-bottom:14px}.footer .brand.light{color:#fff}
.footer-grid>div>p{font-size:.92rem;margin-bottom:16px}
.footer h4{color:#fff;font-family:var(--display);margin-bottom:16px;font-size:1rem}
.footer ul{list-style:none}
.footer ul li{margin-bottom:10px;font-size:.92rem}
.footer ul li a{color:#8ba3bd;transition:.2s}
.footer ul li a:hover{color:#7fd4dd}
.footer ul li i{color:var(--p1);margin-right:8px}
.socials{display:flex;gap:10px}
.socials a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff;transition:.25s}
.socials a:hover{background:var(--p1);transform:translateY(-3px)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:.86rem;flex-wrap:wrap;gap:10px}
.footer-bottom a{color:#7fd4dd;font-weight:600}

.reveal{opacity:0;transform:translateY(32px);transition:.7s cubic-bezier(.2,.7,.3,1)}
.reveal.visible{opacity:1;transform:none}
.back-to-top{position:fixed;bottom:28px;right:28px;width:48px;height:48px;border-radius:50%;background:var(--p1);color:#fff;border:none;cursor:pointer;opacity:0;pointer-events:none;transition:.3s;z-index:900;box-shadow:var(--shadow)}
.back-to-top.visible{opacity:1;pointer-events:auto}
.back-to-top:hover{transform:translateY(-4px)}

@media(max-width:980px){
  .hero-inner,.why-inner,.contact-inner{grid-template-columns:1fr}.hero-art{order:-1}
  .svc-grid,.doc-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .nav-menu{position:fixed;top:0;right:-100%;height:100vh;width:74%;background:#fff;flex-direction:column;justify-content:center;gap:18px;transition:.35s}
  .nav-menu.open{right:0}.hamburger{display:flex;z-index:1001}
  .svc-grid,.doc-grid,.footer-grid,.contact-form .row{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}section{padding:72px 0}
}
