/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.2
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/**
 * MENU
 */


/* =========================================================
   CMZ Project Carousel (3D coverflow) — prefixed: .cmz-pc
   ========================================================= */
.cmz-pc {
	position: relative;
	max-width: 100%;
	margin: 0 auto;
	background: #ffffff;
	box-sizing: border-box;
	overflow-x: hidden; /* keep the angled side cards from causing horizontal scroll */
}

.cmz-pc * {
	box-sizing: border-box;
}

/* --- 3D stage --- */
.cmz-pc__stage {
	position: relative;
	height: 400px;
	perspective: 1500px;
}

.cmz-pc__track {
	position: relative;
	width: 100%;
	height: 100%;
	transform-style: preserve-3d;
}

.cmz-pc__slide {
	position: absolute;
	top: 0;
	left: 50%;
	width: 460px;
	height: 360px;
	margin-left: -230px;
	cursor: pointer;
	opacity: 0;
	will-change: transform, opacity;
	transition: transform 0.6s cubic-bezier( 0.25, 0.8, 0.25, 1 ),
		opacity 0.6s ease;
	transform-style: preserve-3d;
}

.cmz-pc__slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	box-shadow: 0 22px 45px rgba( 0, 0, 0, 0.55 );
	user-select: none;
	pointer-events: none;
}

.cmz-pc__slide.is-active {
	cursor: default;
}

.cmz-pc__slide.is-active img {
	box-shadow: 0 30px 60px rgba( 0, 0, 0, 0.7 );
}

/* --- bottom bar: arrows + active item info --- */
.cmz-pc__bar {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 50px;
	margin-top: 36px;
}

.cmz-pc__nav {
	flex: 0 0 auto;
	width: 56px;
	height: 56px;
	border: none;
	border-radius: 0;
	background: #0A2947 !important;
	color: #fff !important;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 0.25s ease, transform 0.15s ease;
}

.cmz-pc__nav:hover {
	background: #06192c !important;
}

.cmz-pc__nav:active {
	transform: scale( 0.94 );
}

.cmz-pc__info {
	flex: 0 1 380px;
	min-width: 0;
	padding-left: 22px;
	border-left: 1px solid rgba( 0, 0, 0, 0.2 );
	color: #000;
}

.cmz-pc__title {
	margin: 0 0 12px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	color: #000 !important;
}

.cmz-pc__desc {
	margin: 0 0 12px;
	font-size: 14px;
	line-height: 1.5;
	color: rgba( 0, 0, 0, 0.75 ) !important;
}

.cmz-pc__more {
	display: inline-block;
	color: #0A2947 !important;
	font-size: 14px;
	text-decoration: none;
}

.cmz-pc__more:hover {
	text-decoration: underline;
}
p.cmz-pc__desc ul {
    padding-left: 0;
}
p.cmz-pc__desc ul li {
    list-style: none;
}
.cmz-faq a.elementor-toggle-title {
    line-height: 0.7 !important;
}

.cmz-faq .elementor-tab-title{
    display: flex;
}

.cmz-faq a.elementor-toggle-title {
    line-height: 1.7 !important;
    position:relative;
    top:-5px;
}
/* MOBILE */
.mobile-header {
    position: absolute;
    top: 10px;
    width: 100%;
    z-index: 999;
}
.admin-bar .mobile-header {
    top: 40px;
}
.mobile-header .elementor-menu-toggle{
    background-color:transparent !important;
}
.mobile-header .elementor-nav-menu--dropdown a.elementor-item-active,
.mobile-header .elementor-nav-menu--dropdown a:hover{
    background-color: #1b2943 !important;
}



/* --- responsive: tablet --- */
@media ( max-width: 1024px ) {
	.cmz-pc {
		padding: 60px 0 50px;
	}
	.cmz-pc__stage {
		height: 340px;
	}
	.cmz-pc__slide {
		width: 380px;
		height: 300px;
		margin-left: -190px;
	}
	.cmz-pc__bar {
		gap: 30px;
	}
	.cmz-pc__info {
		flex-basis: 320px;
	}
	.cmz-pc__title {
		font-size: 21px;
	}
}

/* --- responsive: large phones / small tablets --- */
@media ( max-width: 768px ) {
	.cmz-pc {
		padding: 48px 0 40px;
	}
	.cmz-pc__stage {
		height: 280px;
	}
	.cmz-pc__slide {
		width: 300px;
		height: 235px;
		margin-left: -150px;
	}
	.cmz-pc__nav {
		width: 48px;
		height: 48px;
		font-size: 22px;
	}
	.cmz-pc__bar {
		gap: 22px;
	}
}

/* --- responsive: phones --- */
@media ( max-width: 540px ) {
	.cmz-pc {
		padding: 36px 0 36px;
	}
	.cmz-pc__stage {
		height: 230px;
	}
	.cmz-pc__slide {
		width: 230px;
		height: 180px;
		margin-left: -115px;
	}
	.cmz-pc__slide img {
		box-shadow: 0 12px 26px rgba( 0, 0, 0, 0.45 );
	}

	/* Stack the info below a centered row of arrows. */
	.cmz-pc__bar {
		flex-wrap: wrap;
		gap: 16px;
		margin-top: 24px;
		padding: 0 16px;
	}
	.cmz-pc__nav {
		width: 44px;
		height: 44px;
		font-size: 20px;
		order: 1;
	}
	.cmz-pc__nav--next {
		order: 2;
	}
	.cmz-pc__info {
		order: 3;
		flex: 1 0 100%;
		text-align: center;
		border-left: 0;
		padding-left: 0;
		margin-top: 6px;
	}
	.cmz-pc__title {
		font-size: 19px;
	}
}
