/*
 Theme Name: Torch Dental
 Theme URI: https://www.torchdental.com/
 Description: Custom theme code by Pixalien, designed by Charlie Foxtrot Papa
 Author: Pixalien
 Author URI: https://www.pixalien.com
 Template: Divi
 Version: 1.0.0
*/
 
/* =Theme customization starts here
------------------------------------------------------- */

/* Override all inherent H1 - H6 rules with more specific selectors */

/* H1 */
.et_pb_section .et_pb_row .et_pb_column h1,
.et_pb_section .et_pb_row .et_pb_column_1_3 h1,
.et_pb_section .et_pb_row .et_pb_column_1_4 h1,
.et_pb_section .et_pb_row .et_pb_column_1_5 h1,
.et_pb_section .et_pb_row .et_pb_column_1_6 h1,
.et_pb_section .et_pb_row .et_pb_column_2_5 h1 {
    font-size: 60px;
}

/* H2 */
.et_pb_column h2,
.et_pb_column_1_3 h2,
.et_pb_column_1_4 h2,
.et_pb_column_1_5 h2,
.et_pb_column_1_6 h2,
.et_pb_column_2_5 h2 {
    font-size: 43px;
}

/* H3 */
.et_pb_column h3,
.et_pb_column_1_3 h3,
.et_pb_column_1_4 h3,
.et_pb_column_1_5 h3,
.et_pb_column_1_6 h3,
.et_pb_column_2_5 h3 {
    font-size: 36px;
}

/* H4 */
.et_pb_column h4,
.et_pb_column_1_3 h4,
.et_pb_column_1_4 h4,
.et_pb_column_1_5 h4,
.et_pb_column_1_6 h4,
.et_pb_column_2_5 h4 {
    font-size: 30px;
}

/* H5 */
.et_pb_column h5,
.et_pb_column_1_3 h5,
.et_pb_column_1_4 h5,
.et_pb_column_1_5 h5,
.et_pb_column_1_6 h5,
.et_pb_column_2_5 h5 {
    font-size: 26px;
}

/* H6 */
.et_pb_column h6,
.et_pb_column_1_3 h6,
.et_pb_column_1_4 h6,
.et_pb_column_1_5 h6,
.et_pb_column_1_6 h6,
.et_pb_column_2_5 h6 {
    font-size: 22px;
}



.mixed-layout {display: flex; flex-wrap: wrap; gap: 20px;}
.mixed-layout .side-by-side {flex: 0 1 48%; box-sizing: border-box;}
.mixed-layout .regular {display: block; width: 100%;}
.mixed-layout .side-by-side:nth-child(odd):last-child {flex: 0 1 48%; margin-right: auto;}

.nav-right {margin: auto;}
.et-db #et-boc .et-l .et_pb_module.et_pb_menu.et_pb_menu--without-logo.nav-ctas .et_pb_menu__menu > nav > ul > li, .nav-ctas .schedule, .nav-ctas .login, html .et_pb_menu_0_tb_header.et_pb_menu ul li.schedule, html .et_pb_menu_0_tb_header.et_pb_menu ul li.login {border: 1px solid #0C2B48; border-radius: 100px;}
.nav-ctas .schedule, html .et_pb_menu_0_tb_header.et_pb_menu ul li.schedule {background: #0C2B48;}
.nav-ctas .schedule:hover, .nav-ctas .login:hover {opacity: 0.8;}
.et-db #et-boc .et-l .et_pb_module.et_pb_menu.et_pb_menu--without-logo.nav-ctas .et_pb_menu__menu > nav > ul > li.login a, li.login a {color: #0C2B48 !important; font-weight: 600;}
.et-db #et-boc .et-l .et_pb_module.et_pb_menu.et_pb_menu--without-logo.nav-ctas .et_pb_menu__menu > nav > ul > li.schedule a, .et_pb_menu_0_tb_header.et_pb_menu ul li.schedule a {color: #fff !important; font-weight: 600;}
html .et_pb_menu_0_tb_header.et_pb_menu #menu-nav-ctas-1 {display: flex; justify-content: flex-end;}
html .et_pb_menu_0_tb_header.et_pb_menu ul li.schedule, html .et_pb_menu_0_tb_header.et_pb_menu ul li.login {list-style: none; width: 48%; max-width: 185px; padding: 8px 0; text-align: center; margin: 2px;}
.mega-menu-primary-menu {margin-top: 10px;}
.mega-menu-flyout .mega-sub-menu li a:hover {color: #fff !important;}
.nav-ctas .et_pb_menu__wrap, .nav-ctas .et_pb_menu__menu, .nav-ctas .et-menu-nav, .nav-ctas .et-menu.nav {width:100%;}
#menu-nav-ctas {
    display: flex;
    padding: 0;
    margin: 0;
    list-style: none;
}

#menu-nav-ctas>li.login,
#menu-nav-ctas>li.schedule {
    flex: 1 1 50%;
    max-width: 48%;
    text-align: center;
    margin: 0 1%;
    box-sizing: border-box;
    padding: 20px 10px 10px;
}

#menu-nav-ctas>li.login a,
#menu-nav-ctas>li.schedule a {width:100%;text-align: center;;}

#menu-nav-ctas>li {
    white-space: nowrap;
}

#menu-nav-ctas>li:hover {
    opacity: 0.8;
}
.et_mobile_menu {margin-top:10px;}

footer .et_pb_menu .et_pb_menu__menu {display:flex;}
footer .et_pb_menu .et_mobile_nav_menu {display:none;}

footer .FooterContainer, footer .FooterContainer li, footer .FooterContainer li a, .et-db #et-boc .et-l .et_pb_menu--without-logo.FooterMenu .et_pb_menu__menu > nav > ul > li > a {color: #fff; font-size: 24px; font-weight: 400;}
.FooterMenu li {clear: both; width: 100%; float: none;}
@media all and (min-width:1000px) {
    .custom-mobile-widget {
        display: none;
    }
}

@media (max-width: 1000px) { 

    html .et_pb_gutters2 .et_pb_column_1_2.nav-left,
        html .et_pb_gutters2.et_pb_row .et_pb_column_1_2.nav-left {
            width: 100% !important;
        }
    .nav-right .et_pb_module {
        display: none !important;
    }

    html header .et_pb_section_0_tb_header.et_pb_section {
        padding: 15px !important;
    }

    .nav-left {
        width: 100% !important;
    }

    #mainNavContainer {
        display: block;
    }

    .et_pb_menu--style-left_aligned .et_pb_menu_inner_container,
    .et_pb_menu--style-left_aligned .et_pb_row {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .et_pb_menu--style-left_aligned .et_pb_menu__wrap {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    .et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .et_pb_menu--style-left_aligned.et_pb_text_align_right .et_pb_menu__wrap {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    .et_pb_menu--style-left_aligned.et_pb_text_align_justified .et_pb_menu__wrap {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo-wrap,
    .et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo-wrap {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .et_pb_menu--style-inline_centered_logo .et_pb_menu_inner_container>.et_pb_menu__logo,
    .et_pb_menu--style-inline_centered_logo .et_pb_row>.et_pb_menu__logo {
        margin: 0 auto
    }

    .et_pb_menu--style-inline_centered_logo .et_pb_menu__logo-slot {
        display: none
    }

    .et_pb_menu .et_pb_row {
        min-height: 81px
    }

    .et_pb_menu .et_pb_menu__menu {
        display: none
    }

    .et_pb_menu .et_mobile_nav_menu {
        float: none;
        margin: 0 6px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .et_pb_menu .et_mobile_menu {
        top: 100%;
        padding: 5%
    }

    .et_pb_menu .et_mobile_menu,
    .et_pb_menu .et_mobile_menu ul {
        list-style: none !important;
        text-align: left
    }

    .et_pb_menu .et_mobile_menu ul {
        padding: 0
    }

    .et_pb_menu .et_pb_mobile_menu_upwards .et_mobile_menu {
        top: auto;
        bottom: 100%
    }

    #menu-nav-ctas>li.login a,
        #menu-nav-ctas>li.schedule a { font-size: 17px;}
        html .et_pb_menu_0_tb_header.et_pb_menu ul li a {font-size: 14px;padding:10px 5px 0 0;}
        .mobile-menu-widget-top {
            display: none;
        }
    
        html .et_pb_menu .et_mobile_menu {
            padding: 0
        }
    
        html .et_pb_menu .et_mobile_menu li a {
            padding: 5px 20px !important;
        }
    
        html .et_pb_menu .et_mobile_menu li li a {
            padding: 3px 0px !important;
        }
    
        html .et_mobile_menu li li {
            padding-left: 20px;
        } 
    
        .et_mobile_menu .divider-menu {
            display: block;
            clear: both;
            font-size: 0;
            line-height: 0;
        }
    
        .et_mobile_menu .custom-mobile-widget p {
            font-size: 16px;
            padding: 10px 20px;
        }
    
        .et_mobile_menu .custom-mobile-widget a {
            font-weight: 900;
        }
}
@media all and (max-width:980px) {
    /* H1 */
    .et_pb_section .et_pb_row .et_pb_column h1,
    .et_pb_section .et_pb_row .et_pb_column_1_3 h1,
    .et_pb_section .et_pb_row .et_pb_column_1_4 h1,
    .et_pb_section .et_pb_row .et_pb_column_1_5 h1,
    .et_pb_section .et_pb_row .et_pb_column_1_6 h1,
    .et_pb_section .et_pb_row .et_pb_column_2_5 h1 {
        font-size: 40px;
    }

    /* H2 */
    .et_pb_column h2,
    .et_pb_column_1_3 h2,
    .et_pb_column_1_4 h2,
    .et_pb_column_1_5 h2,
    .et_pb_column_1_6 h2,
    .et_pb_column_2_5 h2 {
        font-size: 32px;
    }

    /* H3 */
    .et_pb_column h3,
    .et_pb_column_1_3 h3,
    .et_pb_column_1_4 h3,
    .et_pb_column_1_5 h3,
    .et_pb_column_1_6 h3,
    .et_pb_column_2_5 h3 {
        font-size: 26px;
    }

    /* H4 */
    .et_pb_column h4,
    .et_pb_column_1_3 h4,
    .et_pb_column_1_4 h4,
    .et_pb_column_1_5 h4,
    .et_pb_column_1_6 h4,
    .et_pb_column_2_5 h4 {
        font-size: 22px;
    }

    /* H5 */
    .et_pb_column h5,
    .et_pb_column_1_3 h5,
    .et_pb_column_1_4 h5,
    .et_pb_column_1_5 h5,
    .et_pb_column_1_6 h5,
    .et_pb_column_2_5 h5 {
        font-size: 20px;
    }

    /* H6 */
    .et_pb_column h6,
    .et_pb_column_1_3 h6,
    .et_pb_column_1_4 h6,
    .et_pb_column_1_5 h6,
    .et_pb_column_1_6 h6,
    .et_pb_column_2_5 h6 {
        font-size: 16px;
    }

}

.et_pb_image_container,.et_pb_image_container img, img, .et_pb_gallery_item {border-radius:0 !important;}


/* results page style */

.info-cards {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 39px;
  padding: 10px 66px 66px 66px;
}

.info-card {
  /* border: 1px solid #dbe3ea; */
  border-radius: 10px;
  padding: 30px 20px;
  text-align: center;
  flex: 1 1 280px;
  max-width: 400px;
  transition: transform 0.2s ease;
  background: #fff;
}
.info-card2 {
  /* border: 1px solid #dbe3ea; */
  border-radius: 10px;
  padding: 40px 35px;
  text-align: center;
  flex: 1 1 280px;
  max-width: 400px;
  transition: transform 0.2s ease;
  background: #fff;
}
.info-card:hover {
  transform: translateY(-4px);
}
.info-card2:hover {
  transform: translateY(-4px);
}
.icon img {
  width: 40px;
  height: 40px;
  margin-bottom: 15px;
}

.info-card h3 {
    color: #0C2B48;
    font-size: 36px;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2;
}
.info-card2 h3 {
    color: #0C2B48;
    font-size: 25px;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.3;
}



.filter-container {
    background-color: #F2F2F2;
    padding: 10px;
    border-radius: 100px;
    display: table;
    justify-content: space-around;
    align-items: center;
}
.filter-button {
    padding: 10px 25px;
    border-radius: 100px;
    border: none;
    background-color: transparent;
    color: #39AAE0;
    cursor: pointer;
    transition: background-color 0.3s,color 0.3s;
}
.filter-active {
    background-color: #39AAE0;
    color: white;
}
.white-papers, .buyers-guide {
    display: none;
}
.blog-toggles .more-link {
    border: 1px solid #0C2B48;
    text-transform: capitalize;
    padding: 5px 25px;
    border-radius: 100px;
    margin-top: 25px;
    display: table;
    font-weight: 700;
}












@media ( max-width: 1024px ) {
    .info-cards {
        padding: 10px 15px 38px;
    }
    .heading__guide p {
        font-size: 45px;
        line-height: 55px;
    }
}



/* package button css */
.package_button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.r__pr{
    color: #fff;
    border-radius: 100px;
    background-color: #39aae0;
    padding: 10px 30px;
    font-size: 20px;
    font-weight: 500;
  border: 2px solid #39aae0;
  cursor: pointer;
}
.u__cal {
  background: #fff;
    color: #0c2b48;
    border-radius: 100px;
    background-color: transparent;
    padding: 10px 30px;
    font-size: 20px;
    font-weight: 500;
    border: 2px solid #0c2b48;
  cursor: pointer;
}
@media ( max-width: 1024px ) {
  .u__cal {
      margin-bottom: 20px;
  }
  .package_button {
      display: block;
    	text-align: center;
  }
}











.order-buttons {
    display: flex;
    gap: 12px;
}
.order-buttons .sec_cls {
  background: #39aae0;
    padding: 15px 28px;
    border-radius: 40px;
    color: #fff;
  border: none;
  font-size: 18px;
       font-weight: 500;
}
.order-buttons .first_cls {
  background: #0c2b48;
    padding: 15px 28px;
    border-radius: 40px;
    color: #fff;
   border: none;
  font-size: 18px;
       font-weight: 500;
}
@media ( max-width: 768px ) {
  .order-buttons {
      display: flex;
    flex-direction: column;
  }
}


/* Speed-fix A7: reserve space for the partner-logo carousel before its
   lazy-loaded images swap in. Without this the unsized <img> elements
   inside .dtq-carousel-item drop ~0.48 to CLS on the homepage hero. */
.dtq-carousel-item,
.dtq-lightbox-ctrl {
    aspect-ratio: 1 / 1;
    min-height: 150px;
}
.dtq-carousel-item img,
.dtq-lightbox-ctrl img,
img.dtq-swapped-img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}

/* ============================================================
   Speed-fix B: CLS prevention — reserve space for late-loading elements
   ============================================================ */
.et_pb_section:first-of-type img:not([width]) { aspect-ratio: 16/9; }

iframe:not([width]) { aspect-ratio: 16/9; min-height: 1px; }

.hbspt-form,
.hs-form-frame { min-height: 400px; }

/* ============================================================
   Speed-fix B: disable Divi entry animations
   Modules render fully visible immediately — no fade/slide on scroll
   ============================================================ */
.et_animated,
.et-waypoint:not(.et-animated),
.et_pb_module.et-animated,
.et_pb_section.et-animated,
.et_pb_row.et-animated {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    animation: none !important;
}

[data-animation-style],
.et_pb_animation_off,
.et_pb_animation_left,
.et_pb_animation_right,
.et_pb_animation_top,
.et_pb_animation_bottom,
.et_pb_animation_zoom,
.et_pb_animation_fade {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
}


