/*-----------------------------------
# MENU
------------------------------------*/

.menu-principal > li > a {
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 700;
	color: #242424;
	font-size: 22px;
	font-size: 1.375rem;
	transition: color ease .3s;
	display: block;
	position: relative;
}

.menu-principal > li.menu-item-has-children > a:after {
    font-family: FontAwesome;
    content: "\f107";
    margin-left: 10px;
}

.menu-principal > li > a:hover,
.menu-principal > li > a:focus,
.menu-principal .menu-item-has-children:hover a {
	color: #199e8f;
}

.menu-principal .menu-item-has-children:hover .sub-menu {
	display: block;
}

.menu-principal > li > a:before {
    content: "";
    width: 0%;
    height: 3px;
    background: #199e8f;
    display: block;
    top: -4px;
    position: absolute;
    transition: width ease .3s;
}

.menu-principal > li > a:hover:before,
.menu-principal > li > a:focus:before,
.menu-principal .menu-item-has-children:hover a:before {
	width: 100%;
}

.menu-principal > li {
	width: auto;
	flex: 0 auto;
}

.current-menu-item  > a {
	color: #199e8f;
}

.current-menu-item > a:before {
	width: 100%;
}


.menu-principal .menu-item-has-children {
	position: relative;
}

.menu-principal .menu-item-has-children .sub-menu {
	display: none;
	position: absolute;
	background: #f8f8f8;
	padding: 19px;
	border-top: solid 4px #199e8f;
	top: 40px;
	left: 0;
	width: 204px;
	z-index: 5;
}


.menu-principal .menu-item-has-children .sub-menu:before {
	content: " ";
	    display: block;
	    position: absolute;
	    width: 100%;
	    height: 22px;
	    top: -23px;
	    z-index: 2;
	    left: 0;
}

.menu-principal .menu-item-has-children .sub-menu a {
	text-decoration: none;
	font-weight: 700;
	color: #242424;
	font-size: 18px;
	font-size: 1.125rem;
	margin-bottom: 18px;
	display: block;
	transition: color ease .3s;
}

.menu-principal .menu-item-has-children .sub-menu li:last-child a {
	margin-bottom: 0;
}

.menu-principal .menu-item-has-children .sub-menu a:hover,
.menu-principal .menu-item-has-children .sub-menu a:focus,
.menu-principal .menu-item-has-children .sub-menu .current-menu-item a {
	color: #199e8f;
}

.mob-bt {
	cursor: pointer;
	background: #3b5bd3;
	width: auto;
	display: inline-block;
	text-align: center;
	padding: 10px 15px;
	color: #fff;
	font-size: 21px;
	position: absolute;
  top: 68px;
	right: -150px;
	z-index: 30;
	transition: all .4s linear;
}
@media screen and (max-width: 400px){

	.mob-bt{
		right: 20px;
	}
}
.mob-close{
	right: -110px;
	transition: all .4s linear;
}

@media (max-width: 940px) {
	.header_principal .flex {
		flex-wrap: wrap;
		justify-content: center;
	}
	.header_principal .col:first-child {
		max-width: 100%;
	}
	.header_principal .col:last-child {
		max-width: 100%;
	}
	.header_principal .logo {
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
	}
	.menu-principal > li {
		margin: 0 10px;
	}
}

@media (max-width: 720px) {
	.menu-principal .menu-item-has-children:hover .sub-menu {
		display: none;
	}
}

@media (max-width: 670px) {
	.menu-principal > li > a {
		font-size: 1.2rem;
	}
	.header_principal .logo {
		width: 269px;
		height: 57px;
		background-size: contain;
		background-repeat: no-repeat;
	}
}

@media (max-width: 595px) {
	.menu-menu-principal-container.header-menu {
		position: fixed;
		top: 0;
		background: rgba(242, 242, 242, 0.95);
		width: 100%;
		left: 0;
		height: 100%;
		z-index: 20;
		display: flex;
		align-items: center;
		justify-content: center;
		display: none;
	}
	.toggle-menu:checked ~ .menu-menu-principal-container.header-menu {
		display: flex;
	}
	.menu-principal > li {
		width: 100%;
	}
	.menu-principal > li > a {
		display: block;
		text-align: center;
		width: 100%;
		margin: 10px 0;
		border-bottom: solid 1px;
		padding-bottom: 10px;
	}
	.menu-principal > li > a:before {
		display: none;
	}
	.header_principal .logo {
		margin-left: inherit;
	}
	.mob-bt.mob-open {
		display: block;
	}
}
