@-webkit-keyframes scale-up-center {
	0% {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}
	100% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes scale-up-center {
	0% {
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}
	100% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@font-face {
	font-family: "Font Awesome 5 Pro";
	src: url("../fonts/fontawesome-webfont-a1c97492338a266770f097e2ed962b83.woff") format("woff");
	font-display: swap;
}
#menu 			{ position:absolute; top: 0; right: 0; z-index: 1 }
#menu ul 		{ list-style-type: none; background: none; }
#menu ul li 	{ display: inline-block; margin-right: 15px; font-size: 15px; }
#menu ul li a 	{ font-size: 15px; color: #FFF; }

#menu ul ul {  padding: 10px; width:400px; background-color: rgba(0, 0, 0, 0.7); }
#menu ul ul li { width: 100%; }
#menu ul ul li a { padding: 5px; color: #FFF !important; font-weight: normal !important; }

#menu ul ul ul {  padding: 10px; margin:0; background-color: transparent }
#menu ul ul ul li.dropdown-item { margin: 0; padding:0; }
#menu ul ul ul a { padding: 2px 15px; }
#menu ul ul ul li:hover,
#menu ul ul ul a:hover { background:none; text-decoration: underline; cursor:pointer; }
#menu ul ul.dropdown-menu { position: absolute !important; }
#menu ul ul ul.dropdown-menu {
	position: initial !important;
	width: 100%;
}

.navbar { -webkit-box-shadow: none !important; box-shadow: none !important; }
.navbar-dark .navbar-toggler { font-size: 25px; border: 0 !important; margin-top: 0; padding-left: 5px; padding-right: 0; padding-top: 18px; color: #FFF; }
.navbar-nav .nav-item .nav-link { padding: 0 !important; margin: 0 !important}

.navbar-nav .nav-item .nav-link:hover { background:none !important; text-decoration: underline; }
.nav-item.dropdown { cursor: pointer; }
.navbar-nav > .nav-item > .dropdown-menu { margin-top: 5px !important; background-color: rgba(0, 0, 0, 0.5);}
.dropdown-menu .dropdown-item { color: #FFF !important; }

.dropdown-toggle::after    { display: none; }
#menu li a.dropdown-toggle { 
	background: url("../images/arrow-369a004eefbb344752dd9a974a7c92d9.png") no-repeat right; 
	padding-right: 19px!important;
    background-size: 12px;
}

#menu li a.dropdown-toggle:hover, 
#menu li a.dropdown-toggle:focus {
	background: url("../images/arrow-369a004eefbb344752dd9a974a7c92d9.png") no-repeat right !important; 
	background-color:transparent !important;
	text-decoration: underline;
	text-underline-offset: 0.3em;
	background-size: 12px !important;
}

#menu ul ul li a.dropdown-toggle,
#menu ul ul li a.dropdown-toggle:hover,
#menu ul ul li a.dropdown-toggle:focus  { 
	background: url("../images/arrow-369a004eefbb344752dd9a974a7c92d9.png") no-repeat right !important; 
}

@media (min-width: 768px){
	.navbar-expand-lg .navbar-nav {
		-ms-flex-direction: row !important;
		flex-direction: row !important;
	}
	
}
@media (min-width: 768px) and (max-width: 830px){
	#menu ul li   { margin-right: 7px; }
	#menu ul li a { font-size: 10px; line-height: 25px; }
	#menu { right: 0; }
	.navbar-collapse.collapse {
		padding: 0 8px 0 0!important;
	}
}
@media (min-width: 831px) and (max-width: 1055px){
	#menu ul li   { margin-right: 10px; }
	#menu ul li a { font-size: 9px; line-height: 27px; }
	#menu { right: 0; }
}
@media (min-width: 1056px) and (max-width: 1115px){
	#menu ul li   { margin-right: 15px; }
	#menu ul li a { font-size: 13px; line-height: 25px; }
	#menu { right: 0; }
}
@media (min-width: 1116px) and (max-width: 1200px){
	#menu ul li   { margin-right: 15px; }
	#menu ul li a { font-size: 14px; line-height: 25px; }
	#menu { right: 0; }
}

#menu img{
	display: none;
}
#menu .resi.mobile { display: none; }
@media (max-width: 767px) {
    #menu ul li a { font-size:22px; line-height:25px; }
	#menu ul ul li a { font-size:14px; }
	#menu ul ul li{text-align: center}
    #menu ul {
		width: 100%;
	}
    #menu ul ul { background-color: transparent; width:100%; }
	#menu ul li { padding: 15px; margin-right: 0;}
	
	#menu ul ul.dropdown-menu { position: static !important; float:none; }
    #menu .navbar-nav { width: 100%;right: 0;    margin: 0px; text-align: center;    padding-inline-start: 0px; }
    #menu ul ul, #menu ul ul ul { padding: 0; }
    
    #menu ul li { display: block; }
	
	#menu ul li a { text-align: center; }

	#menu.active{
		padding-top:65px;
		position: fixed;
		z-index: 999;
		right: 0;
		top: -10px;
		width: 100%;
		height: calc(100% + 10px);
		background-color: rgba(0, 0, 0, 0.9);
		-webkit-animation: scale-up-center 0.4s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
		animation: scale-up-center 0.4s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	}
	
	#menu.active .navbar-toggler{
		position: absolute;
		right: 10px;
		top: 10px;
	}

	#menu.active .navbar-toggler::after {
		font-family: "Font Awesome 5 Pro";
		font-weight: 900;
		content: "\f00d";
	}
	
	#menu.active #cnx-mobile, #menu.active #contact-mobile, #menu.active .link-mobile, #menu.active .resi { display: none; }
	#menu.active .resi.mobile { display: block; }
	#menu .navbar-toggler::after {
		font-family: "Font Awesome 5 Pro";
		font-weight: 900;
		content: "\f0c9";
	}


	#menu.active .mainmenu{
		padding-right: 0px;
		padding-left: 0px;
		border-top: none;
		-webkit-box-shadow: none;
		box-shadow: none;
		display: block!important;
		overflow-y: scroll;
		height: calc(100% - 120px);
	}
	#menu.active img{
		display:block;
		width: 90px;
		position: absolute;
		left: 10px;
		top: 10px;
	}
}

#top.landing {
	height: 145px;
	@media (max-width: 767px) {
		height: 87px;
	}
	#logo {
		top: 50%;
		z-index: 1;
		transform: translateY(-50%);
		a {
			padding: 0;
			img {
				width: 79px !important;
				height: auto;
				@media (max-width: 768px) {
					width: 49px !important;
					margin-top: 0;
					margin-left: 0;
				}
			}
		}
	}
	#menu {
		height: 100%;
		.cnx {
			padding: 1rem 2rem;
			background-color: #FFF;
			color: #000;
			font-size: 16px;
			font-family: "Mulish-bold", sans-serif;
			margin-right: 2rem;
			@media (max-width: 767px) {
				font-size: 14px;
			}
		}
	}
}

/*FOOTER*/
.footer .row{
	margin: 0px!important;
	padding: 20px 15px;
}
.footer div.right{
	text-align: right;
}
@media (max-width: 768px) {
	.footer div.right{
		text-align: center;
		margin-bottom: 10px;
	}
	.footer div.left{
		text-align: center;
	}
}
