:root{
  	--white: #FFF;
  	--transp:rgba(255,255,255,0);
  
  	--black-800:#5D5F61;
  	--black-700:#777C7E;
  	--black-300:#DCDCDC;
  	--black-200:#DFDFDF;
  	--black-100:#F1F2F2;
  
  	--prim-800:#232b54;
  	 
  	--sec-700:#537440;
  	--sec-600:#71A14B;
  	--sec-500:#82C44F;
  
  	--sec-100:#F2F9ED;  
}
.flex-col{
	flex-direction:column;
}
.txt svg{
	display:flex;
  	align-items:center;
}
.txt svg,
.txt svg path{
	fill:currentColor;
}
.txt .box ul,
.txt .box ol{
	list-style:disc;
}
.txt h1,
.txt h2,
.txt h3{
  font-weight:300;
}
.txt strong,
.txt b{
  	font-weight:500;
}
.txt a,
.txt a span,
.txt a div,
.txt a svg{
	transition:.2s;
}
.txt img{
  	display:block;
  	width:100%;
  	height:auto;
}

/*300 400 500*/
.txt a, 
.txt input,
.txt select,
.txt textarea,
.txt{
	font-family: 'Roboto', sans-serif;
  	font-size:1.8rem;
  	font-weight:300;
  	color:var(--black-800);
  	line-height:140%;
}
.txt h1,
.txt h2,
.txt h3,
.txt.t2,
.txt .t2{
	font-family: 'Raleway', sans-serif;
  	font-weight:600;
}
.detalhe ul,
.detalhe ol{
	margin-left:20px;
}

.header {
  	background:var(--white);
    width:100%;
  	z-index:10;
}
.corpo{
	padding-top:165px;
}
.header .container:before{
  	content:'';
  	position:absolute;
  	z-index:-1;
  	top:0px; 
  	left:-360px;
    /*left:-315px;*/
  	background:url(/images/comum/001.png) no-repeat top center;
  	width:1800px;
  	height:88px;
  	
}
.header .container{
	height:165px;
}

.header .logo{
  	display:block;
  	width:207px;
  	top:30px;
  	left:10px;
}
.header .social{
  	top:0px;
  	right:10px;
}
.header .social a{
  	display:flex;
  	align-items:center;
  	padding:3px;
	color:var(--white)
}


.header .head-links{
	top:35px;
  	right:10px;
  	grid-gap:10px;
  	z-index:10;
}
.menu > li > a,
.btn{
  	cursor:pointer;
	display:flex;
  	align-items:center;
  	justify-content:center;
  	border-radius:5px;
}
.btn.lg{
	height:45px;
  	padding:0 20px;
    /*padding:0 25px;*/
  	font-size:1.6rem;
  	font-weight:500;
  	box-shadow: 0px 8px 15px -6px rgba(24, 39, 75, 0.07), 0px 10px 50px -4px rgba(24, 39, 75, 0.1);
}
.btn.sec{
	color:var(--sec-600);
  	background:var(--sec-100);
}
.btn.ter{
	color:var(--white);
  	background:var(--sec-500);
}
.btn.ter:hover{
 	background:var(--sec-600);
}

.btn.qua{
	background:var(--black-700);
  	color:var(--white);
}

.sub:hover > a,
.menu > li:hover > a,
.menu > li.ativo > a,
a:hover .btn.sec,
.btn.sec:hover,
a:hover .btn.prim,
.btn.prim:hover{
	background:var(--sec-500);
  	color:var(--white);
}
.btn.prim,
.menu a{
	background:var(--black-100);
  	color:var(--black-800);
}
.menu > li > a,
.btn.sm{
	height:35px;
  	padding:0 20px;
  	font-size:1.3rem;
  	font-weight:500;      
}



.menu{
	top:115px;
  	right:10px;
  	grid-gap:2px;
  	z-index:8;
}

.sub{
	position:relative;
}
.sub ol{
	display:none;
  	width:100%;
  	z-index:-1;
  	padding:0 20px;
   	box-shadow:0px 4px 4px rgba(0, 0, 0, 0.15);
}
.sub.s2 ol{
	width:110%;
}
.sub ol li + li{
  	border-top:1px solid var(--black-800);
}
.sub ol a{
  	display:flex;
	justify-content:start;
  	font-size:1.3rem;
  	font-weight:500;
  	padding:20px 0;
}
.head-links .sub ol{ background:var(--sec-100); } 
.menu .sub ol{ background:var(--black-100);  }

.sub:hover ol{
  	display:block;
}
/* REDUZIR */
.menu,
.menu-mobile,
.header .logo,
.header .head-links,
.reduzir .header,
.header .container{
	transition:.2s;
}

.reduzir .header{
	box-shadow:0 0 5px rgba(0,0,0,.4);
}
.reduzir .header .container{
	height:110px;
}
.reduzir .header .head-links{
	top:-250px;
}
.reduzir .header .logo{
  	width:100px;
}
.reduzir .menu{
	top:60px;
}
.reduzir .menu-mobile{
	top:57px;
}

/* TITULO */
.box-titulo{
  	background:var(--sec-600);
  	margin-bottom:35px;
}
.box-titulo .bg{
  	width:100%;
  	height:100%;
	opacity:.5;
  	z-index:1;
}
.box-titulo .container{
	padding:30px 0;
  	display:flex;
  	align-items:flex-end;
   	height:355px;
  	opacity:1;
  	z-index:2;
}
.box-titulo h1{
	font-size:3.2rem;
  	font-weight:500;
  	color:var(--white);
  	line-height:3.0rem;
  	text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.box-titulo.default{
	background:initial;
  	margin-bottom:0;
}
.box-titulo.default .bg{
	display:none;
}
.box-titulo.default .container{
	height:initial;
}
.box-titulo.default h1{
  	color:var(--sec-600);
  	text-shadow:initial;
}

.detalhe { 
  	line-height:3.0rem;
}

/* FAQ */
.box-faq{
	max-width:1025px;
  	width:95%;
  	margin:0 auto;
}
.box-faq.txt h2{
	padding:50px 0;
  	font-size:3.0rem;
  	font-weight:400;
  	color:var(--sec-600);
}
.box-faq .link a{
	display:inline-flex;
  	margin:50px 0 0;
  	font-weight:400;
  	text-decoration:underline;
  	color:var(--sec-500);
}

.faq > li{
	padding:30px;
  	box-shadow: 0px -1px 2px rgba(0, 0, 0, 0.05), 0px 2px 1px rgba(0, 0, 0, 0.25), inset 0px 2px 0px #FFFFFF;
	border-radius: 20px;
  	background:var(--black-100);
}
.faq  > li > h3{
  	grid-template-columns:1fr 24px;
  	grid-gap:20px;
  	cursor:pointer;
  	color:var(--sec-700);
}
.faq > li > h3 svg path{
	fill:var(--sec-500);
}
.faq > li > div{
  	display:none;
	margin-top:20px;
}
.faq > li > .ativo{	
  	background:var(--sec-100);
}
.faq li.ativo > div{
	display:block;
}
.faq li.ativo svg{
  	opacity:0;
}
.faq li .btn.prim{
  	cursor:pointer;
  	background:var(--sec-500);
  	color:var(--white);
	margin-top:20px;
}
.box-faq .desc strong{
	font-weight:700;
}
.box-faq .desc ul,
.box-faq .desc ol{
	list-style:initial;
  	padding:0 0 0 25px;
}
.box-faq .desc ul li + li,
.box-faq .desc ol li + li{
	margin-top:10px;
}

/* FORM */
.box-form{
	max-width:1025px;
  	width:95%;
  	margin:auto;
}
.box-form ul,
.box-form ol.grid{
	margin:0px;
}
.box-form h2{
  	font-size:2.8rem;
  	font-weight:500;
  	color:var(--sec-600);
	margin:50px 0 35px;
}
.box-form li{
	margin-top:20px;
}
.box-form label{
  	display:block;
	position:relative;
} 
.form label.error{
	position:absolute;
  	font-size:1.2rem;
  	bottom:0px;
  	right:5px;	
  	color:red;
}
.box-form span{
	display:block;
  	font-size:1.4rem;
  	background:var(--black-100);
  	color:var(--black-700);
  	position:absolute;
  	top:13px;
  	left:10px;
  	font-weight:500;  
  	padding:0 5px;  	
  	line-height:120%;
  	border-radius:5px;
  	transition:.2s;
}
.box-form .ativo span{
	top:-7px;
  	left:10px;
  	font-size:1.2rem;  	
  	box-shadow: inset 0px -1px 0px #DADADA;  
}
.box-form .upload,
.box-form input[type="text"],
.box-form input[type="tel"] ,
.box-form input[type="email"] ,
.box-form textarea,
.box-form select{
  	background:var(--black-100);
  	color:var(--transp);
  	border:0px;
  	border-radius:5px;
  	width:100%;
  	height:40px;
  	padding:0 15px;
  	font-size:2.0rem;
  	font-weight:500;
  	box-shadow: inset 0px -1px 0px #DADADA;
}
.box-form input::placeholder{
	color:var(--transp);
}
.form .ativo textarea,
.form .ativo input,
.form .ativo select{
  	color:var(--black-700); 
}
.box-form textarea{
	height:150px;
  	resize:none;
}
.form .ativo input::placeholder{
  	color:var(--black-200); 
}
.form .ciente,
.form .ciente a{
	font-size:1.1rem;
  	font-weight:400;
  	line-height:120%;
}
.form .ciente a{
	text-decoration:underline;
}
.form .ciente > div + div{
	margin-top:10px;
}
.form .ciente .ckb{
	display:grid;
  	grid-template-columns:auto 1fr;
  	gap:10px;
}
.form .ckb input{ display:none; }
.form .ckb input + div{
  	width:24px;
	height:24px;
  	border-radius:5px;
  	background:var(--black-100);
  	box-shadow: inset 0px -1px 0px #DADADA;
  	display:flex;
  	align-items:center;
  	justify-content:center;
}
.form .ckb [type="checkbox"]:checked + div:after{
	content:'';
  	display:flex;
  	width:14px;
  	height:14px;
  	border-radius:5px;
  	background:var(--sec-700);
}

.linha-btns{
  	grid-gap:20px;
  	align-items:center;
	justify-content:space-between;
}
.linha-btns .btn{
	cursor:pointer;
}


.box-block{
  	left:0px;
  	right:auto;
    width: 40px;
    height: 40px;
  	background:transparent;
  	top:3px;
  	padding:0px;
}
.box-loading{
  background:url(/images/comum/loading.png) no-repeat;
  background-size:100% auto;
  width:40px;
  height:40px;
  animation: fa-spin 2s infinite linear;
}
@keyframes fa-spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg);}
}

/* BOX  INFO */
.box-info-contatos{
	margin-top:60px;
}
.box-info-contatos h3{
	color:var(--sec-600);
  	font-size:2.8rem;
  	margin-bottom:30px;
}
.box-info-contatos h4{
	color:var(--sec-500);
  	margin-top:25px;
  	font-size:3.0rem;
}
.box-info-contatos a{
  	color:var(--black-700);
	font-size:1.8rem;
  	font-weight:500;
  	line-height:1.4rem;
}



.page-nossos-planos .quero-contratar {
	grid-template-columns:1fr;
}
.page-nossos-planos .quero-contratar .desc{
	display:none;
}
.page-nossos-planos .box-form{
  	max-width:1025px;
  	width:95%;
  	margin:auto;
	display:grid;
  	grid-template-columns:1fr 530px;
}
.page-nossos-planos .box-form .box-info-contatos{
	order:-1;
  	margin-top:0px;
}
.page-nossos-planos .box-form .box-info-contatos .grid{
  	grid-template-columns:1fr;
  	grid-gap:40px;
}



/*.page-25{
	font-weight:bold;
}*/
.page-25 strong,
.page-25 u{
	color:var(--sec-600);
  	text-decoration:none;
}

.page-d-vidas-frequentes .box-faq{
	padding:40px 0;
}

.page-sucesso .detalhe{
  	align-items:center;
}
.page-sucesso .detalhe .btn{
  	display:inline-flex;
}
.page-2-via-de-cartao .detalhe strong{
	color:var(--sec-600);
}
.page-2-via-de-cartao .detalhe ul, 
.page-2-via-de-cartao .detalhe ol {
  	list-style:disc;
}
.anchor{
	width:1px;
  	height:1px;
  	top:-80px;
}
.quero-contratar{
	grid-template-columns:1fr 1fr;
  	grid-gap:70px;
}
.quero-contratar .pag-seo{
  	width:100%;
	display:block;	
}
.quero-contratar .desc{
	position:relative;
}
.quero-contratar .desc:after{
  	content:'';
  	position:absolute;
  	top:0px;
  	right:-35px;      
	background:var(--black-100);
  	width:1px;
  	height:100%;
}
.quero-contratar h2{
	color:var(--sec-600);
  	font-size:2.8rem;
  	font-weight:500;
  	margin-top:0px;
  	margin-bottom:30px;
}
.footer{
	background:var(--black-100) url(/images/comum/001a.png) no-repeat center top;
  	margin-top:60px;
  	padding:20px 0;
}
.footer .cont{
	min-height:50px;
}
.footer .logo{
	display:block;
  	top:-40px;
  	left:50%;
  	transform:translateX(-50%);
  	width:135px;
}
.footer.txt h5{
	font-size:2.2rem;
  	color:var(--black-700);
  	font-weight:500;
  	line-height:5.0rem;
}
.footer b{
	font-size:1.4rem;
  	line-height:2.5rem;
}
.footer .tels{
    display:flex;
    flex-direction:column;
    margin-top:25px;
}
.footer .tels a{
	display:inline-flex;
  	align-items:center;
  	font-size:2.2rem;
  	font-weight:700;
  	line-height:4.5rem;
  	color:var(--sec-600);
  	grid-gap:15px;
}
.footer .tels a svg{
	display:flex;
}
.footer .box-social{
	margin-top:25px;
}


.footer .f2{
  	padding-top:70px;
	flex-direction:column;
  	align-items:center;
  	text-align:center;
  	grid-gap:20px;
}
.footer .f2 img{
  	display:flex;
  	width:auto;
  	margin: 0 auto;
}
.footer .f2 a.btn{
    display: flex;
    align-items: center;
    border-radius: 5px;
    background: var(--sec-500);
    color: var(--cor1);
    font-size: 1.2rem;
    font-weight: 700;
    padding: 1px 10px 0;
    height: 29px;
    top:160px;
}

.footer .f3{
  	flex-direction:column;
	align-items:flex-end;
}
.footer .f1 .tels a svg, .footer .f3 .tels a svg{
	order:-1;
}
.footer .f3 .box-social{
  	flex-direction:row;
  	grid-gap:10px;
}
.footer .f3 .box-social a{
  	display:inline-flex;
	color:var(--black-700);  	
}


.copy-dev{
	border-top:1px solid var(--black-200);
  	margin-top:30px;
  	padding:35px 0 15px;
  	font-size:1.2rem;
  	justify-content:space-between;
}
.copy-dev div,
.copy-dev a,
.copy-dev a img{  
  	display:inline-flex;
  	align-items:center;
  	font-size:1.2rem;
}

.copy-dev a img{  
 width: 110px; 
}

.copy-dev a span{
	display:flex;
  	width:60px;
}

.lgpd-container {
    left: 10px!important;
    z-index: 999999!important;
}
@media only screen and (max-width:1174px) {
  .container{ width:960px; }
  
  .menu > li:first-child{ display:none; }
  .menu > li > a{ padding:0 10px; }
  
  .apresentacao .grid{ grid-template-columns: 1fr 570px; grid-gap:30px; }
  
  .page-quem-somos .detalhe{ grid-template-columns:490px 1fr; grid-gap:40px }
  
  .page-quero-contratar .box-info-contatos .grid{ grid-template-columns:1fr; grid-gap:40px;  }
}
@media only screen and (max-width: 960px) {
  .container{ width:760px; }
  
  .tj{ text-align:left; }
  
  .menu > li:first-child{ display:block; }
  
  .menu-mobile{ display:block; width:40px; height:40px; top:105px; right:10px;  padding:5px; z-index:15; transition:all .2s ease; }
  .menu-mobile .menui{ width:calc(100% - 10px); height:2px; background:var(--sec-600); z-index:2; }
  .menu-mobile.ativo{ position:fixed; }
  .menu-mobile.ativo .menui{ background:#FFF; }
  .menu-mobile .menui.top-menu{ top:10px; transform:rotate(0deg);  transition:transform .6s ease, top .6s ease, left .6s ease;  transition-timing-function: cubic-bezier(.75,0,.29,1.01); }
  .menu-mobile .menui.mid-menu{ top:50%; margin-top:-1px; opacity:1; transition:opacity .6s ease;}
  .menu-mobile .menui.bottom-menu{ bottom:10px;transform:rotate(0deg); transition:transform .6s ease, bottom .6s ease, right .6s ease;   transition-timing-function: cubic-bezier(.75,0,.29,1.01); }

  .menu-mobile.ativo .mid-menu{  opacity:0; }
  .menu-mobile.ativo  .top-menu{ top:18px; left:5px; transform:rotate(45deg); }
  .menu-mobile.ativo  .bottom-menu{ bottom:19px; right:5px; transform:rotate(-225deg); }
  .bg-body.ativo { background: rgba(0,0,0,.7); height: 0px; transition: height .4s; width: 100%; height: 100vh; top: 0; left: 0;  z-index:10; }
  
  .head-links,
  .menu{ display:none; position:fixed; z-index:99; }
  .head-links.ativo,
  .menu.ativo{ display:grid; }
  .menu.ativo{ grid-template-columns:1fr 1fr; width:290px; right:auto; left:50%; top:100px; transform:translateX(-50%); }
  .menu > li > a{ font-size:1.4rem; height:45px; }
  .menu > .sub.s2 ol{ width:100%; }
  .menu > li.sub > ol{ display:none; }
  .menu > li.sub:hover > ol{ display:block; }

  .reduzir .footer{ padding-bottom:112px; }
  .reduzir .header .head-links,
  .head-links.ativo{ top:auto; bottom:0; width:100%; left:0; display:grid; z-index:99999; }
  
  .head-links.ativo a{   text-align:center; justify-content:center; line-height:120%;  }
  .header .head-links{ padding:10px; grid-template-columns:1fr 1fr; gap:2px; background:var(--sec-700); }
  /*.header .head-links{ padding:10px; grid-template-columns:1fr 1fr 1fr; gap:2px; background:var(--sec-700); }*/
  
  .menu .sub ol{ z-index:99; }
  
  .apresentacao .grid{ grid-template-columns:1fr;  }
  .apresentacao h2{ margin-top:20px; }
  .apresentacao .apoio img.abs{ display:none; }
    
  .modelo01.grid{ grid-template-columns:1fr 1fr 1fr; }
  
  .modelo02 .grid{ grid-template-columns:1fr 1fr; }
  
  .modelo03 > .grid{ grid-template-columns: 1fr; }
  
  .footer .cont.grid{ grid-template-columns:1fr 1fr; grid-gap:30px; }
  .footer .f2{ order:-1;  grid-column:1/3;  }
  
  .page-nossos-planos .box-form{ grid-template-columns:1fr 1fr; }
  
    .page-quem-somos .detalhe{ grid-template-columns:1fr; grid-gap:40px }
  .page-quem-somos .lista-fotos{ display:grid; grid-template-columns:1fr 1fr; grid-gap:10px; }
  .page-quem-somos .lista-fotos li + li{ margin-top:0px; }
}
@media only screen and (max-width: 768px) {
  .container{ width:95%; }
  a[href^=tel]{  color:inherit;  text-decoration:none; }
  
  .apresentacao .apoio{ padding:0px; }
  .apresentacao .apoio .flex{ max-width:290px; width:95%; margin:auto; }
  .apresentacao .apoio a{ width:100%; }
  
  .page-nossos-planos .box-form{ grid-template-columns:1fr; grid-gap:60px;  }
  
  .quero-contratar{ grid-template-columns:1fr; }
  .quero-contratar .box-form{ width:100%;  }
  
  .trabalhe-conosco .grid,
  .box-form ol.grid{ grid-template-columns:1fr; }
  .trabalhe-conosco .btns-1{ justify-content:flex-start; }
 }
@media only screen and (max-width: 600px) {
  .header .container:before{ left:-620px; }
  .header .head-links .btn.sec{ font-size:1.2rem; font-weight:700; text-align:center; }
  
  .boxtv{ min-height:150px; }
  
  .footer .cont.grid{ grid-template-columns: 1fr; }
  .footer .f2{ grid-column:initial;  }
  .footer .f1,
  .footer .f3{ display:flex; flex-direction:column;  align-items:center; justify-content:center; }
  .footer .tels a{ justify-content:center; }
  
  .copy-dev.container{ grid-gap:20px; align-items:center; justify-content:center; text-align:center; }
  
  .modelo01.grid{ grid-template-columns:1fr 1fr; }
  .modelo02 .grid{ grid-template-columns: 1fr;  }
}
@media only screen and (max-width: 500px) {
 	.modelo01.grid{ grid-template-columns:1fr; }
  
	.modelo03 a{ grid-template-columns:1fr; grid-gap:0px; }
  	.modelo03 a h3{ margin-top:-20px; padding-top:30px; border-radius: 0 0 0 30px; }
  
  .box-titulo .bg{ background-size:auto 100% !important; }
  .box-titulo .container{ height:200px; }
  
  .page-quem-somos .lista-fotos{ grid-template-columns:1fr; }
}
@media only screen and (max-width:480px) {
  	.head-links.ativo a{ font-size:1.2rem; font-weight:700; padding:0 10px; }
  	.head-links .sub ol { padding:0 5px; }
  	.head-links .sub ol a{ padding:20px 5px; }
  	.menu-mobile,
  	.reduzir .menu-mobile{ top:47px;. }
  	/*
  	.menu.ativo{ width:200px; }
  	.menu > li > a{ font-size:1.4rem; }
  */
}
