@import url('https://fonts.googleapis.com/css2?family=Libre+Caslon+Display&family=Manrope:wght@400;500;600;700&display=swap');
:root{--navy:#142d47;--deep:#0c2034;--blue:#357fa7;--ink:#183047;--muted:#596977;--line:#d8e0e6;--light:#f2f6f8;--serif:'Libre Caslon Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #d08b36;outline-offset:5px}button{cursor:pointer}button:disabled{cursor:not-allowed}img{display:block;max-width:100%}.wrap{max-width:1280px;width:calc(100% - 96px);margin:auto}.utility{background:var(--deep);color:#dbe5ed;font-size:12px}.utility .wrap{display:flex;justify-content:space-between;padding:9px 0}.masthead{display:flex;align-items:center;justify-content:space-between;min-height:110px}.brand{display:flex;align-items:center;gap:17px}.brand img{object-fit:contain}.brand>span{font-family:Georgia,serif;letter-spacing:1px;font-size:23px;line-height:1.2;font-weight:bold}.brand>span>span{display:block;font-family:Manrope,sans-serif;font-size:12px;font-weight:500;letter-spacing:5px;margin-top:8px}.header-links{display:flex;align-self:stretch}.header-links a{padding:28px 30px;border-left:1px solid var(--line);font-weight:600}.header-links a>span{display:block;font-size:10px;letter-spacing:1.8px;color:var(--muted);margin-bottom:4px}.header-book b{margin-left:25px;font-size:24px;font-weight:400}nav{background:var(--navy);color:white}nav .wrap{display:flex}nav a{font-size:14px;padding:19px 27px;border-left:1px solid #ffffff20;font-weight:600}nav a:first-child{padding-left:0;border:0;padding-right:36px}nav a:hover{color:#acd8f2}nav .nav-book{margin-left:auto;background:#284e6e;padding-right:24px;padding-left:24px}.nav-book span{margin-left:30px}.menu-toggle{display:none}.hero{position:relative;min-height:650px;background:var(--deep);color:white;overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 55%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,29,48,.97) 0%,rgba(12,35,57,.86) 36%,rgba(13,35,54,.3) 70%,rgba(13,35,54,.06))}.hero-content{position:relative;padding:70px 0 28px}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:700;color:#397291;display:flex;align-items:center;gap:14px;margin:0 0 21px}.eyebrow:before{content:'';width:25px;height:1px;background:currentColor}.eyebrow.light{color:#e3edf3}h1,h2{font-family:var(--serif);font-weight:400;line-height:1.03;letter-spacing:-1.5px;margin:0}h1{font-size:84px}h1 em,h2 em{font-weight:400;color:#aed7ec;font-style:normal}h2{font-size:54px}h3{font-weight:500;line-height:1.3}.hero-description{color:#e0e9ef;font-size:17px;line-height:1.8;margin:25px 0 28px}.actions{display:flex;gap:12px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;background:var(--blue);color:white;border:1px solid var(--blue);padding:16px 23px;font-size:14px;font-weight:600;transition:background .2s}.button:hover{background:#27678b}.button span{font-size:21px;line-height:1}.button.outline{border-color:#b6c7d27a;background:transparent}.button.outline:hover{background:#ffffff15}.hero-bottom{display:flex;gap:30px;margin-top:47px;font-size:10px;letter-spacing:1.7px;color:#c4d1dd}.hero-bottom span+span{border-left:1px solid #ffffff50;padding-left:30px}.image-note{position:absolute;right:22px;bottom:15px;font-size:10px;letter-spacing:.5px;color:#fff;background:#10273ca8;padding:3px 8px}.care-strip{background:#edf3f6;border-bottom:1px solid var(--line)}.care-strip .wrap{display:flex;justify-content:space-between;padding:21px 0;font-size:13px}.strip-label{font-size:10px;font-weight:700;letter-spacing:1.4px;color:#3b627b}.section{padding-top:90px;padding-bottom:90px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:44px}.section-head>p{font-size:15px;color:var(--muted);margin:0 0 2px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:29px 32px 25px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s}.service:hover{background:var(--light)}.service-number{font-size:12px;color:#4c819f}.service h3{font-family:var(--serif);font-size:29px;margin:23px 0 14px;letter-spacing:-.3px}.service p{color:var(--muted);font-size:14px;line-height:1.75;margin-bottom:26px;min-height:74px}.service a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;font-size:12px;font-weight:600}.service a span{font-size:20px;line-height:1}.service-footnote{font-size:12px;color:var(--muted);margin:18px 0 0}.doctor-section{background:#edf3f6;padding:76px 0}.doctor-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}.doctor-grid h2{font-size:59px;line-height:1.12}.doctor-grid h2 em{color:#417e9e}.doctor-copy{padding-top:9px}.doctor-rule{height:2px;width:45px;background:var(--blue);margin-bottom:22px}.doctor-copy h3{font-family:var(--serif);font-size:37px;margin:0 0 2px}.credentials{font-size:12px;letter-spacing:.4px;color:#397291;margin-top:6px!important}.doctor-copy p{font-size:15px;color:var(--muted);margin:20px 0}.text-link{font-size:14px;font-weight:600;display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid #9db4c3;padding-bottom:8px}.text-link span{font-size:21px}.experience{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.experience figure{margin:0;align-self:stretch}.experience figure img{width:100%;height:100%;max-height:565px;object-fit:cover}.experience figcaption{font-size:10px;color:var(--muted);margin-top:8px}.experience h2{font-size:48px;line-height:1.1}.experience>div>p:not(.eyebrow){color:var(--muted);font-size:15px;margin:24px 0}.experience-item{display:flex;gap:25px;border-top:1px solid var(--line);padding:15px 0}.experience-item>span{font-size:12px;color:#4581a0;padding-top:5px}.experience-item h3{margin:0 0 4px;font-size:16px}.experience-item p{margin:0;color:var(--muted);font-size:13px}.booking-section{background:var(--navy);padding:80px 0;color:#fff}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:115px;align-items:center}.booking-intro h2{font-size:67px;line-height:1.04}.booking-intro>p:not(.eyebrow){color:#ccdae4;max-width:365px;margin:25px 0;font-size:16px}.demo-notice{max-width:375px;padding:18px 20px;background:#ffffff08;border-left:2px solid #77abc8;margin:30px 0}.demo-notice b{font-size:13px;letter-spacing:.3px}.demo-notice p{font-size:13px;line-height:1.7;color:#ccdae4;margin:6px 0 0}.phone{display:flex;gap:45px;font-family:var(--serif);font-size:38px;align-items:center}.phone span{font-size:29px}.phone-caption{font-size:12px;color:#bdd0de}.booking-card{background:white;color:var(--ink);padding:32px 36px}.booking-card label{font-size:13px;font-weight:600;display:block;margin-bottom:8px}select{border:1px solid #ccd8e0;background:white;color:var(--ink);width:100%;padding:12px 13px;border-radius:0;font-size:14px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;margin:22px 0 17px}.calendar-heading h3{font-size:18px;margin:0}.calendar-heading button{background:white;border:1px solid var(--line);width:33px;height:33px;color:var(--ink);font-size:23px;line-height:1;margin-left:6px}.calendar-heading button:disabled{opacity:.35}.weekdays,.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.weekdays{font-size:10px;color:#697b89;margin-bottom:9px;font-weight:600}.calendar button{border:0;background:transparent;min-height:38px;font-size:13px;color:var(--ink)}.calendar button:hover:not(:disabled){background:#e4eff5}.calendar button:disabled{color:#c3cbd1}.calendar button[aria-pressed=true]{background:var(--blue)!important;color:white}.time-header{display:flex;justify-content:space-between;margin-top:18px}.time-header span{font-size:10px;color:var(--muted)}.times{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:22px}.times button{background:white;border:1px solid var(--line);color:var(--ink);font-size:12px;padding:8px}.times button[aria-pressed=true]{background:#e3eff5;border-color:var(--blue)}.times button:disabled{color:#b0bbc3}.booking-submit{width:100%}.booking-submit:disabled{background:#8ea7b6;border-color:#8ea7b6}.booking-hint{font-size:11px;color:var(--muted);text-align:center;margin-bottom:0}#booking-result{background:#edf5f8;padding:16px;border-left:3px solid var(--blue);font-size:13px;margin-top:20px}#booking-result strong{display:block;font-size:16px;margin-bottom:6px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:115px}.visit>div>p:not(.eyebrow){color:var(--muted);font-size:15px;margin:24px 0}.contact-panel{border:1px solid var(--line);padding:36px;align-self:center}.contact-number{font-family:var(--serif);font-size:42px;display:flex;justify-content:space-between;align-items:center}.contact-number span{font-size:28px}.contact-panel>p:not(.eyebrow){font-size:13px!important}.contact-note{border-top:1px solid var(--line);padding-top:23px;font-size:14px;color:#3d647c}footer{background:var(--deep);color:#fff}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-top:42px;padding-bottom:42px}.footer-brand img{background:white}.footer-brand>span{font-size:18px}.footer-brand>span>span{font-size:10px;letter-spacing:3.7px}.footer-top p{font-size:13px;color:#aebfce}.footer-top>a:last-child{font-size:13px;border-bottom:1px solid #8295a7;padding-bottom:6px}.footer-bottom{border-top:1px solid #ffffff23;display:flex;justify-content:space-between;padding-top:20px;padding-bottom:20px;font-size:10px;color:#aebfce}.skip{position:fixed;top:-100px;left:12px;z-index:10;background:white;padding:12px}.skip:focus{top:12px}
@media(min-width:1600px){.hero{min-height:720px}.hero-content{padding-top:95px}}@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.header-links a{padding:26px 17px}.brand>span{font-size:19px}.brand>span>span{font-size:10px}.header-book b{margin-left:10px}nav a{padding:17px 18px}nav a:first-child{padding-right:20px}.nav-book span{margin-left:10px}.doctor-grid,.booking-grid,.visit{gap:50px}.experience{gap:40px}.section-head>p{max-width:260px}.service{padding:24px}.service h3{font-size:25px}.footer-top{gap:25px}}
@media(max-width:950px){.wrap{width:calc(100% - 40px)}.utility{font-size:10px}.utility .wrap>a{display:none}.masthead{min-height:88px}.brand{gap:10px}.brand img{width:64px;height:48px}.brand>span{font-size:16px;letter-spacing:.4px}.brand>span>span{font-size:9px;letter-spacing:2.7px;margin-top:5px}.header-links{display:none}.menu-toggle{display:block;background:white;border:1px solid var(--line);font-size:12px;padding:8px 10px;color:var(--ink)}nav{display:none}nav.open{display:block}nav .wrap{display:block;padding:8px 0}nav a,nav a:first-child,nav .nav-book{display:block;padding:13px 12px;border:0;margin:0}.hero{min-height:640px}.hero-content{padding-top:56px;padding-bottom:25px}.hero-image{object-position:64% center}.hero-shade{background:linear-gradient(90deg,#0c2034ed,#0c2034b5 60%,#0c203463)}h1{font-size:65px}.eyebrow{font-size:9px;letter-spacing:1.5px;gap:10px}.hero-description{font-size:15px;max-width:320px}.desktop{display:none}.actions{flex-wrap:wrap;gap:10px}.button{padding:14px 17px;gap:20px;font-size:12px}.hero-bottom{display:block;font-size:9px;line-height:2.1;margin-top:33px}.hero-bottom span{display:block}.hero-bottom span+span{border:0;padding:0}.image-note{font-size:9px;right:14px;bottom:10px}.care-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px 15px;font-size:11px}.strip-label{font-size:9px}.section{padding-top:57px;padding-bottom:57px}h2{font-size:43px}.section-head{display:block;margin-bottom:28px}.section-head>p{max-width:none;margin-top:20px;font-size:14px}.section-head>p br{display:none}.services-grid{grid-template-columns:1fr 1fr}.service{padding:22px 17px}.service h3{font-size:25px;margin:18px 0 12px}.service p{font-size:13px;min-height:100px}.service a{font-size:11px;gap:12px}.doctor-section{padding:55px 0}.doctor-grid,.experience,.booking-grid,.visit{grid-template-columns:1fr;gap:35px}.doctor-grid h2{font-size:47px}.doctor-copy h3{font-size:34px}.experience figure img{height:330px}.experience h2{font-size:41px}.experience>div{margin-top:5px}.booking-section{padding:54px 0}.booking-intro h2{font-size:56px}.booking-intro>p:not(.eyebrow){max-width:none;font-size:15px}.demo-notice{max-width:none;margin:22px 0}.phone{font-size:34px}.booking-card{padding:25px 21px}.calendar button{min-height:41px}.contact-panel{padding:27px}.contact-number{font-size:38px}.footer-top{flex-wrap:wrap;padding-top:34px;padding-bottom:30px;gap:20px}.footer-top p{margin:0}.footer-bottom{flex-wrap:wrap;gap:13px}.footer-bottom span:nth-child(2){order:3;flex-basis:100%}}
@media(max-width:380px){.brand>span{font-size:13px}.brand>span>span{font-size:8px}.brand img{width:52px}.services-grid{grid-template-columns:1fr}.service p{min-height:0}.hero h1{font-size:59px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.service p,.doctor-copy p,.experience>div>p:not(.eyebrow),.visit>div>p:not(.eyebrow){font-size:16px}.service a,.experience-item p,.booking-card label,.times button,.calendar button,.demo-notice p,.demo-notice b,.booking-hint{font-size:14px}.image-note,.experience figcaption,.weekdays,.time-header span,.footer-bottom{font-size:12px}nav a{white-space:nowrap}

.header-links a{display:flex;align-items:center}.hero{min-height:610px}@media(min-width:1600px){.hero{min-height:680px}}@media(max-width:950px){.hero{min-height:600px}.care-strip .wrap{grid-template-columns:1fr;gap:8px}}

.arrow-icon{display:inline-block;width:1.15em;height:1.15em;vertical-align:middle;flex-shrink:0}.calendar-heading button{display:inline-flex;align-items:center;justify-content:center}.calendar-heading .arrow-icon{width:18px;height:18px}.footer-top>a:last-child .arrow-icon,.footer-bottom>a .arrow-icon{margin-left:8px}

/* Share the right-hand column across both header rows. */
@media(min-width:951px){
  header{--header-action-width:300px}
  .header-links,nav .nav-book{width:var(--header-action-width);flex:0 0 var(--header-action-width)}
  .header-links a{width:100%;padding-left:24px;padding-right:24px}
  nav .nav-book{display:flex;align-items:center;justify-content:space-between;padding-left:24px;padding-right:24px}
  nav .nav-book span{margin-left:16px}
}

@media(min-width:951px){
  header{--header-gutter:max(28px, calc((100% - 1280px) / 2))}
  .masthead,nav .wrap{max-width:none;width:auto;margin-left:var(--header-gutter);margin-right:0}
  nav .nav-book::after{content:none}
}

@media(max-width:600px){
  .wrap{width:calc(100% - 40px)}
  .hero{min-height:0}
  .hero-content{padding:48px 0}
  h1{font-size:clamp(48px,16vw,65px)}
  .actions{display:grid;grid-template-columns:1fr;gap:12px}
  .actions .button{width:100%;padding:16px 18px;font-size:14px}
  .services-grid{grid-template-columns:1fr}
  .service{padding:24px}
  .service p{min-height:0}
  .service a{align-items:center}
  .experience-item:first-of-type{margin-top:24px}
  .booking-card,.contact-panel{padding:24px 20px;min-width:0}
  .booking-grid,.visit,.experience,.doctor-grid{gap:32px}
  .times{grid-template-columns:repeat(2,minmax(0,1fr))}
  .times button{min-height:44px}
  .calendar button{min-height:42px}
  .contact-number{font-size:clamp(28px,8.5vw,38px);gap:12px}
  .footer-top{flex-direction:column;align-items:flex-start;gap:24px}
  .footer-bottom{align-items:center;gap:16px}
}

.doctor-grid{align-items:center}
.doctor-portrait{margin:0;background:#dde7ed;display:flex;justify-content:center;overflow:hidden}
.doctor-portrait img{width:100%;max-width:340px;height:auto;object-fit:contain;align-self:flex-end}
.doctor-copy .doctor-name{font-size:42px;line-height:1.15;margin:0 0 8px}
.button{border-radius:12px}
.menu-toggle,.calendar-heading button,.times button,.calendar button{border-radius:8px}
@media(max-width:600px){.doctor-portrait img{max-width:280px}.doctor-copy .doctor-name{font-size:36px}}

:root{--corner-radius:12px}
.button,.menu-toggle,.calendar-heading button,.times button,.calendar button,select,.service,.booking-card,.contact-panel,.demo-notice,#booking-result,.doctor-portrait,.experience figure img,nav .nav-book{border-radius:var(--corner-radius);corner-shape:squircle}
.services-grid{border:0;gap:20px}
.service{border:1px solid var(--line);display:flex;flex-direction:column}
.service a{margin-top:auto}
@media(max-width:950px){
  nav{margin:0 20px 16px;border-radius:var(--corner-radius);corner-shape:squircle}
  nav .wrap{width:auto;margin:0;padding:12px}
  nav a,nav a:first-child,nav .nav-book{border-radius:var(--corner-radius);corner-shape:squircle}
  nav .nav-book{display:flex;align-items:center;justify-content:space-between;gap:12px}
  nav .nav-book span{margin-left:0}
}
@media(max-width:600px){.services-grid{gap:16px}}

.contact-secondary{margin-top:14px;font-size:clamp(24px,3vw,36px)}
.whatsapp-button{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:30;display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;corner-shape:squircle;background:#128c4a;color:#fff;box-shadow:0 4px 18px #0c203433;transition:background .2s}
.whatsapp-button:hover{background:#0d703b}
footer{padding-bottom:80px}
@media(max-width:600px){.whatsapp-button{right:20px;bottom:max(20px,env(safe-area-inset-bottom))}}

.hero h1{font-family:Manrope,Arial,sans-serif;font-weight:600;font-size:clamp(58px,5.8vw,84px);letter-spacing:-.065em;line-height:1.04}
.hero h1 em{font-family:inherit;font-weight:500;letter-spacing:inherit}
@media(max-width:600px){.hero h1{font-size:clamp(42px,14vw,70px)}}

.hero h1{letter-spacing:-.035em}
.brand>span{font-family:Manrope,Arial,sans-serif;font-weight:700;letter-spacing:.01em}
.brand>span>span{font-family:Manrope,Arial,sans-serif}

.brand>span,.brand>span>span{font-family:Arial,Helvetica,sans-serif;font-weight:700}
.brand>span{letter-spacing:.015em}

.services-grid{grid-template-columns:repeat(4,1fr)}
.team-member{border-top:1px solid #c8d5de;margin-top:30px;padding-top:22px}
.team-member h3{font-family:Manrope,Arial,sans-serif;font-size:28px;margin:0 0 4px}
.booking-details{display:grid;grid-template-columns:auto 1fr;gap:7px 20px;margin:26px 0;color:#d9e7ef;font-size:15px;align-items:baseline}
.booking-details strong{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:#a9cce0}
.booking-details span{font-weight:600}
@media(max-width:1100px){.services-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.services-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.services-grid{grid-template-columns:1fr}.booking-details{grid-template-columns:1fr;gap:2px 0}.booking-details strong:not(:first-child){margin-top:10px}}
