*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#29465a;background:#fff}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1240px,calc(100% - 40px));margin:0 auto}
.narrow{width:min(860px,calc(100% - 40px));margin:0 auto}
main{overflow:hidden}
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--green)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;color:var(--blue);margin:0 0 14px}
h1{font-size:74px;line-height:.98;letter-spacing:-.04em}
h2{font-size:50px;line-height:1.05;letter-spacing:-.03em}
h3{font-size:28px;line-height:1.1}
p{margin:0 0 14px;line-height:1.7;color:#5f7788}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid #e4edf0}
.topline{height:88px;display:flex;align-items:center;gap:28px}
.brand{display:flex;flex-direction:column;min-width:250px}
.brand-top{font-family:Georgia,"Times New Roman",serif;font-size:21px;letter-spacing:.04em;color:var(--blue);font-weight:700}
.brand-bottom{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#7d97a6;margin-top:6px}
.main-nav{display:flex;gap:22px;margin-left:auto}
.main-nav a{font-size:14px;font-weight:700;color:#355a70;position:relative}
.main-nav a:after{content:"";position:absolute;left:0;bottom:-10px;width:0;height:2px;background:var(--green);transition:.25s}
.main-nav a:hover:after{width:100%}
.nav-cta{display:flex;gap:10px}.menu-toggle{display:none;border:1px solid #d7e5ea;background:#fff;border-radius:12px;padding:10px 13px;font-size:20px;color:var(--blue)}
.mobile-panel{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:14px;padding:14px 22px;font-weight:800;transition:.2s;border:1px solid transparent;cursor:pointer}
.btn-sm{padding:11px 16px;font-size:13px}
.btn-primary{background:linear-gradient(135deg,var(--green),#0a8158);color:#fff;box-shadow:0 14px 34px rgba(0,141,90,.18)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 18px 40px rgba(0,141,90,.24)}
.btn-light{background:#fff;border-color:#caddE4;color:var(--blue)}
.hero{padding:44px 0 0;background:linear-gradient(180deg,#fbfefd 0%,#f4f9f8 100%)}
.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:34px;align-items:center}
.hero-copy p{font-size:19px;max-width:640px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 20px}
.hero-note{font-family:Georgia,"Times New Roman",serif;font-size:28px;font-style:italic;color:#467196;max-width:430px}
.hero-media{border-radius:34px;overflow:hidden;min-height:560px;box-shadow:0 30px 80px rgba(28,82,104,.15)}
.hero-media img{width:100%;height:100%;object-fit:cover}
.info-strip{margin-top:-12px;padding-bottom:0}
.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.info-card{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid #e3ecef;border-radius:20px;padding:20px;box-shadow:0 10px 26px rgba(11,62,86,.05)}
.icon-badge{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#edf8f4;font-size:22px}
.info-card strong{display:block;font-size:15px;color:#24465b;margin-bottom:4px}.info-card p{margin:0;font-size:13px;line-height:1.55}.accent-red .icon-badge{background:#fff0f0}.accent-red strong{color:#c53f52}
.section{padding:86px 0}.soft-section{background:#f6fbfa}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.text-link{font-size:14px;font-weight:800;color:var(--blue);white-space:nowrap}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-grid-full{grid-template-columns:repeat(3,1fr)}
.service-card{background:#fff;border:1px solid #e3ecef;border-radius:24px;overflow:hidden;box-shadow:0 12px 30px rgba(11,62,86,.05);transition:.25s}
.service-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(11,62,86,.1)}
.service-image{height:230px;background:#eaf4f5}.service-image img{width:100%;height:100%;object-fit:cover}
.service-body{padding:20px}.mini-label{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--green);margin-bottom:10px}.service-body h3{font-size:30px;margin-bottom:8px}.service-meta{font-size:13px;font-weight:700;color:#466678}
.split-section{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}.split-copy{padding:24px 0}.split-copy p{max-width:620px}.split-media{border-radius:28px;overflow:hidden;min-height:520px;box-shadow:0 20px 55px rgba(11,62,86,.1)}.split-media img{width:100%;height:100%;object-fit:cover}
.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;list-style:none;padding:0;margin:26px 0 0}.feature-list li{background:#fff;border:1px solid #e3ecef;border-radius:18px;padding:18px}.feature-list strong{display:block;color:#1d4258;margin-bottom:4px}.feature-list span{font-size:13px;color:#698190}
.doctor-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.doctor-card{display:grid;grid-template-columns:220px 1fr;gap:22px;background:#fff;border:1px solid #e3ecef;border-radius:24px;padding:18px;box-shadow:0 12px 30px rgba(11,62,86,.05)}.doctor-card img{width:100%;height:220px;border-radius:18px;object-fit:cover}.doctor-specialty{font-weight:700;color:#356074;margin-bottom:10px}
.portal-section{background:linear-gradient(180deg,#eff7f7 0%,#f9fcfb 100%)}.portal-wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:24px;align-items:center}.portal-panel{display:flex;justify-content:center}.portal-device{width:min(520px,100%);background:#fff;border:1px solid #dfeaec;border-radius:28px;padding:16px;box-shadow:0 24px 55px rgba(11,62,86,.08)}.device-top{height:12px;width:120px;border-radius:999px;background:#dfeaed;margin:0 auto 18px}.device-body{display:grid;gap:12px}.portal-row{display:flex;justify-content:space-between;align-items:center;border:1px solid #e5eef0;border-radius:16px;padding:15px 16px;background:#fbfdfd}.portal-row span{font-weight:700;color:#264c61}.portal-row b{color:var(--green)}
.testimonial-grid{display:grid;grid-template-columns:1fr 1fr 1.1fr;gap:20px}.testimonial-card{background:#fff;border:1px solid #e3ecef;border-radius:24px;padding:24px;box-shadow:0 12px 30px rgba(11,62,86,.05)}.testimonial-card p{font-size:15px;color:#536f7f}.testimonial-card strong{display:block;color:#1d4258;margin-top:20px}.testimonial-card span{font-size:12px;color:#8196a3}.image-card{padding:0;overflow:hidden}.image-card img{width:100%;height:100%;object-fit:cover}
.contact-home{padding-top:0}.contact-grid-home{display:grid;grid-template-columns:1fr 1.2fr .9fr;gap:20px;align-items:stretch}.contact-home-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.mini-contact,.map-card{background:#fff;border:1px solid #e3ecef;border-radius:22px;padding:22px;box-shadow:0 12px 30px rgba(11,62,86,.05)}.mini-contact strong,.map-card strong{display:block;color:#1d4258;margin-bottom:6px}.mini-contact span,.map-card span{font-size:14px;color:#5f7788;line-height:1.6}
.page-hero{padding:72px 0;background:linear-gradient(180deg,#f8fcfb 0%,#f2f8f8 100%)}.page-hero h1{font-size:58px;max-width:900px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:26px}.filter{border:1px solid #cadbe3;background:#fff;border-radius:999px;padding:10px 16px;font-weight:700;color:#355a70;cursor:pointer}.filter.active{background:var(--blue);border-color:var(--blue);color:#fff}
.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.team-card{background:#fff;border:1px solid #e3ecef;border-radius:24px;overflow:hidden;box-shadow:0 12px 30px rgba(11,62,86,.05)}.team-card img{width:100%;height:320px;object-fit:cover}.team-card-body{padding:24px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery-item{border-radius:22px;overflow:hidden;background:#eaf4f5;aspect-ratio:4/3;box-shadow:0 12px 30px rgba(11,62,86,.05)}.gallery-item img{width:100%;height:100%;object-fit:cover}
.contact-page-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:24px}.contact-panel,.form-card{background:#fff;border:1px solid #e3ecef;border-radius:24px;padding:26px;box-shadow:0 12px 30px rgba(11,62,86,.05)}.contact-list{display:grid;gap:14px;margin-bottom:24px}.contact-list div{border-bottom:1px solid #edf2f4;padding-bottom:12px}.contact-list strong{display:block;color:#1d4258;margin-bottom:4px}.contact-list span{color:#5f7788;line-height:1.6}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.field label{font-size:12px;font-weight:800;color:#355a70}.field input,.field select,.field textarea{width:100%;padding:14px 15px;border:1px solid #cadbe3;border-radius:14px;font:inherit;background:#fff;color:#29465a}.field textarea{min-height:130px;resize:vertical}.notice{padding:14px 16px;border-radius:14px;background:#e9f8ef;color:#16643e;margin-bottom:18px}
.content{max-width:960px}.content h2{font-size:34px;margin-top:18px}.content p,.content li{color:#556f80;line-height:1.8}
.site-footer{background:linear-gradient(135deg,#0b4b73 0%,#0a3d62 45%,#0a5d4a 100%);color:#fff;padding:56px 0 20px;margin-top:0}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr 1fr;gap:28px}.footer-brand{font-family:Georgia,"Times New Roman",serif;font-size:28px;margin-bottom:10px}.site-footer h4{margin:0 0 12px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#d7e7ef}.footer-text,.footer-links li,.footer-links a{font-size:14px;line-height:1.8;color:#d5e5ec}.footer-links{list-style:none;margin:0;padding:0}.footer-bottom{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18);display:flex;justify-content:space-between;gap:18px;font-size:12px;color:#c1d8e4}.footer-note{opacity:.92}
.cookie-bar{position:fixed;left:18px;right:18px;bottom:18px;z-index:120;background:#fff;border:1px solid #dde8ec;border-radius:18px;padding:16px 18px;box-shadow:0 18px 50px rgba(11,62,86,.16);display:none;align-items:center;justify-content:space-between;gap:18px}.cookie-bar.show{display:flex}.cookie-bar p{margin:4px 0 0;font-size:13px}.cookie-actions{display:flex;gap:10px}
.site-popup{position:fixed;inset:0;background:rgba(4,24,38,.6);z-index:140;display:grid;place-items:center;padding:20px}.popup-card{width:min(540px,100%);background:#fff;border-radius:24px;padding:28px;box-shadow:0 25px 80px rgba(0,0,0,.22)}.popup-close{float:right;background:none;border:0;font-size:28px;color:#38566d;cursor:pointer}.popup-card small{display:inline-block;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--green);margin-bottom:8px}.popup-card h2{font-size:40px}
.mobile-dock{display:none}
@media (max-width:1100px){h1{font-size:58px}h2{font-size:42px}.hero-grid,.split-section,.portal-wrap,.contact-page-grid,.contact-grid-home{grid-template-columns:1fr}.hero-media{min-height:420px}.footer-grid{grid-template-columns:1fr 1fr}.service-grid,.service-grid-full,.team-grid,.gallery-grid,.testimonial-grid,.doctor-grid{grid-template-columns:1fr 1fr}.info-grid{grid-template-columns:1fr 1fr}}
@media (max-width:820px){.topline{height:74px}.main-nav,.nav-cta{display:none}.menu-toggle{display:inline-flex;margin-left:auto}.mobile-panel{display:none;flex-direction:column;padding:0 20px 18px;background:#fff;border-top:1px solid #e8eef1}.menu-open .mobile-panel{display:flex}.mobile-panel a{padding:12px 0;border-bottom:1px solid #edf2f4;font-weight:700;color:#355a70}.hero{padding-top:28px}.container{width:min(100% - 28px,1240px)}h1{font-size:44px}.hero-copy p{font-size:16px}.hero-media{min-height:300px;border-radius:24px}.section{padding:64px 0}.section-head{flex-direction:column;align-items:flex-start}.service-grid,.service-grid-full,.team-grid,.gallery-grid,.testimonial-grid,.doctor-grid,.contact-home-cards,.grid2,.feature-list,.footer-grid,.contact-grid-home,.contact-page-grid,.info-grid{grid-template-columns:1fr}.doctor-card{grid-template-columns:1fr}.doctor-card img{height:260px}.team-card img{height:260px}.cookie-bar{left:10px;right:10px;bottom:76px;flex-direction:column;align-items:stretch}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.mobile-dock{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:8px;right:8px;bottom:8px;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border:1px solid #dbe7eb;border-radius:18px;padding:8px;box-shadow:0 12px 35px rgba(11,62,86,.14)}.mobile-dock a{display:grid;place-items:center;min-height:44px;border-radius:12px;color:#355a70;font-weight:800;font-size:11px}.mobile-dock .primary{background:var(--green);color:#fff}.site-footer{padding-bottom:92px}.footer-bottom{flex-direction:column}.page-hero h1{font-size:42px}}
