@charset "UTF-8";

html{
margin:0;
padding:0;
/*scroll-behavior: smooth;*/
}
body{
    margin:0;
    padding:0;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 2px;
    overflow-x: hidden;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;

}

/* COOKIES */
.cc-cookies{
  background:rgba(50, 50, 50,1);
  text-align:left;
  top:inherit;
  bottom:0;
  font-size: 10px;
  padding: 1em 5%;
}
.cc-cookies a:hover.cc-cookie-accept{
  background: #fff;
  color: #000;
}
.cookiepolicy-link{margin:0;}
@media screen and (max-width: 480px){
  .cc-cookies{
    position:fixed;
  }
}

.transition{ -webkit-transition: all .1s ease-in-out; transition: all .1s ease-in-out;}


/*SCROLLBAR*/
/* width */
::-webkit-scrollbar {
	width: 8px;
  background: #ffad00;
}
 
/* Handle */
::-webkit-scrollbar-thumb {
	border-radius: 10px;
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
  background-color: #116e43;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #323232; 
}


/*
GENERAL STYLE
*/
div.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  /* padding: 5px; */
  /* border-top: 20px solid #4CAF50; */
}
.MSBlack{font-weight: bold;}
.margin0{margin:0;}
.padding0{padding:0;}
.to_animate {
  visibility: hidden;
}

.animated {
  /*IE7 fix*/
  visibility: visible !important;
}

.ls{
  background-color:#116e43;
  padding:50px 0px;
}
.ls2{
  background-color:#ffad00; /*e9b054*/
}
.ls h2{
  color:#f9f9f9;
}
.ls p{
  color:#f9f9f9;
}
a{
  cursor:pointer;
}
.container{
padding-left:70px;
}
@media (max-width:768px){
  .container{
    padding-left:15px;
  }
}

.theme_button{
  font-size: 0.8vw;
  font-weight: 400;
  padding: 12px 30px;
  margin-bottom: 4px;
  line-height: 1;
  display: inline-block;
  text-align: center;
  color: #f9f9f9;
  border: 1px solid #323232;
  background-color: #323232;
}
.theme_button:hover{
  text-decoration: none;
  color:#c4c4c4;
}
@media (max-width:768px){
  .theme_button{
    font-size: 1.4vw;
  }
}
@media (max-width:425px){
  .theme_button{
    font-size: 2vw;
  }
}

/*
MENU VERTICAL
*/
.overlay{
  position:fixed;
  z-index:9999;
  top:0;
  left:0;
  height:100%;
  width:60px;/*60fechado*/
  background-color:#116e43;
  /* letter-spacing: 0px; */
  transition:0.5s;
}
.overlay .bigIMG{
  width:100%;
  padding:10px;
  display:none;
}
.overlay .littleIMG{
  width:60px;
  padding:10px;

}
.overlay:hover{
width:250px;
}
.overlay:hover .littleIMG{
  display:none;
}
.overlay:hover .bigIMG{
  display:block;
}
.overlay:hover span{
display:inline-block;
opacity: 1;
width:180px;
}
.overlay-content{
height: 450px;
position:relative;
top: 50%;
margin-top: -275px; /*minus half the height*/
}
.menu{
  line-height: 80px;
  border-bottom:1px transparent solid;
  border-top:1px transparent solid;
}
/* .menu:nth-child(1){
  border-bottom:1px #175229 solid;
  border-top:1px #175229 solid;
} */
.menu:hover{
  border-bottom:1px rgba(251,251,251,0.5) solid;
  border-top:1px rgba(251,251,251,0.5) solid;
}
.menu.activeM{
  color:#175229;
  font-size:16px;
  border-bottom:1px rgba(251,251,251,0.5) solid;
  border-top:1px rgba(251,251,251,0.5) solid;
}
.menu a{
text-decoration: none;
white-space: nowrap;
}
.menu a i{
  font-size:20px;
  text-align: center;
  color:#f9f9f9;
  padding:30px 0px;
  width:30px;
}
.menu a span{
  display:none;
  opacity:0;
  margin-left:15px;
}
.menu:hover a span{
  font-size:16px;
}
@media(max-width:768px){
  .overlay{
    display:none;
  }
}



/*
Imagem Introduçao
*/
.imageIntro {
  background-image:url(../images/solar12preto.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover; 
    background-attachment: fixed;
    min-height: 700px;
}
@media (max-width:768px){
  .imageIntro {
      background-attachment:inherit;
      position:fixed;
      width:100%;
      z-index:-1;
  }
  .imageIntroWrap{
    min-height:700px;
    position:relative;
  }
}

.imageIntro .sloganText{
  text-align: right;
  padding:90px 5% 0px 0px;
}
.imageIntro .sloganText .size{
  color:#ffffff;
}
.imageIntro .sloganText .first{
font-weight: bold;
  font-size:36px;
  text-transform: inherit;
  display:block;
  margin: 0 0 15px;
}
.imageIntro .sloganText .second{
  font-size:16px;
}
.imageIntro .sloganText .third{
  font-size:16px;
  font-weight: bold;
}

.topicos{
  font-size:16px;color:white;padding:30px 0px;background-color:rgba(0,0,0,0.25);border-right:4px rgba(255,255,255,0.2) solid;transition:0.5s;
}
.topicos:hover{
  background-color:rgba(0,0,0,0.6);
}
.sloganText ul{
  position: absolute;
  right: 0;
  width: 35%;
}
.sloganText ul li{
  list-style: none;/*disc*/
  text-align: left;
  font-size:1.2vw;
  color:#f9f9f9;
  width:50%;
}
.bannerText1{
  float:right;
  width:60%;
}
.stairs{
  position:absolute;width:100%;top:200px;text-align:center;color:#fff;font-weight:bold;padding:0px 0px 0px 50px;display:none;
}
.stairs p{
  border-bottom:1px #ffad00 solid;border-left:1px #ffad00 solid;padding:20px;background-color:rgb(255, 173, 0,0.1);
}
.orcamento{
  padding:10px 5%;
  background-color:#116e43;
  position:absolute;
  bottom:50px;
  right: 0;
  -webkit-box-shadow: 0px 0px 5px -2px #000000; 
  box-shadow: 0px 0px 5px -2px #000000;
  border-left: 10px solid rgb(50, 50, 50, 0.5);
}
.orcamento p{
  color:#f9f9f9;
  font-size:2vw;
  text-align: center;
}
.orcamento a{
  float: right;
}

.menuMobile{
  display:none;
}
.menuMobile .bigIMG{
  width:200px;
  padding:10px;
  float:left;
}
@media (max-width:768px){
  .menuMobile{
    display:block;
    background-color:#116e43;
    width:100%;
    height:65px;
    position:fixed;
    z-index:9999;
  }
  .menuMobile a{
    float: right;
    padding:20px 17px 15px 17px;
    color:#116e43;
    font-weight: bold;
    text-decoration: none;
    background-color:#f9f9f9;
    border-left:1px #f9f9f9 solid;
    border-right:1px #f9f9f9 solid;
    border-radius: 1px;
  }
  .menuMobile a:hover{
    color:#f9f9f9;
    background-color:#116e43;
  }
  .imageIntro .sloganText{
  }
  .bannerText1{
    float:right;
    width:100%;
    padding:0px 0px 0px 20px;
  }
  .imageIntro .sloganText .first{
      font-size:30px;
    }
  .imageIntro .sloganText .second{
      font-size:13px;
    }
  .orcamento p{
    font-size:2.6vw;
  }
  .stairs{
    display:none;
  }
}
@media (max-width:425px){
  .orcamento p{
    font-size:3.4vw;
  }
  .menuMobile a{
    font-size:10px;
    padding:25px 15px 16px 15px;
  }
  /* .imageIntro .sloganText .first{
    font-size:5vw;
  }
.imageIntro .sloganText .second{
    font-size:9vw;
  } */
}
@media (min-width:1650px){
  .imageIntro {
    min-height: 1100px;
}
}



/*
SCHEDULE
*/
.schedule{
  padding:100px 0px;
  color:#f9f9f9;
  border-bottom: 2px #116e43 solid;
}

@media (max-width:768px){
  .schedule{
    padding:50px 0px;
  }
.schedule .teaser h3{
  font-size:16px;
}
.schedule .teaser p{
  font-size:10px;
}
}
@media (max-width:430px){
.schedule h2{
  font-size:18px;
}
.schedule p{
  font-size:12px;
}
.schedule .teaser h3{
  font-size:12px;
}
.schedule .teaser p{
  font-size:8px;
}
}


/*SERVIÇOS*/
.generalServices{
  background-color:#e7e7e7;
  border-radius:5px;
  padding:40px;
  box-shadow:0px 3px 15px -4px #000000;
}
.generalServices img{
  width:100%;
}
.generalServices p{
  font-size:14px;
}
.generalServices a{
text-decoration: none;
}
.generalServices a p{
padding:5px 0px;
text-align: center;
color:#323232;
border:1px #323232 solid;
margin-top:20px;
transition:0.5s;
}
.generalServices a:hover p{
  color:#f9f9f9;
  border:1px #323232 solid;
  background-color:#323232;
  }
.iconRight{
  position:absolute;
  right:-50px;
  top:-50px;
  background-color:#049104;
  padding:25px;
  border-radius:50%;
  width:100px;
}
.iconLeft{
  position:absolute;
  left:-50px;
  top:-50px;
  background-color:#049104;
  padding:25px;
  border-radius:50%;
  width:100px;
}
/*specific styles*/
.top200{
  margin-top:200px;
}
.top-125{
  margin-top:-125px;
}
.top175{
  margin-top:175px;
}
.top150{
  margin-top:150px;
}
.top-25{
  margin-top:-25px;
}
.top-100{
  margin-top:-100px;
}
@media (max-width:995px){
  .top200,
  .top-125,
  .top175,
  .top150,
  .top-25,
  .top-100,
  .top1{
    margin:0px 50px 75px 50px;
  }
}
@media (max-width:768px){
  .generalServices p{
    font-size:10px;
    letter-spacing: 1px;
    text-align: justify;
  }
  .iconRight{
    width:100px;
  }
  .iconLeft{
    width:100px;
  }
}
@media (max-width:425px){
  .top200,
  .top-125,
  .top175,
  .top150,
  .top-25,
  .top-100,
  .top1{
    margin:0px 0px 75px 0px;
  }
  .iconRight{
    right:0px;
  }
  .iconLeft{
    left:0px;
  }
}


/*
PARCERIAS
*/
.parceiros{
padding:50px 0px 100px 0px;
}
.parceiros h2{
  padding:25px 0px;
}
/* 
 *  Core Owl Carousel CSS File
 */
 .owl-carousel .owl-controls .owl-nav .owl-prev,
 .owl-carousel .owl-controls .owl-nav .owl-next,
 .owl-carousel .owl-controls .owl-dot {
   cursor: pointer;
   cursor: hand;
   -webkit-user-select: none;
   -khtml-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
   -webkit-transition: all 0.2s ease-in-out 0s;
   -moz-transition: all 0.2s ease-in-out 0s;
   -o-transition: all 0.2s ease-in-out 0s;
   -ms-transition: all 0.2s ease-in-out 0s;
   transition: all 0.2s ease-in-out 0s;
 }
 .owl-carousel .owl-item {
   position: relative;
   min-height: 1px;
   float: left;
   -webkit-backface-visibility: hidden;
   -webkit-tap-highlight-color: transparent;
   -webkit-touch-callout: none;
   -webkit-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
 }
 .owl-carousel .owl-item img {
   display: block;
   width: 100%;
   -webkit-transform-style: preserve-3d;	
 }
 .owl-carousel .owl-stage-outer {
   position: relative;
   overflow: hidden;
   /* fix for flashing background */
   -webkit-transform: translate3d(0px, 0px, 0px);
 }
 /* No Js */
 .no-js .owl-carousel {
   display: block;
 }
 /* 
  *  Owl Carousel - Lazy Load Plugin
  */
 .owl-carousel .owl-item .owl-lazy {
   opacity: 0;
   -webkit-transition: opacity 400ms ease;
   -moz-transition: opacity 400ms ease;
   -ms-transition: opacity 400ms ease;
   -o-transition: opacity 400ms ease;
   transition: opacity 400ms ease;
 }
 .owl-carousel .owl-item img {
   transform-style: preserve-3d;
 }
 /* 
  *  Default theme - Owl Carousel CSS File
  */
 /* .owl-theme .owl-dots {
   text-align: center;
   margin-top: 10px;
   -webkit-tap-highlight-color: transparent;
 }
 .owl-theme .owl-dots .owl-dot {
   display: inline-block;
   zoom: 1;
   *display: inline;
   color:black;
 }
 .owl-theme .owl-dots .owl-dot span {
   width: 10px;
   height: 10px;
   margin: 5px 6px;
   background:  #323232;
   opacity:0.5;
   display: block;
   -webkit-backface-visibility: visible;
   -webkit-transition: all 200ms ease;
   -moz-transition: all 200ms ease;
   -ms-transition: all 200ms ease;
   -o-transition: all 200ms ease;
   transition: all 200ms ease;
   -webkit-border-radius: 50%;
   -moz-border-radius: 50%;
   border-radius: 50%;
 }
 
 .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
   background:  #323232;
   opacity:1;
 } */
 
 /* owl images fix */
 .owl-carousel .owl-item {
   -webkit-transition: opacity 0.4s ease 0.2s;
   -moz-transition: opacity 0.4s ease 0.2s;
   -o-transition: opacity 0.4s ease 0.2s;
   -ms-transition: opacity 0.4s ease 0.2s;
   transition: opacity 0.4s ease 0.2s;
   opacity: 0;
 }
 
 .owl-carousel .owl-item.active {
   opacity: 1;
 }
 
 .owl-center .owl-item {
   opacity: 1;
 }
 
 

/* .item a{
	display:none;
}
.item:hover a{
	display:block;
} */


/*thumbnail*/
.thumbnail {
  position: relative;
  overflow: hidden;

  border-color:#EDEDED; 
  box-shadow:0px 0px 5px 0px #A2A2A2;
  margin:20px 5px;
}
.thumbnail:hover{

  box-shadow:0px 0px 2px 2px #414141;
}

.isotope-item .thumbnail {
  margin-bottom: 30px;
}

.thumbnail h3 {
  font-size: 20px;
  margin-bottom: 2px;
  color: #323232;
}

.thumbnail h3 a {
  color: inherit;
}

.thumbnail h3 a:hover {
  color: #a1b52f;
}

.thumbnail h3 + p {
  color: #a1b52f;
  margin-bottom: 10px;
}

.thumbnail .caption {
  color: #b2b2b2;
  background-color: #ffffff;
  padding: 16px 20px 26px;
}



/*MAPA*/
#mapouter{position:relative;}
#gmap_canvas {border:none;overflow:hidden;background:none!important;height:500px;width:100%; }



/*
CONTACTOS
*/

/*
**ICONS
*/
a[class*='soc-'] {
  font-size: 0;
  color: transparent;
  display: inline-block;
  line-height: 1;
  vertical-align: middle;
}

a[class*='soc-'] + a[class*='soc-'],
.tooltip + a[class*='soc-'] {
  margin-left: 20px;
}


a[class*='soc-']:before {
  font-family: 'socicon';
  font-size: 16px;
  line-height: 1;
  text-align: center;
  color: #b2b2b2;
  display: inline-block;
  -webkit-transition: all 0.6s linear 0s;
  -moz-transition: all 0.6s linear 0s;
  -o-transition: all 0.6s linear 0s;
  -ms-transition: all 0.6s linear 0s;
  transition: all 0.6s linear 0s;
}
/*TEASERS*/
.teaser {
  position: relative;
  margin-bottom: 30px;
}

.teaser .sendEmail{
	color:white;
	text-decoration:underline;
}

.teaser .sendEmail:hover{
	color:white;
    text-decoration:none;
}
.teaser .morada{margin-top: 27px;text-decoration:underline;}
.teaser .morada:hover{text-decoration:none;}

.teaser[class*="_bg_color"] {
  padding: 35px 40px;
}

.teaser [class*="_bg_color"] {
  padding: 21px;
  margin-bottom: 2px;
  text-align: center;
}

.teaser [class*="_bg_color"] + h4 {
  margin-top: 24px;
}

.teaser .border_icon {
  padding: 0.35em;
  min-width: 1.8em;
  border-width: 3px;
  border-style: solid;
}

.teaser i {
  min-width: 1em;
  display: inline-block;
}


.teaser [class*="count"] {
  font-size: 80px;
  margin: 10px 0 6px;
}

.teaser [class*="count"] + p {
  margin: 0;
  font-size: 28px;
  font-weight: 300;
}

.teaser .theme_button {
  margin: 22px 0 0;
}

.section_padding_bottom_0 .teaser {
  margin-bottom: 0;
}

.teaser_icon {
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.2s ease-in-out 0s;
  -moz-transition: all 0.2s ease-in-out 0s;
  -o-transition: all 0.2s ease-in-out 0s;
  -ms-transition: all 0.2s ease-in-out 0s;
  transition: all 0.2s ease-in-out 0s;

  color:#f9f9f9;
}

.teaser_icon + p {
  margin-top: 27px;
  color:#ffffff;
}


.teaser:hover .teaser_icon {
  -webkit-animation: pulse 0.9s infinite;
  -moz-animation: pulse 0.9s infinite;
  -ms-animation: pulse 0.9s infinite;
  -o-animation: pulse 0.9s infinite;
  animation: pulse 0.9s infinite;
}

.size_big {
  font-size: 64px;
}

.size_normal {
  font-size: 42px;
}

.size_small {
  font-size: 26px;
}



/*FORM CONTACT*/

/*RESERVAS*/
/*forms*/
.tituloMensagem p{
  font-size:22px;
  color:white;
  text-align: center;
}

.form-control {
  height: 50px;
  border-color: #e5e5e5;
  background-color: transparent;
  border-radius: 0;
  color: #000000;
  padding-left: 30px;
  padding-right: 40px;
  font-size: 16px;
}

/* select styling */
.form-control option {
  color: #323232;
  background-color: #ffffff;
}

.form-control, .form-control:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.form-control.invalid {
  -webkit-box-shadow: 0 0 0 2px #55bce9;
  box-shadow: 0 0 0 2px #55bce9;
}

.form-control:focus {
  border-color: #b2b2b2;
  color: #b2b2b2;
}

.form-control:-moz-placeholder {
  color: #b2b2b2;
  opacity: 1;
}

.form-control::-moz-placeholder {
  color: #b2b2b2;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #b2b2b2;
}

.form-control::-webkit-input-placeholder {
  color: #b2b2b2;
}

.form-control:focus:-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.form-control:focus::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.form-control:focus:-ms-input-placeholder {
  color: transparent;
}

.form-control:focus::-webkit-input-placeholder {
  color: transparent;
}



/*
TOTOP
*/
#toTop {
  bottom: 5px;
  right: 5px;
  display: none;
  width: 50px;
  height: 50px;
  overflow: hidden;
  position: fixed;
  text-decoration: none;
  z-index: 9999;
  font-size: 0;
  color: transparent;
  background-color: #669936;
}

#toTop:after {
  color: #ffffff;
  content: '\e835';
  font-size: 16px;
  line-height: 50px;
  font-family: 'fontello';
  text-align: center;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transition: all 0.2s linear;
  -moz-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  -ms-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

#toTopHover, #toTop:hover {
  background-color:#303030 ;
  bottom: 8px;
}

#toTop:hover:after {
  color: #ffffff;
}

#toTop:active, #toTop:focus {
  outline: medium none;
}


.theme_button > [class*="rt-icon"],
.theme_button > [class*="glyphicon"],
.theme_button > [class*="fa-"] {
  padding: 0 4px;
  position: relative;
  top: 1px;
}


.livroreclamacoes{
  width:90px;
  float:right;
}
.footer{background-color:#ffad00;letter-spacing: 0px;padding:50px 0px 25px 0px;}

@media (max-width:768px){
  .politicas{padding:10px 0px;text-align: left;}
  .politicas p{text-align: left;}
  .mobileCenter{text-align:left;}
  .livroreclamacoes{float:none;}
}

@media (min-width:1540px){
.orcamento{bottom:250px;}
}


.welcome a:hover{text-decoration: none;color:#c4c4c4;}
.welcome a:focus{text-decoration: none;color:#f9f9f9;}







/* FOOTER */
.padding_50{padding:50px 0px;}
.footer{
  background-color:#ffad00;
}
.footer h2{
  font-size:14px;
  font-weight: 700;
  color:#fff;
  text-transform: uppercase;
  margin-bottom:30px;
  margin-top:0;
}
.footer p{
  color:#ffffff;
  text-align: left;
  font-size:14px;
  /* line-height: 24px; */
  margin:10px 0px;
}
.footer a{
  font-size:14px;
  text-decoration:none;
  color: #fff;
}
.footer a:hover{
  text-decoration: underline;
  text-decoration-color:#fff;
  color:#fff;
}
.footerText i{
  color:#fff;
  line-height: 45px;
  padding:10px;
  font-size:20px;
}
.footerText i:hover{
  color:#bebebe;
}
.footerText .primeiraColuna p{
  width:85%;
  margin-top:25px;
}
.footerText .primeiraColuna img{
  width:250px;
}
.politicas{
  padding:0px 15px;
}
.politicas a p span{
  display:none;
}
.sociMobile{
  display:none;
}
/* @media (max-width:1000px){
  .footerText .primeiraColuna{
    margin-bottom:25px;
  }
  .footerText .primeiraColuna p{
    width:50%;
  }
}

@media (max-width:765px){
  .sociPC{
    display:none;
  }
  .sociMobile{
    display:block;
  }
  .linksOff{
    display:none;
  }
  .footerText .primeiraColuna p{
    width:75%;
  }
  .col-md-3{
    max-width:33.33%;
  }
} */

/* @media (max-width:425px){
  .col-md-3{
    max-width:50%;
  }
  .politicas{
    max-width:100%;
    text-align:left;
  }
  .politicas h2{
    display:none;
  }
  .politicas a p{
    display:inline;
    font-size:2.8vw;
  }
  .politicas a p span{
    display:inline;
  }
} */
