html {
	scroll-behavior: smooth;
}
body{
	color:#2b2b2b;
	font-family: 'Open Sans', sans-serif;
}
a, a:hover{
	color:#004559;
}
h1, h2, h3, h4{
	font-family: 'Raleway', sans-serif;
}
h1{
	font-size:2rem;
}
.h3, h3 {
	font-size:1.4rem;
}
.cor-letra-1{
	color:#004559;
}
.barra_topo a:hover img{
	transform:scale(1.2);
	transition:0.4s;
}
.barra_topo img{
	max-width:30px;
}
.barra_topo{
	background-color:#004559;
	color:#fff;
}
.logo{
	max-width:200px;
	transition:0.4s;
}
.h-80{
	min-height:80vh;
}
/*MENU*/
.zona_menu{
    box-shadow: 0px -3px 20px 2px rgb(0 0 0 / 30%);
}
.fixo {
    position: fixed;
    z-index: 999;
    width: 100%;
    background: #fff;
    top: 0;
    transition: 0.5s;
}
.fixo .logo{
	max-width:150px;
	transition:0.4s;
}
.fixo .menu {
	padding: 10px 0px;
}
.menu{
  padding: 25px 0px;
  transition:0.4s;
 font-family: 'Raleway', sans-serif;
}
.menu ul{
  list-style: none;
  margin: 0;
  padding: 0;
}
.menu li{
  display: inline-block;
  margin: 0 15px;
}
.menu a{
  font-size: 18px;
  text-transform: uppercase;
  text-decoration: none;
  color: #2b2b2b;
  display: block;
  position: relative;
  padding: 4px 0;
}
.menu a::before{
  content: "";
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: #fff;
  transition: 0.5s transform ease;
  transform: scale3d(0,1,1);
  transform-origin: 0 50%;
}
.menu a:hover::before{
  transform: scale3d(1,1,1);
}
.menu-1 a::before{
  background: #004559;
  transform-origin: 100% 50%;
}
.menu-1 a:hover::before{
  transform-origin: 0 50%;
}
#about .titulo{
	padding-left:15px;
	border-left:2px solid #004559;
}
.info_graphic{
	position:relative;
	background-image: url("../images/mapa.png");
	background-repeat: no-repeat;
    background-position: center 0;
}
#about{
	background-image: url("../images/mapa2.png");
	background-repeat: no-repeat;
    background-position: center 100%;
}
.info_graphic .mapa img{
	position: absolute;
    top: -117px;
}
.info_graphic{
	background-color:#004559;
	min-height:350px;
	color:#fff;
}
.info_graphic .numero span{
	font-size:1rem;
}
.info_graphic .numero{
	font-family: 'Raleway', sans-serif;
	font-size:4rem!important;;
	font-weight:800;
}
.separador{
	max-width:60px;
	height:5px;
	background-color:#64ceef;
}
.info_graphic .d-table-cell{
	vertical-align:middle;
}
.separador_titulo{
	max-width:60px;
	height:3px;
	background-color:#004559;
}
/*CAIXA AJUDA*/
#help button:hover{
	background-color:#004559;
	color:#fff;
	transition:0.5s;
}
#help button{
	background:#fff;
	border: 1px solid #fff;
	color:#004559;
	height:50px;
	margin-left:2px;
	font-weight:800;
}
#help input{
	background:rgba(0,0,0,0);
	border:1px solid #fff;
	border-left:0px!important;
	color:#fff;
	padding:20px!important;
	border-radius:0px!important;
}
#help .input-group-text i{
	font-size:26px;
}
#help .input-group-text{
	background: rgba(0,0,0,0);
    color: #fff;
    border-right: 0!important;
    border-radius: 0!important;
	border:1px solid #fff;
}
#help ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #fff;
  opacity: 1; /* Firefox */
}

#help :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #fff;
}

#help ::-ms-input-placeholder { /* Microsoft Edge */
  color: #fff;
}
#help{
	background-color:#004559;
	color:#fff;
}
#help h3{
	font-size:2.8rem;
}
#help p{
	font-size:1.6rem;
}
.v-align-middle{
	vertical-align:middle;
}
#help .input-group, #help input{
	height:50px;
	-webkit-text-fill-color: #fff !important;
}
#help input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px #004559 inset;
	color:#fff;
}

.form-control:focus, textarea:focus {
    outline: 0;
    box-shadow: 0 0 0 0rem rgb(0 123 255 / 25%);
}
/*Contactos*/
#contact input, textarea{
	border-radius:0px;
	width:96%;
	border: 1px solid #ced4da;
	border-left:0px;
	font-size:14px;
	padding: .25rem .5rem;
}
#contact input{
	height:45px;
}
#contact .input-group{
	margin-bottom:20px;
}
#contact .input-group-text i{
	margin:auto;
}
#contact .input-group-text{
	width:100%;
	border-radius:0px;
	border-right:0;
	background:#fff;
}
#contact  .group-nome.esquerda {
	display:inline-flex;
	width:50%;
}
#contact  .group-nome.direita {
	display:inline-flex;
	width:49.3%;
}
#contact  .group-nome input {
	width:92%;
}
#contact .group-nome .input-group-prepend{
	width:8%;
}
#contact .input-group-prepend{
	width:4%;
}
.fa-mobile{
	font-size:22px!important;
}
#contact button:hover{
	background:#fff;
	transition:0.5s;
	color:#004559;
}
#contact button, .modal button{
	background:#004559;
	border: 1px solid #004559;
	color:#fff;
	height:40px;
	margin-left:2px;
}

footer{
	background:#434343;
	color:#fff;
	
}
footer span{
	font-size:28px;
	font-family: 'Raleway', sans-serif;
	margin-right:7px;
	font-weight:800;
}
footer a:hover{
	color:#fff;
	text-decoration:none;
	margin-left:7px;
	transition:0.4s;
}
footer a{
	font-family: 'Open Sans', sans-serif;
	font-size:14px;
	display:inline-block;
	text-decoration:none;
	color:#fff;
	
}
footer .verde{
	background-color:#004559;
}
footer .container-fluid{
	padding-right:15px!important;
}
footer .verde a:hover{
	color:#64ceef;
	margin-left:0px!important;
}
/*Sidenav*/
.menu_mobile{
	padding-left:0;
	color:#1c1c1c;
}
.sidenav {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgba(255,255,255,0.9);
  overflow-x: hidden;
  transition: 0.5s;
  padding-top: 80px;
  text-align:center;
}

.sidenav a {
  padding: 8px 8px 8px 32px;
  text-decoration: none;
  font-size: 20px;
  color: #1c1c1c;
  display: block;
  transition: 0.3s;
  text-transform:uppercase;

}
.closebtn{
	top:40px;
	font-size:45px!important;
}
.sidenav a:hover{
  color: #000;
}

.sidenav .closebtn {
  position: absolute;
  right: 13px;
  font-size: 36px;
  margin-left: 50px;
}
#counter .d-table-cell {
	width:33%;
}
.carousel-caption {
    padding: 20px 60px;
	font-size:2rem;
    min-width: 300px;
    position: absolute;
    right: 10%;
	bottom:10%;
	left:unset;
    background-color: rgb(0, 69, 89, 0.88);
	font-family: 'Raleway', sans-serif;
}


/*Checkbox*/



  
  .check_box_panel input {
	padding: 0;
	height: initial;
	width: initial;
	margin-bottom: 0;
	display: none;
	cursor: pointer;
  }
  
  .check_box_panel label {
	position: relative;
	cursor: pointer;
  }
  
  .check_box_panel label:before {
	content:'';
	-webkit-appearance: none;
	background-color: transparent;
	border: 1px solid #004559;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05), inset 0px -15px 10px -12px rgba(0, 0, 0, 0.05);
	padding: 9px;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	cursor: pointer;
	margin-right: 5px;
  }
  
  .check_box_panel input:checked + label:after {
	content: '';
	display: block;
	position: absolute;
	top: 5px;
	left: 7px;
	width: 6px;
	height: 14px;
	border: 1px solid #004559;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
  }
  
.loader{
	width: 23px;
    margin-top: -3px;
    margin-left: 5px;
}
button:disabled,
button[disabled]{
  border: 1px solid #677c82;
  background-color: #677c82;
}
@media screen and (max-height: 450px) {
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
}
@media (max-width: 575.98px) {
	#services{
		text-align:center;
	}
	#counter .d-table-cell {
		display:block!important;
		width:100%;
	} 
	#contact .input-group-prepend {
		width: 14%!important;
	}
	#contact input, textarea {
		width: 86%!important;
	}
	footer{
		text-align:center;
	}
	#contact .group-nome {
		display:block;
		width:100%!important;
	}
}

@media (min-width: 576px) and (max-width: 767.98px) {
	#services{
		text-align:center;
	}
	footer{
		text-align:center;
	}
}

@media (min-width: 768px) and (max-width: 991.98px) {
	footer{
		text-align:center;
	}
}

@media (min-width: 992px) and (max-width: 1199.98px) {
	footer{
		text-align:center;
	}
}


@media (min-width: 992px) and (max-width: 1599px) {
	.worker{
		position:absolute;
		bottom:0px;
		right:30px;
	}
	.pb-espaco{
		padding-bottom:5.5rem;
	}
}

@media (min-width: 1600px) {
	.container-fluid{
		padding-left:150px;
		padding-right:150px;
	}
	.pb-espaco{
		padding-bottom:8rem;
	}
	.worker{
		position:absolute;
		bottom:0px;
	}
}