:root{--ink:#152b31;--ink-soft:#526a70;--paper:#fbfbf8;--white:#fff;--teal:#0c6870;--teal-deep:#073f47;--mint:#e8f3ef;--gold:#d1ad53;--gold-soft:#f5ecd6;--line:#dbe5e1;--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--shadow:0 24px 60px rgba(20,49,55,.12);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}a{color:inherit}img{max-width:100%;display:block}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;top:-4rem;left:1rem;background:#fff;padding:.7rem 1rem;z-index:50;border-radius:5px}.skip:focus{top:1rem}.notice{background:var(--gold);color:var(--ink);font-weight:750;font-size:.86rem;text-align:center}.notice a,.notice .shell{display:block;padding:.7rem;text-decoration:none}.site-header{background:rgba(255,255,253,.88);border-bottom:1px solid rgba(21,43,49,.08);position:sticky;top:0;z-index:20;backdrop-filter:blur(16px)}.header-row{min-height:84px;display:flex;align-items:center;gap:1.2rem}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;min-width:236px}.brand img{height:50px;width:50px;object-fit:contain;border-radius:50%;mix-blend-mode:multiply}.brand b{font-family:var(--serif);font-size:1.07rem;display:block;line-height:1.08}.brand small{display:block;color:var(--ink-soft);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;margin-top:.26rem}.site-header nav{margin-left:auto}.site-header ul{display:flex;align-items:center;gap:.12rem;margin:0;padding:0;list-style:none}.site-header nav a{font-size:.84rem;text-decoration:none;padding:.62rem .58rem;display:block;border-radius:999px;font-weight:600}.site-header nav a:hover,.site-header nav a.active{color:var(--teal-deep);background:var(--mint)}.header-call{background:var(--teal);color:#fff;text-decoration:none;padding:.72rem 1rem;border-radius:999px;white-space:nowrap;font-size:.84rem;font-weight:750;box-shadow:0 5px 14px rgba(7,63,71,.18)}.menu-toggle{display:none}.hero{background:var(--teal-deep);color:#fff;min-height:650px;display:flex;align-items:stretch;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,39,45,.95) 0%,rgba(4,45,52,.8) 38%,rgba(4,45,52,.12) 70%);z-index:1}.hero:after{content:"";position:absolute;width:480px;height:480px;left:-220px;bottom:-290px;border:1px solid rgba(205,235,224,.3);border-radius:48% 52% 55% 45%;transform:rotate(21deg);z-index:2}.hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:1.12fr .88fr;align-items:center;min-height:650px;padding:6.6rem 0}.hero-media{position:absolute;inset:0;background:url('../images/clinic-hero.webp') 68% center/cover no-repeat}.hero-copy{max-width:660px}.eyebrow{letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--teal);font-size:.72rem;margin:0 0 .9rem}.hero .eyebrow{color:#f1d78d}.hero h1,.page-hero h1,h2{font-family:var(--serif);font-weight:500;line-height:1.04;letter-spacing:-.042em;margin:.1em 0 .5em}.hero h1{font-size:clamp(3.15rem,6vw,5.7rem);text-wrap:balance}.lead{font-size:1.14rem;line-height:1.68;max-width:610px;color:var(--ink-soft)}.hero .lead{color:#dcebea;max-width:570px}.button-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.button{display:inline-flex;justify-content:center;align-items:center;min-height:49px;background:var(--teal);color:#fff;border:1px solid var(--teal);padding:.7rem 1.2rem;text-decoration:none;font-weight:750;border-radius:999px;cursor:pointer;font:750 .9rem var(--sans);transition:transform .2s,background .2s,border-color .2s}.button:hover{background:var(--teal-deep);border-color:var(--teal-deep);transform:translateY(-2px)}.button:focus-visible,.menu-toggle:focus-visible,.site-header nav a:focus-visible,.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.button-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}.button-ghost:hover{border-color:#fff;background:rgba(255,255,255,.12)}.button-light{background:#fff;color:var(--teal-deep);border-color:#fff}.button-light:hover{background:var(--gold-soft);border-color:var(--gold-soft)}.hero-badge{justify-self:end;align-self:end;display:flex;gap:.9rem;align-items:center;padding:1rem 1.15rem;width:min(295px,100%);background:rgba(255,255,255,.92);color:var(--ink);border-radius:14px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.45)}.hero-badge svg{flex:0 0 auto;width:30px;height:30px;color:var(--teal)}.hero-badge b{font:700 1rem/1.3 var(--serif);display:block}.hero-badge span{display:block;color:var(--ink-soft);font-size:.72rem;line-height:1.35;margin-top:.15rem}.section{padding:6.5rem 0}.intro{display:grid;grid-template-columns:1.1fr .9fr;gap:7rem;align-items:start}.intro h2,.section-heading h2{font-size:clamp(2.4rem,4.2vw,3.95rem);max-width:680px}.intro>p{font-size:1.12rem;color:var(--ink-soft);margin-top:2.4rem}.section-soft{background:var(--mint);position:relative;overflow:hidden}.section-soft:after{content:"";position:absolute;width:400px;height:400px;border:1px solid rgba(12,104,112,.15);border-radius:48% 52% 44% 56%;right:-230px;top:15px}.section-soft .shell{position:relative;z-index:1}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2.2rem}.text-link{color:var(--teal);font-weight:800;text-decoration:none;white-space:nowrap}.text-link:hover{text-decoration:underline}.text-link span{font-size:1.4em;margin-left:.2rem}.cards{display:grid;gap:1.1rem}.cards-three{grid-template-columns:repeat(3,1fr)}.service-card{background:rgba(255,255,255,.92);padding:2rem;min-height:246px;border:1px solid rgba(12,104,112,.1);border-radius:var(--radius);box-shadow:0 9px 24px rgba(30,71,69,.04);transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.service-card h2,.service-card h3{font:1.7rem/1.15 var(--serif);margin:.8rem 0}.service-card p{color:var(--ink-soft);margin:0}.service-num{font-weight:800;color:var(--teal);font-size:.75rem;letter-spacing:.14em}.split{display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:center}.split h2{font-size:clamp(2.2rem,3.7vw,3.45rem)}.split-photo{min-height:390px;background:url('../images/clinic-consultation.webp') center/cover;border-radius:0 var(--radius) var(--radius) var(--radius);box-shadow:var(--shadow);position:relative}.split-photo:after{content:"";position:absolute;width:88px;height:88px;right:-18px;bottom:-18px;border-radius:50%;background:var(--gold);border:11px solid var(--paper)}.callout,.info-band{background:linear-gradient(135deg,var(--teal-deep),var(--teal));color:#fff;padding:3.5rem;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;gap:2rem;box-shadow:var(--shadow)}.callout h2,.info-band h2{font-size:clamp(2rem,3vw,3.05rem);max-width:700px}.callout .eyebrow,.info-band .eyebrow{color:#f1d78d}.callout p,.info-band p{max-width:700px;color:#d8ece7}.site-footer{background:var(--ink);color:#eaf2ef}.footer-cta{background:var(--gold);color:var(--ink)}.footer-cta .shell{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:3.3rem 0}.footer-cta h2{font-size:clamp(2rem,3vw,2.7rem);margin:0}.footer-cta p{margin:.35rem 0}.footer-cta .eyebrow{color:#594b20}.footer-grid{padding:4.5rem 0 3rem;display:grid;grid-template-columns:1.35fr 1fr .7fr;gap:4rem}.brand-footer{color:#fff;margin-bottom:1.2rem}.brand-footer img{mix-blend-mode:normal}.site-footer p{color:#b8c8c5;font-size:.9rem}.site-footer h3{font-size:.74rem;text-transform:uppercase;letter-spacing:.13em;color:#f0d989}.site-footer a{color:inherit}.copyright{border-top:1px solid #3c565a;padding:1.2rem 0;font-size:.78rem;color:#b8c8c5}.page-hero{background:linear-gradient(115deg,#e3f0eb,#fdfcf9 51%,#f2e4bd);padding:6.5rem 0 5.8rem;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(12,104,112,.2);border-radius:50%;right:-110px;bottom:-160px}.page-hero .shell{position:relative;z-index:1}.page-hero h1{font-size:clamp(3rem,5vw,5rem);max-width:900px}.prose{max-width:970px}.prose h2{font-size:clamp(2.3rem,4vw,3.7rem)}.prose p,.prose li{font-size:1.08rem;color:var(--ink-soft)}.narrow{max-width:760px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}.value-grid article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.25rem}.value-grid h3{font:1.48rem var(--serif);margin:.2rem 0}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem}.team-card{background:#fff;display:grid;grid-template-columns:210px 1fr;min-height:315px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 24px rgba(20,49,55,.05)}.team-card img{height:100%;width:100%;object-fit:cover}.team-card div{padding:1.65rem}.team-card h2{font-size:2rem}.team-card h2 small{font:1rem var(--sans);letter-spacing:0;color:var(--ink-soft)}.team-card p:last-child{color:var(--ink-soft)}.fine-print{font-size:.82rem!important;color:var(--ink-soft)}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:6rem}.contact-grid h2{font-size:2.2rem}.contact-detail{border-bottom:1px solid var(--line);padding:1.1rem 0}.contact-detail strong{display:block;text-transform:uppercase;letter-spacing:.11em;font-size:.71rem;color:var(--teal)}.contact-detail p{margin:.2rem 0}.contact-detail a{font:1.5rem var(--serif);color:var(--teal)}.contact-form{background:#fff;padding:2.35rem;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--line)}.contact-form label{display:block;font-size:.86rem;font-weight:750;margin:1rem 0}.contact-form label span{font-weight:400}.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;margin-top:.32rem;padding:.82rem .9rem;border:1px solid #b9c9c5;border-radius:8px;background:#fff;font:1rem var(--sans)}.contact-form .check{display:flex;gap:.7rem;align-items:start;font-weight:400}.contact-form .check input{margin-top:.35rem}.contact-form button{margin-top:.5rem}.form-alert{margin-top:2rem;padding:1rem 1.2rem;background:#e8f3ef;border-left:4px solid var(--teal);color:var(--teal-deep);border-radius:8px}.form-alert.error{background:#fff0ed;border-left-color:#b42318;color:#7a271a}.modal{position:fixed;inset:0;background:rgba(7,32,36,.65);z-index:30;display:grid;place-items:center;padding:1rem}.modal[hidden]{display:none}.modal-card{background:#fff;width:min(530px,100%);padding:2.4rem;border-radius:var(--radius);box-shadow:var(--shadow);position:relative}.modal-card h2{font-size:2.5rem}.modal-close{position:absolute;right:1rem;top:1rem;border:0;background:none;font-size:2rem;color:var(--ink);cursor:pointer}@media(max-width:1060px){.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:1rem;border-bottom:1px solid var(--line);box-shadow:0 12px 18px rgba(20,49,55,.09)}.site-header nav.open{display:block}.site-header ul{display:block}.site-header nav a{padding:.82rem;border-radius:7px}.menu-toggle{display:block;margin-left:auto;background:transparent;border:1px solid var(--line);border-radius:999px;padding:.55rem .8rem;font-weight:700}.header-call{display:none}.hero-grid,.intro,.split,.contact-grid{gap:3rem}.team-grid{grid-template-columns:1fr}.footer-grid{gap:2rem}}@media(max-width:720px){.shell{width:min(100% - 32px,1180px)}.brand{min-width:0}.brand b{font-size:.92rem}.hero{min-height:610px}.hero:before{background:linear-gradient(90deg,rgba(4,39,45,.94),rgba(4,45,52,.7))}.hero-grid{grid-template-columns:1fr;min-height:610px;padding:4.4rem 0 2.4rem}.hero h1{font-size:clamp(3rem,14vw,4.3rem)}.hero-badge{justify-self:start;align-self:end}.section{padding:4.3rem 0}.intro,.split,.contact-grid{grid-template-columns:1fr;gap:2rem}.intro>p{margin:0}.cards-three,.value-grid{grid-template-columns:1fr}.section-heading,.callout,.info-band,.footer-cta .shell{align-items:flex-start;flex-direction:column}.split-photo{min-height:300px;order:-1}.split-photo:after{width:60px;height:60px;right:-8px;bottom:-8px;border-width:7px}.team-card{grid-template-columns:135px 1fr;min-height:0}.team-card div{padding:1.15rem}.team-card h2{font-size:1.55rem}.footer-grid{grid-template-columns:1fr;padding:3rem 0 1.5rem}.page-hero{padding:4rem 0}.header-row{min-height:74px}.site-header .brand img{width:44px;height:44px}.contact-form{padding:1.35rem}.callout,.info-band{padding:2rem}.form-alert{width:calc(100% - 32px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
