.hero-visual[data-astro-cid-hwrymyu7]{cursor:pointer;width:100%;max-width:440px;margin:32px auto 0;transition:opacity .6s,transform .6s;position:relative}.hero-visual[data-astro-cid-hwrymyu7].tab-hidden{opacity:.15!important;transform:scale(.96)translateY(10px)!important}#smile-svg[data-astro-cid-hwrymyu7]{width:100%;height:auto;display:block;overflow:visible}.smile-base-stroke[data-astro-cid-hwrymyu7]{stroke-dasharray:600;stroke-dashoffset:600px;transition:stroke-width .3s;animation:1.8s cubic-bezier(.16,1,.3,1) .2s forwards drawSmile}@keyframes drawSmile{to{stroke-dashoffset:0}}.smile-shine-sweep[data-astro-cid-hwrymyu7]{stroke-dasharray:120 480;stroke-dashoffset:600px}.sparkle-fx[data-astro-cid-hwrymyu7]{transform-origin:50%;opacity:0;animation:3.5s ease-in-out infinite alternate sparklePop}.sparkle-fx[data-astro-cid-hwrymyu7].s1{animation-delay:1s}.sparkle-fx[data-astro-cid-hwrymyu7].s2{animation-delay:2.2s}.sparkle-fx[data-astro-cid-hwrymyu7].s3{animation-delay:1.6s}@keyframes sparklePop{0%{opacity:.2;transform:scale(.6)rotate(0)}50%{opacity:1;filter:drop-shadow(0 0 4px #fffc);transform:scale(1.3)rotate(25deg)}to{opacity:.3;transform:scale(.7)rotate(-15deg)}}.float-chips-wrap[data-astro-cid-hwrymyu7]{pointer-events:none;position:absolute;inset:0}.float-chip[data-astro-cid-hwrymyu7]{border:1px solid var(--line);color:var(--pine-deep);opacity:0;animation:chipIn .7s var(--ease) forwards, floatIdle 4.8s ease-in-out infinite;pointer-events:auto;transition:transform .3s var(--spring), box-shadow .3s var(--spring), border-color .3s;background:#fff;border-radius:100px;padding:8px 16px;font-size:.82rem;font-weight:600;position:absolute;box-shadow:0 12px 26px -12px #173f3833}.float-chip[data-astro-cid-hwrymyu7]:hover{border-color:var(--coral);box-shadow:0 16px 32px -10px #173f384d;transform:translateY(-4px)scale(1.05)!important}@keyframes chipIn{0%{opacity:0;transform:translateY(14px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes floatIdle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.float-chip[data-astro-cid-hwrymyu7].c1{animation-delay:1.6s,2.5s;top:12%;left:4%}.float-chip[data-astro-cid-hwrymyu7].c2{animation-delay:1.8s,2.8s;top:18%;right:2%}.float-chip[data-astro-cid-hwrymyu7].c3{animation-delay:2s,3.1s;bottom:18%;left:2%}.float-chip[data-astro-cid-hwrymyu7].c4{animation-delay:2.2s,3.4s;bottom:8%;right:6%}.float-chip[data-astro-cid-hwrymyu7] span[data-astro-cid-hwrymyu7].dot{background:var(--coral);border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}@media (width<=860px){.float-chips-wrap[data-astro-cid-hwrymyu7]{pointer-events:auto;flex-wrap:wrap;justify-content:center;gap:10px;width:100%;margin-top:24px;padding:10px 4px;display:flex;position:relative}.float-chip[data-astro-cid-hwrymyu7]{animation:chipIn .7s var(--ease) forwards;flex-shrink:0;position:relative;inset:auto!important}}@media (width<=480px){.hero-visual[data-astro-cid-hwrymyu7]{width:100%;max-width:320px;height:192px;margin:24px auto 0}#smile-svg[data-astro-cid-hwrymyu7]{width:100%;height:100%;position:absolute;inset:0;display:block!important}.float-chips-wrap[data-astro-cid-hwrymyu7]{pointer-events:none!important;width:100%!important;margin-top:0!important;padding:0!important;display:block!important;position:absolute!important;inset:0!important}.float-chip[data-astro-cid-hwrymyu7]{border:1px solid var(--line);color:var(--pine-deep);opacity:0;background:#fff;border-radius:100px;font-weight:600;box-shadow:0 8px 16px -8px #173f3833;animation:chipIn .7s var(--ease) forwards, floatIdle 4.8s ease-in-out infinite!important;pointer-events:auto!important;margin:0!important;padding:6px 12px!important;font-size:.78rem!important;display:inline-block!important;position:absolute!important;transform:none!important}.float-chip[data-astro-cid-hwrymyu7].c1{inset:4% auto auto -2%!important}.float-chip[data-astro-cid-hwrymyu7].c2{inset:6% -2% auto auto!important}.float-chip[data-astro-cid-hwrymyu7].c3{inset:auto auto 10% -2%!important}.float-chip[data-astro-cid-hwrymyu7].c4{inset:auto -2% 2% auto!important}}:root{--porcelain:#faf7f2;--porcelain-dim:#f1ece3;--pine:#173f38;--pine-deep:#0e2c27;--mint:#9fc3b6;--coral:#e76f4f;--ink:#221f1c;--line:#221f1c1f;--radius:22px;--ease:cubic-bezier(.22,.61,.36,1);--spring:cubic-bezier(.16,1.36,.36,1)}html,body{width:100%;max-width:100%;overflow-x:hidden}.dentist-template-body{background:var(--porcelain);color:var(--ink);box-sizing:border-box;width:100%;max-width:100%;margin:0;padding:0;font-family:Inter,sans-serif;line-height:1.5;overflow-x:hidden}.dentist-template-body *{box-sizing:border-box;margin:0;padding:0}.dentist-template-body html{scroll-behavior:smooth}.dentist-template-body img{max-width:100%;display:block}.dentist-template-body a{color:inherit;text-decoration:none}.dentist-template-body h1,.dentist-template-body h2,.dentist-template-body h3{letter-spacing:-.01em;color:var(--pine-deep);font-family:Fraunces,serif;font-weight:480}.dentist-template-body .eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--coral);font-family:IBM Plex Mono,monospace;font-size:.72rem;font-weight:500}.dentist-template-body .wrap{max-width:1180px;margin:0 auto;padding:0 32px}.dentist-template-body section{position:relative}.dentist-template-body ::selection{background:var(--coral);color:#fff}.dentist-template-body :focus-visible{outline:2px solid var(--coral);outline-offset:3px}.dentist-template-body svg{display:block}.dentist-template-body .reveal{opacity:0;transition:opacity .7s var(--spring), transform .7s var(--spring);transition-delay:var(--d,0s);transform:translateY(30px)scale(.98)}.dentist-template-body .reveal.in{opacity:1;transform:translateY(0)scale(1)}@media (prefers-reduced-motion:reduce){.dentist-template-body .reveal{opacity:1;transition:none;transform:none}.dentist-template-body html{scroll-behavior:auto}}.dentist-template-body header{z-index:100;transition:padding .4s var(--ease), background .4s var(--ease), box-shadow .4s var(--ease);padding:22px 0;position:fixed;top:0;left:0;right:0}.dentist-template-body header.scrolled{backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line);background:#faf7f2db;padding:12px 0}.dentist-template-body .navbar{justify-content:space-between;align-items:center;gap:24px;display:flex}.dentist-template-body .logo{color:var(--pine-deep);white-space:nowrap;align-items:center;gap:10px;font-family:Fraunces,serif;font-size:1.28rem;font-weight:600;display:flex}.dentist-template-body .logo svg{flex-shrink:0}.dentist-template-body nav ul{gap:34px;list-style:none;display:flex}.dentist-template-body nav a{color:var(--pine-deep);padding:4px 0;font-size:.93rem;font-weight:500;position:relative}.dentist-template-body nav a:after{content:"";background:var(--coral);width:0;height:1.5px;transition:width .3s var(--ease);position:absolute;bottom:-2px;left:0}.dentist-template-body nav a:hover:after{width:100%}.dentist-template-body .nav-links{align-items:center;gap:34px;display:flex}.dentist-template-body .call-btn{background:var(--pine-deep);color:#fff;transition:transform .35s var(--ease), background .35s var(--ease);white-space:nowrap;border-radius:100px;align-items:center;gap:9px;padding:11px 20px;font-size:.88rem;font-weight:600;display:flex}.dentist-template-body .call-btn:hover{background:var(--coral);transform:translateY(-2px)}.dentist-template-body .menu-toggle{cursor:pointer;background:0 0;border:none;padding:6px;display:none}.dentist-template-body .menu-toggle span{background:var(--pine-deep);width:22px;height:2px;margin:5px 0;transition:all .3s;display:block}.dentist-template-body .hero{background:radial-gradient(circle at 82% 12%, #9fc3b659, transparent 55%), var(--porcelain);padding:172px 0 80px;overflow:hidden}.dentist-template-body .hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;display:grid}.dentist-template-body .hero h1{font-size:clamp(2.3rem,4.6vw,4.2rem);line-height:1.06}.dentist-template-body .hero h1 .line{display:block;overflow:hidden}.dentist-template-body .hero h1 .line span{animation:riseUp .9s var(--ease) forwards;display:inline-block;transform:translateY(110%)}.dentist-template-body .hero h1 .line:first-child span{animation-delay:.15s}.dentist-template-body .hero h1 .line:nth-child(2) span{color:var(--coral);animation-delay:.32s}@keyframes riseUp{to{transform:translateY(0)}}.dentist-template-body .hero p.lede{color:#454138;opacity:0;max-width:460px;animation:fadeUp .8s var(--ease) .7s forwards;margin-top:22px;font-size:1.08rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.dentist-template-body .hero-ctas{opacity:0;animation:fadeUp .8s var(--ease) .9s forwards;flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.dentist-template-body .btn-primary{background:var(--coral);color:#fff;transition:transform .35s var(--ease), box-shadow .35s var(--ease);text-align:center;border-radius:100px;padding:15px 28px;font-size:.95rem;font-weight:600;box-shadow:0 8px 20px -8px #e76f4fb3}.dentist-template-body .btn-primary:hover{transform:translateY(-3px);box-shadow:0 14px 26px -8px #e76f4fcc}.dentist-template-body .btn-ghost{border:1.5px solid var(--pine-deep);color:var(--pine-deep);transition:background .35s var(--ease), color .35s var(--ease);text-align:center;border-radius:100px;padding:14px 26px;font-size:.95rem;font-weight:600;display:inline-block}.dentist-template-body .btn-ghost:hover{background:var(--pine-deep);color:#fff}.dentist-template-body .features{padding:90px 0}.dentist-template-body .features-grid{grid-template-columns:1fr 1fr;gap:28px;display:grid}.dentist-template-body .feature-card{border:1px solid var(--line);border-radius:var(--radius);transition:transform .4s var(--ease), box-shadow .4s var(--ease);background:#fff;padding:38px}.dentist-template-body .feature-card:hover{transform:translateY(-6px);box-shadow:0 22px 40px -20px #173f3840}.dentist-template-body .feature-card .num{color:var(--mint);font-family:IBM Plex Mono,monospace;font-size:.85rem}.dentist-template-body .feature-card h3{margin:14px 0 10px;font-size:1.4rem}.dentist-template-body .feature-card p{color:#5a564c;font-size:.96rem}.dentist-template-body .features-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:42px;display:flex}.dentist-template-body .features-head h2{max-width:520px;font-size:clamp(1.9rem,3vw,2.6rem)}.dentist-template-body .services{background:var(--pine-deep);color:#fff;padding:100px 0 130px;overflow:hidden}.dentist-template-body .services .eyebrow{color:var(--mint)}.dentist-template-body .services h2{color:#fff;max-width:560px;margin-top:14px;font-size:clamp(1.9rem,3vw,2.6rem)}.dentist-template-body .services p.sub{color:#ffffffad;max-width:520px;margin-top:16px;font-size:1rem}.dentist-template-body .tooth-arc{grid-template-columns:repeat(8,1fr);gap:18px;margin-top:74px;padding:10px 0 30px;display:grid}.dentist-template-body .tooth-card{--ty:0px;text-align:center;transform:translateY(calc(var(--ty) + 30px)) scale(.94);opacity:0;transition:transform .7s var(--spring), background .35s var(--ease), opacity .6s var(--ease);background:#ffffff0f;border:1px solid #ffffff24;border-radius:20px 20px 30px 30px;padding:26px 14px}.dentist-template-body .tooth-card.in{transform:translateY(var(--ty)) scale(1);opacity:1}.dentist-template-body .tooth-card:hover{background:#ffffff21}.dentist-template-body .tooth-card:hover svg{color:var(--coral)}.dentist-template-body .tooth-card svg{color:var(--mint);transition:color .3s var(--ease);margin:0 auto}.dentist-template-body .tooth-card .t-num{color:var(--coral);margin-top:14px;font-family:IBM Plex Mono,monospace;font-size:.72rem}.dentist-template-body .tooth-card .t-name{color:#fff;margin-top:10px;font-family:Fraunces,serif;font-size:1.02rem}.dentist-template-body .testimonial{text-align:center;padding:100px 0}.dentist-template-body .testimonial blockquote{max-width:820px;color:var(--pine-deep);margin:0 auto;font-family:Fraunces,serif;font-size:clamp(1.4rem,2.6vw,2.15rem);font-style:italic;font-weight:340;line-height:1.4}.dentist-template-body .testimonial .quote-mark{color:var(--mint);font-family:Fraunces,serif;font-size:4rem;line-height:0}.dentist-template-body .testimonial cite{color:var(--coral);margin-top:28px;font-size:.95rem;font-style:normal;font-weight:600;display:block}.dentist-template-body .team{padding:60px 0 110px}.dentist-template-body .team-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:56px;display:grid}.dentist-template-body .team-visual{aspect-ratio:4/5;background:linear-gradient(155deg, var(--mint), var(--pine) 78%);border-radius:32px;justify-content:center;align-items:flex-end;display:flex;position:relative;overflow:hidden}.dentist-template-body #doctor-photo{object-fit:cover;object-position:top center;width:100%;height:100%;position:absolute;inset:0}.dentist-template-body .team-visual .photo-fallback{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.dentist-template-body .team-visual .photo-fallback svg{opacity:.9;width:46%}.dentist-template-body .team-visual .caption{z-index:2;color:#fff;background:linear-gradient(#0000,#0e2c27e0);width:100%;padding:46px 22px 18px;position:relative}.dentist-template-body .team-visual .caption strong{font-family:Fraunces,serif;font-size:1.05rem;display:block}.dentist-template-body .team-visual .caption span{color:#ffffffbf;font-family:IBM Plex Mono,monospace;font-size:.78rem}.dentist-template-body .team-copy h2{font-size:clamp(1.9rem,3vw,2.5rem)}.dentist-template-body .team-copy p{color:#5a564c;max-width:480px;margin-top:18px;font-size:1.02rem}.dentist-template-body .badge-row{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.dentist-template-body .badge{border:1px solid var(--line);color:var(--pine-deep);background:#fff;border-radius:14px;align-items:center;gap:10px;padding:12px 18px;font-size:.85rem;font-weight:600;display:flex}.dentist-template-body .badge svg{color:var(--coral);flex-shrink:0}.dentist-template-body .hours{background:var(--porcelain-dim);padding:100px 0}.dentist-template-body .hours-grid{grid-template-columns:1.1fr .9fr;gap:56px;display:grid}.dentist-template-body .hours-list{border-top:1px solid var(--line)}.dentist-template-body .hours-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 4px;font-family:IBM Plex Mono,monospace;font-size:.92rem;display:flex}.dentist-template-body .hours-row .day{color:var(--pine-deep);font-family:Inter,sans-serif;font-weight:600}.dentist-template-body .hours-row .book-mini{color:var(--coral);border-bottom:1px solid #0000;font-family:Inter,sans-serif;font-size:.78rem;font-weight:600;transition:border-color .3s}.dentist-template-body .hours-row .book-mini:hover{border-color:var(--coral)}.dentist-template-body .hours-row.closed .book-mini{color:#a39d90;pointer-events:none}.dentist-template-body .contact-card{background:var(--pine-deep);color:#fff;border-radius:var(--radius);padding:38px}.dentist-template-body .contact-card h3{color:#fff;margin-bottom:22px;font-size:1.3rem}.dentist-template-body .contact-line{color:#ffffffd9;align-items:flex-start;gap:14px;margin-bottom:20px;font-size:.92rem;display:flex}.dentist-template-body .contact-line svg{color:var(--mint);flex-shrink:0;margin-top:2px}.dentist-template-body .contact-line strong{color:#fff;margin-bottom:2px;font-size:.95rem;display:block}.dentist-template-body .contact-card .btn-primary{text-align:center;width:100%;margin-top:8px}.dentist-template-body .location{padding:0 0 100px}.dentist-template-body .map-frame{border-radius:var(--radius);border:1px solid var(--line);height:420px;position:relative;overflow:hidden;box-shadow:0 30px 60px -34px #173f384d}.dentist-template-body .map-frame iframe{filter:grayscale(.15)contrast(1.05);border:0;width:100%;height:100%}.dentist-template-body .map-tag{z-index:2;background:#fff;border-radius:14px;align-items:center;gap:10px;padding:12px 18px;font-size:.85rem;font-weight:600;display:flex;position:absolute;top:20px;left:20px;box-shadow:0 12px 26px -12px #173f3859}.dentist-template-body .map-tag span.dot{background:var(--coral);border-radius:50%;flex-shrink:0;width:8px;height:8px}.dentist-template-body .map-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.dentist-template-body .map-head h2{font-size:clamp(1.7rem,2.6vw,2.2rem)}.dentist-template-body footer{background:var(--pine-deep);color:#ffffffb3;padding:60px 0 30px}.dentist-template-body .foot-grid{border-bottom:1px solid #ffffff24;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:40px;display:grid}.dentist-template-body .foot-grid h4{color:#fff;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px;font-family:Inter,sans-serif;font-size:.85rem}.dentist-template-body .foot-grid ul{list-style:none}.dentist-template-body .foot-grid li{margin-bottom:10px;font-size:.92rem}.dentist-template-body .foot-grid a:hover{color:#fff}.dentist-template-body .foot-bottom{flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:26px;font-size:.82rem;display:flex}.dentist-template-body .foot-logo{color:#fff;margin-bottom:10px;font-family:Fraunces,serif;font-size:1.2rem}@media (width<=1024px){.dentist-template-body .wrap{padding:0 24px}.dentist-template-body .hero-grid{grid-template-columns:1fr 1fr;gap:32px}.dentist-template-body .tooth-arc{grid-template-columns:repeat(4,1fr)}}@media (width<=860px){.dentist-template-body .menu-toggle{z-index:110;display:block;position:relative}.dentist-template-body nav{backdrop-filter:blur(16px);width:280px;height:100vh;transition:transform .4s var(--ease);z-index:105;background:#0e2c27f5;padding:100px 32px;display:block;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-10px 0 30px #00000026}.dentist-template-body nav.active{transform:translate(0)}.dentist-template-body nav ul{flex-direction:column;gap:28px}.dentist-template-body nav a{color:#fff;font-size:1.15rem}.dentist-template-body .menu-toggle.active span:first-child{background:#fff;transform:translateY(7px)rotate(45deg)}.dentist-template-body .menu-toggle.active span:nth-child(2){opacity:0}.dentist-template-body .menu-toggle.active span:nth-child(3){background:#fff;transform:translateY(-7px)rotate(-45deg)}.dentist-template-body .hero-grid,.dentist-template-body .features-grid,.dentist-template-body .team-grid,.dentist-template-body .hours-grid,.dentist-template-body .foot-grid{grid-template-columns:1fr}.dentist-template-body .hero{text-align:center;padding-top:130px}.dentist-template-body .hero p.lede{text-align:center;margin:22px auto 0}.dentist-template-body .hero-ctas{justify-content:center}.dentist-template-body .team-visual{order:-1}.dentist-template-body .tooth-arc{grid-template-columns:repeat(2,1fr)}.dentist-template-body .map-head{text-align:left;flex-direction:column;align-items:flex-start;gap:16px}.dentist-template-body .map-head h2{font-size:1.8rem}.dentist-template-body .map-head .btn-ghost{align-self:flex-start}}@media (width<=540px){.dentist-template-body .logo-text{display:none}}@media (width<=480px){.dentist-template-body .wrap{padding:0 16px}.dentist-template-body .hero{padding-top:110px}.dentist-template-body .btn-primary,.dentist-template-body .btn-ghost{width:100%}.dentist-template-body .hero-ctas{flex-direction:column;width:100%}.dentist-template-body .feature-card,.dentist-template-body .contact-card{padding:24px 20px}.dentist-template-body .tooth-arc{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:40px}.dentist-template-body .tooth-card{padding:18px 10px}.dentist-template-body .tooth-card .t-name{font-size:.9rem}.dentist-template-body .badge-row{flex-direction:column}.dentist-template-body .map-frame{height:320px}}
