/* ===================================================
   HEADER
=================================================== */

.ulg-header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:9990;
	padding:18px 0;
	transition:
	background .35s ease,
	backdrop-filter .35s ease,
	border-color .35s ease,
	padding .35s ease,
	transform .35s ease;
	will-change:transform;
}

.ulg-header.scrolled{
	background:
	rgba(5,11,30,.82);

	backdrop-filter:
	blur(20px);

	-webkit-backdrop-filter:
	blur(20px);

	border-bottom:
	1px solid
	rgba(255,255,255,.06);

	box-shadow:
	0 10px 30px
	rgba(0,0,0,.18);
}

/* ===================================================
   HEADER INNER
=================================================== */

.ulg-header-inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	min-height:72px;
}

/* ===================================================
   LOGO
=================================================== */

.ulg-logo{
	flex-shrink:0;
	display:flex;
	align-items:center;
}

.custom-logo{
	max-height:62px;
	width:auto;
	height:auto;
	display:block;
}

.ulg-text-logo{
	font-size:30px;
	font-weight:800;
	font-family:
	var(--ulg-font-heading);

	background:
	linear-gradient(
		135deg,
		var(--ulg-primary),
		var(--ulg-gold)
	);

	-webkit-background-clip:text;
	-webkit-text-fill-color:
	transparent;
}

/* ===================================================
   NAVIGATION
=================================================== */

.ulg-navbar{
	display:flex;
	align-items:center;
}

.ulg-navbar-menu{
	display:flex;
	align-items:center;
	gap:36px;
	list-style:none;
	margin:0;
	padding:0;
}

.ulg-navbar-menu li{
	position:relative;

}

.ulg-navbar-menu li a{
    	    display: flex;

	font-size:16px;
	font-weight:600;
	color:#fff;
	position:relative;
	padding:10px 0;
	display:inline-flex;
	align-items:center;
}

.ulg-navbar-menu li a::after{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:0;
	height:2px;

	background:
	linear-gradient(
		90deg,
		var(--ulg-primary),
		var(--ulg-secondary)
	);

	transition:
	width .35s ease;
}

.ulg-navbar-menu li a:hover::after,
.ulg-navbar-menu li.current-menu-item a::after,
.ulg-navbar-menu li.current_page_item a::after,
.ulg-navbar-menu li.current-menu-parent a::after,
.ulg-navbar-menu li.is-active a::after{
	width:100%;
}

.ulg-navbar-menu li a:focus-visible{
	outline:
	2px solid
	var(--ulg-primary);

	outline-offset:
	4px;
}

/* ===================================================
   DROPDOWN MENU
=================================================== */

.ulg-navbar-menu .sub-menu{
	position:absolute;
	top:100%;
	left:0;

	min-width:240px;

	background:
	rgba(7,18,47,.95);

	backdrop-filter:
	blur(20px);

	-webkit-backdrop-filter:
	blur(20px);

	border:
	1px solid
	rgba(255,255,255,.08);

	border-radius:
	20px;

	padding:
	16px;

	list-style:none;

	opacity:0;
	visibility:hidden;
	transform:
	translateY(12px);

	transition:
	all .3s ease;

	z-index:100;
}

.ulg-navbar-menu li:hover
> .sub-menu{
	opacity:1;
	visibility:visible;
	transform:
	translateY(0);
}

.ulg-navbar-menu .sub-menu li{
	margin-bottom:10px;
}

.ulg-navbar-menu .sub-menu li:last-child{
	margin-bottom:0;
}

.ulg-navbar-menu .sub-menu li a{
	padding:10px 14px;
	width:100%;
	border-radius:12px;
}

.ulg-navbar-menu .sub-menu li a:hover{
	background:
	rgba(255,255,255,.06);
}

/* ===================================================
   HEADER RIGHT
=================================================== */

.ulg-header-right{
	display:flex;
	align-items:center;
	gap:18px;
	flex-shrink:0;
}

.ulg-header-phone{
	font-size:15px;
	font-weight:600;
	color:
	rgba(255,255,255,.85);
	white-space:nowrap;
}

/* ===================================================
   MOBILE TOGGLE
=================================================== */

.ulg-menu-toggle{
	display:none;
	width:52px;
	height:52px;
	border:none;

	background:
	rgba(255,255,255,.06);

	border:
	1px solid
	var(--ulg-border);

	border-radius:18px;

	cursor:pointer;
	padding:0;
	position:relative;
	flex-shrink:0;
}

.ulg-menu-toggle span{
	display:block;
	width:24px;
	height:2px;
	background:#fff;
	margin:5px auto;
	border-radius:10px;

	transition:
	transform .3s ease,
	opacity .3s ease;
}

/* ===================================================
   MOBILE OVERLAY
=================================================== */

.ulg-mobile-overlay{
	position:fixed;
	inset:0;

	background:
	rgba(0,0,0,.58);

	backdrop-filter:
	blur(10px);

	-webkit-backdrop-filter:
	blur(10px);

	z-index:9991;

	opacity:0;
	visibility:hidden;

	transition:
	opacity .35s ease,
	visibility .35s ease;
}

.ulg-mobile-overlay.active{
	opacity:1;
	visibility:visible;
}

/* ===================================================
   MOBILE DRAWER
=================================================== */

.ulg-mobile-drawer{
	position:fixed;
	top:0;
	right:-100%;

	width:360px;
	max-width:92%;
	height:100dvh;

	background:
	#07122f;

	z-index:9992;

	padding:30px;

	transition:
	right .35s ease;

	display:flex;
	flex-direction:column;

	overflow-y:auto;

	box-shadow:
	-20px 0 60px
	rgba(0,0,0,.28);
}

.ulg-mobile-drawer.active{
	right:0;
}

.ulg-mobile-top{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:40px;
}

.ulg-menu-close{
	width:48px;
	height:48px;
	border:none;
	cursor:pointer;
	border-radius:16px;

	background:
	rgba(255,255,255,.08);

	color:#fff;
	font-size:18px;

	transition:
	var(--ulg-transition);
}

.ulg-menu-close:hover{
	transform:
	scale(1.04);
}

.ulg-mobile-menu-list{
	list-style:none;
	padding:0;
	margin:0;

	display:flex;
	flex-direction:column;
	gap:20px;
}

.ulg-mobile-menu-list li a{
	font-size:20px;
	font-weight:600;
	color:#fff;

	display:block;
	padding:10px 0;
}

.ulg-mobile-menu-list li a:hover{
	color:
	var(--ulg-primary);
}

.ulg-mobile-bottom{
	margin-top:auto;
	display:flex;
	flex-direction:column;
	gap:18px;
	padding-top:40px;
}

.ulg-mobile-phone{
	font-size:18px;
	font-weight:700;
	color:#fff;
}

/* ===================================================
   NAV SEARCH
=================================================== */

.ulg-nav-search{
	position:relative;
	width:100%;
	max-width:320px;
}

.ulg-search-form{
	position:relative;
}

.ulg-search-input{
	width:100%;
	height:54px;

	padding:
	0 60px 0 22px;

	border-radius:
	999px;

	border:
	1px solid
	rgba(255,255,255,.08);

	background:
	rgba(255,255,255,.06);

	backdrop-filter:
	blur(18px);

	-webkit-backdrop-filter:
	blur(18px);

	color:#fff;
	outline:none;

	transition:
	border-color .3s ease;
}

.ulg-search-input::placeholder{
	color:
	rgba(255,255,255,.45);
}

.ulg-search-input:focus{
	border-color:
	var(--ulg-primary);
}

.ulg-search-btn{
	position:absolute;
	top:50%;
	right:8px;

	transform:
	translateY(-50%);

	width:40px;
	height:40px;

	border:none;
	cursor:pointer;

	border-radius:50%;

	background:
	linear-gradient(
		135deg,
		var(--ulg-primary),
		var(--ulg-secondary)
	);

	color:#fff;

	display:flex;
	align-items:center;
	justify-content:center;
}

/* ===================================================
   STICKY OFFSET
=================================================== */

.site-main,
.ulg-site-main{
	padding-top:90px;
}

/* ===================================================
   TABLET
=================================================== */

@media(max-width:1100px){

	.ulg-navbar{
		display:none;
	}

	.ulg-header-phone{
		display:none;
	}

	.ulg-menu-toggle{
		display:block;
	}
}

/* ===================================================
   MOBILE
=================================================== */

@media(max-width:768px){

	.ulg-header{
		padding:14px 0;
	}

	.ulg-header-inner{
		min-height:62px;
	}

	.custom-logo{
		max-height:52px;
	}

	.ulg-mobile-drawer{
		width:100%;
		max-width:100%;
		border-radius:0;
	}

	.ulg-nav-search{
		max-width:100%;
	}

	.site-main,
	.ulg-site-main{
		padding-top:95px;
	}
}

/* ===================================================
   ELEMENTOR FIX
=================================================== */

.elementor-editor-active
.ulg-header{
	position:relative;
}

.elementor-popup-modal{
	z-index:999999 !important;
}