:root{--ink:#123c49;--muted:#567077;--teal:#007f80;--mint:#e6f1ea;--paper:#fcfcf8;--line:#d7e0da}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.wrap{max-width:1240px;width:calc(100% - 96px);margin:auto}.announcement{padding:10px 24px;background:var(--ink);color:#fff;text-align:center;font-size:12px;letter-spacing:.03em}.announcement a{margin-left:20px;text-decoration:underline;text-underline-offset:4px}.header{display:flex;align-items:center;justify-content:space-between;padding:18px 0;gap:28px}.brand img{width:150px;height:77px;object-fit:contain}.header nav{display:flex;gap:28px;font-size:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--teal);color:white;padding:17px 24px;border-radius:5px;font-size:14px;font-weight:bold;transition:background .2s,transform .2s}.button:hover{background:#005c60;transform:translateY(-2px)}.button.small{padding:13px 17px;font-size:12px;gap:15px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:65px;padding:42px 0 65px;align-items:center}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:bold;display:flex;align-items:center;gap:9px;margin:0 0 24px}.dot{width:7px;height:7px;background:var(--teal);border-radius:50%}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:normal;letter-spacing:-.055em;line-height:1.04;margin:0}h1{font-size:clamp(60px,6.2vw,87px)}em{font-weight:normal;color:var(--teal)}h1 em,h2 em{font-style:italic}p{color:var(--muted)}.intro{max-width:440px;font-size:16px;line-height:1.75;margin:25px 0 28px}.actions{display:flex;align-items:center;gap:27px}.text-link{font-size:13px;font-weight:bold;display:inline-block;padding-bottom:5px;border-bottom:1px solid var(--ink)}.hero-note{display:flex;gap:14px;align-items:center;margin-top:35px}.hero-note p{font-size:11px;line-height:1.7;margin:0}.little-cross{font-size:25px;color:#9060a5}.hero-art{background:var(--mint);border-radius:130px 8px 8px 8px;padding:32px 32px 18px;position:relative}.art-label{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;margin:10px 0 20px 25px}.art-label span{color:#658274}.portrait{border-radius:140px 140px 8px 8px;overflow:hidden;background:#dadbd7}.portrait img{width:100%;aspect-ratio:1/1.12;object-fit:cover;object-position:center top}.doctor-tag{position:absolute;bottom:65px;left:-24px;display:flex;align-items:center;gap:15px;background:#fff;border:1px solid #e6e9e4;box-shadow:0 12px 30px #153e4112;padding:17px 25px;border-radius:6px}.doctor-tag strong{display:block;font-size:16px}.doctor-tag span:not(.tag-icon){display:block;font-size:10px;color:var(--muted);margin-top:3px}.tag-icon{color:var(--teal);font-size:25px}.art-footer{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.13em;margin-top:18px}.care-strip{background:var(--mint);padding:22px 0}.care-strip .wrap{display:flex;justify-content:space-around;gap:15px;font-size:13px}.care-strip i{color:var(--teal);font-style:normal}.section{padding-top:95px;padding-bottom:95px}h2{font-size:clamp(38px,4vw,53px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-heading>p{max-width:330px;font-size:14px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:30px;background:var(--mint);border-radius:8px}.card.lavender{background:#efeaf3}.card.pale{background:#f0f0e7}.card-number{font-size:9px;letter-spacing:.12em}.icon{font-size:40px;margin:28px 0 10px;color:var(--teal)}h3{font-size:20px;line-height:1.3;letter-spacing:-.025em}.card p{font-size:14px;margin-bottom:30px}.process{background:var(--ink);padding:75px 0;color:white}.process em{color:#b7dccc}.process p{color:#bed0d1;font-size:14px}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.process .eyebrow{color:#bed0d1}.light{background:#c4e2d4;color:var(--ink);margin-top:20px}.light:hover{background:#a4cebb}.process ol{list-style:none;padding:0;margin:0}.process li{display:flex;gap:24px;padding:22px 0;border-bottom:1px solid #43616b}.process li:first-child{padding-top:0}.process li>span{font-family:Georgia,serif;color:#accbbd;font-size:27px}.process li h3{margin:3px 0 9px;font-size:19px}.process li p{margin:0}.doctor-section{display:grid;grid-template-columns:1fr 1fr;gap:80px}.name-label{font-size:10px;letter-spacing:.12em;color:var(--teal);font-weight:bold}.large-copy{font-size:23px!important;color:var(--ink);line-height:1.5}.doctor-section p{font-size:14px}.contact{background:var(--mint);padding:60px;border-radius:8px;display:grid;grid-template-columns:1.2fr 1fr;gap:65px}.contact p{font-size:14px}.phone{font-family:Georgia,serif;font-size:31px;border-bottom:1px solid #819d94;display:inline-block;margin-top:15px}.contact-details{border-left:1px solid #c4d7cb;padding-left:45px}.contact-details>div+div{margin-top:26px}.contact-details span{display:block;font-size:9px;letter-spacing:.13em;color:var(--teal);font-weight:bold;margin-bottom:7px}.contact-details a,.contact-details p{font-size:14px;margin:0}.faq{max-width:900px}.faq h2{margin-bottom:35px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-size:16px;font-weight:bold;gap:15px}summary::-webkit-details-marker{display:none}.faq details p{font-size:14px;max-width:650px}.faq details[open] summary span{transform:rotate(45deg)}footer{border-top:1px solid var(--line);padding-top:40px;display:flex;flex-wrap:wrap;justify-content:space-between}footer img{object-fit:contain}footer p{font-size:12px;margin-top:8px}footer>div:nth-child(2){display:flex;align-items:center;gap:30px;font-size:13px}.footer-bottom{width:100%;display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:30px;padding:22px 0;font-size:10px;color:var(--muted)}:focus-visible{outline:3px solid #935bba;outline-offset:5px}.skip{position:absolute;top:-100px;left:15px;background:white;padding:15px;z-index:10}.skip:focus{top:15px}@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header-call{display:none}.hero{gap:35px}.actions{gap:15px;flex-wrap:wrap}.hero-art{padding:24px}.doctor-tag{padding:14px}.contact{padding:36px;gap:30px}.art-label{font-size:7px}.card{padding:23px}}@media(max-width:700px){.announcement{font-size:10px}.announcement a{display:block;margin:2px 0}.header{flex-wrap:wrap;padding:12px 0;gap:0}.brand img{width:125px;height:65px}.menu-toggle{display:flex;gap:15px;border:1px solid var(--line);padding:10px 14px;background:transparent;border-radius:4px;color:var(--ink)}.header nav{display:none;width:100%;flex-direction:column;gap:0;padding:15px 0}.header nav.open{display:flex}.header nav a{padding:12px 0;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr;padding-top:30px;gap:40px}.hero h1{font-size:64px}.intro{max-width:none}.hero-art{max-width:460px;margin:auto;width:calc(100% - 15px)}.hero-note{margin-top:25px}.care-strip .wrap{flex-direction:column;text-align:center;gap:7px;font-size:12px}.care-strip i{display:none}.section{padding-top:60px;padding-bottom:60px}.section-heading{display:block}.section-heading>p{margin-top:25px;max-width:none}.cards,.process-grid,.doctor-section,.contact{grid-template-columns:1fr}.cards{gap:15px}.card p{max-width:420px}.process{padding:55px 0}.process-grid,.doctor-section{gap:35px}.contact{padding:30px}.contact-details{padding:25px 0 0;border-left:0;border-top:1px solid #c4d7cb}.phone{font-size:27px}.contact-details a{overflow-wrap:anywhere}footer>div:nth-child(2){flex-wrap:wrap;gap:18px;margin-top:20px}.footer-bottom{gap:20px}.art-label{font-size:8px}.doctor-tag{left:-15px}.hero-art .portrait img{aspect-ratio:1/1.05}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.portrait img{height:auto}
.payment-section{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:0 0 75px}.payment-section p:not(.eyebrow){max-width:540px;font-size:14px}.payment-section .button{flex-shrink:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:700px){.payment-section{flex-direction:column;align-items:flex-start;padding-bottom:50px;gap:10px}}
.visit-section{display:grid;grid-template-columns:1fr 1.15fr;gap:55px;align-items:center;padding-bottom:85px}.visit-card{border:1px solid var(--line);border-radius:8px;padding:34px;background:#fff}.visit-card h3{font-size:27px;margin:12px 0}.visit-price{display:flex;align-items:center;gap:20px}.visit-price strong{font-family:Georgia,serif;font-size:44px;color:var(--ink);font-weight:normal}.visit-price span{border-left:1px solid var(--line);padding-left:20px}.visit-card>p{font-size:14px}.visit-card .actions{flex-wrap:wrap;gap:18px}.visit-card .visit-note{font-size:12px;margin:20px 0 0}.header nav{gap:18px}@media(max-width:1100px){.header-call{display:none}}@media(max-width:700px){.visit-section{grid-template-columns:1fr;gap:25px;padding-bottom:55px}.visit-card{padding:25px}}

/* Warm, people-first refresh */
:root{--paper:#fffaf4;--mint:#e9f1e6;--ink:#243f40;--muted:#5c6e69;--line:#e5ded3}
.announcement{background:#497664}.button{border-radius:30px;background:#347965}.button:hover{background:#245d4c}.hero{grid-template-columns:1fr 1.16fr;gap:48px;padding-bottom:70px}.hero h1{font-size:clamp(60px,6vw,80px)}.family-hero{position:relative;padding-bottom:28px}.family-hero>img{width:100%;height:530px;object-fit:cover;border-radius:120px 28px 28px 28px}.family-caption{position:absolute;left:-18px;bottom:66px;background:#fff8e9;padding:21px 27px;border-radius:20px;box-shadow:0 12px 35px #493b2418}.family-caption span{display:block;font-size:9px;letter-spacing:.12em;color:#55775b}.family-caption strong{font-family:Georgia,serif;font-size:27px;font-weight:normal}.family-hero small,.smile-photo small{display:block;text-align:right;font-size:10px;color:#6b736d;margin-top:8px}.care-strip{background:#fae9d4}.card{border-radius:24px}.card.lavender{background:#f5e4df}.card.pale{background:#faedcf}.process{background:#416757}.smile-story{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:70px;padding-top:90px}.smile-photo img{width:100%;height:370px;object-fit:cover;border-radius:28px 100px 28px 28px}.smile-story p:not(.eyebrow){max-width:440px;margin:25px 0}.doctor-section{align-items:center;gap:48px}.doctor-intro{display:flex;gap:24px;align-items:center}.doctor-intro>img{width:145px;height:180px;object-fit:cover;border-radius:75px 75px 18px 18px}.doctor-intro h2{font-size:37px}.doctor-intro .eyebrow{margin-bottom:15px}.reviews-section{padding:75px 0;background:#f8eadd;margin-bottom:85px}.reviews-section .section-heading>div:last-child{max-width:345px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review-card{margin:0;padding:28px;background:#fffcf7;border-radius:22px;display:flex;flex-direction:column}.quote-mark{font:60px/.8 Georgia,serif;color:#b97555}.review-card blockquote{margin:18px 0 28px;font:23px/1.45 Georgia,serif;flex:1}.review-card figcaption strong{display:block;font-size:14px}.review-card figcaption span{font-size:11px;color:var(--muted)}.review-source{font-size:11px;margin:24px 0 0}.review-source a{text-decoration:underline;text-underline-offset:3px}.contact{border-radius:28px}.visit-card{border-radius:24px;background:#fffdf9}.header nav{gap:15px;font-size:13px}.header-call{display:none}
@media(max-width:1000px){.family-hero>img{height:460px}.hero{gap:30px}.smile-story{gap:35px}.doctor-intro{align-items:flex-start;flex-direction:column}.review-card{padding:22px}}
@media(max-width:700px){.hero,.smile-story{grid-template-columns:1fr}.family-hero>img{height:380px;border-radius:75px 22px 22px 22px}.family-caption{left:-8px;bottom:48px;padding:16px 20px}.family-caption strong{font-size:24px}.smile-story{padding-top:55px;gap:25px}.smile-photo img{height:300px}.doctor-intro{flex-direction:row;align-items:center;gap:18px}.doctor-intro>img{width:100px;height:140px}.doctor-intro h2{font-size:30px}.review-grid{grid-template-columns:1fr}.reviews-section{padding:55px 0;margin-bottom:55px}.review-card blockquote{font-size:22px}.hero h1{font-size:62px}}
/* Phone usability: comfortable tap areas and resilient narrow layouts. */
a,button,summary{touch-action:manipulation}.button,.menu-toggle{min-height:44px}.text-link{min-height:44px;display:inline-flex;align-items:center}.doctor-intro>img{flex-shrink:0}.hero>*,.doctor-section>*,.contact>*,.visit-section>*{min-width:0}
@media(max-width:850px){.header{flex-wrap:wrap}.menu-toggle{display:flex;gap:15px;border:1px solid var(--line);padding:10px 14px;background:transparent;border-radius:8px;color:var(--ink)}.header nav{display:none;width:100%;flex-direction:column;gap:0;padding:10px 0}.header nav.open{display:flex}.header nav a{min-height:44px;padding:12px 0;border-bottom:1px solid var(--line)}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.hero h1{font-size:clamp(49px,15vw,62px)}.hero .intro{font-size:16px}.card p,.doctor-section p,.contact p,.visit-card>p,.faq details p,.process p{font-size:16px}.announcement{font-size:12px}.announcement a{display:inline-flex;align-items:center;justify-content:center;min-height:44px}.family-hero>img{height:auto;aspect-ratio:1/1.05}.family-caption{max-width:calc(100% - 8px)}.family-caption strong{font-size:clamp(20px,6vw,24px)}.doctor-intro h2{font-size:clamp(25px,7.7vw,30px)}.phone{font-size:clamp(21px,6.5vw,27px);min-height:44px}.contact{padding:24px}.visit-card{padding:22px}.visit-card .actions{align-items:stretch;flex-direction:column}.visit-card .actions a{justify-content:center;text-align:center}.review-source{font-size:13px}.review-source a{display:inline-flex;align-items:center;min-height:44px}footer>div:nth-child(2) a{display:inline-flex;align-items:center;min-height:44px}.faq summary{min-height:44px;align-items:center}.contact-details a{display:inline-block;min-height:44px}.smile-photo img{height:auto;aspect-ratio:1.15/1}}
@media(hover:none){.button:hover{transform:none}}
