/* Open Sans is distributed under SIL OFL 1.1; see assets/open-sans-OFL.txt. */
@font-face{font-family:'Open Sans';font-style:normal;font-weight:300 600;font-display:swap;src:url('assets/open-sans-latin.woff2') format('woff2')}
:root{--ink:#202b25;--dark:#111713;--paper:#fff;--stone:#eeebe2;--gold:#d8be79;--copper:var(--gold);--copper-ink:#88713b;--muted:#61695f;--line:#deded4;--sans:'Open Sans',Arial,sans-serif;--serif:'Times New Roman',Times,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px;scrollbar-gutter:stable}body{margin:0;background:var(--paper);color:var(--ink);font:300 1.0625rem/1.75 var(--sans)}body.nav-is-open,body.gallery-is-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}svg,img{display:block;max-width:100%}button:disabled{cursor:default;opacity:.45}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}::selection{color:var(--dark);background:var(--gold)}.wrap{width:min(1280px,84%);margin-inline:auto}.section-space{padding-block:112px}.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}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:var(--gold);color:var(--dark);padding:10px 20px}.skip-link:focus{top:15px}
.eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:2.5px;font-weight:400;text-transform:uppercase;color:var(--muted);margin:0 0 22px}.eyebrow.light{color:#f2eee3}h1,h2,h3,p,figure{margin-top:0}h2{font-family:var(--serif);font-size:clamp(2.7rem,5.3vw,4.9rem);font-weight:400;line-height:1.03;letter-spacing:-1.5px;margin-bottom:28px}h2 strong,h3 strong{font-weight:700}h2 em{font-style:normal;font-weight:400;color:inherit}.gold-rule{width:140px;height:2px;background:var(--gold);transform-origin:left}.button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:15px 28px;border:1px solid transparent;font:500 .8rem/1.5 var(--sans);letter-spacing:2.2px;text-transform:uppercase;transition:background .3s,color .3s,border-color .3s}.copper{background:var(--gold);color:#111}.copper:hover{background:#e7d39f}.text-link{display:inline-block;border-bottom:1px solid var(--gold);padding:8px 0;font:400 .8rem/1.7 var(--sans);letter-spacing:1.5px;text-transform:uppercase;transition:color .25s,border-color .25s}.text-link:hover{color:#a18746;border-color:currentColor}
/* Transparent navigation becomes a quiet dark bar on scroll. */
.header-shell{position:fixed;inset:0 0 auto;z-index:50;color:#fff;background:linear-gradient(#0b171546,transparent);transition:background .35s,box-shadow .35s}.header-shell.is-scrolled{background:#0d1512f5;box-shadow:0 1px 0 #ffffff0c}.header.wrap{width:94%;max-width:1760px;min-height:101px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-symbol{width:43px;height:46px;mix-blend-mode:screen;background:transparent}.brand>span{font:300 1.13rem/1.2 var(--sans);letter-spacing:3px}.brand small{display:block;font-size:.63rem;letter-spacing:3.8px;margin-top:6px}.header nav{display:flex;align-items:center;gap:19px;margin-left:auto;font-size:.94rem;line-height:1.5}.header nav a{white-space:nowrap;transition:color .25s}.header nav a:hover{color:var(--gold)}.header nav .nav-book{display:none}.header-actions{display:flex;align-items:center;gap:23px;position:relative;z-index:60;flex-shrink:0}.header-book{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:1px solid #ffffffc4;font-size:.75rem;letter-spacing:2px;text-transform:uppercase;transition:background .25s,color .25s}.header-book:hover{background:var(--gold);border-color:var(--gold);color:#111}.language-switch{display:flex;gap:10px;align-items:center}.language-switch button{border:0;border-bottom:1px solid transparent;background:transparent;color:#fff9;font-size:.68rem;line-height:1.6;padding:8px 1px;min-height:36px;font-weight:400}.language-switch button[aria-pressed=true]{color:var(--gold);border-color:var(--gold)}.menu-toggle{display:grid;place-items:center;min-width:42px;min-height:44px;padding:8px 5px;border:0;background:transparent;color:inherit}.menu-icon{display:flex;flex-direction:column;gap:5px;width:25px}.menu-icon i{display:block;width:100%;height:1.5px;background:currentColor;transition:transform .3s,opacity .3s}.menu-toggle[aria-expanded=true] i:first-child{transform:translateY(6.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] i:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-6.5px) rotate(-45deg)}.nav-is-open .header-shell:before{content:'';position:fixed;inset:0;background:#0008;backdrop-filter:blur(4px);z-index:54}#main-nav.is-open{display:flex;position:fixed;inset:0 0 0 auto;width:min(540px,100%);height:100dvh;background:var(--dark);z-index:55;padding:125px 65px 50px;align-items:stretch;justify-content:flex-start;flex-direction:column;gap:0;overflow-y:auto;box-shadow:-15px 0 80px #0003}#main-nav.is-open a{font:400 2.1rem/1.3 var(--serif);padding:15px 0;border-bottom:1px solid #ffffff1f;white-space:normal}#main-nav.is-open .nav-book{display:block;font:400 .8rem/1.7 var(--sans);color:var(--gold);letter-spacing:1.8px;text-transform:uppercase;margin-top:20px}.header .brand{position:relative;z-index:56}
/* Full-screen photo sequence, entirely from Dental Company's supplied imagery. */
.hero{height:100svh;min-height:790px;max-height:1250px;position:relative;isolation:isolate;color:#fff;overflow:hidden;background:#27342d}.hero-ambience,.hero-scene,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-scene{opacity:0;transition:opacity 1.5s ease;overflow:hidden}.hero-scene.is-active{opacity:1}.hero-scene svg{width:100%;height:100%;filter:saturate(.65)}.hero-shade{z-index:-1;background:linear-gradient(90deg,#0917129e,#09171238 80%),linear-gradient(180deg,#0005,transparent 38%,#07130e7d)}.hero-copy.wrap{position:absolute;left:8%;right:8%;bottom:145px;width:auto;max-width:1420px;margin:0}.hero-copy .eyebrow{font-size:.7rem;letter-spacing:3px;margin-bottom:24px}.hero h1{font:400 clamp(3.2rem,6.25vw,6.3rem)/1.06 var(--serif);letter-spacing:-1.6px;margin:0;max-width:1300px}.hero h1 strong{font-weight:700}.hero .gold-rule{width:min(400px,46%);margin:35px 0}.hero-actions{display:flex;align-items:center;gap:42px;flex-wrap:wrap}.hero-actions .button{min-height:57px;padding:17px 31px;font-size:.82rem}.hero-call{font-size:.84rem;letter-spacing:2.5px;text-transform:uppercase;padding:12px 0}.hero-call:hover{color:var(--gold)}.hero-notes{display:flex;align-items:center;gap:35px;flex-wrap:wrap;margin-top:27px;font-size:.84rem;color:#f5f2e8}.care-pickup{display:inline-flex;gap:10px;align-items:center}.care-pickup a{border-bottom:1px solid var(--gold);padding-bottom:3px}.care-pickup>span{color:var(--gold)}.hero-review-link{font-weight:300;color:#e5e8df}.hero-review-link:hover{color:var(--gold)}.hero-scene-controls{display:flex;align-items:center;gap:7px;position:absolute;bottom:43px;right:8%;z-index:2}.hero-scene-controls button{background:transparent;color:#fff9;border:0;border-bottom:1px solid #ffffff42;width:38px;height:38px;font-size:.69rem;letter-spacing:1px;padding:0}.hero-scene-controls [aria-pressed=true]{border-bottom-color:var(--gold);color:var(--gold)}.hero-scene-controls .hero-motion-toggle{border:1px solid #ffffff5c;margin-left:12px;display:grid;place-items:center;width:35px;height:35px}.hero-motion-toggle svg{width:17px;height:17px;stroke:currentColor;stroke-width:1.5;fill:none}.hero-motion-toggle .play-icon{display:none}.hero-motion-toggle[data-state=paused] .play-icon{display:block}.hero-motion-toggle[data-state=paused] .pause-icon{display:none}.hero-social{position:absolute;right:2.8%;top:65%;display:flex;flex-direction:column;gap:20px;align-items:center}.hero-social a{font:600 1.2rem/1 var(--sans);color:var(--gold)}.hero-social svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.6}.hero-side-rule{position:absolute;right:3.3%;top:23%;height:28%;width:2px;background:var(--gold);transform-origin:top}.hero-discover{position:absolute;left:8%;bottom:47px;display:flex;align-items:center;gap:25px;font-size:.64rem;letter-spacing:2px;text-transform:uppercase;color:#f4f0e6}.hero-discover>span:last-child{font-size:1.3rem;color:var(--gold)}.care-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-block:28px;color:#71786b;border-bottom:1px solid var(--line);font-size:.77rem;letter-spacing:.3px;text-align:center}.care-strip>span+span{border-left:1px solid var(--line)}
/* Generous type and alternating editorial compositions. */
.welcome-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.welcome-copy h2{margin-bottom:34px}.welcome-description p{font-size:1.125rem;line-height:1.9;margin:0 0 25px;color:#586256}.treatments{display:grid;grid-template-columns:1fr 1.02fr;gap:9%;align-items:start;padding-top:15px}.treatment-intro>p:not(.eyebrow){color:var(--muted);max-width:400px}.section-index{display:none}.treatment-visual{margin:36px 0 0}.treatment-visual svg{height:420px;width:100%;filter:saturate(.55)}.treatment-list{border-top:1px solid var(--line)}.treatment-list details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:18px;min-height:76px;padding:22px 0;cursor:pointer;list-style:none;font:400 1.9rem/1.25 var(--serif)}summary::-webkit-details-marker{display:none}.treatment-number{font:400 .65rem/1.5 var(--sans);letter-spacing:1px;color:#9f8b57;min-width:19px}.plus{font:300 1.8rem/1 var(--sans);color:#9f8b57;margin-left:auto;flex-shrink:0;transition:transform .3s}details[open] .plus{transform:rotate(45deg)}.treatment-content{padding:0 28px 30px 37px}.treatment-category{font-size:.63rem;letter-spacing:1.8px;color:#8b784d;font-weight:500}.treatment-content p{font-size:1rem;line-height:1.85;margin:13px 0 18px;color:var(--muted)}.clinic-section{background:var(--dark);color:#fff}.clinic-layout.wrap{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}.team-photo{margin:0;position:relative;overflow:hidden}.team-photo>svg{width:100%;height:100%;min-height:710px;filter:saturate(.65)}.team-photo figcaption{position:absolute;left:35px;bottom:30px;color:#eee4c9;background:#0b1814a8;padding:10px 15px;font-size:.65rem;letter-spacing:1.7px}.clinic-copy{padding:105px clamp(45px,7vw,130px);align-self:center}.clinic-copy .eyebrow{color:var(--gold)}.clinic-copy>p:not(.eyebrow){color:#bdc8be;font-size:1rem;line-height:1.9;max-width:480px;margin-bottom:22px}.clinic-copy .text-link{color:var(--gold);margin-top:10px}.visit-heading,.gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:9%;margin-bottom:55px}.visit-heading h2,.gallery-heading h2{margin-bottom:0}.visit-heading>p,.gallery-heading>p{max-width:340px;line-height:1.85;color:var(--muted);margin:0}.visit-guide{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:0;margin:42px 0 0}.visit-guide>li{border-top:1px solid var(--gold);padding:23px 0 30px;display:flex;flex-direction:column;align-items:flex-start}.visit-number{font:400 3.6rem/1.2 var(--serif);color:#ab9258;margin-bottom:23px}.visit-guide h3{font:400 1.6rem/1.3 var(--serif);margin-bottom:16px}.visit-guide p{color:var(--muted);font-size:1rem;line-height:1.8;margin-bottom:25px}.visit-note{margin-top:auto;font-size:.6rem;letter-spacing:1.4px;color:#8f7d50}.visit-invitation{border-top:1px solid var(--line);padding-top:26px;display:flex;align-items:center;justify-content:space-between;gap:30px}.visit-invitation p{margin:0;font-size:1rem}
/* The confirmed personal pickup service remains prominent. */
.border-pickup{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:70px;background:var(--dark);color:#fff;padding:48px 50px;scroll-margin-top:30px}.pickup-copy .eyebrow{color:var(--gold);font-size:.65rem;letter-spacing:2px;margin-bottom:21px}.pickup-copy h3{font:400 clamp(2.4rem,4vw,3.7rem)/1.07 var(--serif);letter-spacing:-.8px;margin:0 0 24px}.pickup-description{color:#c5cdc2;line-height:1.85;font-size:1rem;margin-bottom:25px;max-width:490px}.pickup-note{color:#a9b5a5;font-size:.7rem;line-height:1.7;margin:18px 0 0;max-width:360px}.pickup-route{list-style:none;padding:15px 0 15px 35px;margin:0;border-left:1px solid #ffffff21;isolation:isolate}.pickup-route>li{position:relative;display:grid;grid-template-columns:48px 1fr;gap:17px;align-items:center}.pickup-stop{display:grid;place-items:center;width:48px;height:48px;border:1px solid #d8be795e;border-radius:50%;background:#222e24}.pickup-stop svg{width:28px;height:28px;stroke:var(--gold);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}.pickup-route strong{font-size:.95rem;font-weight:400}.pickup-route p{font-size:.75rem;color:#b6c1b0;line-height:1.7;margin:4px 0 0}.pickup-route>.pickup-ride{padding-block:28px;min-height:100px}.pickup-ride:before{content:'';position:absolute;left:23px;top:0;bottom:0;border-left:1px dashed #d8be7969;z-index:-1}.pickup-ride>span{display:grid;place-items:center;justify-self:center;width:34px;height:34px;border-radius:50%;background:var(--dark)}.pickup-ride svg{width:23px;height:23px;stroke:#b6c1b0;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.pickup-ride>p{font-size:.7rem;letter-spacing:.4px;margin:0}
.gallery-section{background:var(--stone)}.gallery-heading .eyebrow.light{color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:1fr .88fr 1fr;gap:28px;align-items:start}.gallery-card{margin:0;min-width:0}.gallery-card:nth-child(2){margin-top:65px}.gallery-photo{position:relative;display:block;width:100%;border:0;padding:0;background:#354737;overflow:hidden}.gallery-photo>svg{width:100%;height:450px;filter:saturate(.5);transition:filter .7s,transform .9s}.gallery-card:nth-child(2) .gallery-photo>svg{height:350px}.photo-expand{position:absolute;right:14px;bottom:14px;padding:8px 14px;background:#fffdf3eb;color:var(--ink);font-size:.65rem;letter-spacing:1.5px;text-transform:uppercase}.gallery-card figcaption{display:flex;gap:16px;align-items:baseline;margin-top:20px;font-size:.8rem}.gallery-card figcaption>span:first-child{font-size:.65rem;letter-spacing:1px;color:#9a864e}.gallery-foot{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:40px;border-top:1px solid #c9c4b3;padding-top:25px}.gallery-foot p{margin:0;font-size:1rem;color:var(--muted)}
.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:50px;margin-bottom:40px}.reviews-heading>p{font-size:1rem;color:var(--muted);line-height:1.8;max-width:300px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.review{margin:0;display:flex;flex-direction:column;padding:0 0 25px}.stars{font-size:1rem;letter-spacing:5px;color:#b49a5b}.review blockquote{font:400 1.7rem/1.4 var(--serif);margin:26px 0 35px;flex:1}.review figcaption{display:flex;align-items:center;gap:12px}.review-avatar{display:none}.review figcaption strong{display:block;font-size:.85rem;letter-spacing:2px;font-weight:500}.review figcaption div>span{display:block;font-size:.65rem;line-height:1.6;color:var(--muted);margin-top:8px}.review-controls{display:none}.reviews-link{margin-top:25px}.reviews-enhanced{display:grid;grid-template-columns:.9fr 1.2fr;gap:0 9%;align-items:start}.reviews-enhanced .reviews-heading{display:block;grid-column:1;grid-row:1/4;margin:0}.reviews-enhanced .reviews-heading>p{margin:30px 0 0}.reviews-enhanced .review-grid{display:block;grid-column:2;grid-row:1;min-height:310px}.reviews-enhanced .review[hidden]{display:none}.reviews-enhanced .review.is-active{display:flex}.reviews-enhanced .review blockquote{font-size:clamp(2rem,3.1vw,3rem);line-height:1.23;margin-top:22px}.reviews-enhanced .review-controls{display:flex;gap:20px;align-items:center;grid-column:2;grid-row:2;margin-top:12px}.review-controls button{display:grid;place-items:center;width:43px;height:43px;border:1px solid #b7a16a;background:transparent;color:#8d7949;font-size:1.1rem}.review-controls button:hover{background:var(--gold);color:#111}.review-position{font-size:.67rem;letter-spacing:2.2px;color:var(--muted)}.reviews-enhanced .reviews-link{grid-column:2;grid-row:3;justify-self:start}
.faq-section{background:var(--stone)}.faq-layout{display:grid;grid-template-columns:.95fr 1.15fr;gap:9%;align-items:start}.faq-intro>p:not(.eyebrow){max-width:350px;color:var(--muted);font-size:1rem;line-height:1.85}.faq-intro .text-link{margin-top:6px}.faq-list{border-top:1px solid #c9c7b9}.faq-list details{border-bottom:1px solid #c9c7b9}.faq-list summary{font-family:var(--sans);font-size:1rem;font-weight:300;line-height:1.6;min-height:75px;padding:22px 0;gap:25px}.faq-answer{padding:0 30px 26px 0}.faq-answer p{margin:0;color:#616a5a;font-size:1rem;line-height:1.85}.faq-answer p a{white-space:nowrap;border-bottom:1px solid var(--gold)}.faq-answer>.text-link{margin-top:14px}
.contact-section{position:relative;isolation:isolate;overflow:hidden;background:var(--dark);color:#fff;padding:120px 0}.contact-backdrop{position:absolute;inset:0;z-index:-2;overflow:hidden}.contact-backdrop svg{width:100%;height:100%;filter:saturate(.35) brightness(.5)}.contact-section:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0c1a16df,#0c1a1680)}.contact-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;align-items:center}.contact-intro .eyebrow{color:var(--gold)}.contact-intro h2{font-size:clamp(3rem,5.3vw,5rem)}.contact-intro>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:#cbd2c5;margin-bottom:30px}.contact-intro .dark-button{background:var(--gold);color:#111}.contact-intro .dark-button:hover{background:#e5d198}.phone-link{display:block;width:fit-content;font-size:.8rem;letter-spacing:1px;border-bottom:1px solid #ffffff45;padding:9px 0;margin-top:14px}.contact-info{background:#f3f0e4;color:var(--ink);padding:40px}.contact-address .eyebrow{display:block;margin-bottom:19px}.contact-address address{font-style:normal;font-size:1rem;line-height:1.9;margin-bottom:20px}.hours-note{font-size:.85rem;line-height:1.8;color:var(--muted);margin:24px 0 0}.contact-social{border-top:1px solid #d2d0c1;margin-top:25px;padding-top:21px;display:flex;gap:22px;flex-wrap:wrap;font-size:.8rem}.contact-social>span{width:100%;color:var(--muted)}.contact-social a{padding-bottom:4px;border-bottom:1px solid #c4b891}
.footer-shell{background:#0b120e;color:#e0e5d9}.footer{display:flex;align-items:center;flex-wrap:wrap;gap:40px;padding-block:55px 30px}.footer>p{font-size:.85rem;line-height:1.8;max-width:320px;margin:0;color:#a6b09f}.back-top{font-size:.65rem;letter-spacing:1.7px;text-transform:uppercase;margin-left:auto;padding:8px 0;border-bottom:1px solid #d8be796e}.footer-copyright{width:100%;border-top:1px solid #ffffff1a;padding-top:25px;font-size:.65rem;color:#86937f;letter-spacing:.5px}.mobile-contact{display:none}
.gallery-dialog{width:min(760px,92vw);max-height:92dvh;border:0;padding:24px;background:#f4f2e8;color:var(--ink);box-shadow:0 30px 100px #0005}.gallery-dialog::backdrop{background:#07120deb}.gallery-modal-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.gallery-modal-header h2{font:400 1.7rem/1.2 var(--serif);letter-spacing:0;margin:0}.gallery-dialog button{font-size:.7rem;letter-spacing:1px;min-height:42px;padding:8px 16px;border:1px solid #b7ad88;background:transparent;color:var(--ink)}.gallery-dialog button:hover{background:var(--gold)}.gallery-modal-image{overflow:hidden;background:#dfe3d7}.gallery-modal-image svg{width:100%;height:min(58dvh,550px)}.gallery-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px}.gallery-modal-footer>div{display:flex;gap:12px}.gallery-counter{font-size:.75rem;color:var(--muted)}
@media(hover:hover){.gallery-photo:hover>svg{filter:saturate(.8);transform:scale(1.025)}}
@media(max-width:1250px){.header.wrap{gap:20px}.header nav{gap:14px;font-size:.75rem}.header-actions{gap:17px}.header-book{padding:12px 18px;font-size:.65rem}.brand>span{font-size:1rem}.hero h1{font-size:6.2vw}.clinic-copy{padding:80px 55px}.pickup-route{padding-left:25px}.border-pickup{gap:40px;padding:43px 40px}}
@media(max-width:1120px){.header nav{display:none}.header-actions{margin-left:auto}.hero{min-height:780px}.hero-copy.wrap{bottom:145px}.hero h1{font-size:6.5vw}.hero-actions{gap:30px}.hero-actions .button{font-size:.75rem}.hero-call{font-size:.75rem}.hero-notes{font-size:.75rem;gap:20px}.clinic-copy{padding:65px 40px}.team-photo>svg{min-height:650px}.section-space{padding-block:85px}.treatments{padding-top:0}.contact-info{padding:30px}.contact-layout{gap:7%}}
@media(max-width:820px){html{scroll-padding-top:95px}.header.wrap{min-height:83px}.brand-symbol{width:35px;height:39px}.brand>span{font-size:.94rem}.brand small{font-size:.55rem}.hero{height:90svh;min-height:760px}.hero-copy.wrap{bottom:135px}.hero h1{font-size:clamp(3rem,6.9vw,4.2rem)}.hero-copy .eyebrow{font-size:.6rem;letter-spacing:2px}.hero .gold-rule{margin:28px 0;width:240px}.hero-social,.hero-side-rule{display:none}.hero-actions{gap:20px}.hero-call{font-size:.65rem;letter-spacing:1.7px}.hero-scene-controls{right:8%;bottom:40px}.hero-discover{font-size:.56rem;gap:13px}.care-strip{font-size:.68rem;gap:17px;padding-block:23px}.welcome-layout{gap:7%}.welcome-description p{font-size:1rem}.treatments{gap:7%;grid-template-columns:1fr 1.05fr}.treatment-visual svg{height:360px}summary{font-size:1.55rem;gap:12px}.treatment-content{padding-left:31px;padding-right:0}.treatment-content p{font-size:.94rem}.clinic-layout.wrap{grid-template-columns:1fr}.team-photo>svg{height:520px;min-height:0}.clinic-copy{padding:65px 8%;max-width:760px}.clinic-copy>p:not(.eyebrow){max-width:none}.visit-heading,.gallery-heading{gap:30px}.visit-heading>p,.gallery-heading>p{max-width:270px;font-size:.95rem}.border-pickup{display:block;padding:36px}.pickup-description{max-width:none}.pickup-route{border-left:0;border-top:1px solid #ffffff21;padding:28px 0 0;margin-top:28px}.visit-guide{gap:25px}.visit-guide h3{font-size:1.4rem}.visit-guide p{font-size:.94rem}.visit-note{font-size:.55rem;letter-spacing:.7px}.gallery-grid{gap:20px}.gallery-photo>svg{height:350px}.gallery-card:nth-child(2) .gallery-photo>svg{height:275px}.gallery-card:nth-child(2){margin-top:45px}.gallery-card figcaption{font-size:.7rem;gap:10px}.reviews-enhanced{gap:0 7%}.reviews-enhanced .review-grid{min-height:330px}.reviews-enhanced .review blockquote{font-size:2.1rem}.faq-layout{gap:7%}.faq-list summary{font-size:.9rem}.contact-layout{grid-template-columns:1fr 1fr;gap:6%}.contact-info{padding:28px}.contact-intro h2{font-size:3rem}.contact-address address{font-size:.9rem}}
@media(min-width:651px) and (max-width:820px){.pickup-route{display:grid;grid-template-columns:1fr .9fr 1fr;gap:20px}.pickup-route>li{display:flex;flex-direction:column;text-align:center;gap:12px}.pickup-route>.pickup-ride{padding:7px 0 0;min-height:0;gap:18px}.pickup-ride:before{left:-40px;right:-40px;top:24px;bottom:auto;border:0;border-top:1px dashed #d8be7969}.pickup-route p{font-size:.7rem}}
@media(max-width:650px){html{scroll-padding-top:88px}body{font-size:1rem}.wrap{width:86%}.section-space{padding-block:64px}h2{font-size:2.9rem;letter-spacing:-1px}.eyebrow{font-size:.63rem;letter-spacing:1.8px;margin-bottom:20px}.header.wrap{width:90%;min-height:78px;gap:12px}.header-actions{gap:15px}.brand{gap:8px}.brand-symbol{width:30px;height:34px}.brand>span{font-size:.8rem;letter-spacing:2px}.brand small{font-size:.49rem;letter-spacing:2.5px}.header-book{display:none}.language-switch{gap:8px}.language-switch button{font-size:.6rem}.menu-toggle{min-width:30px;padding:7px 0}.menu-icon{width:23px}.hero{height:100svh;min-height:780px;max-height:none}.hero-copy.wrap{left:7%;right:7%;bottom:160px}.hero h1{font-size:clamp(2.7rem,8.7vw,3.7rem);line-height:1.09;letter-spacing:-.9px}.hero-copy .eyebrow{font-size:.55rem;letter-spacing:1.5px;max-width:260px;line-height:1.8;margin-bottom:19px}.hero .gold-rule{width:160px;margin:25px 0}.hero-actions{align-items:flex-start;gap:12px;flex-direction:column}.hero-actions .button{min-height:49px;padding:14px 20px;font-size:.68rem;letter-spacing:1.8px}.hero-call{font-size:.63rem;letter-spacing:1.9px;padding:8px 0}.hero-notes{display:block;font-size:.7rem;line-height:1.7;margin-top:20px}.hero-review-link{display:block;margin-top:12px;font-size:.65rem}.hero-notes .care-pickup{gap:8px}.hero-scene-controls{bottom:88px;right:7%;gap:3px}.hero-scene-controls button{width:30px;height:30px;font-size:.6rem}.hero-scene-controls .hero-motion-toggle{width:30px;height:30px;margin-left:7px}.hero-discover{left:7%;bottom:94px;font-size:.5rem;letter-spacing:1px;gap:10px}.hero-shade{background:linear-gradient(180deg,#07140f5e,#07140f82 38%,#07140fc4)}.care-strip{display:flex;flex-direction:column;gap:12px;padding:25px 0;text-align:left;font-size:.75rem}.care-strip>span+span{border-left:0}.welcome-layout{display:block}.welcome-description{margin-top:32px}.welcome-description p{font-size:1rem;line-height:1.85}.treatments{display:flex;flex-direction:column;gap:35px;padding-top:0}.treatment-intro{width:100%}.treatment-intro>p:not(.eyebrow){max-width:none}.treatment-visual{margin-top:28px}.treatment-visual svg{height:340px}.treatment-list{width:100%}summary{font-size:1.65rem;padding:22px 0;min-height:72px}.treatment-content{padding:0 10px 25px 32px}.treatment-content p{font-size:.96rem}.team-photo>svg{height:440px}.team-photo figcaption{left:20px;bottom:20px;font-size:.55rem;letter-spacing:1.2px;padding:9px 12px}.clinic-copy{padding:57px 7%}.clinic-copy>p:not(.eyebrow){font-size:.96rem;line-height:1.9}.visit-heading,.gallery-heading{display:block;margin-bottom:32px}.visit-heading>p,.gallery-heading>p{max-width:none;margin-top:25px;font-size:.96rem}.border-pickup{padding:31px 23px;scroll-margin-top:20px}.pickup-copy h3{font-size:2.5rem;line-height:1.05}.pickup-copy .eyebrow{font-size:.57rem;letter-spacing:1.5px}.pickup-description{font-size:.94rem;line-height:1.85}.pickup-copy .button{padding:14px 17px;font-size:.66rem}.pickup-note{font-size:.68rem}.pickup-route{margin-top:25px;padding-top:25px}.pickup-route>li{grid-template-columns:42px 1fr;gap:14px}.pickup-stop{width:42px;height:42px}.pickup-stop svg{width:25px;height:25px}.pickup-route strong{font-size:.8rem}.pickup-route p{font-size:.68rem}.pickup-route>.pickup-ride{padding-block:20px;min-height:85px}.pickup-ride:before{left:20px}.pickup-ride>span{width:31px;height:31px}.visit-guide{display:block;margin-top:32px}.visit-guide>li{padding:23px 0 28px}.visit-number{font-size:3.3rem;margin-bottom:18px}.visit-guide h3{font-size:1.7rem;margin-bottom:13px}.visit-guide p{font-size:.96rem;margin-bottom:20px}.visit-note{font-size:.6rem}.visit-invitation{display:block}.visit-invitation p{font-size:.96rem;margin-bottom:14px}.gallery-grid{display:block}.gallery-card+.gallery-card{margin-top:32px}.gallery-photo>svg{height:420px}.gallery-card:nth-child(2) .gallery-photo>svg{height:300px}.gallery-card:nth-child(3) .gallery-photo>svg{height:440px}.gallery-card figcaption{font-size:.78rem;gap:14px;margin-top:16px}.gallery-foot{display:block;margin-top:30px;padding-top:25px}.gallery-foot p{font-size:.96rem;margin-bottom:16px}.reviews-enhanced{display:block}.reviews-heading{display:block;margin-bottom:30px}.reviews-enhanced .reviews-heading>p{max-width:none;margin:24px 0 0}.reviews-heading>p br{display:none}.reviews-enhanced .review-grid{min-height:0;margin-top:40px}.reviews-enhanced .review blockquote{font-size:2.2rem;line-height:1.25;margin:22px 0 30px}.review-controls{margin-top:5px!important}.reviews-link{margin-top:27px!important}.faq-layout{display:block}.faq-intro>p:not(.eyebrow){max-width:none;font-size:.96rem}.faq-list{margin-top:32px}.faq-list summary{font-size:.96rem;line-height:1.65;padding:20px 0;gap:20px}.faq-answer{padding-right:9px}.faq-answer p{font-size:.94rem}.contact-section{padding:65px 0}.contact-layout{display:block}.contact-intro h2{font-size:3.1rem}.contact-intro>p:not(.eyebrow){font-size:.96rem}.contact-intro>p br{display:none}.contact-info{margin-top:40px;padding:30px 25px}.contact-address address{font-size:.96rem}.hours-note{font-size:.84rem}.contact-social a{min-height:40px}.footer{padding:40px 0 30px;gap:25px}.footer>p{order:2;width:100%;max-width:none}.footer .back-top{order:1}.footer-copyright{order:3;font-size:.6rem;padding-top:23px}.footer .brand{order:0}.mobile-contact{display:flex;position:fixed;left:0;right:0;bottom:0;gap:10px;background:#f7f5ed;border-top:1px solid #d3d0bf;padding:10px 7% calc(10px + env(safe-area-inset-bottom));z-index:35}.mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 17px;border:1px solid #222c23;font-size:.68rem;letter-spacing:1.1px;text-transform:uppercase}.mobile-contact a:first-child{flex:1;background:var(--dark);color:#fff}.mobile-contact a:last-child{min-width:80px}.footer-shell{padding-bottom:74px}.gallery-dialog{padding:17px}.gallery-modal-header{gap:15px}.gallery-modal-header h2{font-size:1.4rem}.gallery-dialog button{padding:8px 12px;font-size:.63rem}.gallery-modal-image svg{height:53dvh}.gallery-modal-footer{gap:12px;flex-wrap:wrap}#main-nav.is-open{padding:110px 35px 45px}#main-nav.is-open a{font-size:1.9rem}}
@media(max-width:360px){.header-actions{gap:11px}.hero{min-height:790px}.hero h1{font-size:2.75rem}.hero-copy.wrap{bottom:160px}.hero-discover{font-size:.44rem;letter-spacing:.5px;gap:6px}.hero-scene-controls{right:7%}.hero-scene-controls button{width:26px}.hero-scene-controls .hero-motion-toggle{width:28px;margin-left:3px}.brand>span{font-size:.72rem}.brand small{font-size:.45rem}.brand-symbol{width:26px}.pickup-copy h3{font-size:2.2rem}.pickup-description{font-size:.9rem}.pickup-route>li{gap:11px}.contact-info{padding:28px 22px}}
@media(prefers-reduced-motion:no-preference){@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes menu-slide{from{opacity:.4;transform:translateX(100%)}to{opacity:1;transform:none}}@keyframes line-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes side-line{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes scene-drift{from{transform:scale(1.025)}to{transform:scale(1.095)}}.hero-copy .eyebrow{animation:arrive 1s .1s both ease}.hero h1{animation:arrive 1.1s .2s both ease}.hero .gold-rule{animation:line-in 1.8s .45s both ease-out}.hero-actions{animation:arrive 1s .4s both ease}.hero-notes{animation:arrive 1s .55s both ease}.hero-side-rule{animation:side-line 1.8s .65s both ease-out}.hero-scene.is-active svg{animation:scene-drift 8s linear both}.hero-ambience.is-paused .hero-scene svg{animation-play-state:paused}.reveal-ready{transition:opacity 1s ease-in-out,transform 1s cubic-bezier(.2,.65,.3,1);transition-delay:var(--reveal-delay,0ms)}.reveal-ready:not(.is-visible){opacity:0;transform:translateY(25px)}.reveal-ready.is-visible{opacity:1;transform:none}.reveal-ready:not(.is-visible) .gold-rule{transform:scaleX(0)}.reveal-ready.is-visible .gold-rule{transform:scaleX(1);transition:transform 1.8s ease-out}.header nav.is-open{animation:menu-slide .5s ease both}.gallery-dialog[open],.review.is-active{animation:arrive .45s ease both}details[open] .treatment-content,details[open] .faq-answer{animation:arrive .3s ease both}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1!important;transform:none!important}.hero-scene svg{transform:none!important}}
@media print{.header-shell,.hero-scene-controls,.hero-social,.mobile-contact,.hero-discover{display:none}.hero{height:auto;min-height:0;background:#fff;color:#111;padding:30px 0}.hero-copy.wrap{position:static;width:86%;margin:auto}.hero-ambience,.hero-shade{display:none}.reveal-ready{opacity:1!important;transform:none!important}*,*:before,*:after{animation:none!important;transition:none!important}.review[hidden]{display:block!important}.reviews-enhanced{display:block}}

/* Dental Company's visual identity */
@font-face{font-family:Montserrat;src:url('assets/montserrat-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-700.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/montserrat-800.ttf') format('truetype');font-weight:800;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Poppins;src:url('assets/poppins-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Cormorant;src:url('assets/cormorant-garamond-400.ttf') format('truetype');font-style:italic;font-weight:400;font-display:swap}
:root{--ink:#112250;--dark:#112250;--stone:#e7e2ce;--gold:#c9a46b;--copper-ink:#79592c;--muted:#3b507d;--line:#beb7a7;--sans:Poppins,Arial,sans-serif;--serif:Montserrat,Arial,sans-serif}
body{font-weight:400}h1,h2,h3,.hero h1{font-family:var(--serif);font-weight:700;letter-spacing:-.035em}h2{font-size:clamp(2.5rem,4.5vw,4.3rem);line-height:1.12}h2 em{font-style:normal;font-weight:700}.hero h1{font-size:clamp(3rem,5vw,5.2rem);line-height:1.12;max-width:1050px}.hero h1 strong{font-weight:800}.brand>span{font-family:Montserrat,Arial,sans-serif;font-weight:400}.review blockquote{font-family:Cormorant,Georgia,serif;font-style:italic}.header-shell.is-scrolled,.footer-shell{background:#112250}.hero{background:#112250}.hero-scene svg{position:absolute;right:0;width:70%;height:100%;filter:saturate(.82)}.hero-shade{background:linear-gradient(90deg,#112250 0%,#112250ed 30%,#1122504d 78%),linear-gradient(0deg,#112250aa,transparent 60%)}.contact-section:before{background:linear-gradient(90deg,#112250ed,#11225099)}.contact-info,.gallery-dialog{background:#f5f2e9}.copper{color:#112250}.copper:hover{background:#e7e2ce}.hero-side-rule,.gold-rule{background:#c9a46b}
@media(max-width:820px){.hero-scene svg{width:100%}.hero-shade{background:linear-gradient(180deg,#11225080,#1122509c 40%,#112250ee)}.hero h1{font-size:clamp(2.8rem,6vw,4rem)}}
@media(max-width:650px){h2{font-size:2.4rem}.hero h1{font-size:clamp(2.35rem,8vw,3.2rem);line-height:1.13}.hero-copy.wrap{bottom:155px}.hero-scene svg{width:100%}}
