/* The Practice — complete website extension. Approved brand and homepage preserved. */
.full-site{--ink:#26353a;--muted:#596b70;--accent:#a45e3f;--line:#d4dddd;--soft:#edf1f1;--paper:#fff}
.full-site p{line-height:1.85}.full-site .eyebrow{font-size:.8125rem}.full-site .section{padding-block:96px}.full-site .container-shell{max-width:1320px}.full-site .source-copy a{font-weight:500}.full-site .source-copy a:hover{color:#8c492d}.home-page .practice-hero .source-copy a:hover{color:#f6d5bd}.full-site .site-footer{padding-bottom:35px}.full-site .text-link{font-size:.9375rem}.full-site .button{font-size:1rem}.all-services-link{margin-top:30px}
/* Main navigation uses Bootstrap dropdown behaviour. */
.full-site .header-inner{position:relative;gap:24px}.full-site .main-navigation{gap:25px}.nav-toggle{border:0;padding:13px 0;background:transparent;color:inherit;font:500 .9375rem/1.5 var(--body);white-space:nowrap}.dropdown-toggle::after{vertical-align:.15em;margin-left:7px;border-width:4px}.full-site .dropdown-menu{border:1px solid var(--line);border-radius:0;box-shadow:0 18px 40px #102c3020;color:var(--ink);background:#fff;padding:18px;--bs-dropdown-link-active-bg:#edf1f1}.full-site .dropdown-menu a{display:block;font-size:.9375rem;line-height:1.5;padding:10px 12px;white-space:normal}.full-site .dropdown-menu a:hover,.full-site .dropdown-menu a[aria-current]{color:#8f5036;background:#f3f6f6}.practice-menu{min-width:230px}.full-site .services-dropdown{position:static}.full-site .mega-menu{left:0;right:0;top:100%;margin-top:0;padding:28px 30px 30px;width:100%;max-height:calc(100vh - 130px);overflow-y:auto}.mega-heading{display:flex;justify-content:space-between;align-items:center;padding-bottom:18px;margin-bottom:24px;border-bottom:1px solid var(--line);font-weight:500}.full-site .mega-heading a{padding:0}.mega-grid{display:grid;grid-template-columns:1.2fr 1fr 1.15fr .9fr;gap:30px}.nav-group-title{display:block;color:#8c492d;text-transform:uppercase;font-size:.8125rem;letter-spacing:.07em;line-height:1.7;font-weight:600;margin:0 0 15px 12px}.full-site .mega-column a{padding:7px 12px;font-size:.875rem}.main-navigation>a[aria-current]{text-decoration:underline;text-underline-offset:7px}.inner-page .navigation-header{position:relative;background:#fff;color:var(--ink)}.inner-page .navigation-header .brand img{filter:none}.inner-page .header-inner{border-bottom:1px solid var(--line)}.inner-page .main-navigation .button{background:#263d43;border-color:#263d43;color:white}.inner-page .main-navigation>a:hover{color:#8c492d}.inner-page .menu-button{color:#263d43;border-color:#d4dddd}.home-page .nav-toggle:hover{color:#e8c5ad}.inner-page .nav-toggle:hover{color:#8c492d}.full-site .nav-toggle:focus-visible{outline-offset:5px}
/* Inner page hero. */
.page-hero{background:#edf1f1;padding:27px 0 64px}.breadcrumb-trail{display:flex;align-items:center;flex-wrap:wrap;list-style:none;margin:0;padding:0;gap:8px 12px;color:#53666d;font-size:.875rem;line-height:1.6}.breadcrumb-trail li+li::before{content:'/';margin-right:12px;color:#7b898d}.breadcrumb-trail a{text-decoration:underline;text-underline-offset:4px}.page-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:stretch;gap:7%;padding-top:48px}.page-hero-copy{align-self:center;padding-block:15px}.page-hero h1{font-size:clamp(2.5rem,3.6vw,4rem);line-height:1.17;letter-spacing:-.045em;margin-bottom:27px;text-wrap:balance}.page-hero .source-copy{font-size:1.0625rem;line-height:1.85;max-width:650px}.hero-actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin-top:30px}.hero-actions .text-link{font-size:.875rem}.page-hero-visual{position:relative;min-height:515px;max-height:720px;overflow:hidden;margin:0}.page-hero-visual>img{height:100%;min-height:515px;max-height:720px;object-fit:cover;object-position:50% 36%}.page-hero-visual figcaption{position:absolute;left:0;bottom:0;right:0;background:linear-gradient(0deg,#17343cef,transparent);color:white;padding:65px 27px 25px;display:flex;flex-direction:column;gap:7px;font-size:.875rem}.page-hero-visual figcaption span:first-child{font-size:.75rem;letter-spacing:.14em}.page-hero-copy .eyebrow{margin-bottom:24px}
/* Service articles and contents. */
.editorial-grid{display:grid;grid-template-columns:290px minmax(0,1fr);gap:10%}.aside-sticky{position:sticky;top:36px}.page-aside .eyebrow{margin-bottom:21px}.page-aside nav{display:flex;flex-direction:column;border-top:1px solid var(--line)}.page-aside nav a{font-size:.9375rem;line-height:1.65;padding:12px 0;border-bottom:1px solid var(--line);color:#52676b}.page-aside nav a:hover{color:#a45e3f}.aside-help{margin-top:40px;border-top:3px solid #a45e3f;padding-top:24px}.aside-help h3{font-size:1.2rem;line-height:1.5;margin-bottom:12px;letter-spacing:-.02em}.aside-help p{font-size:.9375rem;margin-bottom:8px}.aside-help>a:not(.text-link){font-size:1.375rem;display:block;color:var(--ink);margin-bottom:15px}.aside-help .text-link{font-size:.875rem}.editorial-copy{max-width:815px}.copy-section{margin-bottom:45px;padding-bottom:43px;border-bottom:1px solid var(--line);scroll-margin-top:35px}.copy-section:last-child{margin-bottom:0;padding-bottom:0;border:0}.practice .editorial-copy .source-heading{font-size:clamp(1.7rem,2.3vw,2.5rem);line-height:1.3;letter-spacing:-.035em;margin-bottom:20px;text-wrap:pretty}.copy-section .source-copy{font-size:1.0625rem;line-height:1.95}.copy-section .source-copy+p{margin-top:18px}.related-section{background:#edf1f1}.full-site .section-heading h2{font-size:clamp(2.25rem,3.2vw,3.5rem);line-height:1.22}.care-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.care-card{padding:32px;background:white;display:flex;flex-direction:column;color:var(--ink);border-bottom:3px solid transparent;min-width:0}.care-card:hover{color:var(--ink);border-bottom-color:#a45e3f;transform:translateY(-3px)}.card-number{font-size:.8125rem;color:#a45e3f;margin-bottom:28px}.care-card h3{font-weight:400;font-size:1.55rem;line-height:1.4;margin-bottom:16px;letter-spacing:-.025em}.care-card p{font-size:1rem;line-height:1.8;margin-bottom:30px}.card-link{display:flex;align-items:center;gap:20px;font-size:.875rem;color:#935039;margin-top:auto}.card-link .icon{width:20px;height:20px}
/* Service directory and practice pages. */
.service-category{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;padding-block:55px;border-top:1px solid var(--line);scroll-margin-top:30px}.service-category:first-child{padding-top:0;border:0}.service-category:last-child{padding-bottom:0}.service-category h2{font-size:clamp(2.4rem,3.3vw,3.8rem);line-height:1.2;margin-bottom:20px}.service-category p{max-width:330px}.directory-links{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.directory-links a{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:80px;padding-block:20px;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.6}.directory-links .icon{color:#a45e3f;width:19px;height:19px}.values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.values-grid article{border-top:1px solid var(--line);padding-top:33px}.values-grid .icon{width:30px;height:30px;color:#a45e3f;margin-bottom:33px}.values-grid h3{font-size:1.45rem;line-height:1.45;font-weight:400;margin-bottom:17px}.values-grid p{font-size:1rem}.practice-values+.section{background:#edf1f1}.dentist-profile{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:center;padding-bottom:75px;margin-bottom:75px;border-bottom:1px solid var(--line)}.dentist-profile:last-child{border:0;margin:0;padding:0}.dentist-profile:nth-child(2) .dentist-photo{order:2}.dentist-profile h2{font-size:clamp(2.2rem,3.4vw,3.6rem);line-height:1.23;margin-bottom:25px}.dentist-profile p{font-size:1.125rem;margin-bottom:25px;max-width:480px}.dentist-photo{aspect-ratio:1;max-width:470px;overflow:hidden}.dentist-photo img{height:100%;width:100%;object-fit:cover}.first-visit{background:#edf1f1}.first-visit-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;align-items:center}.first-visit-grid>div:first-child{height:570px}.first-visit-grid h2{font-size:clamp(2.4rem,3.5vw,3.8rem);line-height:1.23;margin-bottom:25px}.packing-list{list-style:none;padding:0;margin:27px 0}.packing-list li{padding:12px 0;border-bottom:1px solid #ccd6d6}.packing-list li::before{content:'✓';color:#965337;margin-right:15px}.visit-section .section-heading>p{max-width:370px}.visit-section .visit-steps{margin-top:45px}.full-site .visit-steps article>span{font-size:.8125rem}.visit-section+.faq-section{background:#f4f6f6}.full-site .faq-item summary>span:first-child::after{content:none}.full-site .faq-item summary>span:last-child{flex-shrink:0}.full-site .faq-item summary{align-items:flex-start}.full-site .faq-item summary>span:last-child::after{line-height:1}.full-site .faq-intro h2{line-height:1.2}.full-site .faq-item p{font-size:1rem}
/* Journal listings and readable article layouts. */
.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 28px}.journal-card{min-width:0;display:flex;flex-direction:column}.journal-card-image{display:block;aspect-ratio:1.55;overflow:hidden}.journal-card-image img{object-position:50% 34%;transition:transform .55s}.journal-card-image:hover img{transform:scale(1.04)}.journal-card-body{padding:27px 0 0;display:flex;flex-direction:column;flex:1}.journal-card-body .eyebrow{margin-bottom:16px}.practice .journal-card h2{font-size:1.5rem;line-height:1.4;letter-spacing:-.028em;font-weight:400;margin-bottom:15px}.journal-card p{font-size:1rem;line-height:1.85;margin-bottom:22px}.journal-card .text-link{align-self:flex-start;margin-top:auto}.home-journal{background:#edf1f1}.article-heading{padding-top:27px}.article-title{max-width:1010px;text-align:center;margin:65px auto 50px}.article-title h1{font-size:clamp(2.5rem,4.25vw,4.5rem);line-height:1.22;text-wrap:balance}.article-image{height:420px;overflow:hidden}.article-image img{object-position:50% 33%}.article-layout{display:grid;grid-template-columns:260px minmax(0,780px);justify-content:space-between;gap:8%}.article-layout aside p{font-size:.9375rem;margin-bottom:25px}.article-layout aside .text-link{font-size:.875rem}.article-prose>.source-copy{font-size:1.2rem;line-height:1.95;color:#43575c}.article-questions{margin-top:45px;padding-top:35px;border-top:1px solid var(--line)}.article-questions h2{font-size:2rem;line-height:1.35;margin-bottom:20px}.article-questions ul{margin-bottom:27px;padding-left:22px}.article-questions li{padding:8px 0;color:var(--muted)}
/* Contact and appointment request forms. */
.full-site .contact-copy>.text-link{margin-top:18px}.full-site .contact-copy>.source-copy{max-width:none}.full-site .form-note{font-size:.875rem;line-height:1.75}.form-availability{font-size:.875rem;line-height:1.8!important;margin-bottom:20px;background:#edf1f1;padding:15px 17px;border-left:2px solid #a45e3f}.form-availability a{text-decoration:underline;text-underline-offset:3px}.consent{display:flex!important;align-items:flex-start;gap:12px;color:var(--muted);font-size:.875rem!important;line-height:1.65!important;cursor:pointer}.consent .form-check-input{margin:4px 0 0;width:18px;height:18px;flex:0 0 18px;border:1px solid #809194;border-radius:0}.consent .form-check-input:checked{background-color:#263d43;border-color:#263d43}.form-result{overflow-wrap:anywhere}.form-result a{text-decoration:underline}.form-result p{margin-top:8px}.request-form button:disabled{opacity:.55;cursor:not-allowed;transform:none}.full-site .form-control:focus,.full-site .form-select:focus{box-shadow:0 0 0 3px #a45e3f25}.button-outline{background:transparent;color:#263d43;border-color:#a4b2b5}.button-outline:hover{background:#edf1f1;color:#263d43;border-color:#263d43}.booking-section{padding-top:27px!important;background:#edf1f1}.booking-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:start;margin-top:55px}.booking-intro h1{font-size:clamp(2.6rem,3.7vw,4.2rem);line-height:1.2;margin-bottom:26px;text-wrap:balance}.booking-intro>p{font-size:1.0625rem;max-width:430px}.booking-call{margin-top:30px;padding:24px 0;border-block:1px solid #cbd5d5}.booking-call span{display:block;color:var(--muted);font-size:.9375rem}.booking-call a{font-size:1.75rem;display:block;margin-top:4px}.booking-office{margin-top:30px}.booking-office>img{height:245px;object-position:50% 38%}.booking-office>p{margin-top:22px}.booking-office .hours{margin-top:18px}.booking-intro .urgent-note{font-size:.9375rem;line-height:1.85;margin-top:25px}.urgent-note strong{display:block;color:#263d43}.practice .booking-form{padding:38px 38px 32px;border-top:3px solid #a45e3f}.booking-progress{display:flex;justify-content:space-between;gap:16px;list-style:none;padding:0 0 27px;margin:0 0 32px;border-bottom:1px solid var(--line);font-size:.875rem;color:#647277}.booking-progress li{display:flex;align-items:center;gap:9px;line-height:1.5}.booking-progress span{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #c6d2d3;border-radius:50%;font-size:.75rem;flex-shrink:0}.booking-progress [aria-current]{color:#87492f;font-weight:600}.booking-progress [aria-current] span{background:#a45e3f;color:#fff;border-color:#a45e3f}.booking-form fieldset{min-width:0;margin:0 0 28px;padding:0;border:0}.booking-form legend{float:none;width:auto;font-family:var(--heading);font-size:1.55rem;line-height:1.4;letter-spacing:-.03em;margin-bottom:18px}.step-intro{font-size:1rem;line-height:1.85;margin-bottom:24px}.optional{font-weight:400;color:var(--muted)}.booking-actions{display:flex;justify-content:space-between;gap:15px;padding-top:26px;margin-top:7px;border-top:1px solid var(--line)}.booking-actions .button:only-child{margin-left:auto}.booking-review{margin:28px 0;display:grid;grid-template-columns:125px minmax(0,1fr);font-size:.9375rem;gap:0 22px;overflow-wrap:anywhere}.booking-review dt,.booking-review dd{padding:13px 0;border-bottom:1px solid var(--line);margin:0;font-weight:400}.booking-review dt{color:var(--muted)}.booking-review dd{color:var(--ink)}.booking-form [data-booking-step]:focus{outline:none}.booking-confirmation h3{font-size:1.5rem;line-height:1.4;margin-bottom:15px}.booking-confirmation p{line-height:1.8}.booking-confirmation .button{margin-top:22px}.not-found h1{font-size:clamp(2.8rem,5vw,5rem);margin-bottom:28px}.not-found p{max-width:600px}
/* Footer and mobile navigation. */
.full-site .footer-main{grid-template-columns:1.2fr .8fr .85fr 1fr;gap:40px;margin-bottom:50px}.footer-label{display:block;color:#e5bb9e;font-size:.8125rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.full-site .footer-main nav{font-size:.9375rem;gap:9px}.footer-main address{font-size:.9375rem;line-height:1.9;color:#c2d1d2;font-style:normal;margin-bottom:10px}.footer-main>div:last-child>a{display:block;font-size:.9375rem;margin-top:10px}.footer-directions .icon{display:inline-block;vertical-align:middle;width:17px;height:17px;margin-left:10px}.full-site .footer-phone{font-size:1.35rem;margin-top:20px;margin-bottom:0}.mobile-booking{display:none}.full-site .footer-small{font-size:.8125rem}.full-site .site-footer .brand img{width:225px}
@media(min-width:1100px) and (max-width:1280px){.full-site .main-navigation{gap:17px}.full-site .brand img{width:210px}.full-site .main-navigation>a,.nav-toggle{font-size:.875rem}.full-site .main-navigation .button{padding-inline:16px}.mega-grid{gap:14px}.page-hero-grid{gap:5%}.editorial-grid{gap:7%;grid-template-columns:260px minmax(0,1fr)}}
@media(max-width:1099px){.full-site .section{padding-block:75px}.full-site .navigation-header .header-inner{position:static}.full-site .main-navigation{max-height:calc(100dvh - 88px);overflow-y:auto;gap:0}.full-site .main-navigation .nav-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 0;font-size:1rem;text-align:left}.full-site .nav-dropdown{position:static}.full-site .dropdown-menu{position:static!important;transform:none!important;float:none;width:100%;box-shadow:none;border:0;border-left:2px solid #d4dddd;margin:0 0 15px;padding:0 10px}.full-site .mega-menu{max-height:none;padding:15px 0 15px 12px}.mega-heading{margin:0 0 25px;padding:10px 0 15px}.full-site .mega-heading>a:last-child{display:none}.mega-grid{grid-template-columns:1fr 1fr;gap:25px 15px}.nav-group-title{margin-left:10px;font-size:.75rem}.full-site .mega-column a{padding-inline:10px;font-size:.9375rem}.page-hero-grid{grid-template-columns:1.15fr .85fr;gap:5%;padding-top:38px}.page-hero h1{font-size:2.75rem}.page-hero-visual,.page-hero-visual>img{min-height:550px;max-height:750px}.page-hero .source-copy{font-size:1rem}.page-hero-visual figcaption{padding-inline:20px}.hero-actions{gap:20px}.editorial-grid{grid-template-columns:220px minmax(0,1fr);gap:6%}.page-aside nav a{font-size:.875rem}.care-card-grid{gap:18px}.care-card{padding:25px}.care-card h3{font-size:1.35rem}.service-category{gap:6%;grid-template-columns:.7fr 1.3fr}.directory-links{gap:0 22px}.values-grid{gap:30px}.values-grid h3{font-size:1.3rem}.journal-grid{gap:38px 23px}.practice .journal-card h2{font-size:1.3rem}.journal-card-body{padding-top:23px}.article-layout{grid-template-columns:200px minmax(0,1fr);gap:7%}.article-title{margin-block:50px 40px}.booking-layout{gap:6%;grid-template-columns:.8fr 1.2fr}.practice .booking-form{padding:30px 25px}.booking-progress{gap:10px;font-size:.8125rem}.booking-progress li{gap:7px}.booking-progress span{width:25px;height:25px}.booking-intro h1{font-size:2.9rem}.full-site .footer-main{grid-template-columns:1fr 1fr;gap:35px 55px}.full-site .footer-main nav{align-self:start}.full-site .footer-main>div:first-child{grid-row:1/3}.full-site .footer-main>div:last-child{grid-column:1/-1;border-top:1px solid #63797b;padding-top:28px}.full-site .footer-main>div:last-child .footer-label{margin-bottom:15px}.full-site .footer-main>div:last-child>a{display:inline-block;margin-right:25px}.first-visit-grid{gap:7%}}
@media(max-width:767px){.full-site .section{padding-block:60px}.full-site .eyebrow{font-size:.75rem}.full-site .brand img{width:195px}.full-site .main-navigation{max-height:calc(100dvh - 84px)}.full-site .mega-grid{grid-template-columns:1fr}.full-site .mega-menu{padding-left:7px}.nav-group-title{font-size:.8125rem}.full-site .mega-column a{font-size:1rem}.mega-heading a{font-size:.9375rem!important}.page-hero{padding-top:23px;padding-bottom:35px}.breadcrumb-trail{font-size:.8125rem;gap:6px 9px}.breadcrumb-trail li+li::before{margin-right:9px}.page-hero-grid{grid-template-columns:1fr;gap:34px;padding-top:32px}.page-hero-copy{padding:0}.page-hero h1{font-size:clamp(2.15rem,8.6vw,3.3rem);line-height:1.22;margin-bottom:23px}.page-hero-copy .eyebrow{margin-bottom:19px}.page-hero .source-copy{font-size:1rem;line-height:1.9}.page-hero-visual,.page-hero-visual>img{min-height:0;height:385px;max-height:none}.page-hero-visual>img{object-position:50% 30%}.page-hero-visual figcaption{padding:65px 22px 22px}.hero-actions{gap:21px;margin-top:25px}.hero-actions .text-link{font-size:.9375rem}.editorial-grid{display:flex;flex-direction:column;gap:42px}.aside-sticky{position:static}.page-aside nav{display:grid;grid-template-columns:1fr}.page-aside nav a{font-size:.9375rem;padding-block:10px}.aside-help{display:none}.page-aside .eyebrow{margin-bottom:15px}.copy-section{margin-bottom:31px;padding-bottom:31px}.practice .editorial-copy .source-heading{font-size:1.7rem;line-height:1.35;margin-bottom:18px}.copy-section .source-copy{font-size:1rem;line-height:1.95}.care-card-grid{grid-template-columns:1fr;gap:18px}.care-card{padding:27px}.care-card h3{font-size:1.5rem}.card-number{margin-bottom:19px}.care-card p{margin-bottom:21px}.full-site .section-heading h2{font-size:2.25rem;line-height:1.25}.service-category{grid-template-columns:1fr;gap:25px;padding-block:35px}.service-category h2{font-size:2.4rem;margin-bottom:18px}.service-category p{max-width:none}.directory-links{grid-template-columns:1fr}.directory-links a{min-height:66px;padding-block:17px}.values-grid{grid-template-columns:1fr;gap:30px}.values-grid article{padding-top:27px}.values-grid .icon{margin-bottom:23px}.values-grid h3{font-size:1.45rem}.dentist-profile{grid-template-columns:1fr;gap:29px;padding-bottom:40px;margin-bottom:40px}.dentist-profile:nth-child(2) .dentist-photo{order:0}.dentist-profile h2{font-size:2.3rem;line-height:1.28;margin-bottom:19px}.dentist-profile p{font-size:1rem;margin-bottom:22px}.dentist-photo{max-width:none}.first-visit-grid{grid-template-columns:1fr;gap:35px}.first-visit-grid>div:first-child{height:410px}.first-visit-grid h2{font-size:2.35rem;line-height:1.28}.full-site .faq-intro>h2{font-size:2.35rem;line-height:1.25}.full-site .contact-copy h2{font-size:2.35rem;line-height:1.25}.full-site .practice-team-heading h2{font-size:2.5rem}.full-site .practice-promise h2{font-size:2.5rem;line-height:1.25}.journal-grid{grid-template-columns:1fr;gap:37px}.journal-card-image{aspect-ratio:1.6}.practice .journal-card h2{font-size:1.55rem;line-height:1.4}.journal-card-body{padding-top:25px}.article-heading{padding-top:23px}.article-title{text-align:left;margin-block:37px 33px}.article-title h1{font-size:2.35rem;line-height:1.27}.article-image{height:285px}.article-layout{grid-template-columns:1fr;gap:30px}.article-layout aside{border-bottom:1px solid var(--line);padding-bottom:24px}.article-layout aside .eyebrow{margin-bottom:10px}.article-layout aside p{margin-bottom:16px}.article-prose>.source-copy{font-size:1.075rem;line-height:1.95}.article-questions{margin-top:32px;padding-top:29px}.article-questions h2{font-size:1.8rem;line-height:1.4}.booking-layout{display:flex;flex-direction:column;gap:35px;margin-top:35px}.booking-intro h1{font-size:2.5rem;line-height:1.24;margin-bottom:21px}.booking-intro>p{max-width:none;font-size:1rem}.booking-call{margin-top:24px;padding-block:20px}.booking-office{display:none}.booking-intro .urgent-note{margin-top:20px}.practice .booking-form{width:100%;padding:28px 22px}.booking-progress{font-size:.8125rem;gap:12px;margin-bottom:26px;padding-bottom:25px;align-items:flex-start}.booking-progress li{flex-direction:column;align-items:flex-start;gap:9px}.booking-form legend{font-size:1.4rem;line-height:1.45}.booking-form .step-intro{font-size:.9375rem}.booking-actions{gap:12px;padding-top:22px}.booking-actions .button{font-size:.9375rem;padding-inline:17px;gap:12px}.booking-review{grid-template-columns:100px minmax(0,1fr);gap:0 15px;font-size:.875rem}.full-site .footer-main{grid-template-columns:1fr 1fr;gap:35px 28px}.full-site .footer-main>div:first-child{grid-column:1/-1;grid-row:auto}.full-site .footer-main nav{display:flex;flex-direction:column;align-items:flex-start;gap:13px;font-size:.875rem}.footer-label{font-size:.75rem;margin-bottom:9px}.full-site .footer-main>div:last-child{padding-top:27px}.full-site .footer-main>div:last-child>a{display:block;margin-right:0}.full-site .footer-small{gap:18px}.full-site .site-footer{padding-bottom:95px}.mobile-booking{position:fixed;bottom:16px;right:20px;z-index:35;display:flex;align-items:center;gap:11px;background:#a45e3f;color:white;padding:13px 19px;min-height:50px;box-shadow:0 6px 25px #12313930;font-size:.9375rem}.mobile-booking:hover{background:#263d43;color:white}.mobile-booking .icon{width:20px;height:20px}.full-site:has(.booking-section) .mobile-booking{display:none}}
@media(prefers-reduced-motion:reduce){.full-site *{scroll-behavior:auto!important;transition:none!important}}
@media print{.navigation-header,.site-footer,.mobile-booking,.page-aside,.hero-actions,.practice-promise,.request-form{display:none!important}.container-shell{width:100%}.section{padding-block:25px!important}.page-hero-grid,.editorial-grid,.article-layout{display:block}.page-hero-visual{display:none}.source-copy a{color:inherit}.copy-section{break-inside:avoid}.article-image{height:200px}}

.page-hero-visual img[src*="smile-portrait"],.journal-card-image img[src*="smile-portrait"],.article-image img[src*="smile-portrait"]{object-position:76% center}

/* Launch support pages and an off-screen spam field. */
.form-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden;pointer-events:none}.support-copy{max-width:820px;margin:50px auto 0}.support-copy h1{font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.2;margin:0 0 30px}.support-copy h2{font-size:clamp(1.5rem,3vw,2rem);line-height:1.35;margin:36px 0 16px}.support-copy p,.support-copy address{font-size:1rem;line-height:1.9;margin-bottom:20px}.support-copy address{font-style:normal}.support-copy a:not(.button){text-decoration:underline;text-underline-offset:3px}.support-copy{overflow-wrap:anywhere}
