@font-face { font-family:swvc-rating; src:url('/wp-content/mu-plugins/smileworks-veneers-cost/rating-star.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; unicode-range:U+2B51; }
/* Native header/footer and protected selfie-row styles continue to come from the theme. */
@font-face { font-family:Montserrat; src:url('/wp-content/themes/smileworksuk/fonts/montserrat-regular-webfont.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; }
@font-face { font-family:Montserrat; src:url('/wp-content/themes/smileworksuk/fonts/montserrat-semibold-webfont.woff2') format('woff2'); font-weight:600 800; font-style:normal; font-display:swap; }
.swvc { --vc-purple:#380072; --vc-yellow:#f9ff5e; --vc-ink:#171419; --vc-muted:#514d53; --vc-border:#d8d6d4; }
.swvc-section { color:var(--vc-ink); background:#fff; font:400 18px/1.75 Lato,Arial,sans-serif; padding:52px 24px; }
.swvc-section *, .swvc-section *::before, .swvc-section *::after { box-sizing:border-box; }
.swvc-container { width:100%; max-width:1120px; margin:0 auto; }
.swvc-section .swvc-block { min-width:0; }
.swvc-section .fl-module, .swvc-section .fl-module-content { margin:0; padding:0; }
.swvc-section h1, .swvc-section h2, .swvc-section h3, .swvc-section h4 { color:var(--vc-ink); font-family:Montserrat,Arial,sans-serif; text-align:left; text-transform:none; letter-spacing:-.035em; margin:0 0 24px; line-height:1.15; }
.swvc-section h1 { font-size:clamp(32px,4vw,50px); font-weight:600; max-width:850px; }
.swvc-section h1::before { content:""; display:block; height:3px; width:36px; background:var(--vc-yellow); margin-bottom:18px; }
.swvc-section h2 { font-size:24px; font-weight:400; }
.swvc-section h3 { font-size:24px; font-weight:600; margin:36px 0 14px; }
.swvc-section h4 { font-size:17px; font-weight:600; letter-spacing:0; }
.swvc-section p { max-width:740px; margin:0 0 22px; color:var(--vc-muted); font:inherit; text-align:left; }
.swvc-section strong { font-weight:600; }
.swvc-section p:last-child { margin-bottom:0; }
.swvc-section ul, .swvc-section ol { padding-left:24px; margin:22px 0; max-width:740px; color:var(--vc-muted); }
.swvc-section li { padding-left:5px; margin:8px 0; }
.swvc-section a { color:var(--vc-purple); text-decoration:underline; text-underline-offset:3px; }
.swvc-section a:hover { color:#5b0080; }
.swvc-section a:focus-visible, .swvc-section [tabindex]:focus-visible { outline:3px solid #5b0080; outline-offset:4px; }
.swvc-section [id], .swvc-section[id] { scroll-margin-top:130px; }
.swvc-hero { padding:54px 24px 48px; background:#f4f4f2; }
.swvc-hero .swvc-container { display:grid; grid-template-columns:1.2fr 1fr; align-items:center; gap:44px; }
.swvc-hero h1 { font-size:clamp(34px,4.1vw,58px); line-height:1.07; margin-bottom:24px; }
.swvc-hero h1::before { display:none; }
.swvc-hero h2 { font-size:17px; line-height:1.6; letter-spacing:0; color:var(--vc-muted); margin:0; }
.swvc-hero-image { width:100%; height:auto; border-radius:8px; display:block; aspect-ratio:1800/832; }
.swvc-intro { padding-top:40px; }
.swvc-table-scroll { width:100%; max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; margin:32px 0; border:1px solid var(--vc-border); border-radius:8px; background:#fff; scrollbar-color:var(--vc-purple) #eeecef; scrollbar-width:auto; }
.swvc-table-scroll table { width:100%; min-width:960px; table-layout:auto; border-collapse:collapse; margin:0; font-size:15px; line-height:1.6; color:var(--vc-ink); }
.swvc-table-scroll th { background:var(--vc-purple); color:#fff; font-weight:600; text-align:left; vertical-align:top; padding:18px 16px; border:0; }
.swvc-table-scroll td { padding:18px 16px; vertical-align:top; border:0; border-bottom:1px solid var(--vc-border); text-align:left; }
.swvc-table-scroll td span, .swvc-table-scroll th span { color:inherit; font:inherit; }
.swvc-table-scroll tbody tr:nth-child(even) { background:#f5f4f6; }
.swvc-table-scroll tbody tr:last-child td { border-bottom:0; }
.swvc-table-scroll td:nth-child(2) { font-weight:600; color:var(--vc-purple); min-width:125px; }
.swvc-table-scroll th:first-child, .swvc-table-scroll td:first-child { min-width:170px; }
.swvc-prices .swvc-table-scroll:last-of-type table { min-width:690px; }
.swvc-prices .swvc-table-scroll:last-of-type td:not(:first-child) { font-weight:600; color:var(--vc-purple); }
.swvc-invitation { background:var(--vc-purple); border-radius:8px; padding:30px 32px; margin:32px 0 36px; }
.swvc-invitation p { max-width:850px; color:#fff; font-size:18px; line-height:1.75; }
.swvc-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; max-width:900px; margin:26px 0 0; }
.swvc-actions .swvc-action { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:66px; padding:13px 12px; border:1px solid var(--vc-purple); border-radius:4px; text-decoration:none; font:600 15px/1.4 Montserrat,Arial,sans-serif; text-align:center; background:var(--vc-purple); color:#fff; }
.swvc-actions .swvc-action small { font-size:12px; line-height:1.4; font-weight:400; margin-top:3px; }
.swvc-actions .swvc-action--call { color:var(--vc-purple); background:#fff; }
.swvc-actions .swvc-action--book { color:#171419; background:var(--vc-yellow); border-color:var(--vc-purple); }
.swvc-invitation .swvc-action--ask { border:2px solid #fff; }
.swvc-invitation .swvc-action--call, .swvc-invitation .swvc-action--book { border-color:#fff; }
.swvc-actions .swvc-action:hover { box-shadow:0 0 0 2px var(--vc-purple); color:#fff; background:#4b008e; }
.swvc-actions .swvc-action--call:hover, .swvc-actions .swvc-action--book:hover { color:var(--vc-purple); background:#f1edf5; }
.swvc-actions .swvc-action:focus-visible { outline:3px solid #5b0080; outline-offset:4px; }
.swvc-invitation .swvc-action:focus-visible { outline-color:var(--vc-yellow); }
.swvc-treatment-links ul { list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:none; padding:0; margin:26px 0; gap:0 32px; }
.swvc-treatment-links li { margin:0; padding:18px 0; border-top:1px solid var(--vc-border); }
.swvc-treatment-links a { font-weight:600; }
.swvc-link-hint { display:block; max-width:440px; font-size:15px; line-height:1.65; margin-top:7px; }
.swvc-quote { background:var(--vc-purple); padding:38px 24px; position:relative; }
.swvc-quote-art { position:absolute; bottom:0; left:0; width:100%; height:auto; aspect-ratio:2048/350; opacity:.6; pointer-events:none; }
.swvc-quote .swvc-container { max-width:760px; position:relative; z-index:1; }
.swvc-quote p, .swvc-quote strong { color:#fff; text-align:left; }
.swvc-quote [data-original-node="smi2l8ov5xpg"] p { color:var(--vc-yellow); font-family:swvc-rating,serif; font-size:26px; line-height:1; margin-bottom:16px; letter-spacing:4px; }
.swvc-quote [data-original-node="r2ns18t9kjgv"] p { font-size:21px; font-weight:400; line-height:1.65; }
.swvc-quote [data-original-node="r2ns18t9kjgv"] strong { font-weight:400; }
.swvc-quote [data-original-node="62we1t5zbh9i"] p { font-size:14px; margin-top:20px; color:#e6d9f3; }
.swvc-number, .swvc-fullset, .swvc-factors, .swvc-longevity, .swvc-suitability, .swvc-faq { border-bottom:1px solid #e9e6eb; }
.swvc-section .fl-photo { width:100%; text-align:left; }
.swvc-section .fl-photo-content { display:block; width:100%; }
.swvc-section .fl-photo-img { display:block; width:auto; max-width:100%; height:auto; border-radius:8px; margin:24px 0; }
.swvc-number [data-original-node="cigfy9bz16n8"] { max-width:850px; }
.swvc-fullset [data-original-node="y2obchjqnfd8"] { max-width:850px; }
.swvc-longevity [data-original-node="dw791va5plng"] { max-width:850px; }
.swvc-fullmouth { border-left:3px solid var(--vc-purple); padding:20px 24px; margin:30px 0; max-width:850px; background:#f3f0f6; border-radius:0 8px 8px 0; }
.swvc-fullmouth p { font-size:16px; margin:0; }
.swvc-reviews { background:#f4f4f2; }
.swvc-reviews [data-original-node="fenwcri6d9lo"] img { width:120px; margin:0 0 22px; border-radius:0; }
.swvc-reviews .uabb-testimonials { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid var(--vc-border); border-radius:8px; padding:24px; gap:24px; background:#faf9fc; }
.swvc-reviews .uabb-testimonial { min-width:0; padding:22px; border:1px solid #e1dbe8; border-radius:8px; background:#fff; }
.swvc-reviews .uabb-testimonial p { font-size:15px; line-height:1.7; margin:0 0 20px; color:#343434; }
.swvc-reviews .uabb-testimonial h4 { color:var(--vc-purple); margin:0 0 5px; }
.swvc-reviews .uabb-testimonial-author-designation { color:#514d53; font-size:13px; }
.swvc-reviews .uabb-slider-prev, .swvc-reviews .uabb-slider-next { display:none; }
.swvc-prices { background:#f4f4f2; }
.swvc-factors h3 { color:var(--vc-purple); margin-top:34px; }
.swvc-faq .swvc-container { max-width:880px; }
.swvc-faq .swvc-faq-item { padding:26px 0; border-bottom:1px solid var(--vc-border); }
.swvc-faq .swvc-faq-item h3 { font-size:21px; margin:0 0 14px; line-height:1.4; letter-spacing:-.015em; }
.swvc-faq .swvc-faq-item p { font-size:16px; line-height:1.75; max-width:none; }
.swvc-faq .swvc-faq-item:last-child { border-bottom:0; }
.swvc-closing { background:#f4f4f2; }
.swvc-feed .swvc-container { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:32px; }
.swvc-feed .uabb-video { aspect-ratio:16/9; width:100%; position:relative; background:#171419; border-radius:8px; overflow:hidden; }
.swvc-feed .uabb-video__play, .swvc-feed .uabb-video__outer-wrap, .swvc-feed .uabb-video-inner-wrap { width:100%; height:100%; }
.swvc-feed .uabb-video__play img { display:block; width:100%; height:auto; aspect-ratio:16/9; }
.swvc-feed .uabb-video__play-icon { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:68px; height:48px; cursor:pointer; }
.swvc-feed .uabb-video iframe { width:100%; height:100%; position:absolute; inset:0; border:0; }
.swvc-location { padding-top:0; }
.swvc-location .swvc-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; }
.swvc-location iframe { width:100%; height:auto; aspect-ratio:4/3; display:block; border:0; border-radius:8px; }
.swvc-location .swvc-block:empty { display:none; }
body.postid-37176 #footer { padding:32px 0 0; }
body.postid-37176 #footer footer > .container { padding-bottom:28px; }
body.postid-37176 #footer .copyright-main { padding:24px 0; }
body.postid-37176 #footer .contact-form .inside { padding:0; }
body.postid-37176 .swvc-form-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px 20px; margin:18px 0; }
body.postid-37176 .swvc-field { min-width:0; }
body.postid-37176 .swvc-field:last-child { grid-column:1/-1; }
body.postid-37176 .swvc-field label { display:block; float:none; position:static; margin:0 0 6px; font:400 14px/1.5 Montserrat,Arial,sans-serif; color:#fff; }
body.postid-37176 .swvc-field .form-control { float:none; width:100%; margin:0; padding:12px; min-height:48px; box-sizing:border-box; font:400 16px/1.5 Montserrat,Arial,sans-serif; }
body.postid-37176 .swvc-field textarea { min-height:130px; resize:vertical; }
body.postid-37176 .swvc-form-status { color:#fff; margin:14px 0; font:400 15px/1.6 Montserrat,Arial,sans-serif; }
body.postid-37176 .swvc-form-status:empty { display:none; }
body.postid-37176 .sw-enquiry-dialog { width:min(640px,calc(100vw - 24px)); }
body.postid-37176 #form_emailus input[type=submit] { min-height:48px; }
@media(max-width:850px) {
 .swvc-section { padding:38px 24px; font-size:16px; line-height:1.75; }
 .swvc-hero .swvc-container { grid-template-columns:1fr; gap:26px; }
 .swvc-hero h1 { max-width:660px; font-size:clamp(34px,6vw,50px); }
 .swvc-hero-image { max-width:660px; }
 .swvc-feed .swvc-container, .swvc-location .swvc-container { grid-template-columns:1fr; }
 .swvc-reviews .uabb-testimonials { padding:18px; gap:18px; }
}
@media(max-width:600px) {
 .swvc-section { padding:32px 20px; }
 .swvc-section h1 { font-size:32px; margin-bottom:22px; }
 .swvc-hero h1 { font-size:35px; }
 .swvc-hero h2 { font-size:15px; }
 .swvc-table-scroll { margin:26px 0; }
 .swvc-table-scroll td, .swvc-table-scroll th { padding:16px 14px; }
 .swvc-invitation { padding:24px 20px; margin-left:0; margin-right:0; }
 .swvc-invitation p { font-size:16px; }
 .swvc-actions { grid-template-columns:1fr; gap:10px; }
 .swvc-actions .swvc-action { min-height:64px; }
 .swvc-treatment-links ul { grid-template-columns:1fr; gap:0; }
 .swvc-reviews .uabb-testimonials { grid-template-columns:1fr; padding:14px; gap:14px; }
 .swvc-reviews .uabb-testimonial { padding:18px; }
 .swvc-quote [data-original-node="r2ns18t9kjgv"] p { font-size:19px; }
 .swvc-fullmouth { padding:20px; }
 body.postid-37176 .swvc-form-fields { grid-template-columns:1fr; gap:12px; }
}
@media(prefers-reduced-motion:reduce) { .swvc-section *, .swvc-section *::before, .swvc-section *::after { scroll-behavior:auto; animation:none; transition:none; } }
