/* Variáveis */

:root {
 --cor-base:#345329;
 --cor-clara:#9fb19e;
 --cor-escura:#233b1a;
 --cor-dois:#ebcd4b;
 --cor-tres:#d65a2a;
 --cor-bg:#fff;
}

/* Reset */

* {
 margin:0; padding:0; border:0; outline:0;
 box-sizing:border-box;
}

/* Base */ 

html {
 position:relative;
 min-height:100%;
}

body {
 margin:0;
 height:100%;
 min-width:300px;
 overflow-y:scroll;
 overflow-x:hidden;
 background-color:var(--cor-bg);
 color:var(--cor-base);
 font-family:Arial,Helvetica;
 font-size:1em;
 font-weight:400;
}

.oswald {
 font-family:'Oswald',Arial,Helvetica;
 font-size:1em;
 font-weight:700;
}

.didact {
 font-family:'Didact Gothic',Arial,Helvetica;
 font-size:1em;
 font-weight:400;
}

/* jQuery UI */

.ui-widget {
 font-style:inherit !important;
 font-family:Tahoma,Arial,Helvetica !important;
 font-size:100% !important;
}

.ui-dialog-titlebar-close {
 visibility:hidden;
}

.ui-tooltip-content {
 font-size:0.8em;
 line-height:initial;
}

.ui-accordion-header {
 outline:none !important;
}

.ui-datepicker {
 font-size:0.95em !important;
}

.ui-datepicker-calendar td,.ui-datepicker-calendar th {
 min-width:unset !important;
 margin:unset !important;
}

.ui-progressbar-value {
 height:2em !important;
}

.ui-widget-button {
 -webkit-box-shadow:2px 2px 5px var(--cor-base) !important;
 box-shadow: 2px 2px 5px var(--cor-base) !important;
}

.ui-autocomplete {
 max-height:200px;
 overflow-y:auto;
 overflow-x:hidden;
}

#dialog {
 display:none;
}

.dialog-fixed {
 position:fixed !important; 
}

/* Tags */

a {
 text-decoration:none;
 color:var(--cor-base);
 outline:none;
 overflow-wrap:anywhere;
}

a:hover {
 text-decoration:none;
 color:#000;
}

a.branco {
 text-decoration:none;
 color:#fff;
 outline:none;
 overflow-wrap:anywhere;
}

a.branco:hover {
 text-decoration:none;
 color:var(--cor-dois);
}

input[type=text],input[type=password],input[type=file],select,textarea {
 font-family:Arial,Helvetica;
 border-style:solid;
 border-width:1px;
 border-color:var(--cor-base);
 background-color:#e1e5d8;
 border-radius:0;
 color:#000;
 margin:4px 0;
 padding:12px;
 outline:none;
 resize:none;
}

input[type=text]:focus,input[type=password]:focus,select:focus,textarea:focus {
 background-color:#fff;
}

input[type=checkbox] {
 margin:10px 4px 13px 17px;
 vertical-align:middle;
}

input[type=checkbox]:nth-child(1) {
 margin-left:0;
}

::placeholder {
 color:var(--cor-escura);
 opacity:0.45;
 font-size:1.2em;
}

button,input[type=button],input[type=submit] {
 background-color:var(--cor-dois);
 border:solid 1px var(--cor-dois);
 border-radius:0;
 padding:8px;
 color:var(--cor-escura);
 outline:none;
 transition:0.3s;
 font-size:0.8em;
 cursor:pointer;
}

button:hover,input[type=button]:hover,input[type=submit]:hover {
 background-color:var(--cor-tres);
 border:solid 1px var(--cor-tres);
 color:#000;
}

hr {
 border:0;
 width:100%;
 height:1px;
 background-color:var(--cor-base);
}

break {
 flex-basis:100%;
 width:0; height:0; 
 overflow:hidden;
}

main {
 margin:0;
 padding:0;
}

/* Específicos */

.nosel {
 user-select:none;
 -moz-user-select:none;
 -ms-user-select:none;
 -webkit-user-select:none;
 -webkit-touch-callout:none;
 -webkit-tap-highlight-color:transparent;
}

.yessel {
 user-select:text !important;
 -moz-user-select:text !important;
 -ms-user-select:text !important;
 -webkit-user-select:text !important;
}

.noresp {
 display:initial;
}

.yesresp {
 display:none;
}

.flex {
 display:flex;
 flex-wrap:wrap;
 justify-content:center;
}

.loading {
 display:none;
 z-index:99;
}

.load1 {
 position:absolute;
 top:0; left:0;
 z-index:99;
 width:100%;
 height:100%;
 background-color:#fff;
 opacity:0.2;
}

.load2 {
 width:48px;
 height:48px;
 position:fixed;
 top:49%;
 left:49%;
 transform:translate(-50%,-50%);
 animation:rotation 1.7s infinite linear;
}

#lightbox {
 display:none;
 width:100vw;
 height:100vh;
 top:0; left:0;
 position:fixed;
 backdrop-filter:grayscale(1) brightness(0.8);
 z-index:99;
}

#lightbox-content {
 display:none;
 position:absolute;
 width:100%; max-height:100%;
 top:50%; left:50%;
 transform:translate(-50%,-50%);
 background:#fff;
 width:100%; max-height:100%;
 border:solid 5px var(--cor-base);
 border-radius:10px;
 padding:1em;
 overflow:auto;
 margin:0 auto;
}

#lightbox-close {
 position:absolute;
 top:0; right:0;
 margin:8px 4px;
 z-index:99;
}

#lightbox-close span {
 background-color:#fff;
 border:solid 8px #fff;
 padding:8px;
 border-radius:16px;
 cursor:pointer;
 box-shadow:0 0 5px;
}

#lightbox-close span:hover {
 border:solid 8px var(--cor-base);
}

@keyframes rotation {
 from { transform:rotate(0deg); }
 to { transform:rotate(359deg); }
}

@media screen and (max-width:639px) {

 .noresp {
  display:none;
 }

 .yesresp {
  display:initial;
 }

 tr { 
  display:flex; 
  justify-content:center;
  flex-direction:row;
  flex-wrap:wrap;
 }

 td,th {
  flex:1;
  min-width:200px;
  margin:1em;
 }

}

@media screen and (max-width:300px) {
 body {
  font-size:0.9em;
 }
}

@media screen and (max-width:200px) {
 body { display:table-column;background:url(/imagens/layout/logotipo.png) center center / contain no-repeat fixed padding-box content-box var(--cor-bg); }
}

/* Projeto */

.menu {
 width:100%;
 height:60px;
 background-color:var(--cor-base);
 box-shadow:0 4px 4px rgba(0,0,0,0.4);
 text-align:center;
 position:fixed;
 top:0;
 left:0;
 z-index:3;
}

.menuitem {
 display:inline-block;
 padding:17px 10px;
 letter-spacing:0.5px;
 font-weight:500;
 cursor:pointer;
}

.menudivis {
 display:inline-block;
 width:1px;
 height:30px;
 background-color:#fff;
 vertical-align:top;
 margin:15px 20px 0;
}

.menuresp_logo {
 display:none;
 position:absolute;
 top:2px;
 left:10px;
}

#menu_hamb_ico {
 display:none;
 width:34px;
 border:0;
 cursor:pointer;
}

#menu_resp {
 display:none;
 position:absolute;
 top:45px;
 left:0;
 width:100%;
 text-align:center;
 background:var(--cor-base);
 padding:15px 20px 10px;
}

.menuitem_resp {
 display:inline-block;
 width:100%;
 background-color:var(--cor-escura);
 padding:10px;
 margin-bottom:8px;
 font-size:1em;
 font-weight:500;
 letter-spacing:0.5px;
 cursor:pointer;
}

.float_ctt {
 position:fixed;
 top:100px;
 right:-25px;
 cursor:pointer;
 transition:0.3s;
 z-index:2;
}

.float_ctt:hover {
 right:0;
}

.float_img {
 width:193px;
}

.rodape {
 width:100%;
 background-color:var(--cor-base);
 background-image:url(/imagens/layout/bgmain.jpg);
 background-position:center top;
 background-repeat:no-repeat;
 padding:50px 15px;
 color:#fff;
}

.rod1 {
 display:inline-block;
 width:100%;
 max-width:220px;
}

.rodlogo {
 width:100%;
 max-width:220px; 
 cursor:pointer;
}

.rod2 {
 display:inline-block;
 vertical-align:top;
 padding:40px 10px 0 30px;
 font-size:1.2em;
}

.rod3 {
 display:inline-block;
 float:right;
 max-width:152px;
 text-align:center;
 padding-top:15px;
 font-size:0.85em;
 font-weight:500;
}

.inweb {
 width:100%;
 background-color:var(--cor-escura);
 text-align:center;
 padding:12px;
 font-size:0.8em;
}

.heroimg {
 width:100%;
 height:750px;
 background-image:url(/imagens/home/heroimage.jpg);
 background-position:center top;
 background-repeat:no-repeat;
 text-align:center;
 margin-top:60px;
 padding:15px;
}

.logo {
 width:100%;
 max-width:325px;
}

.cta {
 width:100%;
 background-color:var(--cor-base);
 background-image:url(/imagens/layout/bgmain.jpg);
 background-position:center top;
 background-repeat:no-repeat;
 padding:50px 15px;
 text-align:center;
}

.cta_txt {
 font-size:3em;
 text-shadow:3px 3px 5px #000;
 color:#fff;
}

.cta_bot {
 display:inline-block;
 width:90%;
 max-width:450px;
 background-color:var(--cor-dois);
 border-radius:50px;
 box-shadow:3px 3px 5px rgba(0,0,0,0.4);
 padding:10px;
 margin-top:20px;
 font-size:1.4em;
 color:#000;
 transition:0.3s;
 cursor:pointer;
}

.cta_bot:hover {
 background-color:var(--cor-tres);
 border-radius:5px;
}

.linha {
 width:100%;
 height:15px;
 background-color:var(--cor-dois);
 margin:10px 0;
}

.sobre {
 width:100%;
 max-width:1260px;
 margin:0 auto;
 padding:50px 15px;
 font-size:1.3em;
}

.sobre_tit {
 font-size:2em;
 color:var(--cor-tres);
}

.sobre_img {
 flex:1;
 min-width:410px;
}

.sobre_txt {
 flex:1;
 padding:50px 0 0 30px;
}

.modal {
 width:100%;
 background-color:var(--cor-base);
 background-image:url(/imagens/home/bgmodal.png);
 background-position:right top;
 background-repeat:no-repeat;
 text-align:center;
 padding:70px 20px;
 font-size:1.5em;
 color:#fff;
}

.modal_tit {
 font-size:2.5em;
 color:var(--cor-dois);
}

.modal_box {
 flex:1;
 font-size:0.85em;
 margin:20px;
 padding:0 10px;
}

.benef {
 width:100%;
 background-color:var(--cor-clara);
 text-align:center;
 padding:100px 15px;
}

.benef_tit {
 font-size:3.2em;
 color:var(--cor-escura);
}

.benef_ico {
 padding-bottom:30px;
 font-size:1.5em;
 color:var(--cor-escura);
 font-weight:bold;
 line-height:1.1em;
}

.benef_img {
 width:100%;
 max-width:200px;
 margin-bottom:10px;
}

.benef_bot {
 display:inline-block;
 width:90%;
 max-width:450px;
 background-color:var(--cor-base);
 border-radius:50px;
 box-shadow:2px 4px 3px rgba(0,0,0,0.3);
 margin-top:20px;
 padding:10px;
 font-size:1.4em;
 color:var(--cor-dois);
 transition:0.3s;
 cursor:pointer;
}

.benef_bot:hover {
 background-color:var(--cor-dois);
 color:var(--cor-base);
 border-radius:5px;
}

.patroc {
 width:100%;
 height:750px;
 background-color:var(--cor-tres);
 color:#fff;
}

.patroc_txt {
 flex:2;
 padding:100px 0 0 150px;
 font-size:1.4em;
 line-height:1.1em;
}

.patroc_tit {
 font-size:2.4em;
 color:var(--cor-dois);
 line-height:1em;
}

.patroc_imgdesk {
 flex:1;
 min-width:660px;
}

.patroc_imgmob {
 display:none;
}

.pacotes {
 width:100%;
 max-width:1260px;
 margin:0 auto;
 padding:60px 15px;
 font-size:1.4em;
}

.pacotes_tit {
 font-size:2.2em;
 color:var(--cor-tres);
}

.pacotes_txt {
 flex:1;
 font-size:0.9em;
 line-height:1.5em;
 padding-right:10px;
}

.pacotes_box {
 flex:1;
 max-width:500px;
 background-color:var(--cor-base);
 border-radius:50px;
 padding:20px;
 text-align:center;
 font-size:0.85em;
 color:#fff;
}

.pacotes_bot {
 display:inline-block;
 width:90%;
 max-width:350px;
 background-color:var(--cor-dois);
 border-radius:50px;
 box-shadow:2px 4px 3px rgba(0,0,0,0.3);
 margin:20px 0;
 padding:8px 50px;
 font-size:1em;
 line-height:1.1em;
 color:var(--cor-escura);
 transition:0.3s;
 cursor:pointer;
}

.pacotes_bot:hover {
 background-color:var(--cor-tres);
 border-radius:5px;
}

.contato {
 width:100%;
 background-color:var(--cor-clara);
 background-image:url(/imagens/home/bgcontato.png);
 background-position:right top;
 background-repeat:no-repeat;
 text-align:center;
 padding:100px 15px;
 font-size:1.4em;
}

.contato_img {
 flex:2;
}

.contato_txt {
 flex:3;
 text-align:center;
 padding:0 20px;
}

.contato_tit {
 color:var(--cor-escura);
 font-size:2em;
}

/***********/

@media screen and (max-width:1650px) {
 .patroc_txt {
  padding:50px 0 0 50px;
  font-size:1.3em;
 }
}

@media screen and (max-width:1300px) {
 .menu {
  height:50px;
 }
 .menuitem {
  padding:13px 10px;
 }
 .menudivis {
  margin:10px 15px 0;
 }
 .heroimg {
  height:650px;
  margin-top:50px;
  background-size:cover;
 }
 .logo {
  max-width:275px;
 }
 .cta {
  padding:40px 15px;
 }
 .cta_txt {
  font-size:2em;
 }
 .cta_bot {
  padding:8px;
  font-size:1.2em;
 }
 .sobre {
  padding:40px 15px;
  font-size:1.2em;
 }
 .sobre_tit {
  font-size:1.8em;
 }
 .modal {
  padding:50px 20px;
  font-size:1.3em;
 }
 .modal_tit {
  font-size:2.3em;
 }
 .modal_box {
  max-width:350px;
  min-width:300px;
  font-size:0.8em;
 }
 .benef {
  padding:70px 15px;
 }
 .benef_tit {
  font-size:3em;
 }
 .benef_ico {
  font-size:1.3em;
 }
 .benef_bot {
  font-size:1.2em;
 }
 .patroc {
  height:625px;
 }
 .patroc_txt {
  padding:40px 0 0 20px;
  font-size:1.1em;
 }
 .patroc_tit {
  font-size:2.2em;
 }
 .patroc_imgdesk {
  min-width:550px;
 }
 .pacotes {
  padding:40px 15px 60px;
  font-size:1.2em;
 }
 .pacotes_txt {
  font-size:1em;
 }
 .contato {
  padding:80px 15px;
  font-size:1.2em;
 }
}

@media screen and (max-width:1080px) {
 .float_ctt {
  top:75px;
 }
 .patroc {
  height:auto;
 }
 .patroc_txt {
  flex:none;
  display:inline-block;
  width:100%;
  padding:40px 20px 20px;
  z-index:1;
 }
 .patroc_imgdesk {
  display:none;
 }
 .patroc_imgmob {
  display:inline-block;
  width:100%;
  text-align:right;  
  margin-bottom:-4px;
  margin-top:-80px;
 }
 .contato {
  padding:60px 15px;
  font-size:1.1em;
 }
 .contato_tit {
  font-size:1.7em;
 }
}

@media screen and (max-width:850px) {
 .menuitem {
  font-size:0.85em;
  padding:15px 10px;
 }
 .menudivis {
  margin:10px 5px 0;
 }
 .heroimg {
  height:500px;
  margin-top:50px;
  background-size:cover;
 }
 .logo {
  max-width:250px;
 }
 .rodape {
  padding:30px 10px;
 }
 .rod1 {
  max-width:165px;
 }
 .rod2 {
  padding:25px 10px 10px 10px;
  font-size:1em;
 }
 .rod3 {
  padding-top:10px;
  font-size:0.75em;
 }
 .inweb {
  padding:10px;
 }
 .cta {
  padding:30px 15px;
 }
 .cta_txt {
  font-size:1.6em;
 }
 .cta_bot {
  max-width:350px;
  font-size:1em;
 }
 .sobre {
  padding:30px 15px;
  font-size:1.1em;
 }
 .sobre_tit {
  font-size:1.6em;
 }
 .sobre_txt {
  padding:0 0 0 20px;
  font-size:0.9em;
 }
 .modal {
  background-size:100%;
  padding:40px 15px;
  font-size:1.2em;
 }
 .modal_tit {
  font-size:2.2em;
 }
 .modal_box {
  max-width:230px;
  min-width:200px;
  font-size:0.85em;
  margin:20px 10px;
 }
 .benef {
  padding:50px 15px;
 }
 .benef_tit {
  font-size:2.4em;
 }
 .benef_ico {
  font-size:1.2em;
 }
 .benef_img {
  max-width:160px;
 }
 .benef_bot {
  max-width:350px; 
  font-size:1.1em;
 }
 .patroc_imgmob {
  margin-top:-30px;
 } 
 .pacotes {
  padding:25px 15px 30px;
  font-size:1.1em;
 }
 .pacotes_tit {
  font-size:2em;
 }
 .pacotes_txt {
  flex:none;
  display:inline-block;
  width:100%;
  margin-top:-20px;
  font-size:1em;
 }
 .pacotes_box {
  flex:none;
  display:inline-block;
  width:100%;
  border-radius:30px;
  margin-top:40px;
  font-size:0.9em;
 }
 .pacotes_bot {
  padding:12px 20px;
 }
 .contato {
  background-size:100%;
  padding:40px 15px;
  font-size:1em;
 }
 .contato_img {
  flex:none;
  display:inline-block;
  width:100%;
  max-width:500px;
 }
 .contato_txt {
  flex:none;
  display:inline-block;
  width:100%;
  padding:20px 0;
 }
}

@media screen and (max-width:640px) {
 .menu {
  height:45px;
  text-align:right;
  padding:7px;
 }
 .menuitem, .menudivis {
  display:none;
 }
 #menu_hamb_ico, .menuresp_logo {
  display:inline-block;
 }
 .heroimg {
  height:450px;
  margin-top:45px;
 }
 .logo {
  max-width:200px;
 }
 .float_ctt {
  top:60px;
 }
 .float_ctt:hover {
  right:-25px;
 }
 .float_img {
  width:153px;
 }
 .rodape {
  padding:15px 10px 25px;
 }
 .rod1 {
  max-width:none;
  text-align:center;
 }
 .rodlogo {
  max-width:165px; 
 }
 .rod2 {
  width:100%;
  text-align:center;
  padding:15px;
  font-size:1em;
 }
 .rod3 {
  float:none;
  width:100%;
  max-width:none;
  padding-top:0;
 }
 .cta {
  padding:25px 15px;
 }
 .cta_txt {
  font-size:1.4em;
  text-shadow:2px 2px 5px #000;
 }
 .cta_bot {
  max-width:250px;
  margin-top:10px;
  font-size:0.9em;
 }
 .sobre {
  padding:20px 15px;
  font-size:1em;
 }
 .sobre_tit {
  font-size:1.5em;
 }
 .sobre_img {
  flex:none;
  display:inline-block;
  width:100%;
  max-width:550px;
  min-width:auto;
  text-align:center;
  padding:0 10px;
 }
 .sobre_txt {
  flex:none;
  width:100%;
  max-width:550px;
  padding:10px;
 }
 .modal {
  padding:30px 15px;
  font-size:1.1em;
 }
 .modal_tit {
  font-size:1.8em;
 }
 .modal_box {
  max-width:200px;
  min-width:200px;
  font-size:0.8em;
 }
 .benef {
  padding:40px 15px;
 }
 .benef_tit {
  font-size:2em;
 }
 .benef_ico {
  font-size:1.1em;
 }
 .benef_bot {
  max-width:250px;
  margin-top:10px;
  font-size:0.95em;
 }
 .patroc_txt {
  font-size:1em;
  line-height:1.2em;
 }
 .patroc_tit {
  font-size:2em;
 }
 .pacotes {
  padding:20px 15px;
  font-size:1em;
 }
 .pacotes_tit {
  font-size:1.8em;
 }
 .pacotes_box {
  font-size:1em;
 }
}

@media screen and (max-width:470px) {
 .float_ctt {
  top:auto;
  bottom:10px;
 }
 .inweb {
  text-align:left;
 }
 .modal {
  padding:30px 10px;
 }
 .modal_tit {
  font-size:1.6em;
 }
 .modal_box {
  max-width:190px;
  min-width:190px;
  margin:20px 0;
  padding:0 15px;
 }
 .benef_tit {
  font-size:1.5em;
 }
 .benef_ico {
  font-size:1em;
 }
 .benef_img {
  max-width:150px;
 }
 .patroc_tit {
  font-size:1.5em;
 }
}

@media screen and (max-width:420px) {
 .heroimg {
  height:350px;
  padding-top:8px;
 }
 .logo {
  max-width:180px;
 }
 .cta {
  padding:20px 15px 25px;
 }
 .cta_txt {
  font-size:1.2em;
 }
 .cta_bot {
  padding:6px;
  font-size:0.8em;
 }
 .pacotes_tit {
  font-size:1.6em;
 }
}

@media screen and (max-width:400px) {
 .modal_box {
  max-width:210px;
  min-width:210px;
  margin:10px 0;
  padding:0;
 }
}