/* A quiet, white editorial system. Shared by every page. */
:root{--cream:#fff;--paper:#fff;--olive:#35474e;--olive-dark:#1b2a31;--ink:#202b30;--muted:#697278;--line:#e3e7e9;--sand:#a4b6bf;--soft:#f3f6f7;--serif:var(--sans)}
body{background:#fff;color:var(--ink)}
::selection{background:#dce8ee}
.wrap{width:min(1280px,calc(100% - 112px))}
.serif{font-weight:500;letter-spacing:-.055em}
.eyebrow{font-size:10px;font-weight:500;letter-spacing:.17em;color:#5d707b}
.demo-bar{background:#f7f8f9;color:#64727a;border-bottom:1px solid #eef0f1;padding:4px 0;font-size:9px}
.demo-bar span:last-child{font-size:9px;opacity:1}
.header{background:rgba(255,255,255,.96);border-bottom-color:#edf0f1}
.header-inner{height:88px;gap:28px}
.brand-name{font-family:var(--sans);font-size:29px;letter-spacing:.04em;font-weight:500;line-height:1.2}
.brand-sub{letter-spacing:.13em;font-size:8px;margin-top:7px}
.nav{gap:25px}
.nav a{font-size:12px;color:#495259}
.nav a:hover,.nav a.active{color:#111b22}
.btn{background:#26383f;border-color:#26383f;border-radius:50px;min-height:51px;padding:14px 24px;gap:25px;color:#fff}
.btn:hover{background:#101f26;transform:translateY(-2px)}
.btn.outline{background:transparent;border-color:#bec8cd;color:#25353e}
.btn.outline:hover{background:#f3f6f7}
.btn.light{background:white;border-color:white;color:#273b44}
.header-action{min-height:40px;padding:10px 18px;font-size:11px;gap:13px}
.text-link{border-color:#bfc9ce;gap:20px;font-size:12px}
.section{padding:110px 0}
.section-head{margin-bottom:45px}
.section-head h2{font-size:36px;line-height:1.45}
.tag{border-radius:20px;background:#f8fafb;border-color:#dce3e6}
.notice{background:#f6f8f9;border-color:#d7e0e4;color:#617079}
.sample-note{color:var(--muted)}
.white-hero{height:clamp(620px,calc(100svh - 145px),840px);position:relative;margin:16px 24px 0;overflow:hidden;border-radius:18px;background:#edf0f0;isolation:isolate}
.white-hero-photo{position:absolute;inset:0;z-index:-2}
.white-hero-photo img{object-position:66% 48%}
.white-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(249,251,252,.18) 0%,rgba(249,251,252,.04) 47%,transparent 64%)}
.white-hero-copy{height:100%;width:100%;padding:60px max(56px,calc((100vw - 1328px)/2));display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-bottom:95px}
.white-hero-copy .eyebrow{color:#3f535f;font-size:10px;letter-spacing:.19em}
.white-hero h1{font-family:var(--sans);font-size:clamp(45px,4.5vw,74px);font-weight:400;line-height:1.29;letter-spacing:-.065em;margin:27px 0 28px;color:#1b292f}
.white-hero-copy>p{font-size:15px;color:#4c5a62;line-height:1.95;margin-bottom:31px}
.hero-actions{display:flex;align-items:center;gap:26px}
.hero-actions .text-link{font-size:11px;border-color:#a9b5bb}
.white-hero-bottom{position:absolute;bottom:30px;left:max(56px,calc((100vw - 1328px)/2));right:38px;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.09em;color:#45545e}
.white-hero-bottom i{font-size:8px;font-style:normal;letter-spacing:.14em;margin-left:16px}
.white-hero-bottom>a{display:flex;align-items:center;gap:20px;font-size:8px;letter-spacing:.12em}
.white-hero-bottom>a span{font-size:24px;line-height:1}
.quick-care{display:grid;grid-template-columns:repeat(4,1fr);padding-block:33px;border-bottom:1px solid var(--line)}
.quick-care>a{display:grid;grid-template-columns:1fr auto;gap:3px 14px;padding:2px 30px;border-left:1px solid var(--line)}
.quick-care>a:first-child{border:0;padding-left:0}
.quick-care>a:last-child{padding-right:0}
.quick-care>a>span{font-size:8px;letter-spacing:.12em;color:#819199}
.quick-care strong{grid-column:1;font-size:14px;font-weight:500}
.quick-care svg{grid-column:2;grid-row:1/3;align-self:center;width:17px;transition:transform .2s}
.quick-care>a:hover svg{transform:translateX(4px)}
.white-intro{padding-top:116px}
.white-intro-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;column-gap:70px;margin-bottom:62px}
.white-intro-heading>.eyebrow{grid-column:1/-1;margin-bottom:20px}
.white-intro-heading h2{font-size:42px;font-weight:500;letter-spacing:-.055em;line-height:1.45;margin:0}
.white-intro-heading>p{font-size:14px;line-height:1.95;margin:0 0 4px}
.doctor-feature{display:grid;grid-template-columns:1fr 1fr;border-radius:18px;background:#f5f7f8;overflow:hidden;min-width:0}
.doctor-visual{min-height:640px;position:relative;overflow:hidden;background:#f1f3f3}
.doctor-visual img{position:absolute;inset:0;object-position:50% 28%}
.photo-credit{position:absolute;bottom:19px;left:25px;font-size:9px;letter-spacing:.04em;color:#6c777e;background:rgba(255,255,255,.85);padding:6px 10px;border-radius:20px}
.doctor-intro{padding:60px 58px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.doctor-intro h2{font-size:33px;line-height:1.55;letter-spacing:-.06em;font-weight:500;margin:22px 0 27px}
.doctor-intro-lead{font-size:16px!important;color:#394950;line-height:1.9;margin:0 0 22px}
.doctor-intro>p{font-size:13px;line-height:1.9}
.doctor-signature{display:flex;justify-content:space-between;align-items:center;width:100%;padding-top:25px;margin-top:15px;border-top:1px solid #dce2e5;margin-bottom:28px}
.doctor-signature>div{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.doctor-signature>div>span{font-size:11px;color:#6f7a80}
.doctor-signature strong{font-size:22px;font-weight:500;letter-spacing:.09em}
.doctor-signature small{width:100%;font-size:9px;color:#7d898f}
.doctor-signature .latin{font-size:33px;color:#65767f;white-space:nowrap}
.doctor-intro .btn{font-size:11px;min-height:45px}
.doctor-values{display:flex;flex-wrap:wrap;gap:9px}
.doctor-values span{font-size:11px;padding:7px 13px;background:white;border-radius:25px;border:1px solid #e0e6e9}
.doctor-feature-full .doctor-visual{min-height:700px}
.doctor-profile-details{display:grid;grid-template-columns:1fr 1.5fr;gap:70px;margin-top:65px}
.doctor-profile-details h2{font-size:29px;font-weight:500;letter-spacing:-.05em;margin-top:18px}
.white-concerns{background:#f8fafb}
.white-concern-list{border-top:1px solid #bac6cc}
.white-concern{display:flex;align-items:center;gap:35px;padding:30px 8px;border-bottom:1px solid #dce3e7;transition:padding .2s,background .2s}
.white-concern:hover{padding-left:20px;background:#fff}
.concern-number{width:45px;font-family:var(--latin);font-size:23px;color:#a5b2b9}
.concern-name{width:240px;flex-shrink:0}
.concern-name>span{font-family:var(--latin);font-style:italic;font-size:15px;color:#7e909a}
.concern-name h3{font-weight:500;font-size:24px;letter-spacing:-.04em;margin:3px 0 0}
.white-concern>p{flex:1;margin:0;font-size:13px}
.circle-link{display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid #c9d3d8;width:44px;height:44px;flex-shrink:0}
.circle-link svg{width:18px}
.note-inline{border-color:#dde4e7}
.white-care-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}
.white-care-photo{height:740px;position:relative;border-radius:16px;overflow:hidden}
.white-care-photo img{object-position:50% 44%}
.white-care-photo>span{position:absolute;bottom:25px;left:27px;font-size:8px;color:#46545b;letter-spacing:.16em;background:rgba(255,255,255,.85);padding:7px 11px;border-radius:20px}
.white-care-copy h2{font-size:42px;font-weight:500;letter-spacing:-.06em;line-height:1.45;margin:22px 0 25px}
.white-care-copy>p{font-size:14px}
.care-lines{margin:35px 0 25px;border-top:1px solid #bcc8cf}
.care-line{display:flex;align-items:center;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}
.care-line>span{font-size:11px;color:#84939b;align-self:flex-start;padding-top:6px}
.care-line>div{flex:1}
.care-line h3{font-size:18px;font-weight:500;margin:0 0 6px;letter-spacing:-.04em}
.care-line p{font-size:11px;margin:0;max-width:340px}
.care-line svg{width:18px;transition:transform .2s}
.care-line:hover svg{transform:translateX(5px)}
.package-teaser{background:#f7f9fa;border:0}
.home-package{background:white;border:1px solid #e4eaed;border-radius:13px;padding:32px;transition:transform .25s}
.home-package:hover{transform:translateY(-5px)}
.home-package h3{font-size:25px;font-weight:500}
.catalog-price{font-family:var(--sans);font-weight:400;letter-spacing:-.05em}
.white-space{padding:110px 0 0}
.white-space-image{height:580px;border-radius:16px;overflow:hidden;position:relative;background:#f4f6f7}
.white-space-image>img{object-position:50% 45%}
.space-label{position:absolute;bottom:32px;left:36px;display:flex;flex-direction:column;color:#35454d;background:rgba(255,255,255,.90);backdrop-filter:blur(12px);padding:23px 30px;border-radius:10px}
.space-label .latin{font-size:30px;line-height:1.3}
.space-label small{font-size:10px;margin-top:10px;letter-spacing:.05em}
.review-card{border-radius:12px;background:#fff;border-color:#e0e6e9}
.review-card blockquote{font-family:var(--sans);font-size:19px;line-height:1.8;letter-spacing:-.035em}
.review-card .quote-mark{color:#a2b2ba}
.review-by{border-color:var(--line)}
.journal-section{background:#f8fafb;border-block:0}
.journal-card .photo{border-radius:12px;height:360px}
.journal-card:first-child .photo img{object-position:50% 42%}
.journal-card h3{font-family:var(--sans);font-weight:500;font-size:25px}
.faq-list{border-color:#ccd6db}
details{border-color:#dde4e7}
summary{font-size:14px}
.cta{background:#eaf0f3;color:#293c47;padding:75px 0;border-top:1px solid #e2e9ed}
.cta .eyebrow.light{color:#708792}
.cta h2{font-size:35px;font-weight:500}
.cta p{color:#6b7a82}
.cta .btn{background:#263b46;color:#fff;border-color:#263b46}
.footer{background:white}
.footer-tagline{color:#637883}
.footer .brand-name{font-size:28px}
.footer p,.footer-hours{color:var(--muted)}
.footer-bottom{border-color:#e6ebee}
.page-heading{padding:68px 0 62px;max-width:900px}
.page-heading h1{font-size:48px;font-weight:500;line-height:1.45}
.page-hero{border-radius:16px;height:550px}
.page-hero .overlay-caption{font-size:40px;color:#344a55;background:rgba(255,255,255,.88);padding:12px 22px;border-radius:9px;text-shadow:none}
.breadcrumb{color:var(--muted);border-bottom-color:#edf1f3}
.section-links a{color:#647680}
.listing-card{background:#f8fafb;border-color:#e0e7eb;border-radius:12px}
.listing-card h2,.principle h3{font-weight:500}
.split-content>div:first-child{border-radius:14px;overflow:hidden}
.detail-aside,.booking-aside{background:#f5f8fa;border-color:#dce5e9;border-radius:12px}
.detail-aside .btn{gap:12px}
.filter-btn{border-radius:30px;border-color:#d5dfe4;background:white}
.filter-btn[aria-pressed=true]{background:#314b59;border-color:#314b59;color:white}
.catalog-card{border-radius:12px;border-color:#dfe7eb;background:#fff}
.catalog-card.selected{background:#edf4f8;border-color:#6f96ab}
.catalog-english{color:#8a9da8;font-size:23px}
.catalog-card h2{font-weight:500}
.catalog-actions{border-color:#e0e7eb}
.package-card{border-radius:13px;overflow:hidden;border-color:#e1e8ed}
.package-art{background:#e2ebf0;color:#385161;height:190px}
.art-1{background:#edf1f3;color:#536b78}
.art-2{background:#d7e4eb;color:#324f61}
.package-content h3{font-weight:500}
.method-card{background:#f5f8fa;border-color:#dfe7ec;border-radius:12px}
.method-card h2{font-weight:500}
.spec-grid{border-color:#dbe4e9}
.selection-bar{background:#253d4b;border-color:#253d4b;border-radius:14px 14px 0 0}
.reservation-form{background:#fff;border-color:#dce5eb;border-radius:14px}
.booking-aside>div:first-child{overflow:hidden;border-radius:12px 12px 0 0}
.booking-aside>div:last-child{padding:0 25px 28px}
input,select,textarea{border-color:#ccd9e0;background:white}
.time-options input:checked+span{background:#344f5e;border-color:#344f5e;color:white}
.time-options span{border-radius:7px;border-color:#dbe4e9}
.map-demo{background:#edf2f5;border-radius:12px}
.map-block{background:#dce5e9}
.map-pin{background:#3d5c6d}
.map-note{background:rgba(255,255,255,.90);color:#607985}
.mobile-book{background:#fff;border-color:#d7e1e6}
.mobile-book a:last-child{background:#2e4654;color:white}
dialog{background:#fff;border-color:#d8e2e7;border-radius:16px}
.dialog-options a{background:#f3f7f9;border-color:#dfe7eb}
@media(min-width:1600px){.white-hero-copy{padding-left:max(80px,calc((100vw - 1360px)/2))}.white-hero-bottom{left:max(80px,calc((100vw - 1360px)/2))}}
@media(max-width:1200px){
 .wrap{width:calc(100% - 72px)}.nav{gap:17px}.header-inner{gap:22px}.nav a{font-size:11px}
 .white-hero-copy{padding-left:48px}.white-hero h1{font-size:52px}.white-hero-bottom{left:48px}
 .doctor-intro{padding:40px}.doctor-intro h2{font-size:29px}.doctor-visual{min-height:600px}
 .white-care-grid{gap:55px}.white-care-photo{height:700px}.white-care-copy h2{font-size:38px}
 .concern-name{width:210px}.white-concern{gap:25px}
}
@media(max-width:960px){
 .header-inner{height:76px}.nav{top:76px;height:calc(100dvh - 76px);background:#fff}.nav a{font-size:20px}
 .white-hero{margin:12px 16px 0;height:690px}.white-hero h1{font-size:47px}.white-hero-copy{padding-left:38px}.white-hero-copy>p{font-size:13px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-actions .text-link{display:none}
 .white-hero:after{background:linear-gradient(90deg,rgba(250,252,253,.48),rgba(250,252,253,.12) 55%,transparent 72%)}.white-hero-bottom{left:38px;right:28px}.white-hero-bottom i{display:none}
 .quick-care>a{padding-inline:18px}.quick-care strong{font-size:12px}.quick-care>a>span{font-size:7px}
 .white-intro-heading{column-gap:40px}.white-intro-heading h2{font-size:34px}.white-intro-heading>p{font-size:12px}
 .doctor-intro{padding:30px}.doctor-intro h2{font-size:25px}.doctor-intro-lead{font-size:14px!important}.doctor-intro>p{font-size:12px}.doctor-visual{min-height:570px}.doctor-signature .latin{font-size:28px}.doctor-feature-full .doctor-visual{min-height:620px}
 .white-concern{gap:20px}.concern-name{width:190px}.white-concern>p{font-size:12px}.concern-name h3{font-size:22px}.concern-number{width:32px}
 .white-care-grid{gap:35px}.white-care-photo{height:670px}.white-care-copy h2{font-size:34px}.white-care-copy>p{font-size:12px}.care-line{padding:20px 0;gap:13px}.care-line h3{font-size:16px}.care-line p{font-size:11px}
 .section-head h2{font-size:31px}.white-space-image{height:450px}.journal-card .photo{height:290px}.journal-card h3{font-size:22px}
 .page-heading h1{font-size:41px}.page-hero{height:440px}
}
@media(min-width:641px) and (max-width:820px){
 .white-hero{height:900px;background:#f1f4f5}
 .white-hero-photo{inset:310px 0 0}
 .white-hero-photo img{object-position:79% 45%}
 .white-hero:after{background:linear-gradient(180deg,#f1f4f5 0%,#f1f4f5 28%,rgba(241,244,245,.85) 35%,rgba(241,244,245,.15) 47%,transparent 55%)}
 .white-hero-copy{height:auto;padding:40px 38px 0;justify-content:flex-start}
 .white-hero h1{font-size:48px;margin:20px 0}
 .white-hero-copy>p{margin-bottom:24px}
}
@media(max-width:640px){
 .wrap{width:calc(100% - 40px)}.demo-bar{padding:3px 0}.demo-bar span:last-child{font-size:8px}.header-inner{height:70px;gap:10px}.brand-name{font-size:24px}.brand-sub{font-size:6px;letter-spacing:.10em;margin-top:6px}.header-action{font-size:10px;min-height:34px;padding:8px 12px;gap:9px}.nav{top:70px;height:calc(100dvh - 70px)}
 .section{padding:70px 0}.section-head{gap:20px;margin-bottom:30px}.section-head h2{font-size:27px;line-height:1.5}.section-head p{font-size:12px}
 .white-hero{height:745px;margin:10px 10px 0;border-radius:12px;background:#f1f4f5}.white-hero-photo{inset:240px 0 0}.white-hero-photo img{object-position:79% 42%;object-fit:cover}.white-hero:after{background:linear-gradient(180deg,#f1f4f5 0%,#f1f4f5 28%,rgba(241,244,245,.88) 34%,rgba(241,244,245,.25) 47%,transparent 56%)}
 .white-hero-copy{height:auto;padding:36px 23px 0;justify-content:flex-start;position:relative;z-index:1}.white-hero-copy .eyebrow{font-size:8px;letter-spacing:.14em}.white-hero h1{font-size:41px;line-height:1.33;margin:19px 0 17px;letter-spacing:-.06em}.white-hero-copy>p{font-size:12px;line-height:1.85;margin:0 0 20px}.hero-actions .btn{min-height:41px;padding:10px 17px;font-size:11px;gap:23px}.hero-actions svg{width:16px}.white-hero-bottom{bottom:20px;left:23px;right:21px;color:#273943;font-size:9px}.white-hero-bottom>a{font-size:6px;gap:10px}.white-hero-bottom>a span{font-size:20px}
 .quick-care{grid-template-columns:1fr 1fr;padding-block:10px;margin-top:10px;border-bottom:0;gap:0}.quick-care>a,.quick-care>a:first-child,.quick-care>a:last-child{border:0;border-bottom:1px solid #e2e7ea;padding:19px 14px 19px 0}.quick-care>a:nth-child(even){padding-left:20px}.quick-care strong{font-size:13px}.quick-care>a>span{font-size:7px}.quick-care svg{width:15px}
 .white-intro-heading{display:block;margin-bottom:35px}.white-intro-heading>.eyebrow{display:block;margin-bottom:18px}.white-intro-heading h2{font-size:31px;line-height:1.5}.white-intro-heading>p{margin-top:22px;font-size:12px;line-height:1.9}
 .doctor-feature{grid-template-columns:1fr;border-radius:12px}.doctor-visual{min-height:450px}.doctor-visual img{object-position:50% 23%}.doctor-intro{padding:32px 25px 35px}.doctor-intro h2{font-size:27px;margin:18px 0 22px}.doctor-intro-lead{font-size:15px!important}.doctor-intro>p{font-size:12px}.doctor-signature{margin-top:7px;padding-top:20px;margin-bottom:23px}.doctor-signature strong{font-size:21px}.doctor-signature .latin{font-size:32px}.photo-credit{left:18px;bottom:15px;font-size:8px}.doctor-feature-full .doctor-visual{min-height:480px}
 .doctor-profile-details{grid-template-columns:1fr;gap:15px;margin-top:45px}.doctor-profile-details h2{font-size:25px}
 .white-concern{gap:15px;padding:23px 0;flex-wrap:wrap}.concern-number{width:24px;font-size:18px;align-self:flex-start;padding-top:2px}.concern-name{width:calc(100% - 100px)}.concern-name>span{font-size:13px}.concern-name h3{font-size:22px;margin-top:2px}.white-concern>p{order:5;flex-basis:calc(100% - 40px);margin-left:39px;font-size:11px;line-height:1.8}.circle-link{width:34px;height:34px}.circle-link svg{width:15px}.white-concern:hover{padding-left:0}.note-inline{margin-top:20px;align-items:flex-start;font-size:11px;gap:8px}.note-inline button{font-size:11px}
 .white-care-grid{grid-template-columns:1fr;gap:37px}.white-care-photo{height:490px;border-radius:12px}.white-care-copy h2{font-size:32px;line-height:1.5;margin:17px 0 21px}.white-care-copy>p{font-size:13px}.care-lines{margin:27px 0 20px}.care-line{gap:19px;padding:23px 0}.care-line h3{font-size:18px}.care-line p{font-size:11px}
 .home-package{padding:27px}.home-package h3{font-size:25px}.home-package .catalog-price{font-size:29px}
 .white-space{padding-top:70px}.white-space-image{height:390px;border-radius:12px}.white-space-image>img{object-position:54% 50%}.space-label{bottom:18px;left:18px;padding:17px 21px;max-width:calc(100% - 36px)}.space-label .latin{font-size:25px}.space-label small{font-size:9px;margin-top:6px}
 .review-card blockquote{font-size:18px}.journal-card .photo{height:300px}.journal-card h3{font-size:22px}.faq-title h2{font-size:28px}summary{font-size:12px}
 .cta{padding:55px 0}.cta h2{font-size:27px}.cta p{font-size:12px}.cta .btn{margin-top:25px;min-height:45px}.footer{padding:50px 0 90px}.footer .brand-name{font-size:26px}
 .page-heading{padding:43px 0 40px}.page-heading h1{font-size:33px;line-height:1.5}.page-heading p{font-size:12px;line-height:1.9}.page-hero{height:350px;border-radius:12px}.page-hero .overlay-caption{font-size:25px;padding:10px 16px;left:20px;bottom:20px;max-width:calc(100% - 40px)}
 .catalog-card{padding:25px}.catalog-card h2{font-size:25px}.selection-bar{border-radius:12px 12px 0 0}.selection-bar .btn{padding:10px 16px;min-height:40px}
}
@media(prefers-reduced-motion:reduce){.home-package,.care-line svg,.white-concern,.quick-care svg{transition:none}}
