/*
Theme Name: Elite Smile Clinics
Theme URI: https://eliteclinix.com/
Template: Divi
Author: H-LINE
Author URI: https://hlinesolutions.com/
Description: Experience unmatched smoothness with a smart, flexible, and powerful theme.
Version: 4.27.5.1767513487
Updated: 2026-01-04 07:58:07

*/

/* Table of Contents
 *
 * 1. Header
 *		Media Queries
 *         1.1 - >= Min 1405px 
 *         1.2 - >= Min 1100px <= Max 1405px
 * 		   1.3 - >= Max 980px 
 * 2. Gallery
 * 3. Sidebar
 */

/* Header */

.et_pb_menu .et-menu-nav li{
margin-top:0px !important;
}

.et_pb_menu .et-menu-nav li a{
transition: color 200ms ease;
display: block;
position: relative;}

.et_pb_menu .et-menu-nav li a:before{
background: #fff;
position: absolute;
left: 0;
top: 0;
right: 0;
bottom: 0;
content: "";
display: block;
z-index: -1;
opacity: 0;
transition: 250ms ease all;
transform-origin: 50% 100%;
box-sizing: border-box;
border-radius: 5px; /* Match border radius */
}

/* DISABLE animation layer in submenu (so hover fills full width) */
.et_pb_menu .et-menu-nav li ul.sub-menu li a:before {
    display: none !important;
}

.et_pb_menu .et-menu-nav li a:hover:before{
opacity: 1;
}

.et_pb_menu .et-menu-nav li:hover:after{
opacity: 1;
transform:scale(1);
}

.et_pb_menu .et-menu-nav li:after{left: calc(50px * .4);
left: calc(50px * .4);
right: calc(50px * .4);
width: auto;
height: 3px;
margin-left: 0 !important;
margin-right: 0 !important;
margin-bottom: 0;
background-color: #1cba9f;
content: ' '; /* To Change Menu Underline From #1cba9f */
display: block;
position: absolute;
z-index: 5;
bottom: 0%;
opacity: 0;
transition: 200ms ease all;
transform: scale(.5);
transform-origin: 50% 50%;
box-sizing: border-box;
}

/* =========================
   MAIN MENU (TOP LEVEL)
========================= */
.et_pb_menu .et-menu-nav > ul > li > a {
    padding: 0px 17px !important;
    border-bottom: none !important;
}

/* Remove hover background from top-level only */
.et_pb_menu .et-menu-nav > ul > li > a:hover {
    background-color: transparent !important;
}

/* =========================
    FORCE MEGA MENU = ONE COLUMN
========================= */

/* Kill Divi grid system inside dropdown */
.et_pb_menu .et-menu-nav li.mega-menu ul.sub-menu {
    display: block !important;
    width: 100% !important;
}

.et_pb_menu .et-menu-nav li.mega-menu ul.sub-menu .et_pb_row {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

.et_pb_menu .et-menu-nav li.mega-menu ul.sub-menu .et_pb_column {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    padding: 0 !important;
}

/* Remove ALL internal spacing */
.et_pb_menu .mega-menu .et_pb_section,
.et_pb_menu .mega-menu .et_pb_module {
    margin: 0 !important;
    padding: 0 !important;
}

/* =========================
   SUBMENU (FULL WIDTH)
========================= */

/* Remove spacing that breaks width */
.nav li li {
    padding: 0 !important;
}

/* Align dropdown correctly */
.nav li ul {
    border-top: none;
    padding: 10px 0px !important;
    top: 100% !important;
    left: 0 !important;
}

/* Make items FULL WIDTH */
.et_pb_menu .et-menu-nav li ul.sub-menu li {
    width: 100% !important;
    box-sizing: border-box; /* Prevent shrink issues */
}


.et_pb_menu .et-menu-nav li ul.sub-menu li a {
    display: block;
    width: 100%;
    padding: 12px 20px !important;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 500;
}

/* Remove last border */
.et_pb_menu .et-menu-nav li ul.sub-menu li:last-child a {
    border-bottom: none !important;
}

/* Disable animation layer in submenu */
.et_pb_menu .et-menu-nav li ul.sub-menu li a:before {
    display: none !important;
}

/* Remove extra effects */
.et_pb_menu ul li.menu-item-has-children ul.sub-menu li:after {
    display: none;
}

/* Dropdown container styling */
.et_pb_menu .et-menu-nav li ul.sub-menu {
    border-radius: 0 0 8px 8px; /* only bottom corners */
    box-shadow: 0 8px 20px rgba(0,0,0,0.05);
    overflow: hidden; /* ensures hover bg respects radius */
    padding: 0 important;
    box-sizing: border-box;
}

.et_pb_menu .et-menu-nav li ul.sub-menu li a {
    position: relative;
    display: block;
    width: 100%;
    padding: 12px 20px !important;
    box-sizing: border-box;
    z-index: 1;
}

/* Hover effect (NOW TRUE FULL WIDTH) */
.et_pb_menu .et-menu-nav li ul.sub-menu li a:hover {
    background-color: rgba(28, 186, 159, 0.08) !important;
    transition: 100ms ease;
    color: #1cba9f !important;
}

.et_pb_menu .et-menu-nav li ul.sub-menu li a::after {
    content: "";
    position: absolute;
    left: 12px;   /* 👈 controls left spacing */
    right: 12px;  /* 👈 controls right spacing */
    bottom: 0;
    height: 0.6px;
    background: #f0f0f0;
}

.et_pb_menu .et-menu-nav li ul.sub-menu li:last-child a::after {
    display: none;
}


.et_pb_menu ul li.menu-item-has-children ul.sub-menu li a:before,
.et_pb_menu ul li.menu-item-has-children ul.sub-menu li:after{display:none;}


.et_pb_menu ul li.menu-item-has-children ul.sub-menu li a{
line-height: 40px;
line-height: 1.5;
text-transform: capitalize;
padding: .4em 1.25em;
position: relative;
transition: 200ms ease all;
font-size: 16px;
font-weight: 500;
padding: 10px 20px !important;
opacity: 1;}

.et_pb_menu ul li.menu-item-has-children ul.sub-menu li a:hover{
color:#1cba9f !important; /* To Change Menu hover Color From #1cba9f */
}

.et_pb_menu ul li.menu-item-has-children ul.sub-menu li a:before{
background-color: #1cba9f;
height: 2px; /* To Change Menu Underline From #1cba9f */
top: calc(.85em + 2.5px);
display: block;
content: "";
width: 7px;
top: 0.99em;
left: .45em;
transition: 200ms ease all;
position: absolute;
opacity: 0;
transform: translateX(-5px);
box-sizing: border-box;
}

.et_pb_menu ul li.menu-item-has-children ul.sub-menu li a:hover:before{
opacity: 1;
transform: translatex(0);}


.et_pb_menu ul li.menu-item-has-children ul.sub-menu li a:before{}

.nav li ul{
border-top:none;
padding:10px 0 !important;
top: calc(100% - 0px) !important;
left: 9px !important;
}

.nav li li{padding: 0 10px;}


.dct_plx .et_parallax_bg:before{
content:"";
display:block;
height:100%;
position:absolute;
top:0;
left:0;
width:100%;
background-color:#fff
}

.dct_inqy .et_contact_bottom_container{
float: none;
text-align: center;
padding-left: 3%;
margin-top: 3.5%;
display: block;
width: 100%;
}

/* =========================
   ANIMATED DROPDOWN
========================= */

/* Initial hidden state */
.et_pb_menu .et-menu-nav li ul.sub-menu {
    display: block !important; /* override Divi toggle */
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: 
        opacity 220ms ease,
        transform 260ms cubic-bezier(.22,.61,.36,1),
        visibility 220ms;
}

/* Show on hover */
.et_pb_menu .et-menu-nav li:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.et_pb_menu .et-menu-nav li ul.sub-menu li {
    opacity: 0;
    transform: translateY(12px);
    transition: all 650ms ease;
}

/* Animate items when menu opens */
.et_pb_menu .et-menu-nav li:hover > ul.sub-menu li {
    opacity: 1;
    transform: translateY(0);
}

/* Stagger delay */
.et_pb_menu .et-menu-nav li:hover > ul.sub-menu li:nth-child(1) { transition-delay: 150ms; }
.et_pb_menu .et-menu-nav li:hover > ul.sub-menu li:nth-child(2) { transition-delay: 300ms; }
.et_pb_menu .et-menu-nav li:hover > ul.sub-menu li:nth-child(3) { transition-delay: 350ms; }
.et_pb_menu .et-menu-nav li:hover > ul.sub-menu li:nth-child(4) { transition-delay: 500ms; }
.et_pb_menu .et-menu-nav li:hover > ul.sub-menu li:nth-child(5) { transition-delay: 650ms; }


/* Gallery */
#gallery-1 .gallery-item{margin: 0 !important;}

/* Sidebar */
.et_pb_widget select{
	height: 50px;
}
.et_pb_widget .widgettitle{
	padding-bottom: 20px;
}

.widget_search input#s{
	border-radius: 25px;
}
.widget_search input#searchsubmit{
	background-color: #1cba9f ;
	border-radius: 25px;
	color: #fff;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 12px;
}


/* ======================================================
   FIXED MOBILE MENU CLICKABLE PARENT ITEMS
   ====================================================== */

/* Ensure parent links are block level and clickable */
.et_mobile_nav_menu .et_mobile_menu .menu-item-has-children > a {
    display: block;
    width: 100%;
    cursor: pointer;
    position: relative;
    z-index: 1;
}

/* Position the toggle icon correctly */
.et_mobile_nav_menu .et_mobile_menu .menu-item-has-children > span.menu-closed {
    position: absolute;
    right: 0;
    top: 0;
    padding: 14px 20px;
    font-weight: bold;
    cursor: pointer;
    z-index: 10;
    display: inline-block;
    background: transparent;
}

/* Ensure submenu is hidden properly */
.et_mobile_nav_menu .et_mobile_menu .sub-menu.hide {
    display: none !important;
}

/* Submenu transition */
.et_mobile_nav_menu .et_mobile_menu .sub-menu {
    display: block;
    transition: all 0.3s ease;
}

/* Preserve your existing icon styles */
span.menu-closed:before {
    content: "\33";
    display: block;
    color: #1cba9f;
    font-size: 18px;
    font-family: ETmodules !important;
    font-weight: normal;
}

span.menu-closed.menu-open:before {
    content: "\4d";
    color: #1cba9f;
}

/* Make sure link text doesn't overlap with icon */
.et_mobile_nav_menu .et_mobile_menu .menu-item-has-children > a {
    padding-right: 50px !important;
}

/* ======================================================
   PREVENT DIVI FROM CLOSING SUBMENUS
   ====================================================== */

/* Stop Divi's default mobile menu behavior on parent items */
.et_mobile_menu .menu-item-has-children > a {
    pointer-events: auto !important;
}

/* Ensure submenus stay visible when opened */
.et_mobile_menu .sub-menu {
    display: block !important;
}

.et_mobile_menu .sub-menu.hide {
    display: none !important;
}

/* Prevent Divi from adding its own event handlers */
.et_mobile_menu .menu-item-has-children {
    overflow: visible !important;
}

/* Keep your existing styles below */


/* ======================================================
   MOBILE MENU TOGGLE ICONS - ENSURE THESE EXIST
   ====================================================== */

/*Change Open mobile Menu Icon*/
.mobile_nav.opened .mobile_menu_bar::before {
    content: '\4d';
}
/*remove the border from the top of the mobile menu*/
.et_mobile_menu {
	border-top: none;
}


/*hide the submenu items on mobile*/
.et_mobile_menu li ul.hide {
	display: none !important;
}

/*adjust the parent menu items on mobile*/
.et_mobile_menu .menu-item-has-children {
	position: relative;
}

/* Position and style the submenu icons */
.et_mobile_menu .menu-item-has-children {
    position: relative;
}

/* Make the entire parent link clickable */
.et_mobile_menu .menu-item-has-children > a {
    display: block;
    width: 100%;
    padding-right: 50px !important; /* space for icon */
    background: transparent;
    cursor: pointer;
}

/* Position the toggle span */
.et_mobile_menu .menu-item-has-children > a + span {
    position: absolute;
    right: 0;
    top: 0;
    padding: 14px 20px;
    font-weight: bold;
    cursor: pointer;
    z-index: 10;
}


/* Icon for closed submenu (plus sign) */
span.menu-closed:before {
    content: "\33";
    display: block;
    color: #1cba9f;
    font-size: 18px;
    font-family: ETmodules !important;
    font-weight: normal;
}

/* Icon for open submenu (minus sign) */
span.menu-closed.menu-open:before {
    content: "\4d";
    color: #1cba9f;
}

/* Remove border from top of mobile menu */
.et_mobile_menu {
    border-top: none !important;
}


/* ======================================================
   REMOVE LEFT HOVER BAR (important)
====================================================== */

.et_mobile_menu li a:before,
.et_mobile_menu li a:after {
    display: none !important;
    content: none !important;
}

/* ======================================================
   SUBMENU STYLING
====================================================== */

.et_mobile_menu .sub-menu {
    padding-left: 15px !important;
    background-color: #fff;
}

/* Submenu links */
.et_mobile_menu .sub-menu li a {
    padding: 10px 20px !important;
    font-size: 14px;
    border-bottom: none !important;
}

/* Hover */
.et_mobile_menu .sub-menu li a:hover {
    background-color: rgba(28, 186, 159, 0.08) !important;
    color: #1cba9f !important;
}

/* ======================================================
   GENERAL LINKS
====================================================== */

/* Better spacing for mobile menu items */
.et_mobile_menu li a {
    padding: 12px 20px !important;
    border-bottom: 1px solid #f0f0f0;
}

/*adjust border under mobile menu items*/
.et_mobile_menu li:not(:last-child) a {
    border-bottom: 2px solid #f3f6fd;
}

/*remove border under last mobile menu item*/
.et_mobile_menu li:last-child a {
    border-bottom: none;
}
