
/*********************************************
** Header 
*********************************************/

#header {
	float: left;
	width: 100%;
}

/* Top Header ********************************/

#header .topHeader {
	float: left;
	width: 100%;
	padding: 15px 0;
	border-top: solid 3px #187C47;
	background: #ECF0F1;
}

#header .topHeader .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

/* Busca */

#header .topHeader .busca {
	flex: 1;
}

#header .topHeader .busca form {
	float: left;
	width: 100%;
	position: relative;
}

#header .topHeader .busca form input {
	padding: 12px 15px;
    border-radius: 4px 0 0 4px;
    border: 1px solid #ddd;
    outline: none;
	float: left;
	width: 100%;
}

#header .topHeader .busca form button {
	background: #149D2F;
    border-radius: 0 4px 4px 0;
    padding: 0 15px;
    border: 0;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
}

#header .topHeader .busca form button i {
	font-size: 20px;
    color: #fff;
}

/* Banner Header */

.bannerHeader {
	float: left;
	width: 100%;
	padding: 14px 0;
    background-image: url('https://www.aprovaconcursos.com.br/noticias/wp-content/themes/aprova_concursos/img/lines-bg.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.bannerHeader .boxBanner {
	float: left;
	width: 100%;
	margin: 0;
    justify-content: space-between;
	display: flex;
	align-items: center;
    background-image: url('https://www.aprovaconcursos.com.br/noticias/wp-content/uploads/2020/09/bg-blue-cadastre.png');
    padding: 15px 20px;
    background-repeat: no-repeat;
    background-size: cover;
}

.bannerHeader .boxBanner .texto1 {
	flex: 1;
}

.bannerHeader .boxBanner .texto1 span {
	color: #fff;
    font-size: 18px;
    line-height: 26px;
}

.bannerHeader .boxBanner .texto1 span strong {
	color: #fff;
}

.bannerHeader .boxBanner .texto2 {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.bannerHeader .boxBanner .texto2 span {
	color: #fff;
    font-size: 14px;
}

.bannerHeader .boxBanner .texto2 a {
	display: block;
    padding: 10px 24px;
    background: #149c2f;
    text-transform: uppercase;
    color: #fff;
    border-radius: 4px;
    box-shadow: 0px 3px 0px #0d7c23;
    font-size: 14px;
    font-weight: 500;
    transition: all ease .3s;
    margin-left: 30px;
}

/* Menu Mobile */

.menuPrincipal #menuMobile {
	display: none;
}

/* Menu Principal */

.menuPrincipal .boxMenuCategorias {
	float: left;
	width: 100%;
}

.menuPrincipal .boxMenuCategorias #fechaMenuMobile {
	display: none;
}

.menuPrincipal {
	float: left;
	width: 100%;
	background: #149c2e;
    box-shadow: 0px 5px 0px #19724f;
}

.menuPrincipal ul {
	float: left;
	width: 100%;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.menuPrincipal ul li {
	position: relative;
    display: inline-block;
}

.menuPrincipal ul li a {
	text-transform: uppercase;
    color: #fff;
    padding: 0;
    position: relative;
    padding: 14px 13px;
    text-align: center;
    display: inline-block;
	transition: all ease .3s;
}

.menuPrincipal ul li a:hover {
	background: #18724f;
}

/* Submenu */

.menuPrincipal ul li ul {
	display: none;
}

.menuPrincipal ul li:hover ul {
	display: block;
}

.menuPrincipal ul li ul {
	background: #f1f2f2;
    position: absolute;
    width: 200px;
    z-index: 999;
    left: 0;
	top: 100%;
    border: solid 3px #19724F;
	flex-direction: column;
}

.menuPrincipal ul li ul li {
	float: left;
	width: 100%;
}

.menuPrincipal ul li ul li + li {
	border-top: 2px solid #ccc;
}

.menuPrincipal ul li ul li a {
	text-transform: uppercase;
    color: #1d4f69;
    z-index: 999;
    transition: all ease .4s;
    font-size: 14px;
    padding: 10px 15px;
    text-align: left;
    display: inline-block;
    width: 100%;
}

.menuPrincipal ul li ul li a:hover {
	color: #fff;
}

@media (max-width: 850px) {

	/* Menu Mobile */

	.menuPrincipal #menuMobile {
		float: left;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 10px 0;
	}

	.menuPrincipal #menuMobile span {
		color: #fff;
		font-weight: bold;
	}

	.menuPrincipal #menuMobile i {
		color: #fff;
		font-size: 24px;
	}

	/* Menu Categorias */

	.menuPrincipal .col-sm-12 {
		position: initial;
	}

	.menuPrincipal .boxMenuCategorias {
		display: block;
		position: fixed;
		top: 0;
		right: -100%;
		bottom: 0;
		left: 100%;
		background: #149C2E;
		z-index: 999;
		-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
		-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
		box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.75);
		width: auto;
		padding: 30px;
		overflow: auto;
		transition: all 0.2s linear;
	}

	.menuPrincipal .boxMenuCategorias.ativo {
		right: 0;
		left: 50px;
	}

	.menuPrincipal .boxMenuCategorias #fechaMenuMobile {
		display: block;
		text-align: right;
		margin-bottom: 5px;
	}

	.menuPrincipal .boxMenuCategorias #fechaMenuMobile img {
		width: 35px;
	}

	.menuPrincipal ul {
		flex-direction: column;
	}

	.menuPrincipal ul li {
		width: 100%;
	}

	.menuPrincipal ul li + li {
		border-top: solid 1px #1bb639;
	}

	.menuPrincipal ul li a {
		padding: 7px 0;
		text-align: left;
		width: 100%;
	}

	.menuPrincipal ul li ul {
		position: relative;
		left: auto;
		width: 100%;
		display: block;
		background: none;
		border: none;
		margin-bottom: 10px;
	}

	.menuPrincipal ul li ul li + li {
		border-top: none;
	}

	.menuPrincipal ul li ul li a {
		color: #fff;
		font-size: 13px;
		text-transform: none;
		padding: 5px 15px 5px 25px;
		line-height: 140%;
		position: relative;
	}

	.menuPrincipal ul li ul li a::before {
		content: '»';
		position: absolute;
		left: 10px;
		line-height: 100%;
		top: calc(50% - 6px);
	}

}

@media (max-width: 768px) {

	#header .topHeader .container {
		flex-direction: column;
	}

	#header .topHeader #logo {
		width: 100%;
		margin-bottom: 20px;
		text-align: center;
	}

	#header .topHeader .busca {
		width: 100%;
		padding: 0;
	}

	/* Banner header */

	.bannerHeader .col-sm-12 {
		padding: 0;
	}

	.bannerHeader .boxBanner {
		flex-direction: column;
		padding-bottom: 20px;
	}

	.bannerHeader .boxBanner .texto2 {
		flex-direction: column;
		width: 100%;
		align-items: flex-start;
		margin-top: 20px;
	}

	.bannerHeader .boxBanner .texto2 span {
		width: 100%;
		margin-bottom: 10px;
	}

	.bannerHeader .boxBanner .texto2 a {
		margin: 0;
		width: 100%;
		text-align: center;
	}

}
