/* Adapted from Dentistry Dashboard DESIGN_LANGUAGE.md, September 2026.
   Kept locally so this separate project has no dependency on its checkout. */
@font-face{font-family:Inter;src:url('/fonts/inter-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/fonts/inter-600.woff2') format('woff2');font-weight:600 800;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url('/fonts/instrument-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
:root{--ink:#1c1c21;--text:#55555f;--muted:#70707c;--cream:#f7f6fb;--accent:#8f77f4;--accent-deep:#7c63ea;--accent-tint:#e9e4fd;--hairline:rgba(28,28,33,.08)}
body,.elementor,.elementor p,.elementor a,.elementor span,.elementor li,.elementor input,.elementor button{font-family:Inter,Arial,sans-serif!important}
body{color:var(--text)!important}.contact-strip{background:#f1f0f6;color:var(--muted);font-size:11px}.new-header{background:#ffffffc7;border-color:var(--hairline);backdrop-filter:blur(20px)}.new-header nav a{font-size:12px}.new-header nav a:hover,.hero-gallery{color:var(--accent-deep)}
.consultation-link,.hero-book,.submit-enquiry{background:var(--accent-deep);border-radius:999px;font-weight:600;box-shadow:0 8px 20px #8f77f433}.consultation-link:hover,.hero-book:hover,.submit-enquiry:hover{background:#6950d0;box-shadow:none}
.mobile-toggle{border-radius:999px;border-color:var(--hairline);background:#fff;color:var(--ink)}
.wordmark{font-family:Georgia,serif!important}.smile-hero{background:#f1eefb;max-width:1600px;margin:auto}.hero-copy h1{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;color:var(--ink);font-size:clamp(52px,5.5vw,84px)}.hero-copy h1 em{color:var(--ink)}.hero-copy .eyebrow,.eyebrow{color:var(--muted);text-transform:none;letter-spacing:0;font-size:13px}.hero-detail{color:var(--muted);letter-spacing:0;font-size:11px}.hero-photo{border-radius:24px}.hero-photo span{border-radius:999px;font-family:'Instrument Serif',Georgia,serif;font-style:italic}.hero-subtitle{color:var(--text);font-size:14px}
.booking-card{background:#ffffffc7;border:1px solid #fff;border-radius:20px;box-shadow:0 1px 2px #1c1c210a,0 16px 40px #1c1c2114;backdrop-filter:blur(20px)}.booking-card h2{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;font-size:44px}.booking-card input:not([type=checkbox]){border-radius:12px;border-color:#1c1c211a;background:#f6f6f9;font-size:16px}.booking-card input[type=checkbox]{accent-color:var(--accent-deep)}.choice{border-color:var(--hairline);background:white}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-tint)}.form-note{color:var(--muted)}
.elementor h2.elementor-heading-title,.elementor h3.elementor-heading-title{font-family:'Instrument Serif',Georgia,serif!important;font-style:italic;font-weight:400!important;text-transform:none!important;line-height:1.15!important;letter-spacing:-.02em!important}.elementor h2.elementor-heading-title{font-size:42px!important}.elementor h3.elementor-heading-title{font-size:30px!important}.elementor-location-footer h2.elementor-heading-title{font-size:28px!important}
.elementor-button:not(.legacy-offer){border-radius:999px!important}.legacy-offer{background:var(--accent-tint)!important;color:var(--ink)!important;border-radius:20px!important;font-weight:400!important}.elementor-testimonial{border-color:var(--hairline);border-radius:20px}.e-gallery-item,.elementor-image-carousel img{border-radius:16px}.site-dialog{border-radius:24px;background:var(--cream);box-shadow:0 24px 64px #1c1c2147}.dialog-close{background:var(--accent-deep);border-radius:999px}.site-dialog a{color:var(--accent-deep)}.site-dialog .elementor{padding:8px}
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px}.elementor-location-footer{background:white}.elementor-location-footer .elementor-background-overlay{display:none}.elementor a:not(.elementor-button):hover{color:var(--accent-deep)}
@media(max-width:767px){.hero-copy h1{font-size:58px}.elementor h2.elementor-heading-title{font-size:34px!important}.elementor h3.elementor-heading-title{font-size:28px!important}.booking-card h2{font-size:36px}.hero-photo{border-radius:20px}.site-dialog{border-radius:16px}.hero-copy{padding-top:38px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
.e-gallery-item[hidden]{display:none!important}.elementor-gallery-title{cursor:pointer;border:1px solid var(--hairline);border-radius:999px;padding:10px 18px!important;font-size:13px!important;margin:4px!important;background:white}.elementor-gallery-title[aria-pressed=true]{background:var(--accent-tint);color:#6950d0!important;border-color:var(--accent)}.elementor-gallery__titles-container{display:flex!important;flex-wrap:wrap;justify-content:center;gap:4px;padding-bottom:24px}.elementor-gallery-title:before,.elementor-gallery-title:after{display:none!important}
.elementor-gallery-title{text-transform:none!important}.eyebrow{text-transform:none!important}
.lightbox-frame{text-align:center}.lightbox-frame img{max-height:65dvh;max-width:100%;object-fit:contain}.lightbox-controls{display:flex;gap:12px;justify-content:center}.lightbox-controls button{border:1px solid var(--hairline);border-radius:999px;background:white;color:var(--accent-deep);padding:10px 18px;cursor:pointer}.lightbox-frame p{margin:14px 0}
