/* Patient-focused layout and appointment flow. */
/* Cohesive visual refinement across every page. */
:root{--ink:#132b46;--muted:#607286;--line:#e0e8ef}
body{background:#fff;color:var(--ink)}
.section{padding-top:76px;padding-bottom:76px}
h2{font-weight:650;letter-spacing:-.045em;line-height:1.15}
.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:750}
.section-head{margin-bottom:36px!important}
.section-head>.text-link{border-radius:100px;background:white;padding:11px 19px;font-weight:600}
.btn{border-radius:10px;transition:background .2s,box-shadow .2s,transform .2s}
.btn:focus-visible,.text-link:focus-visible{outline:3px solid #83b5f5;outline-offset:4px}
.header-row nav .mega small,.header-row nav .mega p,.header-row nav .mega h3{text-transform:none;letter-spacing:normal}
.topbar{background:#102c4b}
.page-index .hero-slide .hero-copy h1{font-weight:650!important}
.page-index .hero-slide .actions .btn{border-radius:10px;min-height:54px}
.page-index .slider-controls{border-top:1px solid #ffffff18;background:linear-gradient(0deg,#071c3635,transparent)}
.home-departments{padding-bottom:40px}
.home-departments .services,.services{gap:22px}
.home-departments .service,.service{padding:32px;border:1px solid #e0e8f0;border-radius:18px;background:#fff;box-shadow:0 12px 35px #102c4b06;transition:transform .2s,border-color .2s,box-shadow .2s}
.service:hover{transform:translateY(-4px);border-color:#b9cdec;box-shadow:0 18px 38px #102c4b0e}
.service .icon{width:58px;height:58px;border-radius:17px;background:#edf3ff;color:#2258bc;font-size:27px;margin-bottom:26px}
.service:nth-child(2) .icon{background:#eaf5f0;color:#267c63}
.service:nth-child(3) .icon{background:#fff2e8;color:#ae7440}
.home-departments .service h3,.service h3{font-size:23px;font-weight:650;margin:0 0 12px}
.service h3:after{top:34px;right:30px;font-size:11px;color:#8597ad}
.home-departments .service p,.service p{font-size:15px;line-height:1.85;margin:0 0 24px}
.service .text-link{width:100%;border-top:1px solid #e8edf3;padding-top:18px;min-height:52px;font-size:13px}
.doctor-intro{padding-top:40px;padding-bottom:80px}
.doctors{gap:24px}
.doctor,.doctor-intro .doctor{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:36px!important;border:1px solid #dae4ef;border-left:1px solid #dae4ef!important;border-radius:18px;background:linear-gradient(135deg,#f4f8fd,#fff 70%);box-shadow:none;overflow:hidden;gap:0}
.doctor:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#245cc3,#aac9ef)}
.doctor:nth-child(2):before{background:linear-gradient(90deg,#287b69,#b3d9cf)}
.doctor .initial,.doctor-intro .doctor .initial{position:static;display:grid;place-items:center;width:76px;height:76px;border-radius:22px;margin:0 0 24px;background:#e5eefb;border:1px solid #d5e2f5;color:#2c589b;font-size:25px;font-weight:600;letter-spacing:-.04em}
.doctor:nth-child(2) .initial{background:#e9f4ef;color:#367764;border-color:#d5e9e0}
.doctor .tag{position:absolute;right:30px;top:37px;background:#fff;border:1px solid #e1e8f0;border-radius:100px;padding:7px 10px;font-size:9px;letter-spacing:.08em;max-width:55%;color:#526d8b}
.doctor h3,.doctor-intro .doctor h3{font-size:27px;font-weight:650;margin:0 0 18px}
.doctor .doctor-facts{margin-bottom:24px;min-height:48px}
.doctor .btn{background:#fff;border:1px solid #cfdeef;border-radius:9px;padding:13px 18px;font-size:13px;min-height:48px}
.page-intro{padding-top:60px;padding-bottom:55px;max-width:1000px}
.page-intro h1{font-size:clamp(38px,4.6vw,62px);letter-spacing:-.055em;max-width:850px}
.page-intro>p{max-width:630px;line-height:1.8}
.panel{padding:32px;border-radius:16px;box-shadow:none;background:#f8fafd}
.map-panel{border-radius:18px;border:1px solid #d9e5f2;background:radial-gradient(circle at center,#fff,#edf4fc)}
details{border:1px solid #e0e8f0;border-radius:12px;padding:20px 24px;margin-bottom:12px;background:#fff}
details[open]{background:#f6f9fd}summary{font-weight:600;line-height:1.5}
footer{background:#0d2543;padding-top:64px}.footer-grid{gap:40px}.footer-grid h3{letter-spacing:.14em;color:#a9bed9}.footer-grid p{line-height:1.85}
@media(min-width:701px){.appointment-section.section{background:#102e50;padding:80px 0}.appointment-section .appointment-grid>div{color:#fff}.appointment-section .appointment-grid>div h2{color:#fff;font-size:clamp(34px,3.3vw,46px)}.appointment-section .appointment-grid>div p,.appointment-section .checklist{color:#c5d4e4}.appointment-section .appointment-grid>div .eyebrow{color:#aac8ef}.appointment-section .appointment-grid>div .text-link{color:#d7e7ff}.appointment-section .checklist li{border-color:#ffffff16}.appointment-section .appointment-form{border:0;border-radius:20px;padding:40px;box-shadow:0 24px 65px #041c3433}.home-location.section{gap:72px}.home-location .location-card{padding:38px;border-radius:20px;background:#f1f6fc;border:0}}
@media(max-width:700px){.section{padding-top:48px;padding-bottom:48px}.section-head{align-items:flex-start!important;gap:20px!important;margin-bottom:26px!important}.section-head h2{font-size:32px!important}.section-head>.text-link{font-size:11px;padding:8px 14px}.home-departments .service,.service{padding:26px;border-radius:16px}.service .icon{margin-bottom:22px}.service h3:after{top:28px;right:25px}.doctor,.doctor-intro .doctor{padding:27px!important;border-radius:16px}.doctor h3,.doctor-intro .doctor h3{font-size:25px}.doctor .initial,.doctor-intro .doctor .initial{width:66px;height:66px;border-radius:19px}.doctor .tag{right:22px;top:29px;font-size:8px}.doctor .btn{width:100%;justify-content:center}.appointment-section.section{background:#eaf1fa}.appointment-section .appointment-form{border:1px solid #dae5f2;box-shadow:0 16px 38px #17395d09}.page-intro{padding-top:38px;padding-bottom:35px}.page-intro h1{font-size:38px}.panel{padding:25px}.home-location .location-card{background:#f0f5fc;border:0}.floating-whatsapp{box-shadow:0 7px 22px #0d4f3830}.mobile-contact{padding-top:9px}.mobile-contact a{border-radius:9px}footer{padding-top:45px}.footer-grid{gap:28px}}
@media(prefers-reduced-motion:reduce){.service,.btn{transition:none}.service:hover{transform:none}}
.appointment-section .checklist li::after{content:none}
@media(max-width:1049px){header nav.open>a[href="about.html"]{display:none}}
nav .mega small,nav .mega p,nav .mega h3{text-transform:none;letter-spacing:normal}
.doctor{display:flex;flex-direction:column;align-items:flex-start}
.doctor h3{margin-bottom:20px}.doctor .btn{margin-top:auto}
.doctor-facts{width:100%;margin:0 0 16px}.doctor-facts div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #e1e7f0}.doctor-facts dt{font-size:13px;color:#617087}.doctor-facts dd{margin:0;text-align:right;font-size:14px;font-weight:600;color:#142c50}
.doctor .note{font-size:12px;line-height:1.7;margin-bottom:24px}.doctor .note a{text-decoration:underline}
.appointment-section{background:#eef3fa;scroll-margin-top:110px;padding:80px 0}.appointment-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.appointment-grid>div>p{max-width:490px}.appointment-form{background:white;padding:36px;border:1px solid #dbe4f0;border-radius:18px;box-shadow:0 20px 60px #1536640c}.appointment-form h2{font-size:29px;line-height:1.25;margin:10px 0 28px}.appointment-form label{display:block;margin:18px 0 8px;font-size:14px;font-weight:600;color:#172c4b}.appointment-form input,.appointment-form select{display:block;box-sizing:border-box;width:100%;min-width:0;padding:14px 12px;min-height:52px;border:1px solid #c8d3e2;border-radius:7px;background:#fbfcfe;color:#172c4b;font:inherit;font-size:15px;color-scheme:light}.appointment-form .btn{margin-top:24px;width:100%;justify-content:center;cursor:pointer}.appointment-form .note{font-size:12px;line-height:1.7;margin:16px 0 0}.appointment-form :focus-visible{outline:3px solid #74a5ed;outline-offset:3px}
.home-location{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.home-location address{font-style:normal;line-height:1.9}.home-location p{font-size:14px;line-height:1.8}.location-card{padding:32px;border-radius:16px;border:1px solid #dbe4f0;background:#f7f9fc}.location-card h3{font-size:25px;line-height:1.3}.home-departments .service-photo{display:none}
@media(max-width:1049px){nav>.btn{font-size:12px}nav>a[href="about.html"]{display:none}.mega>div:nth-child(2),.mega>.mega-feature{display:none}.mega{grid-template-columns:1fr!important}.mega a{min-height:48px}nav>a,nav .mega-trigger{min-height:48px}.appointment-grid,.home-location{gap:32px}}
@media(max-width:700px){.appointment-grid,.home-location{grid-template-columns:1fr}.appointment-section{padding:48px 0}.appointment-form{padding:24px 20px;border-radius:14px}.appointment-form h2{font-size:26px}.doctor-facts div{gap:12px}.doctor-facts dd{max-width:58%}.home-location{padding-top:48px;padding-bottom:48px}.location-card{padding:24px}.home-location .actions{align-items:flex-start;flex-direction:column}.appointment-grid h2{font-size:30px}nav .btn{white-space:normal}}
