/* Variáveis */

:root {
 --cor-base:#00314f;
 --cor-clara:#0e4f77;
 --cor-escura:#001827;
 --cor-dois:#ffa62c;
 --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);
 background-image:url(/imagens/layout/bgmain.jpg);
 padding:0 10px;
 color:#231f1e;
 font-family:Arial,Helvetica;
 font-size:1em;
 font-weight:400;
}

.rubik {
 font-family:'Rubik',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;
}

.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-dois);
}

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

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

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

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

input[type=text],input[type=password],input[type=file],select,textarea {
 width:100%;
 max-width:600px;
 font-family:'Rubik',Arial,Helvetica;
 border:1px solid 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:#efefef;
}

::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);
 padding:8px;
 color:#fff;
 outline:none;
 cursor:pointer;
}

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

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;
}

.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;
 }

 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-base); }
}

/* Projeto */

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

.topologo {
 display:inline-block;
 padding:20px 15px 10px;
}

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

.topotel {
 display:inline-block;
 float:right;
 padding:40px 15px 0;
 text-align:right;
 font-weight:500;
 line-height:1.3em;
}

.topoico {
 width:25px;
 margin-left:5px;
 margin-bottom:-2px;
 filter:grayscale(1) brightness(0);
}

.cxcentral {
 width:100%;
 max-width:1200px;
 margin:0 auto;
 background-color:#fff;
 border:1px solid var(--cor-base);
 border-radius:5px;
 box-shadow:0 8px 8px rgba(0,0,0,0.3);
 padding:10px;
}

.menu {
 width:100%;
 background-color:var(--cor-base);
 border-radius:4px;
 margin-bottom:10px;
 padding:15px 10px 12px;
 text-align:center;
}

.menuitem {
 display:inline-block;
 padding:0 10px;
 color:#fff;
 font-size:1.05em;
}

.menuquadro {
 display:inline-block;
 width:7px;
 height:7px;
 background-color:var(--cor-dois);
 vertical-align:top;
 margin:7px 15px 0;
}

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

#menu_resp {
 display:none;
 position:relative;
 width:100%;
 text-align:center;
 padding:10px 10px 0;
}

.menuitem_resp {
 display:inline-block;
 width:100%;
 padding:8px 10px;
 font-size:1em;
 color:#fff;
 letter-spacing:1px;
 cursor:pointer;
}

.centro {
 padding:10px;
 line-height:1.4em;
}

.rodape {
 width:100%;
 background-color:var(--cor-base);
 border-radius:4px;
 margin-top:20px;
 padding:30px 10px;
}

.rod1 {
 display:inline-block;
 width:30px;
}

.rodico {
 width:30px;
}

.rod2 {
 display:inline-block;
 padding:0 10px 0 5px;
 color:#fff;
 font-weight:500;
 font-size:0.9em;
 line-height:1.3em;
}

.rod3 {
 display:inline-block;
 float:right;
 vertical-align:top;
 text-align:right;
 padding:0 10px;
 margin-top:-5px;
 font-size:0.9em;
}

.inweb {
 width:100%;
 text-align:center;
 padding:20px 10px 10px;
 font-size:0.8em;
}

.botop {
 display:none;
 width:38px;
 height:38px;
 background-color:var(--cor-base);
 border-radius:3px 3px 0 0;
 text-align:center;
 padding-top:8px;
 cursor:pointer;
 position:fixed;
 bottom:-5px;
 left:20px;
 transition:0.4s;
}

.botop:hover {
 bottom:0;
}

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

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

.floatwhats_img:hover {
 width:82px;
}

.home_hero {
 width:100%;
 max-width:1180px;
 height:500px;
 background-image:url(/imagens/home/heroigm.jpg);
 background-position:center center;
 background-repeat:no-repeat;
 position:relative;
}

.home_herotxt {
 width:100%;
 max-width:690px;
 position:absolute;
 bottom:50px;
 right:0;
 background-color:var(--cor-dois);
 padding:20px;
 font-size:1.2em;
 color:#231f1e;
 line-height:1.6em;
}

.home_herotit {
 font-weight:700;
 font-size:1.5em;
 margin-bottom:10px;
}

.heroico {
 width:21px;
 margin-bottom:-2px;
}

.home_centro {
 width:100%;
 max-width:950px;
 margin:0 auto;
 padding:80px 10px 50px;
}

.home_centro1 {
 flex:1;
 text-align:center;
 border:1px solid #000;
 border-radius:5px;
 padding:20px 10px 15px;
 font-size:0.9em;
}

.home_centro2 {
 flex:1;
 text-align:left;
 padding-top:50px;
 padding-left:50px;
}

.home_centrico {
 width:60px;
}

.home_centrotxt {
 display:inline-block;
 vertical-align:top;
 padding-left:20px;
 padding-top:5px;
 font-size:1.4em;
 color:var(--cor-dois);
 font-weight:700;
 line-height:1.2em;
}

.slick {
 width:100%;
 max-width:400px;
 margin:0 auto 10px;
 padding:0;
}

.tit {
 background-color:var(--cor-dois);
 text-align:center;
 padding:10px;
 margin-bottom:30px;
}

h1 {
 font-size:1.3em;
 font-weight:700;
}

.botserv {
 display:inline-block;
 width:95%;
 max-width:400px;
 border:1px solid #000;
 border-radius:5px;
 margin:10px;
 padding:20px 10px;
 font-weight:500;
 transition:0.3s;
}

.botserv:hover {
 background-color:#eee;
 color:#000;
}

.servbox {
 flex:1;
 border:1px solid #000;
 border-radius:5px;
 margin:10px;
 padding:15px;
}

.botport {
 display:inline-block;
 width:95%;
 max-width:400px;
 background-color:var(--cor-base);
 margin:25px 0;
 padding:10px;
 color:#fff;
 font-size:0.9em;
 transition:0.3s;
}

.thumbs {
 width:200px;
 margin:10px;
 border:5px solid #fff;
 outline:1px solid #000;
 transition:0.3s;
}

.thumbs:hover {
 border:5px solid var(--cor-base);
}

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

@media screen and (max-width:950px) {
 .home_centro1 {
  padding:10px;
  font-size:0.8em;
 }
 .home_centro2 {
  padding-top:20px;
  padding-left:20px;
 }
 .home_centrico {
  width:50px;
 }
 .home_centrotxt {
  padding-left:0;
  padding-top:3px;
  font-size:1.2em;
 } 
}

@media screen and (max-width:800px) {
 .menu {
  margin-bottom:10px;
  padding:15px 10px 12px;
 }
 .menuitem {
  font-size:0.9em;
 }
 .menuquadro {
  margin:7px 0 0;
 }
 .home_herotxt {
  max-width:470px;
  font-size:1em;
 }
 .home_centro {
  padding:40px 10px 20px;
 }
 .home_centro1 {
  flex:none;
  display:inline-block;
  width:100%;
  max-width:410px;
 }
 .home_centro2 {
  flex:none;
  display:inline-block;
  width:100%;
  max-width:410px;
  padding:30px 0 0;
 }
}

@media screen and (max-width:650px) {
 .topologo {
  padding:10px 10px 5px;
 }
 .logo {
  max-width:120px;
 }
 .topotel {
  font-size:0.8em;
  padding:8px 10px 0;
  line-height:1.4em;
 }
 .topobr, .topoico {
  display:none;
 }
}

@media screen and (max-width:600px) {
 .menu {
  padding:15px 10px 10px;
 }
 .menuitem, .menuquadro {
  display:none;
 }
 #menu_hamb_ico {
  display:inline-block;
 }
 .rod1 {
  width:25px;
 }
 .rodico {
  width:25px;
 }
 .rod2 {
  padding:0 10px 0 2px;
  font-size:0.8em;
 }
 .rod3 {
  padding:0 5px;
  font-size:0.7em;
 }
 .centro {
  padding:5px;
  font-size:0.9em;
 }
 .home_herotxt {
  max-width:none;
  bottom:0;
  padding:10px;
 }
 .home_herotit {
  font-size:1.3em;
 }
 .heroico {
  width:18px;
 }
}

@media screen and (max-width:500px) {
 .rodape {
  padding:20px 10px;
  text-align:center;
 }
 .rod1 {
  display:none;
 }
 .rod3 {
  float:none;
  text-align:center;
  width:100%;
  margin-top:0;
  padding:15px 5px 0;
 }
 .inweb {
  padding:15px 10px 10px;
  font-size:0.7em;
 }
 .servbox {
  flex:none;
  display:inline-block;
  width:100%;
  margin:10px 0;
  padding:10px;
 }
 .thumbs {
  width:45%;
  margin:5px;
 }
}

@media screen and (max-width:400px) {
 .topologo {
  padding:10px 5px 5px;
 }
 .logo {
  max-width:90px;
 }
 .topotel {
  font-size:0.7em;
  padding:5px 5px 0;
 }
}

@media screen and (max-width:320px) {
 .topologo {
  width:100%;
  text-align:center;
 }
 .topotel {
  display:none;
 }
}