@font-face {
    font-family: 'Sofia Pro';
    src: url('fonts/SofiaPro-Light.eot') format('embedded-opentype'),
         url('fonts/SofiaPro-Light.woff2') format('woff2'),
         url('fonts/SofiaPro-Light.woff') format('woff'),
         url('fonts/SofiaPro-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: 'Sofia Pro';
    src: url('fonts/SofiaProRegular.eot') format('embedded-opentype'),
         url('fonts/SofiaProRegular.woff2') format('woff2'),
         url('fonts/SofiaProRegular.woff') format('woff'),
         url('fonts/SofiaProRegular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Sofia Pro';
    src: url('fonts/SofiaProMedium.eot') format('embedded-opentype'),
         url('fonts/SofiaProMedium.woff2') format('woff2'),
         url('fonts/SofiaProMedium.woff') format('woff'),
         url('fonts/SofiaProMedium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Sofia Pro';
    src: url('fonts/SofiaProSemiBold.eot') format('embedded-opentype'),
         url('fonts/SofiaProSemiBold.woff2') format('woff2'),
         url('fonts/SofiaProSemiBold.woff') format('woff'),
         url('fonts/SofiaProSemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}
@font-face {
    font-family: 'Sofia Pro';
    src: url('fonts/SofiaProBold.eot') format('embedded-opentype'),
         url('fonts/SofiaProBold.woff2') format('woff2'),
         url('fonts/SofiaProBold.woff') format('woff'),
         url('fonts/SofiaProBold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}
body, span, p, li, a {
    font-family: 'Sofia Pro';
    line-height: 1.5;
    margin: 0;
    padding: 0;
}
h1, h2, h3, h4, h5, h6 {
    font-family: 'Sofia Pro';
    line-height: 1.5;
    margin: 0;
    padding: 0;
    width: 100%;
}
img {
    max-width: 100%;
    height: auto;
}
ol, ul {
    margin: 0;
    padding: 0;
}
li {
    list-style: none;
}
h1, h2, h3, h4, h5, h6, p, a, span {
    display: inline-block;
}
a:hover {
    text-decoration: none;
    color: #EF9220;
}
hr {
    width: 140px;
    margin: 32px auto;
    border: 0;
    border-top: 2px solid #c8a51b;
    opacity: .5;
}
.header_logo img, .footer_logo img{
    filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(269deg) brightness(103%) contrast(102%);
}
/*===============================================
= Start Default CSS
===============================================*/
body .container {
    max-width: 1540px;
    padding: 0 20px;
}
@media only screen and (min-width: 320px) {
    body .container {
        max-width: 100%;
    }
}
@media only screen and (min-width: 768px) {
    body .container {
        max-width: 900px;
    }
}
@media only screen and (min-width: 992px) {
    body .container {
        max-width: 960px;
    }
}
@media only screen and (min-width: 1200px) {
    body .container {
        max-width: 1140px;
    }
}
@media only screen and (min-width: 1400px) {
    body .container {
        max-width: 1320px;
    }
}
@media only screen and (min-width: 1600px) {
    body .container {
        max-width: 1540px;
    }
}
.btn_group {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
}
.lp_default_btn {
    padding: 16px 42px;
    background: #c8a51b;
    color: #Fff;
    font-weight: 600;
    font-size: 16px;
    border-radius: 50px;
    border: 2px solid transparent;
    line-height: 1;
    font-family: 'Sofia Pro';
    transition: all 0.4s;
    text-decoration: none;
    text-align: center;
}
.lp_default_btn:hover {
    border-color: #c8a51b;
    background: transparent;
    color: #c8a51b;
}
.white_default_btn.lp_default_btn {
    color: #Fff;
    border-color: #fff;
    background: transparent;
}
.white_default_btn.lp_default_btn:hover {
    background: #fff;
    color: #c8a51b;
}
.lp_default_btn span{
    line-height: 1;
}
@media only screen and (max-width: 991px) {
    body .container-fluid {
        padding-left: 20px;
        padding-right: 20px;
    }
    hr {
        margin: 24px auto;
    }
}
@media only screen and (max-width: 767.98px){
    .lp_default_btn{
        padding: 14px 22px;
    }
}
@media only screen and (max-width: 575px){
    .lp_default_btn span {
        display: none;
    }
    .default_cta, .lp_default_btn{
        width: 100%;
    }
}
/*===============================================
= End Default CSS
===============================================*/
/*===============================================
= section padding CSS
================================================*/
.section_padding {
    padding: 100px 0;
}

.section_small_padding {
    padding: 60px 0px;
}
@media only screen and (max-width: 1024px) {
    .section_padding {
        padding: 80px 0;
    }
    .section_small_padding {
        padding: 50px 0;
    }
}
@media only screen and (max-width: 991px) {
    .section_padding {
        padding: 60px 0;
    }
    .section_small_padding {
        padding: 40px 0;
    }
}
@media only screen and (max-width: 767px) {
    .section_padding {
        padding: 50px 0;
    }
}
/*===============================================
= End section padding CSS
================================================*/
/*===============================================
= start Header CSS
============================================*/
.lp_header {
    position: absolute;
    z-index: 9;
    width: 100%;
    top: 0;
    left: auto;
    padding: 40px 0;
}
.sticky-header {
    position: sticky;
    width: 100%;
    top: -1px;
    left: 0;
    background: #0079ac;
    z-index: 99;
    display: inline-block;
    padding: 20px 0;
}
.header_btn {
    text-align: right;
}
@media only screen and (max-width: 1024.98px){
    .btn_group.header_btn .call_btn span{
        display: none;
    }    
}
@media only screen and (max-width: 767.98px){
    .lp_header{
        padding: 20px 0;
    }
    .header_btn .lp_default_btn {
        padding: 16px 20px;
        font-size: 14px;
    }
}
@media only screen and (max-width: 575px) {
    .header_btn .book_btn {
        display: none;
    }
}
@media only screen and (max-width: 480px) {
    .lp_header .container {
        padding: 0 20px;
    }
}

/*===============================================
= End Header CSS
============================================*/
/*===============================================
= footer start  CSS
============================================*/
.lp_footer {
    padding: 15px 0;
    background: #0079ac;
}
.footer_text p {
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    color: #Fff;
    text-align: right;
    width: 100%;
    margin: 0;
}
@media only screen and (max-width: 991px) {
    .footer_text p {
        margin: 25px 0 0;
        text-align: center;
    }
    .footer-col-2 {
        order: 3;
    }
    .footer-col-3 {
        order: 2;
    }
}
@media only screen and (max-width: 767px) {
    .footer_logo {
        margin: 0 0 20px;
    }
}
@media only screen and (max-width: 575px) {
    .lp_footer {
        padding: 25px 0;
    }
    .footer_logo{
        text-align: center;
    }
    .footer_text p {
        margin: 20px 0 0;
    }
}
/*===============================================
= End footer CSS
============================================*/
/*===============================================
= Start Banner CSS
================================================*/
.hero_banner_wrap {
    display: block;
    background: rgba(0, 0, 0, 0);
    background-image: url("/lp-asset/lp-images/implant-banner-img.jpg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    aspect-ratio: 21/8.8;
    position: relative;
    padding-top: 140px;
}
.hero_banner_wrap .baqnner_text_wrap {
    width: 100%;
    height: 100%;
    display: flex;
    display: -ms-flexbox;
    flex-direction: column;
    justify-content: flex-end;
    -ms-flex-pack: flex-end;
    align-items: center;
    -ms-flex-align: center;
}
.baqnner_text_wrap h1 {
    font-size: 74px;
    font-weight: 500;
    line-height: 1.2;
    color: #D1D7DF;
    text-align: center;
}
.baqnner_text_wrap h1 span {
    color: #fff;
/*    text-decoration: underline;*/
}
.baqnner_text_wrap p{
    padding-top: 40px;
    padding-bottom: 40px;
    color: #fff;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.4;
    text-align: center;
}
@media only screen and (min-width: 992px){
    .hero_banner_wrap{
        height: 100%;
    }
    .hero_banner_wrap .container, .hero_banner_wrap .row{
        height: inherit;
    }
}
@media only screen and (max-width: 1600px){
    .baqnner_text_wrap h1{
        font-size: 64px;
    }
}
@media only screen and (max-width: 1366px){
    .baqnner_text_wrap h1{
        font-size: 54px;
    }
    .baqnner_text_wrap p{
        font-size: 40px;
    }
}
@media only screen and (max-width: 1199px){
    .baqnner_text_wrap h1{
        font-size: 44px;
    }
    .baqnner_text_wrap p{
        font-size: 30px;
    }
}
@media only screen and (max-width: 1024px) {
    .baqnner_text_wrap h1 {
        font-size: 30px;
    }
    .baqnner_text_wrap p{
        font-size: 25px;
    }
}
@media only screen and (max-width: 991px) {
    .baqnner_text_wrap p{
        font-size: 22px;
        padding-top: 30px;
        padding-bottom: 30px;
    }
}
@media only screen and (max-width: 767px) {
    .baqnner_text_wrap p{
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

/*===============================================
= End Banner CSS
================================================*/
/*===============================================
= Start Testimonials Video CSS
================================================*/
.testimoial_section{
    background-color: #F1F1F1;
}
.patients-srories-container{
    max-width: 1630px;
    margin: 0 auto !important;
    padding: 0 30px;
}
.patients-stories-content {
    position: relative;
}
.patients-stories-content .full_img {
    position: relative;
    padding-top: 56%;
}
.full_img iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
        display: block;
}
@media only screen and (min-width: 768.5px){
    .patients-stories-slider .slick-current.slick-active.slick-center .patients-stories-slide, 
    .patients-stories-slider .slick-slide:nth-child(2) .patients-stories-slide {
        margin: 0 -95px !important;
        position: relative !important;
        z-index: 11 !important;
        transition: none !important;
    }
}
.video-btn {
    background-color: rgba(0, 0, 0, .8);
    width: 100%;
    height: 100%;
    border: none !important;
    padding: inherit;
    position: absolute;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    opacity: 0;
}
.video-btn i {
    color: #ffffff;
}
.patients-srories-container .hp-section-text h2{
    text-align: center;
}
.modal-dialog {
    max-width: 800px;
    margin: auto;
    height: 100%
}
.modal-body {
    position: relative;
    padding: 0
}
.modal-content {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #000;
    border-radius: 0;
    border: none;
}
.video_modal .close {
    padding: 0;
    background-color: transparent;
    border: 0;
}
.close {
    position: absolute;
    right: 10px;
    top: 5px;
    z-index: 999;
    font-size: 2rem;
    font-weight: 400;
    color: #ffffff !important;
    opacity: 1;
    background: transparent;
    border: none;
    line-height: 1;
}
.close:hover {
    opacity: 1 !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    color: #e5c160 !important
}
.modal-open .modal {
  background-color: rgb(0 0 0 / 70%);
}
.video_modal .modal-content .embed-responsive::before {
    content: "";
    padding-top: 56.25%;
    display: block;
}
.video_modal .modal-content .embed-responsive iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}
.patient-content {
    padding: 10px 24px;
    background-color: #6db4b3;
    text-align: center;
}
.patient-content p{
    color: #fff;
}
@media screen and (min-width: 992px){
    .patients-stories-slider .slick-track {
        display: flex;
        align-items: center;
    }
    .full_img, .full_img div {
        height: 100%;
    }
}
@media only screen and (max-width:864px) {
    .modal-dialog {
        margin-right: 30px;
        margin-left: 30px
    }
}
@media only screen and (max-width: 767px){
    .patient-stories{
        padding-top: 0;
    }
}
/* vd-slider */
.vd-slider .slick-dots {
    bottom: -35px;
}
@media screen and (max-width: 991px) {
    .vd-slider {
        margin-bottom: 55px !important;
    }   
}
/*===============================================
= End Testimonials Video CSS
================================================*/
/* ====================================
== Start Slider Arrow Design
======================================= */
.slick-dots {
    position: unset;
    line-height: 1;
    margin-top: 40px;
}
.slick-dots li {
    width: 12px;
    height: 12px;
}
.slick-dots li button {
    width: 100%;
    height: 100%;
    padding: 0;
}
.slick-dots li button:before {
    font-size: 12px;
    width: 100%;
    height: 100%;
    opacity: 1;
    color: #0079ac59;
    line-height: 1;
}
.slick-dots li.slick-active button:before {
    opacity: 1;
    color: #c8a51b;
}
.slick-next, .slick-prev {
    height: 40px;
    width: 40px;
    border-radius: 50%;
    border: 1px solid #c8a51b;
    background: #c8a51b;
    z-index: 1;
}
.slick-next:before, .slick-prev:before {
    content: "" !important;
    width: 100%;
    height: 100%;
    display: block;
    opacity: 1;
    background-image: url(/lp-asset/lp-images/right-arrow-icon.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto;
    opacity: 1 !important;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(339deg) brightness(105%) contrast(101%);
}
.slick-next:hover:before, .slick-prev:hover:before,
.slick-next:focus:before, .slick-prev:focus:before{
    filter: brightness(0) invert(30%) sepia(67%) saturate(1283%) hue-rotate(200deg) brightness(101%) contrast(107%);
}
.slick-next.slick-disabled, .slick-prev.slick-disabled {
    opacity: .25;
}
.slick-prev:before {
    transform: rotate(180deg);
}
.slick-prev {
    left: -60px;
}
.slick-next {
    right: -60px;
}
@media only screen and (max-width:1440px) {
    .slick-prev {
        left: -20px;
    }
    .slick-next {
        right: -20px;
    }
}
@media only screen and (max-width:1024px) {
    .slick-next, .slick-prev {
        width: 30px;
        height: 30px;
    }
    .slick-prev {
        left: -15px;
    }
    .slick-next {
        right: -15px;
    }
}
/* ====================================
== End Slider Arrow Design
======================================= */
/*============================================
= Start Left Right Section CSS
===============================================*/
.bg_color{
    background-color: #F1F1F1;
}
.side_video iframe {
    box-shadow: rgba(41, 33, 18, 0.5) 0px 20px 50px 5px;
}
.side_content {
    width: 100%;
    max-width: 610px;
}
.common_title h2 {
    font-size: 56px;
    font-weight: 500;
    line-height: 1.2;
    color: #0079ac;
}
.common_title.blue_color h2{
    color: #254464;
}
.side_content h3 {
    font-size: 40px;
    font-weight: 400;
    line-height: 1.2;
    color: #254464;
    padding: 12px 0 24px;
}
p {
    font-size: 25px;
    font-weight: 400;
    color: #234364;
}
p:not(:last-of-type) {
    padding-bottom: 15px;
}
.side_btn {
    padding-top: 32px;
}
@media only screen and (min-width: 992px){
    .full_section .side_content{
        margin: 0 auto;
        padding: 20px;
    }
}
@media only screen and (max-width: 1600px){
    .common_title h2{
        font-size: 50px;
    }
    p{
        font-size: 24px;
    }
}
@media only screen and (max-width: 1366px){
    .common_title h2{
        font-size: 45px;
    }
    .side_content h3{
        font-size: 38px;
    }
    p{
        font-size: 22px;
    }
}
@media only screen and (max-width: 1199px){
    .common_title h2{
        font-size: 40px;
    }
    .side_content h3{
        font-size: 33px;
    }
    p{
        font-size: 22px;
    }
}
@media only screen and (max-width: 1024px){
    .common_title h2{
        font-size: 35px;
    }
    .side_content h3{
        font-size: 30px;
    }
    p{
        font-size: 20px;
    }
}
@media only screen and (max-width: 991px){
    .common_title h2{
        font-size: 30px;
    }
    .side_content{
        max-width: 100%;
        padding-top: 30px;
    }
    .side_content h3{
        font-size: 25px;
    }
    p{
        font-size: 18px;
    }
    .side_img {
        padding-bottom: 30px;
    }
}
@media only screen and (max-width: 767px){
    p{
        font-size: 16px;
    }
}
/*============================================
= End Left Right Section CSS
===============================================*/
/*============================================
= Start FAQ Section CSS
===============================================*/
.faq_section {
    background-image: url("/lp-asset/lp-images/faq-banner-bg.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.faq_section::before {
    position: absolute;
    content: "";
    top: 60px;
    right: 60px;
    left: auto;
    width: 101px;
    height: 32px;
    background-image: url("/lp-asset/lp-images/page-logo.svg");
    background-position: top right;
    background-repeat: no-repeat;
    background-size: 101px;
}
.faq_content {
    text-align: center;
    width: 100%;
    max-width: 860px;
    margin: 0 auto;
}
.faq_content h2, .faq_content p {
    color: #fff;
}
@media only screen and (max-width: 991px){
    .faq_section::before{
        top: 40px;
        right: 40px;
    }
}
@media only screen and (max-width: 767px){
    .faq_section::before{
        top: 30px;
        right: 30px;
    }
}
@media only screen and (max-width: 575px){
    .faq_section::before{
        top: 20px;
        right: 20px;
    }
}
/*============================================
= End FAQ Section CSS
===============================================*/
/*============================================
= Start Expertise CSS
===============================================*/
.expertise_section {
    position: relative;
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.2) 25px 25px 100px 10px;
}
.expertise_content {
    width: 100%;
    max-width: 590px;
    margin: 0 auto;
    text-align: center;
}
.expertise_section .expertise_content {
    max-width: 940px;
    text-align: left;
}
.expertise_logo {
    text-align: center;
}
.expertise_section .expertise_logo{
    text-align: left;
}
.before_img img, .after_img img {
    height: 100%;
    display: block;
    object-fit: contain;
}
.after_img img{
    margin-right: 0;
    margin-left: auto;
}
.customized-slider-img img {
    padding: 0 5px;
}
@media only screen and (min-width: 851px){
    .expertise_image > div {
        position: absolute;
        top: 0;
        height: 100%;
        z-index: -1;
    }
    .expertise_image .before_img {
        left: 0;
    }
    .expertise_image .after_img {
        right: 0;
    }
}
@media only screen and (max-width: 1599px){
    .before_img img, .after_img img{
        width: 100%;
        max-width: 80%;
        object-position: bottom;
    }
}
@media only screen and (max-width: 1199px){
    .before_img img, .after_img img{
        max-width: 70%;
    }
}
@media only screen and (max-width: 850px){
    .expertise_image {
        display: flex;
        justify-content: space-evenly;
    }
    .before_img img, .after_img img{
        max-width: 100%;
    }
    .expertise_content {
        padding-left: 20px;
        padding-right: 20px;
    }
}
/*============================================
= End Expertise CSS
===============================================*/
/*============================================
= Start Success CSS
===============================================*/
.success_section{
    background-color: #F1F1F1;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.success_image > div{
    top: auto;
    bottom: 0;
    height: inherit;
}
.success_image .before_img img, .success_image .after_img img {
    height: auto;
    width: 100%;
    max-width: 80%;
}
@media only screen and (max-width: 1599px){
    .success_image .before_img img, .success_image .after_img img{
        max-width: 70%;
    }
}
@media only screen and (max-width: 1366px){
    .success_image .before_img img, .success_image .after_img img{
        max-width: 65%;
    }
}
@media only screen and (max-width: 1199px){
    .success_image .before_img img, .success_image .after_img img{
        max-width: 50%;
    }
}
@media only screen and (max-width: 850px){
    .success_image .before_img img, .success_image .after_img img{
        max-width: 100%;
    }
}
/*============================================
= End Success CSS
===============================================*/
/*============================================
= Start Process CSS
===============================================*/
.process_section{
    overflow: hidden;
}
.process_title {
    margin: 0 auto;
    max-width: 950px;
    padding-bottom: 60px;
}
.process_content {
    margin: 0 auto;
    width: 100%;
    max-width: 465px;
}
.process_icon {
    background-color: rgba(210, 216, 224, 0.25);
    width: 155px;
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    border-radius: 100%;
    margin-bottom: 50px;
}
.process_icon img {
    width: fit-content;
}
.process_img {
    position: relative;
    z-index: 1;
}
.process_img::before {
    position: absolute;
    content: "";
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
    width: 84%;
    aspect-ratio: 1;
}
.process_img_1::before{
    top: auto;
    bottom: -16%;
    left: -42%;
    background-image: url("/lp-asset/lp-images/process-design-img-1.svg");
}
.process_img_2::before{
    top: -30%;
    left: auto;
    right: -42%;
    background-image: url("/lp-asset/lp-images/process-design-img-2.svg");
}
.process_img_3::before{
    top: auto;
    bottom: -30%;
    left: -42%;
    background-image: url("/lp-asset/lp-images/process-design-img-3.svg");
}
.process_img img {
    border-radius: 20px;
}
@media only screen and (min-width: 1200px){
    .process_section .container{
        max-width: 1200px;
    }
}
@media only screen and (max-width: 1700px){
    .process_img::before{
        width: 74%;
    }
    .process_img_1::before, .process_img_3::before{
        left: -32%;
    }
    .process_img_2::before{
        right: -32%;
    }
}
@media only screen and (max-width: 1600px){
    .process_img::before{
        width: 64%;
    }
    .process_img_1::before, .process_img_3::before{
        left: -22%;
    }
    .process_img_3::before{
        bottom: -20%;
    }
    .process_img_2::before{
        right: -22%;
    }
}
@media only screen and (max-width: 1366px){
    .process_img_1::before, .process_img_3::before{
        left: -15%;
    }
    .process_img_2::before{
        right: -15%;
    }
}
@media only screen and (max-width: 1199px){
    .process_title{
        padding-bottom: 50px;
    }
    .process_icon{
        width: 145px;
        margin-bottom: 40px;
    }
}
@media only screen and (max-width: 1024px){
    .process_title{
        padding-bottom: 40px;
    }
    .process_icon{
        width: 135px;
        margin-bottom: 30px;
    }
}
@media only screen and (max-width: 991px){
    .process_title{
        padding-bottom: 30px;
    }
    .process_icon{
        width: 125px;
    }
}
@media only screen and (max-width: 767px){
    .process_icon{
        width: 115px;
        margin: 0 auto 30px;
    }
    .process_content{
        max-width: 100%;
        padding-top: 30px;
        text-align: center;
    }
    .process_img::before{
        display: none;
    }
    .process_img{
        text-align: center;
    }
}
@media only screen and (max-width: 575px){
    .process_icon{
        width: 95px;
    }
}
/*============================================
= End Process CSS
===============================================*/
/*============================================
= Start Before After CSS
===============================================*/
.before-after-section .default-content {
    max-width: 380px !important;
    width: 100%;
}
.before-after-section .default-content p{
    font-family: Sofia Pro;
    font-weight: 300;
    line-height: 1.3;
    color: #234364;
    width: 100%;
}
.before-after-section .default-content p b{
    font-weight: 500;
}
.switch {
    max-width: 400px;
    width: 100%;
    aspect-ratio: 6.6 / 1;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: center;
    z-index: 2;
    position: absolute;
    left: 50%;
    bottom: 70px;
    transform: translateX(-50%);
}
.switch input { 
    opacity: 0;
    width: 0;
    height: 0;
}
.switch .slider {
    position: absolute;
    cursor: pointer;
    border-radius: 100px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    -webkit-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    box-shadow: 0 0 20px rgba(0, 0, 0, .2);
}
.switch .slider:before {
    position: absolute;
    content: "";
    height: 100%;
    width: 50%;
    border-radius: 100px;
    left: 0;
    top: 0;
    background-color: #c8a51b;
    -webkit-transition: all .3s linear;
    transition: all .3s linear;
}
.switch input:checked + .slider:before {
    left: 100%;
    transform: translateX(-100%);
}
label.switch p {
    color: rgba(35,67,100,.3);
    z-index: 11;
    padding: 0;
    font-size: 20px;
    font-weight: 500;
}
label.switch input:checked ~ p,
label.switch p:has(+ input:not(:checked)){
    color: #fff !important;
    transition-delay: .2s;
}
.switch-toggle:has(input:checked) .ba-image .before{
    opacity: 0;
}
.switch-toggle:has(input:not(:checked)) .ba-image .after{
    opacity: 0;
}
.ba-image img{
    transition: all .3s linear;
}
.ba-image,
.switch-toggle{
    position: relative;
    height: 100%;
}
.ba-image .before,
.ba-image .after{
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center bottom;
}
.ba-image .after{
/*    position: absolute;*/
    inset: 0;
}
.before-after-section{
    position: relative;
    z-index: 2;
}
.before-after-section .default_cta {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
}
.before-after-section .default_cta a:hover{
    background-color: #fff;
}

@media only screen and (max-width: 991.5px){
    .switch{
        max-width: 300px;
        bottom: 30px;
    }
}
@media only screen and (max-width: 768.5px){
    .before-after-section .default-content{
        max-width: 100%  !important;
        text-align: center !important;
    }
    .switch-toggle{
        border-radius: 0 0 30px 30px;
        overflow: hidden;
    }
}
@media only screen and (max-width: 575.5px){
    .before-after-section .default_cta{
        position: unset;
        transform: unset;
        margin-top: 24px;
    }
}
/*============================================
= End Before After CSS
===============================================*/
/*============================================
= Start Real Smile CSS
===============================================*/
.customized-inner-info{
    max-width: 914px;
    margin: 0 auto;
    padding: 48px 20px 0;
}

.customized-inner-img-slider .slick-slide{
    position: relative;
}
.customized-inner-img-slider .slick-slide img.before-img{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    transition: all .5s linear;
}
.customized-inner-img-slider .slick-slide img.before-img:hover{
    opacity: 1;
}
@media only screen and (max-width: 767.98px){
    .customized-inner-info{
        padding: 48px 0px 0;
    }
}
/*============================================
= End Real Smile CSS
===============================================*/

.dr-video-slider iframe {
    width: 100%;
    aspect-ratio: 1;
    display: block;
    background: #000;
}
.dr-video-slider{
    margin-bottom: 0 !important;
}
@media only screen and (max-width: 1300px) and (min-width: 991.5px){
    .dr-video-slider iframe{
        aspect-ratio: 3/4;
    }    
}
@media only screen and (max-width: 991.5px) and (min-width: 768.5px){
    .dr-video-slider iframe{
        aspect-ratio: 4/3;
    }    
}
@media only screen and (max-width: 768.5px) {
    .dr-video-slider .slick-dots{
        margin-top: 0;
    }
}
@media only screen and (max-width: 480px) {
    .dr-video-slider iframe{
        aspect-ratio: 9/16;
    }    
}