/* Variáveis */

:root {
 --cor-base:#155cbb;
 --cor-clara:#00b3e3;
 --cor-escura:#093878;
 --cor-dois:#ffde00;
 --cor-bg:#155cbb;
}

/* Reset */

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

/* Base */ 

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

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

.comic {
 font-family:'Comic Neue',Arial,Helvetica;
 font-size:1em;
 font-weight:400;
}

.opensans {
 font-family:'Open Sans',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-shadow {
 -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:#000;
 outline:none;
 overflow-wrap:anywhere;
}

a:hover {
 text-decoration:none;
 color:var(--cor-base);
}

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

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

input[type=text],input[type=password],input[type=file],select,textarea {
 width:100%;
 max-width:500px;
 font-family:Arial,Helvetica;
 border:1px solid color:var(--cor-base);
 background-color:#fff;
 border-radius:2px;
 color:#000;
 margin-bottom:7px;
 padding:8px;
 outline:none;
 resize:none;
}

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

input[type=file] {
 width:100%;
 max-width:350px;
}

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.4;
 font-size:0.9em;
}

button,input[type=button],input[type=submit] {
 background-color:var(--cor-base);
 border:1px solid var(--cor-base);
 border-radius:50px;
 padding:8px;
 color:#fff;
 outline:none;
 cursor:pointer;
}

button:hover,input[type=button]:hover,input[type=submit]:hover {
 background-color:var(--cor-escura);
}

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

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

main {
 margin:-130px auto 0;
 padding:0;
 max-width:1250px;
 background-color:#fff;
 box-shadow:0 3px 10px rgba(0,0,0,0.5);
}

/* 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 */

.topo {
 width:100%;
 max-width:1250px;
 margin:0 auto;
}

.topo_foto {
 display:inline-block;
 width:55%;
 vertical-align:top;
 text-align:center;
}

.topo_logo {
 display:inline-block;
 width:40%;
 vertical-align:top;
 text-align:right;
 padding:10px;
}

.botel {
 display:inline-block;
 width:100%;
 max-width:260px;
 background-color:var(--cor-clara);
 border-radius:25px;
 margin-top:50px;
 padding:8px;
 text-align:center;
 color:#fff;
 font-size:1.4em;
 transition:0.3s;
}

.botel_ico {
 width:25px;
 filter:invert();
 margin-right:8px;
 margin-bottom:-4px;
}

.botel:hover {
 background-color:var(--cor-escura);
 color:#fff;
}

.rodape {
 width:100%;
 text-align:center;
 padding:13px 10px;
 letter-spacing:0.05em;
}

.floatwhats {
 position:fixed;
 bottom:10px;
 right:20px;
 z-index:9;
 cursor:pointer;
}

.floatwhats_img {
 width:65px;
 border:0;
 transition:0.3s;
}

.floatwhats_img:hover {
 width:80px;
 transform:rotate(360deg);
}

.degrade {
 width:100%;
 height:170px;
 background-image:linear-gradient(#e3e3e3,#ffffff);
 border:2px solid #fff;
}

.intro {
 width:100%;
 max-width:950px;
 margin:0 auto;
 padding:0 20px 50px;
 font-size:1.2em;
 line-height:1.3em;
}

.icos {
 width:100%;
 background-color:var(--cor-clara);
 padding:50px 15px;
 text-align:center;
 font-size:1.3em;
 font-weight:700;
}

.icos_box {
 flex:1;
 text-align:center;
 padding:20px;
}

.icos_img {
 width:100%;
 max-width:110px;
}

.trem {
 width:100%;
 max-width:1150px;
 margin:0 auto;
 padding:70px 20px;
}

.trem_txt {
 flex:1;
 padding:0 10px 0 10px;
 font-size:1.25em;
 line-height:1.2em; 
}

.trem_fotos {
 flex:1;
 padding-left:20px;
 text-align:center;
}

.thumbs {
 width:106px;
 border:3px solid var(--cor-clara);
 border-radius:2px;
 margin:5px;
 transition:0.3s;
}

.thumbs:hover {
 border:3px solid var(--cor-dois);
 transform:rotate(-5deg);
}

.ctt {
 width:100%;
 background-color:var(--cor-clara);
 padding:40px 15px 60px;
 text-align:center;
 font-size:1.2em;
}

.ctt_box {
 width:100%;
 max-width:360px;
 margin:0 auto;
 text-align:left;
}

.ctt_ico {
 width:45px;
 margin-bottom:-15px;
 margin-top:10px;
 margin-right:5px;
}

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

@media screen and (max-width:1100px) {
 main {
  margin:-100px auto 0;
 }
 .degrade {
  height:120px;
 }
 .trem {
  padding:60px 15px;
 }
 .trem_txt {
  font-size:1.1em;
 }
}

@media screen and (max-width:1000px) {
 main {
  margin:-85px auto 0;
 }
 .botel {
  margin-top:30px;
 }
 .thumbs {
  margin:3px;
 }
 .trem_fotos {
  padding-left:10px;
 }
}

@media screen and (max-width:800px) {
 main {
  margin:-70px auto 0;
 }
 .topo_foto {
  width:100%;
  padding:0 10px;
 }
 .topo_logo {
  width:100%;
  text-align:center;
  padding:0 30px 10px;
 }
 .botel {
  margin-top:30px;
  font-size:1.1em;
 }
 .botel_ico {
  width:20px;
 }
 .floatwhats {
  bottom:0;
  right:5px;
 }
 .degrade {
  height:100px;
 }
 .intro {
  padding:0 20px 30px;
  font-size:1.05em;
 }
 .icos {
  padding:30px 5px;
  font-size:1.1em;
 }
 .icos_img {
  max-width:90px;
 }
 .trem {
  padding:30px 15px;
 }
 .trem_txt {
  flex:none;
  display:inline-block;
  width:100%;
  padding:5px;
  font-size:1.05em;
 }
 .trem_fotos {
  flex:none;
  display:inline-block;
  width:100%;
  padding:40px 10px 10px;
 }
 .ctt {
  padding:30px 15px 50px;
  font-size:1.1em;
 }
}

@media screen and (max-width:500px) {
 .rodape {
  font-size:0.8em;
 }
 .floatwhats_img {
  width:50px;
 }
 .floatwhats_img:hover {
  width:50px;
  transform:none;
 }
 .icos {
  padding:25px 5px 20px;
  font-size:1em;
 }
 .icos_box {
  padding:15px;
 }
 .icos_img {
  max-width:80px;
 }
 .thumbs {
  width:96px;
 }
 .ctt_box {
  font-size:0.85em;
  max-width:300px;
 }
 .ctt_ico {
  width:35px;
  margin-right:0;
  margin-bottom:-11px;
  margin-top:10px;
 }
}

@media screen and (max-width:380px) {
 .rodape {
  text-align:left;
  padding:10px 5px;
 }
 .icos_box {
  flex:none;
  display:inline-block;
  width:45%;
 }
 .ctt {
  padding:30px 10px;
 }
 .ctt_box {
  text-align:center;
  line-height:1.6em;
 }
 .ctt_ico {
  display:none;
 }
}