/* 
* Canvape Core Mega Menu Styles
*/

html, body {
	overflow-x: hidden;
}

.canvape-master-menu { 
	width: 100%; 
}
.canvape-main-nav { 
	display: flex; 
	flex-wrap: wrap; 
	list-style: none; 
	padding: 0; 
	margin: 0; 
	gap: 20px; 
	align-items: center; 
}
.canvape-nav-item { 
	position: relative; 
}
.canvape-nav-item > a { 
	color: #121212; 
	text-decoration: none; 
	font-weight: 600; 
	font-size: 14px; 
	padding: 10px 0; 
	display: block; 
}

/* Dropdown Container */
.canvape-mega-dropdown { 
	display: none; 
	position: absolute; 
	top: 100%; 
	left: 0; 
	background: #fff; 
	min-width: 250px; 
	box-shadow: 0 4px 15px rgba(0,0,0,0.1); 
	max-height: 500px; 
	overflow-y: auto; 
	z-index: 999999; 
	border-top: 2px solid #247fca; 
	padding: 15px; 
}

/* Force Display on Hover */
.canvape-nav-item:hover .canvape-mega-dropdown { 
	display: block !important; 
}

/* Flat List Style (e-Juice) */
.canvape-flat-list { 
	list-style: none; 
	padding: 0; 
	margin: 0; 
}
.canvape-flat-list li { 
	border-bottom: 1px solid #f5f5f5; 
}
.canvape-flat-list li a { 
	display: block; 
	padding: 10px 0; 
	color: #333; 
	text-decoration: none; 
	font-size: 14px; 
}
.canvape-flat-list li a:hover { 
	color: #247fca; 
}

span.canvape-dynamic-sale-badge {
	font-size: 12px;
	padding: .5rem 1.3rem .6rem;
	background: #247fca;
	border-radius: 5px;
	color: #fff;
}

/* Multi-Column Style (Cannabis & CBD) */
.canvape-mega-columns { 
	display: flex; 
	gap: 30px; 
	flex-wrap: nowrap; 
}
.canvape-mega-column { 
	min-width: 200px; 
}
.canvape-column-header { 
	margin: 0 0 10px 0; 
	font-size: 14px; 
	font-weight: 700; 
	border-bottom: 1px solid #eee; 
	padding-bottom: 5px; 
}
.canvape-column-header a { 
	color: #121212; 
	text-decoration: none; 
	display: flex; 
	align-items: center; 
	justify-content: space-between; 
}
.canvape-mega-column ul { 
	list-style: none; 
	padding: 0; 
	margin: 0; 
}
.canvape-mega-column ul li a { 
	display: block; 
	padding: 6px 0; 
	color: #555; 
	text-decoration: none; 
	font-size: 13px; 
}
.canvape-mega-column ul li a:hover { 
	color: #247fca; 
	text-decoration: underline; 
}

/* menu */

div#e-n-menu-content-8307 {
	left: 0 !important;
	width: 100% !important;
}

/* footer */

body .mail-con input {
	background: transparent;
	border: 1px solid #ffffff;
	color: #fff;
	border-radius: 10px;
	padding: 10px;
	min-height: 50px;
	min-width: 400px;
}

body .sub-btn {
	background-color: #fff !important;
	display: inline-block;
	padding: 16px 33px;
	width: max-content;
	color: #247fca;
	border:none;
	border-radius: 10px;
	font-weight: 600;
	letter-spacing: 1px;
	font-size: 16px;
}

body .sub-btn:hover {
	background-color: #247fca!important;
	color: #fff;
}

/* ==========================================================================
Elementor Submenu & Menu Overrides
========================================================================== */

/* 1. Header Menu Full Height Override (Desktop Only > 1200px) */
@media (min-width: 1201px) {
	/* ==========================================================================
	Elementor Submenu Width Override
	========================================================================== */
	.elementor-nav-menu--dropdown,
	ul.elementor-nav-menu--dropdown,
	.elementor-nav-menu .sub-menu {
		width: 200px !important;
	}

	.elementor-nav-menu--dropdown a,
	ul.elementor-nav-menu--dropdown a,
	.elementor-nav-menu .sub-menu a {
		white-space: normal !important;
		word-break: break-word !important;
		line-height: 1.4 !important;
	}


	/* ==========================================================================
	Header Menu Full Height Override
	========================================================================== */
	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu,
	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main,
	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main > li,
	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main > li > a.elementor-item {
		height: 100% !important;
	}

	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main > li > a.elementor-item {
		display: flex !important;
		align-items: center !important;
	}

	.elementor-location-header .e-n-menu,
	.elementor-location-header .e-n-menu-wrapper,
	.elementor-location-header .e-n-menu-heading,
	.elementor-location-header .e-n-menu-item,
	.elementor-location-header .e-n-menu-title {
		height: 100% !important;
	}

	.elementor-location-header .e-n-menu-title {
		display: flex !important;
		align-items: center !important;
	}


	/* ==========================================================================
	Elementor Submenu Max Height and Scroll
	========================================================================== */
	.elementor-nav-menu--dropdown,
	ul.elementor-nav-menu--dropdown,
	.elementor-nav-menu .sub-menu {
		max-height: 200px !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
	}

	/* Custom Webkit Scrollbar for Dropdown */
	.elementor-nav-menu--dropdown::-webkit-scrollbar,
	ul.elementor-nav-menu--dropdown::-webkit-scrollbar,
	.elementor-nav-menu .sub-menu::-webkit-scrollbar {
		width: 8px !important;
	}

	.elementor-nav-menu--dropdown::-webkit-scrollbar-track,
	ul.elementor-nav-menu--dropdown::-webkit-scrollbar-track,
	.elementor-nav-menu .sub-menu::-webkit-scrollbar-track {
		background: transparent !important;
	}


	/* ==========================================================================
	Mega Menu Icon List Max Height and Scroll
	========================================================================== */
	.e-n-menu-content .elementor-icon-list-items {
		max-height: 400px !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
	}


	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu,
	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main,
	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main > li,
	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main > li > a.elementor-item {
		height: 100% !important;
	}

	.elementor-location-header .elementor-widget-nav-menu .elementor-nav-menu--main > li > a.elementor-item {
		display: flex !important;
		align-items: center !important;
	}

	.elementor-location-header .e-n-menu,
	.elementor-location-header .e-n-menu-wrapper,
	.elementor-location-header .e-n-menu-heading,
	.elementor-location-header .e-n-menu-item,
	.elementor-location-header .e-n-menu-title {
		height: 100% !important;
	}

	.elementor-location-header .e-n-menu-title {
		display: flex !important;
		align-items: center !important;
	}

	/* 2. Mega Menu Icon List Max Height and Scroll */
	.e-n-menu-content .elementor-icon-list-items {
		max-height: 400px !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		padding-right: 5px !important;
	}

	/* Custom Webkit Scrollbar for Icon List in Mega Menu */
	.e-n-menu-content .elementor-icon-list-items::-webkit-scrollbar {
		width: 6px !important;
	}
	.e-n-menu-content .elementor-icon-list-items::-webkit-scrollbar-track {
		background: transparent !important;
	}
	.e-n-menu-content .elementor-icon-list-items::-webkit-scrollbar-thumb {
		background: #a9a9a9 !important;
		border-radius: 4px !important;
	}
	.e-n-menu-content .elementor-icon-list-items::-webkit-scrollbar-thumb:hover {
		background: #888 !important;
	}
}

@media screen and (max-width:1200px) {
	.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-wrapper {
		overflow-x: unset !important;
		overflow-y: unset !important;
	}

	.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-content {
		overflow: unset !important;
	}

	body .e-n-menu-heading {
		gap: 0 !important;
		display: block !important;
	}

	body .header-menu {
		display: flex;
		align-items: center;
	}

	li.e-n-menu-item {
		display: flex;
		justify-content: flex-end;
	}

	.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-content>.e-con {
		--width: 100% !important;
	}

	body .header-menu .e-n-menu-title {
		padding: 10px 20px !important;
	}

	div#e-n-menu-content-8307 {
		position: unset !important;
	}
}

@media screen and (max-width:480px) {
	h3.elementor-image-box-title br {
		display: none;
	}

	body .selection-service-section .elementor-widget-video {
		position: static !important;
	}

	.canvape-qv-btn img {
		width: 18px;
	}
}

/* ==========================================================================
Canvape Filters Responsive Overrides
========================================================================== */
@media screen and (max-width: 768px) {
	.canvape-filter-bar {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 15px !important;
	}
	.cfb-left {
		width: 100% !important;
		flex-wrap: wrap !important;
		gap: 10px !important;
	}
	.cfb-left .cfb-label {
		width: 100% !important;
		margin-bottom: 5px !important;
	}
	.cfb-right {
		width: 100% !important;
		flex-direction: row !important;
		justify-content: space-between !important;
		align-items: center !important;
		flex-wrap: wrap !important;
		gap: 10px !important;
	}
	.cfb-sort-container {
		display: flex !important;
		align-items: center !important;
		gap: 10px !important;
	}
	.cfb-dropdown-content {
		width: 90vw !important;
		max-width: 400px !important;
		left: 50% !important;
		top: 50% !important;
		transform: translate(-50%, -50%) !important;
		position: fixed !important;
	}

	body .mail-con input {
		min-width: 100%;
	}
}
