/* ...................... geral ................................................................................................................................................. */


html							{ height:100%; width:100%; }

body							{ margin:0; padding:0; background:#fff; height:100%; width:100%; font-family:'roboto', arial; font-size:13px; color:#666; }

input, textarea, select, option				{ font-family:'Roboto', arial; outline:0; }

input[type=submit]					{ -webkit-transition:all 0.3s ease; -moz-transition:all 0.3s ease; transition: all 0.3s ease; }

img							{ border:none; }

a							{ color:#EA2B31; text-decoration:none; -webkit-transition:all 0.3s ease; -moz-transition:all 0.3s ease; transition: all 0.3s ease; }

a:hover							{ color:#EA2B31; text-decoration:underline; }

::selection						{ background:#EA2B31; color:#fff; }
::-moz-selection					{ background:#EA2B31; color:#fff; }

form							{ margin:0; padding:0; }

  fieldset						{ margin:0; padding:0; border:none; }

.clear							{ clear:both; }

body li.clear						{ clear:both; height:0; padding:0; margin:0; width:100%; float:none; }

.tudo							{ min-height:100%; position:relative; }

* html .tudo						{ height:100%; }

  .rel							{ margin:0 auto; max-width:923px; padding:0 20px 0 20px; position:relative; }

  .botao						{ height:32px; line-height:32px; padding:0 20px 0 20px; display:inline-block; font-size:14px; cursor:pointer; font-weight:500; color:#fff; background:#EA2B31; border:1px solid #EA2B31; box-sizing:border-box; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

  .botao:hover						{ background:none; text-decoration:none; color:#EA2B31; }

  .botao.centralizado					{ position:relative; left:50%; transform:translate(-50%,0); }


@media only screen and (max-width : 900px) {

  .rel							{ padding:0 20px 0 20px; }

}


/* ...................... cabeçalho ............................................................................................................................................. */


.cab							{ background:#fff; padding:20px 0 20px 0; height:71px; }

  .logo							{ height:71px; display:block; }

  .navbar						{ height:34px; margin:0; padding:0; list-style:none; position:absolute; right:0px; bottom:0px; }

    .navbar li						{ margin:0; padding:0; position:relative; float:left; }

      .navbar li a					{ display:block; float:left; line-height:34px; height:34px; color:#666; margin:0; padding:0 12px 0 12px; font-size:15px; font-weight:300; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

      .navbar li a:hover				{ text-decoration:none; color:#EA2B31; }

      .navbar li a.ativo				{ color:#fff; background:#EA2B31; }

  .flags						{ position:absolute; right:15px; top:-5px; list-style:none; margin:0; padding:0; display:flex; }

    .flags li						{ width:29px; height:29px; margin:0; padding:0; flex:1; }

      .flags li a					{ display:block; height:100%; box-sizing:border-box; border:1px solid #fff; background:center no-repeat; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

      .flags li.pt a					{ background-image:url(images/flag_pt.png); }
      .flags li.en a					{ background-image:url(images/flag_en.png); }
      .flags li.es a					{ background-image:url(images/flag_es.png); }

      .flags li a:hover					{ border-color:#eee; }
      .flags li a.ativo					{ border-color:#eee; }

@media only screen and (max-width : 900px) {

  .logo							{ margin:0 auto; }

  .navbar						{ display:none; margin-top:15px; }

}


/* ...................... inicial ............................................................................................................................................... */


#demo_container						{ width:100%; height:440px; position:relative; margin:0 auto; padding:0; overflow:hidden; z-index:1; }

  #items_container					{ width:100%; height:100%; position:absolute; overflow:hidden; z-index:1; top:0; }

    #demo_container div.slide_item			{ width:100%; height:100%; position:absolute; left:100%; z-index:100; background:center no-repeat #eee; }

    #demo_container div.first_item			{ left:0; }

    .slide_esq						{ position:absolute; left:0; top:0; height:100%; width:80px; background:url(images/seta_esq.png) center no-repeat; z-index:200; cursor:pointer; opacity:0.7; }
    .slide_dir						{ position:absolute; right:0; top:0; height:100%; width:80px; background:url(images/seta_dir.png) center no-repeat; z-index:200; cursor:pointer; opacity:0.7; }

    .slide_esq:hover, .slide_dir:hover			{ opacity:1; }

    .slide_item .rel					{ margin:0 auto; max-width:963px; position:relative; height:100%; }

      .slide_abs					{ max-width:422px; position:absolute; background:#EA2B31; color:#fff; z-index:300; right:0; top:50%; padding:30px 40px 30px 40px; transform:translate(0,-50%); margin-top:-20px; }

	.slide_abs h1					{ font-size:39px; margin:0; padding:0; line-height:100%; font-family:'Roboto Condensed'; }

	.slide_abs p					{ font-size:19px; font-weight:300; margin:20px 0 20px 0; padding:0; line-height:130%; }

	.slide_abs a					{ height:40px; line-height:40px; padding:0 20px 0 20px; margin-right:3px; display:inline-block; font-size:18px; font-weight:500; color:#fff; border:1px solid rgba(255,255,255,0.5); border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

	.slide_abs a:hover				{ border-color:#fff; text-decoration:none; }

.cont_inicial						{ margin:0 auto; max-width:923px; padding:40px 40px 0 40px; position:relative; margin-top:-40px; z-index:500; background:#fff; }

  .servicos						{ display:flex; margin-left:-40px; }

    .serv						{ flex:1; margin-left:40px; padding-top:153px; background:left top no-repeat; margin-bottom:20px; }

    .serv.analises					{ background-image:url(images/img_analises.jpg); }
    .serv.dados						{ background-image:url(images/img_dados.jpg); }
    .serv.acoes						{ background-image:url(images/img_acoes.jpg); }
    .serv.treinamentos					{ background-image:url(images/img_treinamentos.jpg); }

      .serv h2						{ color:#EA2B31; font-weight:400; font-size:13px; text-transform:uppercase; margin:0 0 20px 0; padding:0; }

      .serv ul						{ list-style:none; margin:0; padding:0; }

	.serv li					{ margin:0; padding:0; font-size:15px; margin:8px 0 8px 0; }

	  .serv li a					{ color:#666; }

.relatorios						{ height:390px; background:url(images/bg_relatorios.jpg) center no-repeat #eee; }

  .relatorios .rel					{ height:310px; padding-top:80px; }

    .relatorios h2					{ font-family:'Roboto Condensed'; font-size:44px; font-weight:700; margin:0 0 20px 0; padding:0; }

    .relatorios p					{ font-weight:300; font-size:19px; line-height:140%; max-width:50%; margin:0 0 20px 0; padding:0; }

    .relatorios a					{ height:40px; line-height:40px; padding:0 20px 0 20px; display:inline-block; font-size:18px; font-weight:500; color:#fff; background:#EA2B31; border:1px solid #EA2B31; box-sizing:border-box; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

    .relatorios a:hover					{ background:none; text-decoration:none; color:#EA2B31; }

.clientes						{ text-align:center; }

  .clientes h2						{ font-family:'Roboto Condensed'; font-size:30px; font-weight:700; margin:50px 0 20px 0; padding:0; }

  .clientes ul						{ list-style:none; padding:20px 0 40px 0; margin:0; overflow:hidden; display:flex; width:100%; flex-flow:row wrap; align-items:stretch; border-bottom:1px solid #eaeaea; }

    .clientes li					{ margin:0; padding:0; flex:0 0 25%; position:relative; text-align:center; line-height:60px; height:60px; }

      .clientes li a					{ padding:0 10px 0 10px; height:100%; display:block; box-sizing:border-box; }

      .clientes li a:hover				{ }

      .clientes li img					{ vertical-align:middle; max-width:100%; max-height:100%; }

  .clientes p						{ font-size:19px; font-weight:300; margin:0 auto 20px auto; padding:30px 0 0 0; max-width:500px; }

  .clientes a.botao					{ height:40px; line-height:40px; padding:0 20px 0 20px; display:inline-block; font-size:18px; font-weight:500; color:#fff; background:#EA2B31; border:1px solid #EA2B31; box-sizing:border-box; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

  .clientes a.botao:hover				{ background:none; text-decoration:none; color:#EA2B31; }


@media only screen and (max-width : 1100px) {

      .slide_abs h1					{ font-size:30px; }

}


@media only screen and (max-width : 900px) {

#demo_container						{ height:600px; }

    #demo_container div.slide_item			{ background-size:cover; background-position:center -200px; }

    .slide_abs						{ max-width:100%; height:auto; left:0; top:auto; bottom:0; margin-right:0; transform:none; text-align:center; }

      .slide_abs h1					{ font-size:26px; }

.cont_inicial						{ max-width:100%; margin-top:0; }

  .servicos						{ flex-flow:row wrap; align-items:stretch; }

    .serv						{ flex:0 0 calc(50% - 40px); background:center top no-repeat; text-align:center; }

  .relatorios .rel					{ text-align:center; color:#333; }

    .relatorios p					{ max-width:100%; }

}

@media only screen and (max-width : 460px) {

.cont_inicial						{ padding:20px 20px 0 20px; }

  .servicos						{ display:block; margin-left:0; }

    .serv						{ flex:1; margin-left:0; padding-top:153px; }

}


/* ...................... conteúdo interno ...................................................................................................................................... */


.cont							{ padding:50px 0 50px 0; line-height:160%; font-size:15px; color:rgba(40,37,37,0.6); border-top:1px solid #eaeaea; }

  .cont h1.titulo					{ margin:0 0 15px 0; padding:0; font-size:41px; line-height:100%; font-weight:700; font-family:'Roboto Condensed'; }

  .diretorio						{ list-style:none; margin:30px 0 40px -23px; padding:0; display:flex; flex-flow:row wrap; }

    .diretorio li					{ margin:0 0 0 10px; padding:0 13px 0 0; display:inline-block; background:url(images/seta_dir2.png) right center no-repeat; flex:0 0 auto; height:29px; }

    .diretorio li:last-child				{ padding-right:0; background:none; }

      .diretorio li a					{ display:inline-block; padding:0 10px 0 10px; line-height:29px; height:29px; font-size:13px; color:#666; font-weight:300; border:1px solid #fff; overflow:hidden; white-space:nowrap; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

      .diretorio li a.ativo				{ }

      .diretorio li a:hover				{ text-decoration:none; border-color:#ddd; }

  .subit						{ list-style:none; margin:20px 0 0 0; padding:0; }

    .subit li						{ margin:0; padding:0; border-top:1px solid #eaeaea; }

    .subit li:first-child				{ border:none; }

      .subit li a					{ display:block; padding:5px 0 5px 0; }


/* ...................... galeria ............................................................................................................................................... */


.galeria						{ list-style:none; margin:0 0 0 -20px; padding:0; display:flex; flex-flow:row wrap; align-items:stretch; }

  .galeria li						{ margin:0 0 20px 20px; padding:0; flex:0 0 calc(25% - 20px); overflow:hidden; }

    .galeria li a					{ float:left; display:block; width:100%; height:200px; background:center no-repeat; background-size:cover; }

    .galeria li a:hover					{ text-decoration:none; }


/* ...................... rodapé ................................................................................................................................................ */


.rod							{ border-top:1px solid #eaeaea; position:relative; margin-top:40px; padding:40px 0 40px 0; font-size:13px; font-weight:300; }

  .rod h2						{ font-size:14px; color:#333; font-weight:700; margin:0 0 20px 0; padding:0; }

  .rod_flex						{ display:flex; flex-flow:row wrap; align-items:stretch; padding-bottom:40px; }

    .rod_bloco						{ flex:0 0 25%; font-weight:300; font-size:13px; }

      .rod ul						{ list-style:none; margin:0 0 25px 0; padding:0; }

	.rod li						{ margin:0; padding:0; }

	  .rod li a					{ display:block; padding:5px 0 5px 0; }

      .rod address					{ font-style:normal; }

      .rod a						{ color:#666; }

      .rod a.soc					{ font-size:15px; background:10px center no-repeat; display:block; border:1px solid #eaeaea; padding:10px 10px 10px 44px; margin-bottom:5px; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

      .rod a.soc.fone					{ background-image:url(images/ico_fone.png); }
      .rod a.soc.whatsapp				{ background-image:url(images/ico_whatsapp.png); }
      .rod a.soc.linkedin				{ background-image:url(images/ico_linkedin.png); }
      .rod a.soc.email					{ background-image:url(images/ico_email2.png); }
      .rod a.soc.endereco				{ background-image:url(images/ico_endereco.png); background-position:10px 10px; line-height:140%; }

      .rod a.soc:hover					{ color:#333; border-color:#ccc; text-decoration:none; }

  .rod .creditos					{ border-top:1px solid #eaeaea; padding:35px 0 0 0; font-size:13px; text-align:center; line-height:120%; }

    .rod .creditos .index				{ color:#333; display:inline-block; margin-top:10px; font-size:11px; }

    .rod .creditos .index:hover				{ color:#EA2B31; text-decoration:none; }

@media only screen and (max-width : 900px) {


    .rod_menu						{ display:none; }

    .rod_bloco						{ flex:0 0 100%; text-align:center; }

}
  

/* ...................... contato ............................................................................................................................................... */


.erro							{ padding:5px; border:1px solid #E3E2E0; background:#fff; text-align:center; line-height:140%; color:#EA272D; font-size:14px; border-radius:5px; -webkit-border-radius:5px; -moz-border-radius:5px; }

.confirma						{ padding:5px; border:1px solid #E3E2E0; background:#fff; color:#666; font-size:14px; text-align:center; margin:20px auto 15px auto; position:relative; z-index:4; }

#output							{ margin-bottom:20px; font-size:16px; color:#231F20; font-weight:700; }

.contato						{ margin:0 auto; display:flex; flex-flow:row wrap; align-items:stretch; }

  .mapa							{ flex:0 0 calc(50% - 20px); margin-left:20px; margin-top:20px; border:none; height:400px; }
	
  .contato form						{ flex:0 0 calc(50% - 20px); margin-right:20px; }

  .form_esq						{ float:left; width:50%; }
  .form_dir						{ float:left; width:calc(50% - 11px); margin-left:11px; }

  .contato label					{ display:block; height:13px; line-height:13px; margin:20px 0 10px 0; }
  .contato label .asterisco				{ color:#EA272D; height:13px; line-height:13px; margin:0 0 5px 0;}

  .contato label[for=para]				{ clear:both; }

  .contato input[type=text], .contato select, .contato textarea	{ display:block; border:1px solid #E3E2E0; padding:7px; background:#fff; font-size:12px; margin:0 0 10px 0; color:#231F20; width:100%; box-sizing:border-box; border-radius:3px; -webkit-border-radius:3px; -moz-border-radius:3px; }

  .contato select					{ width:auto; }

  .contato input[type=text]#wally			{ display:none; }