/* Smile Edit: scoped to the new service page, inheriting both site themes. */
.smile-hero,.smile-content {color:var(--color-text);background:var(--color-bg);}
body[data-service-experience] .smile-hero {padding:142px 0 42px;min-height:0;text-align:left;background:var(--color-bg);}
body[data-service-experience] .smile-hero::before,body[data-service-experience] .smile-hero::after {display:none;}
.smile-hero-grid {display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:6%;align-items:center;}
body[data-service-experience] .smile-hero h1 {font-family:var(--font-heading);font-weight:400;font-size:clamp(2.7rem,4.7vw,4.9rem);line-height:1.04;letter-spacing:-.025em;color:var(--color-text);margin:20px 0 26px;}
body[data-service-experience] .smile-hero p {font-size:.96rem;line-height:1.85;color:var(--color-text-light);max-width:600px;}
.smile-eyebrow,body[data-service-experience] .smile-hero .smile-eyebrow {font-size:.68rem;line-height:1.65;text-transform:uppercase;letter-spacing:.16em;font-weight:650;color:var(--color-text-muted);}
.smile-actions {display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:25px 0;}
.smile-actions .btn,.smile-card .btn {min-height:48px;white-space:normal;line-height:1.6;}
.smile-hero .smile-actions .btn:nth-child(2) {background:transparent;border:1px solid var(--color-text);color:var(--color-text);}
.smile-features {display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;padding:20px 0 0;border-top:1px solid var(--color-border);font-size:.71rem;color:var(--color-text-light);}
.smile-hero-art,.smile-feature-art {margin:0;min-width:0;}
.smile-hero-art img,.smile-feature-art img {display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 35%;border-radius:3px;}
.smile-hero-art figcaption,.smile-feature-art figcaption {font-size:.66rem;line-height:1.6;color:var(--color-text-muted);padding-top:10px;}
.smile-content .container {min-width:0;}
.smile-content h2 {font-family:var(--font-heading);font-weight:400;font-size:clamp(2.1rem,3.5vw,3.5rem);line-height:1.12;letter-spacing:-.015em;color:var(--color-text);margin:12px 0 24px;max-width:850px;}
.smile-content h3 {font-family:var(--font-heading);font-size:1.8rem;line-height:1.2;font-weight:500;color:var(--color-text);margin:10px 0 18px;}
.smile-content p,.smile-content li {color:var(--color-text-light);font-size:.92rem;line-height:1.85;}
.smile-content p {margin:0 0 18px;}
.smile-content a:not(.btn) {color:var(--color-text);text-underline-offset:4px;}
.smile-content .smile-eyebrow {font-size:.68rem;color:var(--color-text-muted);}
.smile-intro {padding-top:35px;padding-bottom:18px;}
.smile-intro>p:not(.smile-eyebrow) {max-width:760px;}
.smile-category-nav {display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0;}
.smile-category-nav a {display:flex;align-items:center;min-height:48px;padding:11px 19px;font-size:.8rem;font-weight:600;text-decoration:none;border:1px solid var(--color-border);border-radius:2px;}
.smile-category-nav a:hover {background:var(--color-bg-alt);border-color:var(--color-text);}
.smile-section {padding:64px 0;scroll-margin-top:115px;}
.smile-tone {background:var(--color-bg-alt);}
.smile-card-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0;}
.smile-card {display:flex;flex-direction:column;align-items:flex-start;min-width:0;border:1px solid var(--color-border);padding:30px;background:var(--color-bg);border-radius:3px;}
.smile-card .smile-eyebrow {margin-bottom:9px;}
.smile-card-facts {display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 20px;margin:0 0 20px;font-size:.85rem;color:var(--color-text-light);}
.smile-card-facts strong {font-family:var(--font-heading);font-size:1.85rem;font-weight:500;color:var(--color-text);}
.smile-card ul {padding-left:18px;margin:0 0 25px;}
.smile-card li {font-size:.83rem;margin:5px 0;}
.smile-card>.btn {margin-top:auto;width:100%;font-size:.69rem;letter-spacing:.06em;padding:13px 14px;}
.smile-content .smile-small,.smile-content .smile-booking-note {font-size:.77rem;line-height:1.8;}
.smile-booking-note {padding:15px 20px;border-left:2px solid var(--color-text-muted);background:var(--color-bg-alt);}
.smile-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;padding:0;margin:34px 0;}
.smile-steps>li {border-top:1px solid var(--color-border);padding-top:20px;}
.smile-steps>li>span {font-family:var(--font-heading);font-size:1.6rem;color:var(--color-text-muted);display:block;margin-bottom:20px;}
.smile-steps h3 {font-size:1.6rem;}
.smile-steps p {font-size:.85rem;}
.smile-four-steps {grid-template-columns:repeat(4,minmax(0,1fr));}
.smile-note {padding:23px 26px;border:1px solid var(--color-border);border-left:2px solid var(--color-text-muted);}
.smile-style-grid {display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.smile-style-grid figure {margin:0;border:1px solid var(--color-border);}
.smile-style-grid img {display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;}
.smile-style-grid figcaption {padding:20px;display:flex;flex-direction:column;gap:7px;}
.smile-style-grid figcaption strong {font-family:var(--font-heading);font-size:1.6rem;font-weight:500;line-height:1.25;color:var(--color-text);}
.smile-style-grid figcaption span {font-size:.8rem;line-height:1.8;color:var(--color-text-light);}
.smile-gallery-section .smile-small {margin-top:18px;}
.smile-feature-grid,.smile-maintenance-grid {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6%;align-items:center;}
.smile-feature-grid .smile-card {padding:24px;}
.smile-text-link {display:inline-flex;align-items:center;min-height:44px;font-size:.83rem;font-weight:600;border-bottom:1px solid var(--color-border);text-decoration:none;}
.smile-table-scroll {max-width:100%;overflow:auto;border:1px solid var(--color-border);border-radius:3px;}
.smile-table {width:100%;min-width:680px;border-collapse:collapse;font-size:.82rem;color:var(--color-text-light);text-align:left;}
.smile-table caption {text-align:left;font-size:.8rem;padding:18px 20px;background:var(--color-bg-alt);color:var(--color-text);}
.smile-table th,.smile-table td {padding:17px 20px;border-bottom:1px solid var(--color-border);vertical-align:top;line-height:1.8;}
.smile-table th {color:var(--color-text);font-weight:600;}
.smile-table thead {background:var(--color-bg-alt);}
.smile-table td:nth-child(2),.smile-table td:nth-child(3) {white-space:nowrap;}
.smile-table tr:last-child>* {border-bottom:0;}
.smile-table small {font-size:.7rem;}
.smile-safety-grid {display:grid;grid-template-columns:1fr 1fr;gap:6%;margin:32px 0;}
.smile-faq-layout {display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:7%;}
.smile-faq {border:0;border-bottom:1px solid var(--color-border);margin:0;background:transparent;box-shadow:none;border-radius:0;}
.smile-faq summary {cursor:pointer;padding:20px 28px 20px 0;min-height:52px;font-size:.86rem;line-height:1.7;font-weight:600;color:var(--color-text);}
.smile-faq p {font-size:.84rem;padding:0 0 20px;margin:0;}
.smile-reading {max-width:840px;}
.smile-final {background:var(--color-bg-alt);}
.smile-final address {font-size:.83rem;font-style:normal;line-height:1.9;color:var(--color-text-light);margin:26px 0;}
.smile-client-grid {display:grid;gap:24px;}
.smile-client-grid figure {margin:0;}
.smile-client-pair {display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.smile-client-grid img {width:100%;height:auto;}
.smile-client-grid figcaption {font-size:.8rem;color:var(--color-text-light);}
.smile-content :is(a,summary,[tabindex]):focus-visible,.smile-hero a:focus-visible {outline:3px solid var(--color-text);outline-offset:5px;}
@media(max-width:1000px){.smile-four-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.smile-feature-grid{gap:28px}.smile-card{padding:25px}}
@media(max-width:760px){body[data-service-experience] .smile-hero{padding:110px 0 30px}.smile-hero-grid{grid-template-columns:1fr;gap:25px}body[data-service-experience] .smile-hero h1{font-size:2.65rem;max-width:550px}.smile-hero-art img{aspect-ratio:3/2;object-position:center 32%}.smile-hero .smile-actions{display:grid;grid-template-columns:1fr;width:100%}.smile-card-grid,.smile-style-grid,.smile-feature-grid,.smile-maintenance-grid,.smile-safety-grid,.smile-faq-layout{grid-template-columns:1fr;gap:24px}.smile-section{padding:43px 0;scroll-margin-top:95px}.smile-intro{padding-top:24px}.smile-steps{grid-template-columns:1fr;gap:18px}.smile-steps>li{display:grid;grid-template-columns:36px 1fr;column-gap:14px}.smile-steps>li>span{grid-row:1/3;font-size:1.4rem;margin:0}.smile-steps h3{margin:0 0 12px}.smile-steps p{grid-column:2;margin:0}.smile-feature-art{max-width:470px}.smile-feature-art img{aspect-ratio:4/3;object-position:center 30%}.smile-category-nav{gap:8px}.smile-category-nav a{flex:1 1 auto;justify-content:center;font-size:.75rem;padding:11px 13px}.smile-card h3{font-size:1.75rem}.smile-card{padding:24px}.smile-note{padding:20px}.smile-client-pair{gap:10px}}
@media(prefers-reduced-motion:reduce){.smile-content *,.smile-hero *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.smile-card-art {width:100%;margin:0 0 24px;}
.smile-card-art img {display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:2px;}
.smile-card-art figcaption {font-size:.65rem;line-height:1.6;color:var(--color-text-muted);margin-top:8px;}
