/* === DESKTOP MENU === */
.main-menu a {
	display: inline-block;
}

.main-menu ul,
.main-menu li,
#_mobile_top_menu ul,
#_mobile_top_menu li {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}

.main-menu .depth-1 {
	position: relative;
	display: flex;
	justify-content: flex-start;
	gap: 28px;
	padding: 0;
	margin: 0;
}

.main-menu .depth-1 > li {
	position: static;
}

.main-menu .depth-1 > li > a {
	color: #000;
	font-weight: 600;
	text-transform: uppercase;
	display: block;
	position: relative;
}

/* Hover bridge — invisible area connecting link to dropdown */
.main-menu .depth-1 > li > a::after {
	content: '';
	position: absolute;
	left: -10px;
	right: -10px;
	top: 100%;
	height: 40px;
	display: none;
}
.main-menu .depth-1 > li:hover > a::after {
	display: block;
}

.main-menu .depth-2 > li > a {
	font-size: 15px;
	color: #C45000;
	font-weight: 700;
	margin-bottom: 8px;
	display: block;
}

.main-menu .depth-3 a {
	color: #444;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
}

.main-menu .depth-3 a:hover {
	color: #C45000;
}

.main-menu .depth-2 {
	position: absolute;
	top: 100%;
	left: 0;
	right: auto;
	transform: none;
	background: #fff;
	padding: 15px 20px;
	width: 100vw;
	max-width: 1660px;
	margin: 0;
	z-index: 9999;
	grid-template-columns: repeat(5, 1fr);
	gap: 0px;
	display: none;
	border-top: 2px solid #C45000;
	box-shadow: 0 8px 20px rgba(0,0,0,.1);
}

.main-menu .depth-1 > li:hover > .depth-2 {
	display: grid;
}

.main-menu .depth-3 {
	display: flex;
	flex-direction: column;
	padding-left: 5px;
}

.main-menu .depth-3 ul {
	padding-left: 20px;
}

/* === MOBILE MENU === */
#_mobile_top_menu .depth-1 li {
	position: relative;
	cursor: pointer;
}

#_mobile_top_menu .depth-1 ul li {
	display: none;
	padding-left: 20px;
}

#_mobile_top_menu .depth-1 > li {
	border-bottom: 1px solid #e0e0e0;
	padding-top: 0.9rem;
}

#_mobile_top_menu .depth-1 > li > a {
	color: #333;
	font-weight: 600;
	line-height: 60px;
	font-size: 19px;
	text-transform: uppercase;
	padding-left: 1rem;
}

#_mobile_top_menu .depth-1 ul:before {
	content: '+';
	display: block;
	position: absolute;
	right: 10px;
	font-size: 19px;
	font-weight: bold;
	line-height: 1;
	width: 20px;
	height: 20px;
	top: 34px;
	color: #C45000;
}

#_mobile_top_menu .depth-1 .open > ul:before {
	content: '-';
	top: 23px;
}

#_mobile_top_menu .depth-1 .open > ul > li {
	display: block;
}

#_mobile_top_menu .depth-2 li {
	border-bottom: 1px solid #f0f0f0;
}

#_mobile_top_menu .depth-2 li:last-child {
	border-bottom: none;
}

#_mobile_top_menu .depth-2 > li > a {
	font-size: 16px;
	font-weight: 600;
	padding: 20px 0px 7px 0px;
	position: relative;
	display: inline-block;
	color: #4A4A4A;
}

#_mobile_top_menu .depth-2 ul:before {
	top: 25px;
}

#_mobile_top_menu .depth-2 .open > ul:before {
	top: 8px;
}

#_mobile_top_menu .depth-3 a {
	padding: 16px 0px 16px 0px;
	position: relative;
	display: inline-block;
	font-size: 1.1rem;
	color: #323232;
}

#_mobile_top_menu a.current {
	color: #C45000;
}
