@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f7f5ef;--white:#fffdfa;--ink:#1e2623;--muted:#6f756f;--sage:#9caf9e;--sage-dark:#667c69;--line:#d8ddd6;--soft:#e9eee8;--serif:"Libre Caslon Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--ease:cubic-bezier(.2,.72,.22,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.site-header{height:72px;display:flex;align-items:center;gap:34px;padding:0 3.4vw;border-bottom:1px solid rgba(30,38,35,.14);background:rgba(247,245,239,.96);position:sticky;top:0;z-index:40;backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:10px;min-width:200px}.brand-mark{width:32px;height:32px;border:1px solid;display:grid;place-items:center;font-family:var(--serif)}.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font-size:13px;letter-spacing:.2em}.brand-copy small{font-size:8px;letter-spacing:.25em;margin-top:4px}.desktop-nav{display:flex;gap:28px;margin-left:auto}.desktop-nav a{font-size:12px}.header-cta{height:42px;padding:0 18px;background:var(--ink);color:white;display:flex;align-items:center;font-size:12px;font-weight:600}.menu-toggle{display:none;margin-left:auto;border:0;background:none}
h1,h2,h3{font-family:var(--serif);font-weight:400}.hero{display:grid;grid-template-columns:.9fr 1.1fr;min-height:520px;background:var(--soft);overflow:hidden}.hero-copy{padding:70px 5vw 60px 3.4vw;display:flex;flex-direction:column;justify-content:center}.hero h1,.inner-hero h1,.booking-layout h1,.contact-layout h1{font-size:clamp(44px,5vw,70px);line-height:.98;letter-spacing:-.03em;margin:10px 0 20px}.hero p,.inner-hero p,.booking-layout p,.contact-layout p{color:var(--muted);line-height:1.7;max-width:620px}.hero-actions{display:flex;gap:18px;align-items:center;margin-top:26px}.hero-notes{display:flex;gap:18px;flex-wrap:wrap;margin-top:34px;font-size:11px;color:var(--muted)}.hero-image{background:url('https://images.unsplash.com/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&w=1500&q=88') center/cover}
.btn{min-height:46px;padding:0 20px;border:0;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;cursor:pointer;transition:transform .22s var(--ease),box-shadow .22s var(--ease)}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,38,35,.12)}.btn-dark{background:var(--ink);color:white}.btn-soft{background:var(--sage);color:var(--ink)}.btn-light{background:white;color:var(--ink)}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid;padding-bottom:3px}
.service-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--white)}.service-strip a{padding:20px 22px;border-right:1px solid var(--line);display:grid;grid-template-areas:"t" "s";gap:3px}.service-strip strong{grid-area:t;font:400 22px/1.05 var(--serif)}.service-strip small{grid-area:s;font-size:10px;color:var(--muted)}
.section{padding:58px 3.4vw}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}.section-head h2{font-size:clamp(34px,3.7vw,54px);line-height:1;max-width:780px;margin:0 0 10px}.section-head p{margin:0;color:var(--muted);line-height:1.65}.care-grid,.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.care-grid article,.detail-grid article{background:var(--white);border:1px solid var(--line);padding:24px;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}.care-grid article:hover,.detail-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(30,38,35,.07)}.care-grid h3,.detail-grid h3{font-size:28px;line-height:1.1;margin:28px 0 12px}.detail-grid--plain h3,.care-grid .plain-card h3{margin-top:0}.care-grid p,.detail-grid p{font-size:13px;line-height:1.65;color:var(--muted)}
.doctor-feature,.editorial-split,.specialist-for-service{display:grid;grid-template-columns:1.05fr .95fr;min-height:540px;background:#dfe8e2;overflow:hidden}.doctor-image{background:url('https://images.unsplash.com/photo-1559839734-2b71ea197ec2?auto=format&fit=crop&w=1300&q=88') center/cover}.doctor-copy,.editorial-copy,.specialist-copy{padding:68px 6vw;display:flex;flex-direction:column;justify-content:center}.doctor-copy h2,.editorial-copy h2,.specialist-copy h2{font-size:50px;margin:10px 0 8px}.doctor-copy p,.editorial-copy p,.specialist-copy p{color:var(--muted);line-height:1.7}.role{font-size:12px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.chips span{border:1px solid rgba(30,38,35,.18);padding:8px 10px;font-size:10px}
.approach{display:grid;grid-template-columns:1.05fr .95fr;background:var(--white);overflow:hidden}.approach-image{min-height:470px;background:url('https://images.unsplash.com/photo-1629909613654-28e377c37b09?auto=format&fit=crop&w=1300&q=88') center/cover}.approach-list{padding:44px}.approach-list div{padding:18px 0;border-bottom:1px solid var(--line)}.approach-list strong{font:400 24px/1.1 var(--serif)}.approach-list p{font-size:12px;color:var(--muted);line-height:1.65}.booking-band{margin:50px 3.4vw 70px;padding:34px;background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:30px}.booking-band h2{font-size:38px;margin:0 0 8px}.booking-band p{margin:0;color:rgba(255,255,255,.7)}
.site-footer{padding:34px 3.4vw;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;gap:24px;font-size:11px;color:var(--muted)}.footer-brand{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.footer-brand p{width:100%;margin:6px 0 0}.footer-links{display:flex;gap:18px;color:var(--ink)}.footer-meta{text-align:right;display:flex;flex-direction:column}
.inner-hero{padding:58px 3.4vw 34px;border-bottom:1px solid var(--line)}.service-list{padding:12px 3.4vw 60px}.service-row{display:grid;grid-template-columns:1.3fr .7fr auto;gap:22px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.service-row h2{font-size:31px;margin:0 0 7px}.service-row p{font-size:12px;color:var(--muted);margin:0}.service-meta{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--muted)}
.services-image{background:url('https://images.unsplash.com/photo-1579684385127-1ef15d508118?auto=format&fit=crop&w=1300&q=88') center/cover}.service-detail,.doctor-detail{display:grid;grid-template-columns:1.05fr .95fr;min-height:620px;overflow:hidden}.service-detail-image,.doctor-detail-image{background-size:cover;background-position:center}.service-detail-copy,.doctor-detail-copy{padding:70px 7vw 60px 5vw;display:flex;flex-direction:column;justify-content:center}.service-detail-copy h1,.doctor-detail-copy h1{font-size:clamp(44px,5vw,68px);line-height:1;margin:12px 0 18px}.service-detail-copy p,.doctor-detail-copy p{color:var(--muted);line-height:1.75}.service-facts{margin:24px 0;border-top:1px solid var(--line)}.service-facts div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}
.specialist-for-service{grid-template-columns:.95fr 1.05fr;background:var(--soft)}.specialist-image{background-size:cover;background-position:center}.doctor-grid{padding:34px 3.4vw 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.doctor-grid article{background:var(--white);border:1px solid var(--line)}.doctor-grid article>div:last-child{padding:18px}.doc-img{height:360px;background-size:cover;background-position:center}.d1{background-image:url('https://images.unsplash.com/photo-1559839734-2b71ea197ec2?auto=format&fit=crop&w=900&q=88')}.d2{background-image:url('https://images.unsplash.com/photo-1612349317150-e413f6a5b16d?auto=format&fit=crop&w=900&q=88')}.d3{background-image:url('https://images.unsplash.com/photo-1594824476967-48c8b964273f?auto=format&fit=crop&w=900&q=88')}.doctor-grid h2{font-size:29px;margin:8px 0 10px}.doctor-grid p{font-size:12px;color:var(--muted);line-height:1.6}
.doctor-services{padding:52px 3.4vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;background:var(--soft)}.doctor-services h2{font-size:42px;margin:10px 0}.doctor-service-list{display:grid;gap:0}.doctor-service-list a{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}
.booking-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;padding:62px 7vw 80px 3.4vw}.booking-steps{display:flex;flex-direction:column;gap:8px;margin-top:28px;font-size:11px;color:var(--muted)}.booking-form{background:var(--white);border:1px solid var(--line);padding:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-form label{display:flex;flex-direction:column;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:15px}.booking-form input,.booking-form select,.booking-form textarea{border:1px solid var(--line);background:white;padding:12px;text-transform:none;letter-spacing:0}.booking-success{margin-top:14px;font-size:12px;color:var(--sage-dark)}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;min-height:620px}.contact-copy{padding:70px 6vw 60px 3.4vw;display:flex;flex-direction:column;justify-content:center}.contact-details{margin:28px 0;border-top:1px solid var(--line)}.contact-details div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.contact-image{background:url('https://images.unsplash.com/photo-1519494026892-80bbd2d6fd0d?auto=format&fit=crop&w=1400&q=88') center/cover}
.parallax{--py:0px;background-position:center calc(50% + var(--py))}
.reveal,.reveal-group>*{opacity:0;transform:translateY(22px)}.is-visible{opacity:1!important;transform:none!important;transition:opacity .65s var(--ease),transform .65s var(--ease)}.reveal-group>*:nth-child(2).is-visible{transition-delay:.08s}.reveal-group>*:nth-child(3).is-visible{transition-delay:.16s}.reveal-group>*:nth-child(4).is-visible{transition-delay:.24s}.motion-frame{position:relative}.motion-frame:after{content:"";position:absolute;inset:18px;border:1px solid transparent;pointer-events:none;transition:inset .8s var(--ease),border-color .8s var(--ease)}.motion-frame.is-visible:after{inset:30px;border-color:rgba(30,38,35,.13)}.hero.motion-frame:after{border-color:transparent}.hero.motion-frame.is-visible:after{border-color:rgba(255,255,255,.35)}
@media(max-width:900px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.site-header.menu-open .desktop-nav{display:flex;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:20px;flex-direction:column;gap:16px}.hero,.doctor-feature,.approach,.editorial-split,.service-detail,.doctor-detail,.specialist-for-service,.booking-layout,.contact-layout,.doctor-services{grid-template-columns:1fr}.service-strip{grid-template-columns:1fr 1fr}.care-grid,.detail-grid,.doctor-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr}.footer-meta{text-align:left}}
@media(max-width:620px){.site-header{padding:0 20px}.brand{min-width:0}.hero-copy{padding:50px 20px}.hero h1{font-size:46px}.hero-image{min-height:330px}.service-strip{grid-template-columns:1fr}.section{padding:44px 20px}.section-head{align-items:flex-start;flex-direction:column}.care-grid,.detail-grid,.doctor-grid{grid-template-columns:1fr}.doctor-copy,.editorial-copy,.specialist-copy,.service-detail-copy,.doctor-detail-copy{padding:46px 20px}.booking-band{margin:35px 20px 55px;padding:28px;align-items:flex-start;flex-direction:column}.service-list{padding:10px 20px 50px}.service-row{grid-template-columns:1fr}.service-meta,.service-row .text-link{grid-column:1}.doctor-grid{padding:28px 20px 55px}.booking-layout{padding:44px 20px 65px;gap:34px}.form-row{grid-template-columns:1fr}.contact-copy{padding:48px 20px}.contact-image{min-height:320px}.footer-links{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal,.reveal-group>*{opacity:1!important;transform:none!important;transition:none!important}.motion-frame:after{display:none}.parallax{background-position:center}}
