:root{--teal:#1f6f82;--teal-d:#155565;--navy:#12294a;--coral:#e8765a;--ivory:#fbf8f3;--mist:#e6f1f2;--ink:#1c2a38;--mute:#5a6978;--display:'Fraunces',Georgia,serif;--body:'DM Sans',system-ui,sans-serif}
html{scroll-behavior:smooth;scroll-padding-top:150px}
body{font-family:var(--body);font-size:1.06rem;line-height:1.65;color:var(--ink);background:var(--ivory);overflow-x:clip}
h1,h2,h3{font-family:var(--display);color:var(--navy);line-height:1.08}
h1{font-weight:800;font-size:clamp(2.4rem,5.4vw,4.3rem);margin-bottom:1.2rem}
h2{font-weight:700;font-size:clamp(1.9rem,4vw,2.9rem);margin-bottom:1rem}
h3{font-weight:700;font-size:1.3rem}
a{color:var(--teal-d)}
:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.py-6{padding:5.5rem 0}
.eyebrow{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;color:var(--coral);margin-bottom:.8rem}
.btn{border-radius:50rem;font-weight:700;padding:.65rem 1.5rem}
.btn-sm{padding:.4rem 1rem}
.btn-teal{background:var(--teal);color:#fff;border:2px solid var(--teal)}
.btn-teal:hover{background:var(--teal-d);border-color:var(--teal-d);color:#fff}
.btn-outline-navy{border:2px solid var(--navy);color:var(--navy);background:transparent}
.btn-outline-navy:hover{background:var(--navy);color:#fff}
.site-head{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e3e8ec}
.navbar{padding:.5rem 0}
.brand-logo{height:56px;width:auto}
.navbar-nav .nav-link{color:var(--navy);font-weight:500;padding:.5rem .9rem}
.navbar-nav .nav-link:hover{color:var(--coral)}
@media(min-width:992px){.brand-logo{height:64px}.navbar .container{gap:.2rem}}
.hero{background:var(--mist);padding:4rem 0 7rem;position:relative}
.hero .lead{font-size:1.2rem;color:var(--ink);max-width:36rem;margin-bottom:1.6rem}
.hero-facts li{padding:.15rem 0;color:var(--navy);font-weight:500}
.hero-facts i{color:var(--teal);margin-right:.4rem}
.smile{position:absolute;left:0;bottom:-1px;width:100%;height:70px;fill:var(--ivory)}
.arch-wrap{margin:0 auto;max-width:400px;position:relative}
.arch{border-radius:999px 999px 18px 18px;overflow:hidden;background:#fff;box-shadow:12px 12px 0 var(--teal)}
.arch img{display:block;width:100%;height:auto}
.arch-wrap .arch{aspect-ratio:4/5;background:#fff}
.arch-wrap img{mix-blend-mode:multiply;object-fit:cover}
.arch-wrap figcaption{position:absolute;left:-1rem;bottom:1.2rem;background:var(--navy);color:#fff;padding:.7rem 1.1rem;border-radius:14px;box-shadow:0 8px 20px rgba(0,0,0,.2);display:flex;flex-direction:column;line-height:1.3;max-width:15rem}
.arch-wrap figcaption span{font-size:.85rem;opacity:.9}
.arch-wide{border-radius:999px 999px 18px 18px;box-shadow:-12px 12px 0 var(--coral)}
.arch-wide img{aspect-ratio:1/1;object-fit:cover;object-position:45% 50%}
.team-list li{font-family:var(--display);font-size:1.25rem;color:var(--navy);padding:.2rem 0}
.team-list i{color:var(--coral);margin-right:.5rem}
.band{background:var(--mist);position:relative}
.svc{background:#fff;border-radius:18px;padding:1.6rem;height:100%;border-top:5px solid var(--teal);box-shadow:0 6px 18px rgba(18,41,74,.07)}
.svc>i{font-size:1.6rem;color:var(--coral)}
.svc h3{margin:.5rem 0 .8rem}
.svc ul{padding-left:1.1rem;margin:0}
.svc li{margin:.3rem 0}
.imaging{background:#fff;border-radius:18px;padding:1.2rem;margin-inline:0}
.imaging img{width:100%;height:auto;border-radius:12px;display:block;max-height:260px;object-fit:cover}
.botox-card{background:var(--navy);color:#fff;border-radius:28px;padding:3rem;display:flex;flex-wrap:wrap;gap:2rem;align-items:center;justify-content:space-between}
.botox-card>div{flex:1 1 28rem}
.botox-card h2{color:#fff}
.botox-card .btn-teal{background:var(--coral);border-color:var(--coral);color:var(--navy)}
.tick li{position:relative;padding-left:2rem;margin-bottom:.8rem}
.tick li::before{content:"\F26A";font-family:bootstrap-icons;position:absolute;left:0;color:var(--teal)}
.note{background:#fff;border-radius:18px;padding:2rem;border-left:6px solid var(--coral)}
.note h3 i{color:var(--coral)}
.hours{width:100%;margin-bottom:1.5rem;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px rgba(18,41,74,.07)}
.hours th,.hours td{padding:.65rem 1.1rem;border-bottom:1px solid #edf0f2}
.hours th{color:var(--navy)}
.hours td{text-align:right}
.hours .off{color:var(--mute)}
.contact i{color:var(--coral);margin-right:.5rem}
.contact p{margin-bottom:.5rem}
.map{border-radius:18px;overflow:hidden;height:100%;min-height:380px;box-shadow:12px 12px 0 var(--teal)}
.map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}
.site-foot{background:var(--navy);color:#dce6ee;padding:3rem 0 1.5rem}
.site-foot a{color:#fff}
.chip{display:inline-block;background:#fff;border-radius:14px;padding:.6rem 1rem}
.chip img{height:48px;width:auto;display:block}
.social a{font-size:1.5rem;margin-right:1rem}
.powered{text-align:center;margin:2rem 0 0;font-size:.9rem;opacity:.8}
@media(max-width:991px){.hero{padding-top:2.5rem}.py-6{padding:4rem 0}.botox-card{padding:2rem}.arch-wrap figcaption{left:.5rem}.arch,.arch-wide,.map{box-shadow:8px 8px 0 var(--teal)}.arch-wide{box-shadow:8px 8px 0 var(--coral)}}
.navbar-brand{min-width:0;flex:0 1 auto}
.brand-logo{max-width:100%}
.navbar-toggler{flex:none;margin-left:.5rem}
