:root{--ink:#162e4f;--paper:#f8f9f5;--muted:#526577;--line:#d8e0e1;--blue:#dae9ed;--accent:#0b5b67}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #027a93;outline-offset:5px}header{max-width:1440px;margin:auto;padding:22px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:block;width:84px;height:87px}.brand img{width:100%;height:100%;object-fit:contain}nav{display:flex;gap:36px;align-items:center}nav a{text-decoration:none;font-size:14px;padding:12px 0}nav a[aria-current]{border-bottom:1px solid var(--ink)}.nav-cta{padding:14px 22px;border:1px solid var(--line);border-radius:30px}main{overflow:hidden}.wrap{max-width:1440px;margin:auto;padding:0 6%}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:26px;height:1px;background:currentColor}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(50px,6.5vw,96px);letter-spacing:-.065em;line-height:1.03;font-weight:400;margin:28px 0}h1 em,h2 em{font-family:Georgia,serif;font-weight:400}h2{font-size:clamp(34px,4vw,58px);line-height:1.1;letter-spacing:-.045em;font-weight:400;margin-bottom:26px}p{font-size:16px;line-height:1.75;color:var(--muted);max-width:540px}small{font-size:11px;line-height:1.6;color:var(--muted)}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:5%;align-items:center;min-height:710px;padding-top:65px;padding-bottom:65px}.hero-copy{padding:15px 0}.hero-copy p{max-width:400px}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;text-decoration:none;align-items:center;gap:30px;background:var(--ink);color:white;padding:19px 25px;border-radius:32px;font-size:14px}.button:after{content:'↗';font-size:20px}.text-link{font-size:14px;text-decoration:none;border-bottom:1px solid;padding-bottom:5px}.hero-media{margin:0;position:relative}.photo-frame{aspect-ratio:4/4.7;overflow:hidden;border-radius:45% 45% 2px 2px;background:var(--blue)}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:53% center;transform:scale(1.06)}.hero-media figcaption{margin-top:12px;text-align:right;font-size:10px;color:var(--muted)}.image-label{position:absolute;bottom:48px;left:-28px;background:var(--paper);padding:19px 24px;border:1px solid var(--line);font-size:13px;line-height:1.7}.image-label strong{display:block;font-size:11px;letter-spacing:.12em}.section{padding:110px 0;border-top:1px solid var(--line)}.intro{display:grid;grid-template-columns:1fr 1.35fr;gap:10%}.intro h2{max-width:600px}.intro p{max-width:550px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:55px}.section-top h2{max-width:550px;margin-bottom:0}.care-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.care{padding:32px 20px 28px 0;border-bottom:1px solid var(--line)}.care+.care{padding-left:24px;border-left:1px solid var(--line)}.number{display:block;font-size:11px;letter-spacing:.1em;color:var(--muted);margin-bottom:50px}.care h3{font-size:22px;font-weight:400;letter-spacing:-.025em}.care p{font-size:14px}.note{margin-top:24px;font-size:12px}.location{background:#e7eef0}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.location img{width:100%;height:auto;display:block;border-radius:2px}.location figure{margin:0}.location figcaption{font-size:11px;margin-top:12px;color:var(--muted)}.contact-band{padding:100px 6%;max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.contact-band h2{margin:0;max-width:600px}footer{padding:40px 6%;border-top:1px solid var(--line);max-width:1440px;margin:auto;display:flex;justify-content:space-between;gap:30px;font-size:12px;line-height:1.8}footer p{font-size:12px;margin:0}.subhero{padding:95px 0 75px;max-width:900px}.subhero h1{font-size:clamp(48px,6vw,80px)}.about-body{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.portrait-word{font-family:Georgia,serif;font-size:110px;line-height:1;color:#c3d4db}.dentists{display:grid;grid-template-columns:1fr 1fr;gap:30px}.dentist{border-top:1px solid var(--line);padding-top:30px}.dentist h3{font-size:23px;font-weight:400;margin-bottom:10px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;padding-bottom:100px}.detail{padding:24px 0;border-top:1px solid var(--line)}.detail h2{font-size:11px;letter-spacing:.15em;text-transform:uppercase;margin-bottom:12px;font-weight:700}.detail p{font-size:17px;margin-bottom:8px}.form-box{padding:40px;background:white;border:1px solid var(--line)}.form-box h2{font-size:32px}.field{display:block;font-size:12px;margin:24px 0}.field input,.field textarea{display:block;border:0;border-bottom:1px solid #b7c6ce;width:100%;padding:13px 0;font:inherit;font-size:16px;background:transparent;color:var(--ink);border-radius:0}.field textarea{min-height:110px;resize:vertical}.form-box button{font:inherit;border:0}.form-box button:disabled{opacity:.5;cursor:not-allowed}.preview-note{font-size:12px;background:#eef4f4;padding:16px;color:var(--muted);margin:20px 0}.progress{position:fixed;top:0;left:0;height:3px;background:var(--accent);width:100%;transform-origin:left;transform:scaleX(0);z-index:10}.motion{will-change:transform}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:900px){nav{gap:24px}.hero{min-height:600px;gap:6%}.image-label{left:-15px;padding:15px}.care-grid{grid-template-columns:1fr 1fr}.care:nth-child(3){border-left:0;padding-left:0}.section{padding:80px 0}.intro{gap:6%}.contact-layout{gap:6%}.form-box{padding:28px}}@media(max-width:600px){header{padding:15px 6%}.brand{width:65px;height:67px}nav{gap:20px}nav a{font-size:12px}.nav-cta{display:none}.hero{display:block;padding-top:50px;padding-bottom:45px;min-height:0}h1{font-size:57px;margin:24px 0}.hero-copy p{font-size:15px;max-width:320px}.actions{gap:22px}.hero-media{margin-top:48px}.photo-frame{aspect-ratio:1.15;border-radius:42% 42% 2px 2px}.image-label{bottom:35px;left:-8px}.section{padding:65px 0}.intro,.location-grid,.about-body,.contact-layout{grid-template-columns:1fr;gap:32px}.section-top{display:block;margin-bottom:34px}.section-top p{margin-top:20px}.care{padding:23px 15px 20px 0}.care+.care{padding-left:18px}.care:nth-child(3){padding-left:0}.number{margin-bottom:32px}.care h3{font-size:21px}.care p{font-size:13px}.contact-band{padding:65px 6%;display:block}.contact-band .button{margin-top:28px}footer{display:block}footer p{margin-bottom:15px}.subhero{padding-top:60px;padding-bottom:50px}.subhero h1{font-size:55px}.dentists{grid-template-columns:1fr}.contact-layout{padding-bottom:60px}.form-box{padding:25px}.portrait-word{font-size:80px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion{transform:none!important}.progress{display:none}}
.clinic-figure{margin:0}.clinic-image{width:100%;height:auto}.contact-photo{margin-top:22px}
.location-grid figure,.clinic-figure{max-width:270px}.contact-photo{max-width:260px}.location-grid{grid-template-columns:.65fr 1fr}.photo-frame img{object-position:50% 45%}.section-top>div{flex:1 0 48%}.section-top>p{flex:1 1 45%}@media(max-width:900px){.section-top{display:block}.section-top>p{margin-top:24px;max-width:500px}}@media(max-width:600px){.location-grid{grid-template-columns:1fr}.location-grid figure,.clinic-figure{max-width:245px}.contact-photo{max-width:245px}}
@media(max-width:600px){.photo-frame img{object-position:50% 67%}}
.photo-frame img{object-position:50% 50%;transform:none}.image-label{bottom:48px}@media(max-width:600px){.photo-frame img{object-position:50% 50%}.image-label{bottom:35px}}
@media(max-width:600px){.photo-frame img{object-position:50% 25%}}

.dentist-photo{display:block;width:min(100%,300px);height:auto;margin-bottom:28px;border-radius:2px}@media(max-width:600px){.image-label{position:static;margin-top:12px;display:inline-block;padding:13px 16px}.dentist-photo{width:min(100%,280px)}}
@media(max-width:600px){.photo-frame img{object-position:50% 65%}}
.image-label{position:static;margin-top:12px;display:inline-block;padding:13px 16px}

/* Editorial smile crop: keep eyes and smile in view. */
.photo-frame img{object-position:50% 43%}
@media(max-width:600px){.photo-frame img{object-position:50% 35%}}

/* Smile caption lives within the lower photograph, away from the face. */
.photo-frame{position:relative}
.photo-frame img{display:block}
.image-label{position:absolute;inset:auto 0 0;display:flex;align-items:flex-end;min-height:34%;margin:0;padding:62px 28px 26px;border:0;background:linear-gradient(to bottom,rgba(22,46,79,0),rgba(16,35,60,.56) 46%,rgba(12,28,49,.96) 100%);color:#fff;font-size:14px;line-height:1.55;pointer-events:none}
.image-label-copy{opacity:1;transform:none;will-change:transform,opacity;text-shadow:0 1px 7px rgba(0,0,0,.28)}
.image-label strong{display:block;font-size:10px;letter-spacing:.16em;margin-bottom:7px;color:#fff}
.image-label span{display:block;color:#fff}
@media(max-width:600px){.image-label{min-height:34%;padding:38px 19px 18px;font-size:12px}.image-label strong{font-size:9px;margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){.image-label-copy{transform:none!important;opacity:1!important;will-change:auto}}

.photo-frame img{transform-origin:50% 32%;will-change:transform}
@media(prefers-reduced-motion:reduce){.photo-frame img{transform:none!important;will-change:auto}}

.image-label-copy{transform-origin:left bottom}
