.timetable table {border:none;}
.timetable table tr > td:last-child {background-color:#eeeeee;}
.reviews .owl-carousel .owl-item p {border-width:0;}
.owl-carousel .owl-stage > div > div {min-height:500px;border-radius: 8px;}
.owl-carousel .owl-stage iframe {    border-radius: 8px 8px 0 0;}
.owl-carousel .owl-dots {float:left;margin-top: 10px;}
.owl-carousel .owl-nav {float:right;margin-top: 10px;}
.owl-theme .owl-dots .owl-dot.active span {width: 23px;}
.wp-block-group .owl-carousel .owl-nav button {    background: #eeeeee;
    padding: 7px 13px 2px 13px !important;
    border-radius: 50%;margin: 5px 20px;}
    .owl-carousel .owl-nav button span {
line-height:20px;font-size:33px;color: #3488bc;}
.tabs .wp-block-button a, .tabs .wp-block-button a img {transition: all .3s linear;}
.tabs .wp-block-button a img {    margin-bottom: -2px;}
.tabs .wp-block-button.selected a {color: #212529 !important;;background-color:#eeeeee!important;}
.tabs .wp-block-button.selected img {filter: invert(1);}
.tabs .wp-block-group {
    display: none;
}
.tabs.single .wp-block-group {display:block;}
.tabs.single .wp-block-group > ul {    columns: 2;}
.tabs .wp-block-group.opened {
    display: block;
    animation: fs-tab-in 0.35s ease both;
}
.posthead > * {flex:0 0 calc(50% - 18px);}
@keyframes fs-tab-in {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.tabs .wp-block-group > ul {list-style: none;columns:3;padding: 0;margin-top:25px;}
.tabs .wp-block-group ul li {    margin: 0 0 15px 0;
    position: relative;
    padding: 5px 5px 5px 40px;  font-size: 17px;
  font-weight: 500;    break-inside: avoid;}
  .tabs .wp-block-group ul li a {color:#2656c9;}
.tabs .wp-block-group > ul > li:before {content: url(/wp-content/uploads/2026/05/clean-teeth.png);    position: absolute;
    left: 0;top: 0px;
    height: 32px;}
    .tabs .wp-block-group > ul > li > a:before {content:"";    position: absolute;
    left: 0;top: 0px;width:100%;height:100%;background: #eeeeee;z-index: -1;}
    .tabs .wp-block-group > ul > li > a:after {content: url(/wp-content/uploads/2026/05/8c57d04481750c28e1770fbefb0edbec.svg);    position: absolute;
    right: 10px;top: 9px;margin:auto;
    height: 18px;width:18px;}
.tabs .wp-block-group ul li li, .tabs .wp-block-group ul ul {margin:0;padding:0;}
.tabs .wp-block-group ul li li a {font-size:14px;}


/* Personnel carousel */
.fs-personnel-card {display:flex;flex-direction:column;border-radius:8px;overflow:hidden;}
.fs-personnel-photo {margin-bottom: -120px;z-index: 3;}
.fs-personnel-card .fs-personnel-photo img {height:240px;display:block;    border-radius: 8px;
    width: auto;
    margin: 0 auto;}
.fs-personnel-info {padding:18px;padding-top:138px;display:flex;flex-direction:column;flex:1;background:#eeeeee;box-shadow:0 2px 12px rgba(0,0,0,.08);}
.fs-personnel-name {margin:0 0 6px;font-size:28px;color:#212529;font-weight:600;text-align:center;}
.fs-personnel-position {margin:0 0 12px;font-weight:400;color:#212529;font-size:17px;text-align:center;text-transform: uppercase;}
.team-template-default .fs-personnel-col-main .fs-personnel-position {margin-bottom:0;}
.fs-personnel-experience {margin:0 0 12px;font-size:17px;color:#212529;background:#d6d6d6;    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 15px;
    border-radius: 8px;}
    .fullteam {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
    .fs-personnel-card .fs-personnel-experience img {width:24px!important;margin:0;} 
.fs-personnel-clinic {margin-top:0;text-align:center;font-size:15px;color:#374151;}
.fs-personnel-quote {margin:8px 0;padding:8px 12px;border-left:3px solid #2563ae;font-style:italic;color:#374151;font-size:15px;}
.fs-personnel-expertise ul {list-style: none;padding:0;display: flex;
    gap: 10px;
    flex-wrap: wrap;}
    .team-template-default .fs-personnel-col-main {    background: #eeeeee;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .08);padding: 18px;}
    .team-template-default .fs-personnel-col-main .fs-personnel-info {box-shadow:none;padding:0;background:none;    }
    .team-template-default .fs-personnel-col-main .fs-personnel-photo {margin:0;}
.fs-personnel-expertise ul li {background:#3488bc26;padding: 4px 12px;
  border-radius: 8px;font-size:15px;}
.fs-personnel-link {border-top:1px solid #2656c926;font-weight:600;color:#2656c9;cursor:pointer;display: flex;
    gap: 6px;
    justify-content: center;
    margin-top:20px;padding-top:20px;
    align-items: center;    margin-bottom: 0;}
    .fs-personnel-bio > p:first-child {margin-top:0;}
.fs-personnel-link img {width:16px!important;margin: 0 !important;    transform: rotate(-90deg);}
.fs-personnel-bio {margin-top:0;font-size:.9rem;color:#374151;line-height:1.6;}

/* Before & After Gallery */
.fs-ba-wrap {
    display: grid;
    grid-template-columns: repeat(var(--fs-ba-cols, 3), 1fr);
    gap: 24px;
}
.fs-ba-wrap > .wp-block-group {
    display: flex;
    flex-direction: column;
}
.fs-ba-wrap .fs-ba-slider {
    flex: 1;
}
.fs-ba-wrap > .wp-block-group  {
    border-radius: 8px;
    overflow: hidden;background:white;  box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.03), 0 4px 8px 0 rgba(0, 0, 0, 0.02);
}
.fs-ba-wrap > .wp-block-group > p {
margin: 10px;
    display: flex;
    justify-content: space-between;
}
.fs-ba-wrap > .wp-block-group > p a {color:#2656c9;font-weight:600;}
.fs-ba-wrap > .wp-block-group > p a img {margin-bottom:-3px;}
.ctabanner > div {    margin-left: 64px !important;
    width: calc(100% - 64px);}

/* Twenty20 before/after slider */
.twentytwenty-horizontal .twentytwenty-handle:before,.twentytwenty-horizontal .twentytwenty-handle:after,.twentytwenty-vertical .twentytwenty-handle:before,.twentytwenty-vertical .twentytwenty-handle:after{content:" ";display:block;background:white;position:absolute;z-index:30;box-shadow:0px 0px 12px rgba(51,51,51,0.5)}
.twentytwenty-horizontal .twentytwenty-handle:before,.twentytwenty-horizontal .twentytwenty-handle:after{width:3px;height:9999px;left:50%;margin-left:-1.5px}
.twentytwenty-vertical .twentytwenty-handle:before,.twentytwenty-vertical .twentytwenty-handle:after{width:9999px;height:3px;top:50%;margin-top:-1.5px}
.twentytwenty-overlay{position:absolute;top:0;width:100%;height:100%;transition-duration:.5s}
.twentytwenty-before-label,.twentytwenty-after-label{transition-property:opacity;color:white;font-size:13px;letter-spacing:.1em;position:absolute;background:rgba(255,255,255,.2);line-height:38px;padding:0 20px;border-radius:2px}
.twentytwenty-container{box-sizing:content-box;z-index:0;overflow:hidden;position:relative;user-select:none}
.twentytwenty-container img{max-width:100%;width:100%;position:absolute;top:0;display:block}
.twentytwenty-container.active .twentytwenty-overlay,.twentytwenty-container.active :hover.twentytwenty-overlay{background:rgba(0,0,0,0)}
.twentytwenty-container.active .twentytwenty-overlay .twentytwenty-before-label,.twentytwenty-container.active .twentytwenty-overlay .twentytwenty-after-label{opacity:0}
.twentytwenty-container *{box-sizing:content-box}
.twentytwenty-before-label{opacity:0}
.twentytwenty-after-label{opacity:0}
.twentytwenty-container.t20-hover.active .twentytwenty-overlay .twentytwenty-before-label,.twentytwenty-container.t20-hover.active .twentytwenty-overlay .twentytwenty-after-label{opacity:1}
.twentytwenty-horizontal .twentytwenty-before-label{left:1px;bottom:0;max-width:50%;box-sizing:border-box;line-height:inherit;padding:4px}
.twentytwenty-horizontal .twentytwenty-after-label{right:1px;bottom:0;max-width:50%;box-sizing:border-box;line-height:inherit;padding:4px}
.twentytwenty-vertical .twentytwenty-before-label{top:1px;line-height:inherit;padding:6px;box-sizing:border-box}
.twentytwenty-vertical .twentytwenty-after-label{bottom:1px;line-height:inherit;padding:6px;box-sizing:border-box}
.twentytwenty-overlay{transition-property:background;background:rgba(0,0,0,0);z-index:25}
.twentytwenty-overlay:hover{background:rgba(0,0,0,.5)}
.twentytwenty-overlay:hover .twentytwenty-after-label,.twentytwenty-overlay:hover .twentytwenty-before-label{opacity:1}
.twentytwenty-before{z-index:20}
.twentytwenty-after{z-index:10}
.twentytwenty-handle{height:38px;width:38px;position:absolute;left:50%;top:50%;margin-left:-22px;margin-top:-22px;border:3px solid white;border-radius:1000px;box-shadow:0px 0px 12px rgba(51,51,51,.5);z-index:40;cursor:pointer}
.twentytwenty-horizontal .twentytwenty-handle:before{bottom:50%;margin-bottom:22px;box-shadow:0 3px 0 white,0px 0px 12px rgba(51,51,51,.5)}
.twentytwenty-horizontal .twentytwenty-handle:after{top:50%;margin-top:22px;box-shadow:0 -3px 0 white,0px 0px 12px rgba(51,51,51,.5)}
.twentytwenty-vertical .twentytwenty-handle:before{left:50%;margin-left:22px;box-shadow:3px 0 0 white,0px 0px 12px rgba(51,51,51,.5)}
.twentytwenty-vertical .twentytwenty-handle:after{right:50%;margin-right:22px;box-shadow:-3px 0 0 white,0px 0px 12px rgba(51,51,51,.5)}
.twentytwenty-up-arrow{border-bottom:6px solid white;top:50%;margin-top:-17px}
.twentytwenty-down-arrow{border-top:6px solid white;bottom:50%;margin-bottom:-17px}
.twentytwenty-left-arrow,.twentytwenty-right-arrow,.twentytwenty-up-arrow,.twentytwenty-down-arrow{width:0;height:0;border:6px inset transparent;position:absolute;    top: 0;
    bottom: 0;
    margin: auto;}
    .wp-block-group p img {margin-bottom:-3px;}
    .twentytwenty-left-arrow{border-right:6px solid white;left:50%;margin-left:-17px}
.twentytwenty-right-arrow{border-left:6px solid white;right:50%;margin-right:-17px}
.pseudobuttons {    list-style: none;
    padding: 0;
    display: flex;
    flex-wrap: wrap;}
    .whiteimage img {filter:brightness(100);}
footer.wp-block-template-part {margin:0!important;}
.twocol {columns:2;}
.twocol > li {margin-top:0;}
.tabs .wp-block-group ul.fourcol, .fourcol {columns:4;}
/* Yoast FAQ accordion */
.schema-faq-section {border-bottom: 1px solid #e5e7eb;padding: 0;}
.schema-faq-section:first-child {border-top: 1px solid #e5e7eb;}
.schema-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 16px 0;
    cursor: pointer;
    font-size: 18px;
    font-weight:600;
    user-select: none;
}
.schema-faq-question::after {
    content: '+';
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1;
    color: #2563ae;
    flex-shrink: 0;
    margin-left: 16px;
    transition: transform .2s ease;
}
.schema-faq-question[aria-expanded="true"]::after {
    content: '\2212';
}
.schema-faq-answer {
    padding: 0 0 16px;
    }
    .gfield_required.gfield_required_text {    color: #FFCCCC;}
    #gform_fields_2 .gfield_required.gfield_required_text {color: #FF0000;}
    .gform-theme--foundation .gform_fields {row-gap: 20px;}
.fs-owl-wrap {overflow:hidden;}

		.fs-modal-backdrop {
			position: fixed;
			inset: 0;
			z-index: 99999;
			background: rgba(26,43,60,0.55);
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 20px;
			backdrop-filter: blur(2px);
		}
		.fs-modal-backdrop[hidden] { display: none; }

		.fs-modal-overlay {
			position: relative;
			background: #fff;
			border-radius: 16px;
			box-shadow: 0 12px 48px rgba(0,0,0,0.18);
			width: 100%;
			max-width: 520px;
			overflow: hidden;
			animation: fsModalIn 0.22s ease;
		}
		@keyframes fsModalIn {
			from { opacity: 0; transform: translateY(12px) scale(0.97); }
			to   { opacity: 1; transform: translateY(0)    scale(1);    }
		}

		.fs-modal-close {
			position: absolute;
			top: 14px;
			right: 16px;
			background: none;
			border: none;
			font-size: 22px;
			line-height: 1;
			color: #6B7280;
			cursor: pointer;
			padding: 4px 8px;
			border-radius: 4px;
			transition: color 0.15s, background 0.15s;
		}
		.fs-modal-close:hover { color: #1A2B3C; background: #F7F5F2; }

		.fs-modal-header {
			padding: 28px 32px 0;
			text-align: center;
		}
		.fs-modal-header h3 {
			font-size: 22px;
			color: #1A2B3C;
			margin: 0 0 6px;
			font-weight: 400;
		}
		.fs-modal-header p { color: #6B7280; font-size: 14px; margin: 0; }

		.fs-location-options {
			padding: 20px 32px 32px;
			display: flex;
			flex-direction: column;
			gap: 10px;
		}

		.fs-location-card {
			display: flex;
			align-items: center;
			gap: 16px;
			padding: 16px 20px;
			background: #F7F5F2;
			border: 2px solid transparent;
			border-radius: 10px;
			text-decoration: none;
			color: inherit;
			transition: border-color 0.2s, background 0.2s;
		}
		.fs-location-card:hover {
			border-color: #0B7B7D;
			background: #E8F5F5;
		}

		.fs-loc-icon {
			width: 44px;
			height: 44px;
			border-radius: 50%;
			background: #fff;
			display: flex;
			align-items: center;
			justify-content: center;
			flex-shrink: 0;
			box-shadow: 0 1px 3px rgba(0,0,0,0.08);
			transition: background 0.2s;
		}
		.fs-loc-icon svg { color: #0B7B7D; transition: color 0.2s; }
		.fs-location-card:hover .fs-loc-icon             { background: #0B7B7D; }
		.fs-location-card:hover .fs-loc-icon svg         { color: #fff; }

		.fs-loc-info  { flex: 1; min-width: 0; }
		.fs-loc-name  { font-size: 15px; font-weight: 600; color: #1A2B3C; margin-bottom: 2px; }
		.fs-loc-address { font-size: 13px; color: #6B7280; line-height: 1.4; }
		.fs-loc-tag {
			display: inline-block;
			font-size: 11px;
			font-weight: 500;
			color: #0B7B7D;
			background: rgba(11,123,125,0.1);
			padding: 2px 8px;
			border-radius: 4px;
			margin-top: 4px;
		}

		.fs-loc-arrow {
			color: #0B7B7D;
			opacity: 0;
			transform: translateX(-4px);
			transition: opacity 0.2s, transform 0.2s;
			flex-shrink: 0;
		}
		.fs-location-card:hover .fs-loc-arrow { opacity: 1; transform: translateX(0); }

		@media (max-width: 600px) {
			.fs-modal-header    { padding: 24px 16px 0; }
			.fs-location-options { padding: 16px 16px 24px; }
		}

    @media screen and (max-width: 1000px) {
        .entry-content .wp-block-buttons {
            justify-content: center;
        }
        .fs-owl-wrap .owl-carousel, .fs-personnel-wrap .owl-carousel {margin-bottom:30px;}
        .entry-content .tabs .wp-block-buttons {        justify-content: left;}
    }

        @media screen and (max-width: 768px) {
			.posthead > * {flex: 0 0 100%;} 
                .fullteam {display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.fs-personnel-single .fs-personnel-card {display:flex!important;flex-direction:column;}
            .distance .wp-block-columns .wp-block-column{flex-basis: auto !important;}
            .location {box-shadow:none!important;padding:0!important;}
            .hero {padding: 0 !important;}
        .hero > .wp-block-columns {gap: 20px;flex-direction: column-reverse;}
        .hero > .wp-block-columns > .wp-block-column:first-child, .hero > .wp-block-group { padding:10px;box-sizing: border-box;}
.wp-block-media-text {display:flex;}
.wp-block-media-text > figure {flex-shrink: 0;}
.wp-block-media-text .wp-block-media-text__content {    padding: 0 0 0 10px!important;}
.wp-block-column > iframe {min-height:300px;}
.tabs .wp-block-group ul {columns: 2;}
.fs-ba-wrap {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 24px;
}
.tabs .wp-block-group ul.fourcol, .fourcol {columns:3;}
.alllocations > .wp-block-column {    padding: 16px !important;}
.alllocations > .wp-block-column > .wp-block-group {padding: 0 !important;}
.alllocations .wp-block-image {        flex: 0 0 auto;}
.ctabanner {margin-top:64px!important;}
.ctabanner > div {width:100%;margin:0!important;        padding: 0 20px 20px !important;}
.ctabanner .wp-block-columns, .ctabanner .wp-block-columns h2 {text-align:center;gap:20px;}
    .ctabanner figure {margin: -64px 0 0 0 !important;}
    }

    @media screen and (max-width: 600px) {
		.tabs.single .wp-block-group > ul {columns:1;}
.tabs .wp-block-group ul.fourcol, .fourcol {columns:2;}
    }
    @media screen and (max-width: 450px) {
            .fullteam {display:grid;grid-template-columns:repeat(1,1fr);gap:24px;}

.entry-content .wp-block-buttons .wp-block-button {width: 100%;}

    }
    @media screen and (max-width: 420px) {
    .twocol {columns:1;}
    }
 
/* Video popup (.videopop) */
.videopop {position:relative;cursor:pointer;}
.videopop .wp-block-embed, .videopop .wp-block-video {position:relative}
.videopop iframe, .videopop video {pointer-events:none;}
.videopop .wp-block-embed::after, .videopop .wp-block-video::after {content:'';position:absolute;inset:0;margin:auto;width:70px;height:70px;background:rgba(0,0,0,.6) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23fff'><path d='M8 5v14l11-7z'/></svg>") center/40% no-repeat;border-radius:50%;pointer-events:none;transition:background-color .2s;top: -30px;}
.videopop:hover::after {background-color:rgba(0,0,0,.85);}
body.fs-videopop-open {overflow:hidden;}
.fs-videopop-overlay {position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:99999;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;padding:20px;box-sizing:border-box;}
.fs-videopop-overlay.open {opacity:1;}
.fs-videopop-box {position:relative;width:100%;max-width:720px;aspect-ratio:16/9;background:#000;border-radius:8px;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.5);}
.fs-videopop-box iframe, .fs-videopop-box video {width:100%;height:100%;border:0;display:block;}
.fs-videopop-close {position:absolute;top:-40px;right:0;background:transparent;border:0;color:#fff;font-size:32px;line-height:1;cursor:pointer;padding:4px 12px;}
.fs-videopop-close:hover {color:#ccc;}

