:root{color-scheme:light;--ink: #1c2b2d;--muted: #5b6769;--teal: #246a73;--teal-dark: #16474f;--coral: #e35d4f;--mint: #d7eee6;--gold: #f2c14e;--sky: #d8ecf7;--paper: #fffdf8;--white: #ffffff;--line: #d9e2df;--shadow: 0 18px 45px rgba(28, 43, 45, .12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit}.site-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:14px clamp(18px,4vw,56px);background:#fffdf8f0;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand,.nav-links,.hero-actions,.quick-contact,.site-footer{display:flex;align-items:center}.brand{min-width:0;gap:12px;text-decoration:none}.brand-mark{display:grid;width:44px;height:44px;place-items:center;flex:0 0 auto;background:var(--teal);color:var(--white);border-radius:8px;font-weight:800}.brand strong,.brand small{display:block}.brand strong{line-height:1.1}.brand small{color:var(--muted);font-size:.78rem}.nav-links{justify-content:center;gap:clamp(14px,3vw,30px);color:var(--muted);font-weight:700;font-size:.93rem}.nav-links a,.header-call,.button{text-decoration:none}.nav-links a:hover,.site-footer a:hover,.quick-contact a:hover,address a:hover{color:var(--coral)}.header-call{padding:10px 14px;color:var(--teal-dark);border:1px solid var(--teal);border-radius:8px;font-weight:800;white-space:nowrap}.hero{position:relative;min-height:min(760px,calc(100svh - 74px));display:grid;align-items:end;overflow:hidden;color:var(--white);background:var(--teal-dark)}.hero-media{position:absolute;inset:0;z-index:0;isolation:isolate;background:var(--teal-dark)}.hero-media:after{position:absolute;inset:0;z-index:1;content:"";pointer-events:none;background:linear-gradient(90deg,#10373cbd,#10373c3d)}.hero-photo{position:relative;z-index:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center}.portrait-placeholder span{color:var(--coral);font-weight:900;text-transform:uppercase;letter-spacing:0;font-size:.76rem}.hero-content{position:relative;z-index:2;width:min(1120px,calc(100% - 36px));margin:0 auto;padding:96px 0 clamp(36px,8vh,88px)}.eyebrow{margin:0 0 10px;color:var(--coral);font-weight:900;text-transform:uppercase;letter-spacing:0;font-size:.78rem}.hero .eyebrow{color:var(--gold)}h1,h2,h3,p{margin-top:0}h1{max-width:820px;margin-bottom:18px;font-size:clamp(3.25rem,10vw,7.6rem);line-height:.92;letter-spacing:0}h2{max-width:780px;margin-bottom:0;font-size:clamp(2rem,5vw,4rem);line-height:1.02;letter-spacing:0}h3{font-size:1.1rem;line-height:1.25}.hero-copy{max-width:650px;color:#ffffffeb;font-size:clamp(1.1rem,2vw,1.35rem)}.hero-actions{flex-wrap:wrap;gap:12px;margin:30px 0}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:13px 18px;border:2px solid transparent;border-radius:8px;font-weight:900;line-height:1.1}.button.primary{background:var(--coral);color:var(--white)}.button.secondary{background:#ffffff26;color:var(--white);border-color:#ffffffad}.button.secondary.light{color:var(--teal-dark);background:var(--white);border-color:var(--line)}.quick-contact{flex-wrap:wrap;gap:16px;max-width:870px;margin:0}.quick-contact div{min-width:min(100%,260px);padding:16px;background:#ffffff24;border:1px solid rgba(255,255,255,.24);border-radius:8px}.quick-contact dt{color:var(--gold);font-size:.75rem;font-weight:900;text-transform:uppercase}.quick-contact dd{margin:0;font-weight:800}.intro-band{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}.intro-item{padding:26px clamp(18px,4vw,56px);background:var(--white)}.intro-item strong{display:block;margin-bottom:4px;color:var(--teal-dark);font-size:1.02rem}.intro-item span,.section-heading p,.contact-panel p{color:var(--muted)}.section{width:min(1120px,calc(100% - 36px));margin:0 auto;padding:clamp(58px,9vw,100px) 0}.section-heading{display:grid;gap:12px;margin-bottom:30px}.section-heading p{max-width:660px;margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-card{min-height:150px;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 28px #1c2b2d0f}.service-card h3{margin-bottom:0}.service-icon{display:grid;width:34px;height:34px;margin-bottom:24px;place-items:center;color:var(--white);background:var(--teal);border-radius:8px;font-size:1.35rem;font-weight:900}.split-section{width:100%;padding-inline:max(18px,calc((100% - 1120px)/2));background:var(--sky)}.about-layout{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:clamp(24px,5vw,60px);align-items:center}.portrait-placeholder{min-height:390px;display:grid;place-items:center;padding:24px;text-align:center;background:var(--white);border:2px dashed rgba(36,106,115,.48);border-radius:8px}.doctor-photo-frame{margin:0;padding:10px;aspect-ratio:4 / 5;background:#ffffffb8;border:1px solid rgba(36,106,115,.16);border-radius:8px;box-shadow:0 22px 44px #1c2b2d2e}.doctor-photo{width:100%;height:100%;display:block;object-fit:cover;object-position:65% center;border-radius:8px}.about-copy{align-self:center;max-width:620px;color:#20383b;font-size:1.1rem;font-weight:600;line-height:1.75}.about-copy p{margin-bottom:16px}.about-copy p:last-child{margin-bottom:0}.about-lede{color:var(--teal-dark);font-size:clamp(1.18rem,2vw,1.35rem);font-weight:800;line-height:1.45}.insurance-band{display:grid;grid-template-columns:minmax(0,.85fr) minmax(280px,1fr);gap:clamp(24px,5vw,72px);align-items:start}.insurance-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;margin:0;list-style:none}.insurance-list li{padding:15px 16px;background:var(--white);border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:8px;font-weight:800}.self-pay-section{padding-top:0}.self-pay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.self-pay-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:clamp(20px,3vw,28px);background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 28px #1c2b2d0f}.self-pay-card span{color:var(--teal-dark);font-size:1.08rem;font-weight:900}.self-pay-card strong{color:var(--coral);font-size:clamp(2rem,5vw,3rem);line-height:1}.reviews-hero{display:grid;justify-items:center;gap:24px;width:min(1120px,calc(100% - 36px));margin:0 auto;text-align:center;padding:clamp(64px,10vw,118px) 0 clamp(24px,5vw,46px)}.reviews-hero h1{max-width:760px;margin-inline:auto;margin-bottom:16px;color:var(--teal-dark);font-size:clamp(2.8rem,8vw,6.2rem);line-height:.95}.reviews-hero p:not(.eyebrow){max-width:640px;margin-inline:auto;margin-top:clamp(18px,3vw,32px);margin-bottom:0;color:#20383b;font-size:clamp(1.08rem,2vw,1.28rem);font-weight:600}.reviews-section{padding-top:0}.reviews-summary{display:grid;justify-items:center;gap:12px;width:min(760px,100%);padding:clamp(22px,4vw,34px);margin:0 auto 22px;text-align:center;color:var(--white);background:var(--teal-dark);border-radius:8px;box-shadow:var(--shadow)}.reviews-summary h2{color:var(--white)}.reviews-rating-title{margin-bottom:-6px;font-size:clamp(2.8rem,7vw,5rem);font-variant-numeric:tabular-nums;line-height:.95}.reviews-rating-stars{color:var(--gold);font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:0;line-height:1;text-shadow:0 1px 12px rgba(0,0,0,.18)}.reviews-summary p:not(.eyebrow){max-width:700px;margin-bottom:0;color:#ffffffd6;font-weight:700}.reviews-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:8px}.reviews-actions .button.secondary.light{background:transparent;color:var(--white);border-color:#ffffff8f}.reviews-actions .button.secondary.light:hover{border-color:var(--white)}.reviews-grid{column-count:3;column-gap:16px}.review-card{display:grid;gap:12px;break-inside:avoid;margin-bottom:16px;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 28px #1c2b2d0f}.review-card-header{display:flex;align-items:center;gap:12px}.review-avatar{display:grid;width:44px;height:44px;place-items:center;flex:0 0 auto;overflow:hidden;color:var(--white);background:var(--teal);border-radius:50%;font-weight:900}.review-avatar img{width:100%;height:100%;display:block;object-fit:cover}.review-author{min-width:0;display:grid;gap:2px}.review-author strong{color:var(--teal-dark);font-size:1.04rem;overflow-wrap:anywhere}.review-author span{color:var(--muted);font-size:.92rem;font-weight:700}.review-stars{color:#b98504;font-size:1.1rem;letter-spacing:0}.review-card p,.reviews-empty{margin-bottom:0;color:#20383b;font-weight:500}.reviews-empty{grid-column:1 / -1;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:8px}.contact-section{padding-top:20px}.contact-panel{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:clamp(22px,4vw,34px);background:var(--teal-dark);color:var(--white);border-radius:8px;box-shadow:var(--shadow)}.contact-panel h3{margin-bottom:8px}.contact-panel p{color:#ffffffd1}address{display:grid;align-content:center;gap:8px;font-style:normal}address a{color:var(--gold);font-weight:900}.site-footer{justify-content:center;flex-wrap:wrap;gap:10px 18px;padding:24px 18px 34px;color:var(--muted);border-top:1px solid var(--line);font-size:.92rem}.site-footer a{font-weight:800;text-decoration:none}@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.nav-links{grid-column:1 / -1;justify-content:flex-start;overflow-x:auto;padding-bottom:2px}.intro-band,.service-grid,.insurance-band,.self-pay-grid,.reviews-hero,.contact-panel{grid-template-columns:1fr}.reviews-grid{column-count:2}.about-layout{grid-template-columns:1fr}.portrait-placeholder{min-height:260px}.doctor-photo-frame{max-width:360px}}@media(max-width:620px){.site-header{gap:12px}.header-call{padding:9px 10px;font-size:.86rem}.hero{min-height:auto}.hero-content{width:min(100% - 28px,1120px);padding-top:84px}.button,.quick-contact div{width:100%}.insurance-list{grid-template-columns:1fr}.reviews-grid{column-count:1}}
