/* Variáveis */

:root {
 --cor-base:#286130;
 --cor-clara:#88be36;
 --cor-escura:#06310a;
 --cor-dois:#141414;
 --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:#000;
 font-family:Arial,Helvetica;
 font-size:1em;
 font-weight:400;
}

.montserrat {
 font-family:'Montserrat',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.branco {
 text-decoration:none;
 color:#fff;
 outline:none;
 overflow-wrap:anywhere;
}

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

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

input[type=text]:focus,input[type=password]:focus,select:focus,textarea:focus {
 border:1px solid var(--cor-clara);
}

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

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

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

li {
 margin-left:1em;
}

blockquote {
 border-left:solid 3px var(--cor-base);
 padding-left:1em;
 font-style:italic;
}

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

.embed-container {
 position:relative;
 padding-bottom:56.25%;
 height:0;
 overflow:hidden;
 max-width:100%;
}

.embed-container iframe,.embed-container object,.embed-container embed {
 position:absolute;
 top:0;
 left:0;
 width:100%;
 height:100%;
}

@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%;
 height:150px;
 background-color:#fff;
 position:fixed;
 top:0;
 left:0;
 z-index:2;
 transition:0.3s;
}

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

.logo {
 width:100%;
 max-width:150px;
 transition:0.3s; 
}

.topomenu {
 display:inline-block;
 float:right;
 padding-top:50px;
 transition:0.3s;
}

.menuitem {
 display:inline-block;
 padding:15px;
 margin:0 5px;
 border-radius:5px;
 font-weight:700;
 color:var(--cor-base);
 font-size:1.1em;
 box-shadow: 0 0 1px rgba(0, 0, 0, 0); 
 transform: perspective(1px) translateZ(0);
 transition-duration:0.3s;
 transition-property:box-shadow;
 box-shadow: inset 0 0 0 2px #fff, 0 0 1px rgba(0, 0, 0, 0); 
 transition:0.3s;
}

.menuitem:hover, .menuitem:focus, .menuitem:active {
 box-shadow: inset 0 0 0 2px var(--cor-clara), 0 0 1px rgba(0, 0, 0, 0);
}

#menu_hamb_ico {
 display:none;
 width:30px;
 height:30px;
 cursor:pointer;
}

#menu_resp {
 display:none;
 position:absolute;
 top:58px;
 left:0;
 width:100%;
 text-align:center;
 background-color:#fff;
 box-shadow:0 6px 6px rgba(0,0,0,0.2);
 padding:20px 20px 5px;
 z-index:-1;
}

.menuitem_resp {
 display:inline-block;
 width:100%;
 border:1px solid var(--cor-base);
 border-radius:30px;
 padding:7px 8px 5px;
 margin-bottom:13px;
 font-weight:600;
 color:var(--cor-base);
 cursor:pointer;
}

.menuitem_resp:hover {
 color:var(--cor-base);
}

.rodape {
 width:100%;
}

.rodmapa {
 flex:1;
}

.rodtxt {
 flex:1;
 background-color:var(--cor-dois);
 padding:50px 15px 15px 50px;
 color:#fff;
}

.rodlogo {
 width:100%;
 max-width:150px;
 margin-bottom:20px;
 filter:brightness(100);
}

.rodico {
 width:20px;
 margin-right:8px;
 margin-bottom:-4px;
}

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

/** HOMEPAGE **/

.home_intro {
 width:100%;
 margin-top:150px;
 background-color:var(--cor-dois);
 border-bottom:8px solid #fff;
}

.home_intro_img {
 flex:1;
 margin-bottom:-4px;
}

.home_intro_txt {
 flex:1;
 background-color:var(--cor-dois);
 color:#fff;
 font-size:1.05em;
 line-height:1.7em;
 position:relative;
}

.home_intro_txt_box {
 width:70%;
 position:absolute;
 top:50%;
 left:50%;
 transform:translateX(-50%) translateY(-50%);
}

.home_intro_tit {
 font-weight:700;
 color:var(--cor-clara);
 font-size:1.3em;
 line-height:1.6em;
}

.home_segmen {
 width:100%;
 background-color:var(--cor-base);
 background-image:url(/imagens/home/rohs-segmenbg.webp);
 background-position:center;
 padding:120px 10px;
 text-align:center;
 color:#fff;
 border-bottom:8px solid #fff;
}

.home_segmen_tit {
 font-weight:700;
 font-size:2.3em;
}

.home_segmen_box {
 flex:1;
 margin:20px;
 color:#fff;
 font-weight:700;
 font-size:1.1em;
}

.home_segmen_bola {
 display:inline-block;
 width:160px;
 height:160px;
 border:4px solid #fff;
 border-radius:80px;
 margin-bottom:10px;
 padding-top:30px;
 transition:0.3s;
}

.home_segmen_ico {
 width:90px;
 filter:brightness(100);
}

.home_segmen_box:hover .home_segmen_bola {
 border:4px solid var(--cor-clara);
 border-radius:20px;
}

.home_segmen_box:hover .home_segmen_ico {
 filter:none;
}

.home_serv {
 width:100%;
 background-color:#e5e5e5;
 background-image:url(/imagens/home/rohs-servbg.webp);
 background-position:center;
 background-repeat:no-repeat;
 border-bottom:8px solid #fff;
 text-align:center;
 padding:80px 20px;
}

.home_serv_box {
 display:inline-block;
 width:100%;
 max-width:550px;
 margin:0 auto;
 text-align:left;
 font-size:1.1em;
 line-height:1.7em;
}

.home_serv_tit {
 font-weight:700;
 font-size:2em;
 color:var(--cor-base);
}

.home_serv_bot {
 display:inline-block;
 width:180px;
 background-color:var(--cor-base);
 border-radius:40px;
 padding:5px 10px 4px;
 text-align:center;
 color:#fff;
 font-weight:700;
 font-size:0.8em;
 transition:0.3s;
}

.home_serv_bot:hover {
 border-radius:5px;
}

/** INTERNAS **/

.titulo {
 width:100%;
 background-color:var(--cor-base);
 background-image:url(/imagens/home/rohs-segmenbg.webp);
 background-position:center;
 text-align:center;
 margin-top:150px;
 padding:60px 15px;
}

h1 {
 color:#fff;
 font-size:2.5em;
}

.centro {
 width:100%;
 background-color:#e5e5e5;
 padding:40px 15px 60px;
 line-height:1.7em;
}

.int_img {
 flex:2;
 min-width:300px;
}

.int_foto {
 width:100%;
 max-width:600px;
 border-radius:150px 15px 150px 15px;
}

.int_txt {
 flex:3;
 padding:50px 0 0 30px;
}

.serv_box {
 margin:20px 0 30px;
}

.serv_img {
 flex:1;
 max-width:100px;
 text-align:center;
}

.serv_bola {
 display:inline-block;
 width:90px;
 height:90px;
 border:4px dotted var(--cor-clara);
 border-radius:45px;
 text-align:center;
 padding-top:15px;
}

.serv_ico {
 width:50px;
}

.serv_txt {
 flex:1;
 padding:10px 0 0 10px;
 line-height:1.4em;
}

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

@media screen and (max-width:1500px) {
 .home_intro_txt {
  font-size:0.95em;
  line-height:1.4em;
 }
 .home_intro_txt_box {
  width:90%;
 }
 .home_intro_tit {
  font-size:1.2em;
 }
 .home_segmen {
  padding:80px 10px;
 }
 .home_segmen_tit {
  font-size:2em;
 }
}

@media screen and (max-width:1100px) {
 .home_intro_txt {
  font-size:0.95em;
  line-height:1.3em;
 }
 .home_intro_txt_box {
  width:95%;
 }
 .home_intro_tit {
  font-size:1em;
 }
 .home_segmen {
  padding:60px 10px;
 }
 .home_segmen_tit {
  font-size:1.8em;
 }
 .home_segmen_box {
  margin:10px;
  font-size:1em;
 }
 .home_segmen_bola {
  width:120px;
  height:120px;
  border:3px solid #fff;
  padding-top:25px;
}
 .home_segmen_ico {
  width:60px;
 }
 .home_serv {
  background-size:cover;
  padding:50px 20px;
 }
 .home_serv_box {
  font-size:1em;
 }
 .home_serv_tit {
  font-size:1.8em;
 }
 .int_txt {
  padding:20px 0 0 20px;
 }
}

@media screen and (max-width:900px) {
 .topo {
  height:80px !important;
 }
 .topologo {
  padding:5px 10px !important;
 }
 .logo {
  max-width:80px !important;
 }
 .topomenu {
  padding-top:25px !important;
 }
 .menuitem {
  padding:8px !important;
  margin:0 4px;
  font-size:0.9em !important;
 }
 .rodtxt {
  padding:50px 15px 15px 25px;
  font-size:0.9em;
 }
 .rodlogo {
  max-width:120px;
  margin-bottom:10px;
 }
 .home_intro {
  margin-top:80px;
  border-bottom:5px solid #fff;
 }
 .home_intro_img {
  flex:none;
  display:inline-block;
  width:100%;
 }
 .home_intro_txt {
  flex:none;
  display:inline-block;
  width:100%;
  line-height:1.4em;  
 }
 .home_intro_txt_box {
  position:relative;
  width:100%;
  padding:20px;
 }
 .home_segmen {
  padding:40px 10px;
  border-bottom:5px solid #fff;
 }
 .home_segmen_tit {
  font-size:1.6em;
 }
 .home_segmen_box {
  min-width:180px;
  margin:20px 10px;
 }
 .home_serv {
  border-bottom:5px solid #fff;
 }
 .titulo {
  margin-top:80px;
  padding:40px 15px;
 }
 h1 {
  font-size:2em;
 }
 .centro {
  padding:25px 15px 40px;
  font-size:0.95em;
  line-height:1.6em;
 }
 .int_foto {
  border-radius:100px 15px 100px 15px;
 }
 .int_txt {
  padding:10px 0 0 20px;
 }
}

@media screen and (max-width:640px) {
 .topo {
  height:60px !important;
 }
 .topologo {
  padding:3px 15px 0 !important;
 }
 .logo {
  max-width:60px !important;
 }
 .topomenu {
  padding:15px 15px 0 0 !important;
 }
 .menuitem {
  display:none;
 }
 #menu_hamb_ico {
  display:inline-block;
 }
 .rodmapa {
  flex:none;
  display:inline-block;
  width:100%;
  height:300px;
 }
 .rodtxt {
  flex:none;
  display:inline-block;
  width:100%;
  padding:20px 20px 25px;
 }
 .inweb {
  padding:10px;
  font-size:0.75em;
 }
 .home_intro {
  margin-top:60px;
 }
 .home_segmen {
  padding:35px 0 20px;
 }
 .home_segmen_tit {
  font-size:1.4em;
 }
 .home_segmen_box {
  flex:none;
  display:inline-block;
  width:45%;
  min-width:auto;
  margin:15px 5px;
  font-size:0.9em;
 }
 .home_segmen_bola {
  margin-bottom:5px;
 }
 .home_serv {
  padding:30px 20px 35px 10px;
 }
 .home_serv_box {
  font-size:0.95em;
 }
 .home_serv_tit {
  font-size:1.6em;
 }
 .titulo {
  margin-top:60px;
  background-size:300%;
  padding:30px 15px;
 }
 h1 {
  font-size:1.5em;
 }
 .centro {
  padding:20px 15px 30px;
  font-size:0.9em;
 }
 .int_img {
  flex:none;
  display:inline-block;
  width:100%;
  max-width:450px;
  min-width:0;
  padding:0 10px;
 }
 .int_txt {
  flex:none;
  display:inline-block;
  width:100%;
  padding:20px 0;
 }
 .serv_box {
  margin:10px 0 30px;
 }
 .serv_img {
  max-width:85px;
 }
 .serv_bola {
  width:80px;
  height:80px;
 }
 .serv_ico {
  width:40px;
 }
 .serv_txt {
  padding:4px 0 0 10px;
 }
}