/*
Theme Name: Lima Theme
Theme URI: https://ruadocanto.pt/
Author: Rua do Canto
Author URI: https://ruadocanto.pt/
Description: Custom Theme

Text Domain: lima
Version: 1.0.0

Copyright (c) 2022 Rua do Canto
*/


/*------------------------ Geral ---------------------- */
html,
body {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
}




body {
	font-family: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
	-webkit-font-smoothing: subpixel-antialiased;
	padding:0; margin:0;
	font-size: 10px; /* reset font */
	font-weight: 400;
	line-height: 130%;
	color: #333;
	overflow-x: hidden !important;
	position: relative;
}


h1{font-size:3.0em; font-weight: 600; line-height:130%; padding:0; margin:0;}
h2{font-size:3.0em; font-weight: 600; line-height:130%; padding:0; margin:0;}
h3{font-size:2.4em; font-weight: 600; line-height:130%; padding:0; margin:0;}
h4{font-size:2.0em; font-weight: 400; line-height:130%; padding:0; margin:0;}
h4.h-xs{font-size:1.3em; font-weight: 400; line-height:140%; padding:0; margin:0;}
h5{font-size:1.5em; font-weight: 400; line-height:130%; padding:0; margin:0;}
h6{font-size:1.3em; font-weight: 400; line-height:140%; padding:0; margin:0;}
small{}	
p{font-size:1.3em; font-weight: 400; line-height:140%; padding:0; margin:0; }  /*max-width recomendado: font x 30 = 390px */

.content {font-size:1.3em; font-weight: 400; line-height:140%; padding:0; margin:0;}

dd,span{} 

.legend{font-size:1.2em; line-height:140%;}
.legend-2{font-size:0.9em; line-height:140%;}

b{font-weight: 600;}
em {font-style: italic}

abbr[data-original-title], abbr[title]{
	border-bottom: 0px dotted #777;
}

hr{
    border: 0;
    height: 2px;
    background: #333;
	width: 90%;
}

blockquote {
  font-size: 1.3em;
  border-left: 3px solid #34baa3;
  padding: 15px;
}

address{
	
}

iframe{
    position: relative;
    display: block;
    border: 0;
}

object{	
	position: relative;

}

img{
	width:100%;
	height: auto; 
	position: relative; 
	display:block;
}


#map, #map #mymap {
	height: 450px;
	width:100%; 
}
#map img{
	  width: auto;
	  display: initial;
} 

.fullscreen{
	width: 100%; 
	height: 100%;
	display: block;
	position: relative;	
	overflow: hidden;	
}


/*Estilos links */
a{color: #9caa20;  text-decoration: none; outline:0;}

a:link,
a:visited {
	color: #9caa20;
}

a:active,
a:hover,
a:focus { 
	color: #777777;  text-decoration: none; outline:0;
} 

/*Estilos texto */
.t-black {
  color: #231f20 !important;
}

.t-white {
  color: #ffffff !important;
}

.t-gray {
  color: #999 !important;
}

.t-color {
  color: #9caa20 !important;
}

.t-gradient {
	color: rgba(229,31,35,1);
	background: -webkit-linear-gradient(left, #fe0237,  #c45379, #cc4665);
	background: -moz-linear-gradient(left, #fe0237,  #c45379, #cc4665);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;	
}

.t-shadow{
	text-shadow: 2px 2px 3px rgba(50, 50, 50, 0.6);
}

.line-b-center:after {
	position: relative;
	content: '';
	bottom: -3px;
	width: 36px;
	height: 3px;
	margin-top: 6px;
	margin-left: 50%;
	margin-bottom: 12px;
	left: -18px;
	display: block;
	background-color:#9caa20;
}

.line-t-center:before {
	position: relative;
	content: '';
	bottom: 10px;
	width: 36px;
	height: 3px;
	margin-top: 6px;
	margin-left: 50%;
	margin-bottom: 0px;
	left: -18px;
	display: block;
	background-color: #9caa20;
}

/*Limitar texto por 2 linhas */

.txt-limit-1 {
	margin: 5px 0px 0px 0px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;  /* fallback */
    display: -webkit-inline-box;
    vertical-align: middle;
    font-size: 18px;
    line-height: 20px; /* fallback */
    height: 20px; /* fallback (line-height x X ) */
    -webkit-line-clamp: 1; /* number of lines to show */
    -webkit-box-orient: vertical;
	font-weight: 400;
}

.txt-limit-2 p {
	margin: 5px 0px 0px 0px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;  /* fallback */
    display: -webkit-inline-box;
    vertical-align: middle;
    font-size: 14px;
    line-height: 16px; /* fallback */
    height: 32px; /* fallback (line-height x X ) */
    -webkit-line-clamp: 2; /* number of lines to show */
    -webkit-box-orient: vertical;
	width: 100%;
	
}


/*Centrar verticalmente */
.v-outer {
	width: 100%; 
	height: 100%; 
	left: 0; 
	top: 0;  
	position:absolute; 
}

div.v-align {
    width: 100%;
	height: 100%;
	min-height: 100%;
    display: table !important;
	position: absolute; 
}

div.v-middle {
	display: table-cell !important;
	vertical-align: middle;
}


/*Espacamentos*/
.mt-00 {margin-top: 0px !important;}
.mt-10 {margin-top: 10px !important;}
.mt-20 {margin-top: 20px !important;}
.mt-30 {margin-top: 30px !important;}
.mt-40 {margin-top: 40px !important;}
.mt-50 {margin-top: 50px !important;}
.mt-60 {margin-top: 60px !important;}
.mt-70 {margin-top: 70px !important;}
.mt-80 {margin-top: 80px !important;}
.mt-90 {margin-top: 90px !important;}
.mt-100{margin-top: 100px !important;}

.mb-00 {margin-bottom: 0px !important;}
.mb-10 {margin-bottom: 10px !important;}
.mb-20 {margin-bottom: 20px !important;}
.mb-30 {margin-bottom: 30px !important;}
.mb-40 {margin-bottom: 40px !important;}
.mb-50 {margin-bottom: 50px !important;}
.mb-60 {margin-bottom: 60px !important;}
.mb-70 {margin-bottom: 70px !important;}
.mb-80 {margin-bottom: 80px !important;}
.mb-90 {margin-bottom: 90px !important;}
.mb-100 {margin-bottom: 100px !important;}

.mag-00{margin: 0px!important}

.pr-05{padding-right:5px}
.pl-05{padding-left:5px}

.pad-00{padding: 0px !important;}
.pad-05{padding-top: 5px !important; padding-bottom: 5px !important;}
.pad-10{padding-top: 10px !important; padding-bottom: 10px !important;}
.pad-20{padding-top: 20px !important; padding-bottom: 20px !important;}
.pad-30{padding-top: 30px !important; padding-bottom: 30px !important;}
.pad-40{padding-top: 40px !important; padding-bottom: 40px !important;}
.pad-50{padding-top: 50px !important; padding-bottom: 50px !important;}
.pad-60{padding-top: 60px !important; padding-bottom: 60px !important;}
.pad-70{padding-top: 70px !important; padding-bottom: 70px !important;}
.pad-80{padding-top: 80px !important; padding-bottom: 80px !important;}
.pad-90{padding-top: 90px !important; padding-bottom: 90px !important;}
.pad-100{padding-top: 100px !important; padding-bottom: 100px !important;}


.z-1{z-index: 1;}
.z-2{z-index: 2;}
.z-3{z-index: 3;}


/*Backgrounds*/
.bg-full-center{
	background-repeat:	no-repeat;
	background-position: center center; 
	background-attachment: scroll;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	-o-background-size: cover;
}

.bg-full-top{
	background-repeat:	no-repeat;
	background-position: top center; 
	background-attachment: scroll;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	-o-background-size: cover;
}

.bg-fixed{background-attachment: fixed !important;}
@media (max-width: 767px) {.bg-fixed{background-attachment: scroll !important;}}

.position-absolute{
	position: absolute;
}


.bg-black {
	background-color: #323232;
	background-color: rgba(50,50,50,1);
}

.bg-black-texture {
	background-color: rgba(0,0,0,0.1);
	background-repeat:	repeat;
	background-image: url(img/video/grid.png)

}

.bg-black-alpha {
	background-color: #000;
	background-color: rgba(0,0,0,0.6);
}

.bg-white {
	background-color: #fff;
	background-color: rgba(255,255,255,1);
}

.bg-white-alpha {
	background-color: #fff;
	background-color: rgba(255,255,255,0.7);
}

.bg-gray {
	background-color: #787878;
	background-color: rgba(120,120,120,1);
}

.bg-gray-light {
	background-color: #c8c8c8;
	background-color: rgba(200,200,200,1);
}

.bg-gray-alpha {
	background-color: #787878;
	background-color: rgba(120,120,120,0.7);
}  
 
.bg-color {
	background-color: #9caa20;
}
 
.bg-shadow{
	-webkit-box-shadow: 0px 27px 23px -24px rgba(0,0,0,0.4);
	-moz-box-shadow: 0px 27px 23px -24px rgba(0,0,0,0.4);
	box-shadow: 0px 27px 23px -24px rgba(0,0,0,0.4);
}

/*Limitar imagens proporcionalmente*/

div.shape-img {
	overflow: hidden;
	display: block;
	position: relative;
	background-color: #eee;
}

div.shape-img>img {
	width: 100%;
	height: auto;
	position: relative;
	display: block;
}

div.shape-img>div {
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	position: absolute;
}

div.shape-img>div img {
    width: 100%;
	height: auto;
	display: block;	
}



/*animações*/
.p-enllax{
-webkit-transition: all .3s;
-moz-transition: all .3s;
transition: all .3s;
}


/*btn*/
.btn-primary{
	color: #fff !important;
	border-radius: 0;
	border: 1px solid #9caa20 !important;
	background-color: #9caa20 !important;
}

.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover{
	background-color: #777 !important;
	outline: 0px;
}

a.btn-primary[href='']{
    display: none;
}





/*Estilos formularios*/

.wpcf7{
	text-align:left;
}

.wpcf7 .col-xs-12{
	padding-bottom: 10px;
	padding-top: 10px;
}

span.wpcf7-not-valid-tip,
.wpcf7-not-valid-tip{
	text-align: right;
	font-size: 12px;
	color: #990000;
}

form p{
	margin-bottom:20px;
}

form img{
	  width: auto;
	  display: inline;
} 


form select,
form textarea,
form input{
	font-size: 14px;
	font-weight: 400;
	line-height: 1.42857143;
	color: #fff;
	text-align: left;
    padding: 6px 12px;
	margin-top: 10px;
	margin-bottom: 5px;
	background-color: transparent;
    background-image: none;
	
	border:0px;
    border-bottom: 1px solid #fff;
	border-radius: 0;
    -webkit-box-shadow: 0px;
    box-shadow: 0px;
    -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;


}

form select,
form input[type=search],
form input[type=number],
form input[type=text],
form input[type=file],
form input[type=email],
form input[type=tel],
form input[type=password]{
	display: block;
    width: 100%;
	height: 40px;
}

form textarea{
	display: block;
    width: 100%;
	height: 120px;

	line-height:24px;
	-webkit-appearance: none;
	background-repeat:	repeat;
	background-image: url(img/notebook.png);
	border: 0px;
}

form input[type="submit"]{
	display: inline-block;
    padding: 6px 12px;

	margin-top: 10px;
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
	float: right;
	
	width: auto;
	color: #fff !important;
    border-radius: 0;
    border: 0 !important;
    background-color: #9caa20 !important;
}

form select:focus,
form textarea:focus,
form input:focus{
    border-color: #fff;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(0,0,0,.6);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(0,0,0,.6);
	outline: 0;
}


form input[type="submit"]:focus,
form input[type="submit"]:active,
form input[type="submit"]:hover{
	background-color: #777 !important;
	outline: 0px;
}


div.wpcf7 img.ajax-loader{
	float:right;
	margin: 20px;
}

div.wpcf7-response-output{
	float:right;
	padding: 10px;
	margin:10px 15px;
	font-size:12px;
} 

.g-recaptcha iframe,
form.wpcf7-form .wpcf7-recaptcha iframe{
	-ms-transform:scale(0.7);
	-moz-transform:scale(0.7);
	-webkit-transform:scale(0.7);
	transform:scale(0.7);
    -ms-transform-origin: 0 0;
	-moz-transform-origin: 0 0; 
    -webkit-transform-origin: 0 0; 
	transform-origin:0 0;
}

/*------------------------ Custom Styles ---------------------- */


.navbar-toggle {
  width: 30px;
  height: 20px;
  border: 0px;
  padding: 0px;

  margin-bottom: 15px;
  margin-top: 15px;
}

.navbar-default .navbar-toggle:focus, 
.navbar-default .navbar-toggle:hover{
  background: none;	
}

.navbar-toggle .icon-bar {
  width: 30px;
  height: 2px;
  transition: all 200ms;
  position:absolute;
  background-color: #9caa20 !important;
}
.navbar-toggle .icon-bar:nth-child(1) {
  top: 0;
}
.navbar-toggle .icon-bar:nth-child(2) {
  top: 50%;
  margin: 0px;
  transform: translateY(-50%);
}
.navbar-toggle .icon-bar:nth-child(3) {
  bottom: 0;
}
.navbar-toggle.switch .icon-bar:nth-child(1), 
.navbar-toggle.switch .icon-bar:nth-child(2) {
  top: 0;
  transform: translateY(9px) rotate(45deg);
}
.navbar-toggle.switch .icon-bar:nth-child(3) {
  transform: translateY(-9px) rotate(-45deg);
}

.navbar-default{
	background-color: #fff;
	background-color: rgba(255,255,255, 0.91);
    border: 0px;
}

nav .social ul{
	float: right;
    margin-bottom: 0;
	height: 50px;
	display: table;
}
nav .social ul li{
	display: table-cell;
	vertical-align: middle;
	padding: 10px;
}
nav.top-nav-collapse .social{
	display:none;
}


nav .menu .navbar-brand {
	top: 0;
	height: 100px;
	position: absolute;
	padding: 10px 10px 10px 15px ;
}
nav.top-nav-collapse .menu .navbar-brand {
	height: 50px;
	padding: 5px 5px 5px 15px ;
}
nav.top-nav-collapse .menu .navbar-brand img.brand-icon, 
nav .menu .navbar-brand img.brand-marca{
	height: 100%;
	width: auto;
	display: block;
}
nav.top-nav-collapse .menu .navbar-brand img.brand-marca, 
nav .menu .navbar-brand img.brand-icon{
	height: 100%;
	width: auto;
	display: none;
}





.navbar-default .navbar-nav>li>a{
	    color: #9caa20;
}
.navbar-default .navbar-nav>li>a:focus, 
.navbar-default .navbar-nav>li>a:hover{
		color: #9caa20;
}

/* position fixed*/
div.position-fixed{
	position: fixed;
	top:0;
	left:0;
	bottom:0;
	right:0;
	width:100%;
	z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translateZ(0);
	margin: 0;
}

section,header,footer{
	z-index: 2;
	position: relative;
}
/**/
.bgvideo,
.bgvideo-img{
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
	
	position: fixed;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform:translateZ(0);
	margin: 0;
   /* top: 50%;
    left: 50%;
	-ms-transform: translateX(-50%) translateY(-50%);	
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);*/
}
.bgvideo{
	display: none;
}




header.carousel {
	margin-top: 100px;
    height: 75%;
}

header.carousel .item,
header.carousel .item.active,
header.carousel .carousel-inner {
    height: 100%;
}

header.carousel .fill {
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
}





footer .navbar-brand{
	height: 60px;
	padding: 0px;
	position: relative;
}

footer .navbar-brand img{
	height: 100%;
	width:auto;
}



.nav-tabs>li>a{
	border-radius: 0px;	
	font-size: 14px;
	background-color: #fbfbfb;
	margin-right: 5px;
	border: 1px solid  #9caa20;
}

.nav-tabs>li>a.active, 
.nav-tabs>li>a.active:focus, 
.nav-tabs>li>a.active:hover{
    background-color: #9caa20;
	color: #fff;
	bottom: 0px;
    padding: 10px 15px 15px 15px;
}

.nav>li>a:focus, .nav>li>a:hover {
    text-decoration: none;
    background-color: #777;
	color: #fff;
	
}




.portfolio-item:hover {
	background-color:#ccc;
	-webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
	
}



/**/

.navbar-default .navbar-nav>.active>a, 
.navbar-default .navbar-nav>.active>a:focus, 
.navbar-default .navbar-nav>.active>a:hover{
	    background-color: #9caa20;
		color: #fff !important;
}

.navbar .logo-product img{
	height: 70px;
	width: auto;
	float: left;
	padding: 10px 0;
}




.owl-portfolio .owl-buttons {
    top: 50%;
    height: 40px;
    position: absolute;
    top: 50%;
    margin-top: -20px;
    width: 100%;
}

.carousel-control.right,
.carousel-control.left{
	background: transparent;
}

.carousel-control .icon-next, .carousel-control .icon-prev,
.owl-portfolio .owl-buttons div {
    width: 25px;
    height: 40px;
    position: absolute;
    z-index: 7;
	background-color: #9caa20;
    background-color: rgba(176,202,31,0.4);
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    transition: all 0.4s;
}

.carousel-control span:hover,
.owl-portfolio .owl-buttons div:hover{
	background-color: #9b9b9b;
    background-color: rgba(155,155,155,0.4);
}

.carousel-control span.icon-prev,
.owl-portfolio  .owl-buttons div.owl-prev {
    left: 0;
	font-size: 0;
	line-height:0;
	color: transparent;
	margin-left: 0px
}

.carousel-control span.icon-prev:before,
.owl-portfolio  .owl-buttons div.owl-prev:before {
    content: '\f104';
    text-indent: -5px;
}
.carousel-control span.icon-next,
.owl-portfolio  .owl-buttons div.owl-next  {
    right: 0;
    float: right;
	font-size: 0;
	line-height:0;
	color: transparent;
	margin-right: 0px
}

.carousel-control span.icon-next:before,
.owl-portfolio  .owl-buttons div.owl-next:before  {
    content: '\f105';
    text-indent: 5px;   
}

.carousel-control span.icon-prev:before,
.carousel-control span.icon-next:before,
.owl-portfolio  .owl-buttons div.owl-prev:before,
.owl-portfolio  .owl-buttons div.owl-next:before{
    width: 100%;
    height: 100%;
    text-align: center;
    left: 0;
    top: 0;
    position: absolute;
    line-height: 40px;
    font-size: 26px;
    color: white;
    font-family: FontAwesome;
}


/*btn-lre*/
.btn-lre{
    width: 120px;
    height: 45px;
	display:inline-block;
	vertical-align: middle;
	
	background-color: transparent;	
	background-image: url(img/icon/livro-reclamacoes-g.png);
	background-repeat: no-repeat;
	background-size: auto 99%;
	background-position: left bottom;  
}
.btn-lre:hover, 
.btn-lre:focus, 
.btn-lre:active{
	background-image: url(img/icon/livro-reclamacoes-v.png);
}


#cookies-modal.modal {
    bottom: 10px;
    left: 0px;
    top: auto;
    right: auto;
	z-index: 999;
	padding: 0px !important;
}
#cookies-modal .modal-dialog{
	margin: 10px !important;
}



/*------------------------ Responsive Styles ---------------------- */
@media (min-width: 1200px){

}

@media (max-width: 991px) {
	nav.navbar .menu .navbar-brand {
		padding: 30px 30px 30px 15px ;
	}	


	nav.top-nav-collapse .menu .navbar-brand {
		padding: 5px 5px 5px 15px ;
	}
	
	nav .menu .navbar-brand img.brand-marca{
		height: 100%;
		width: auto;
		display: none;
	}

	nav.top-nav-collapse .menu .navbar-brand img.brand-icon, 
	nav .menu .navbar-brand img.brand-icon{
		height: 100%;
		width: auto;
		display: block;
	}	
}

@media (max-width: 767px) {
	body{
		font-size: 9px; /* reset font */
	}
	
	h1{font-size:2.4em; font-weight: 600; line-height:130%; padding:0; margin:0;}
	h2{font-size:2.4em; font-weight: 600; line-height:130%; padding:0; margin:0;}
	h3{font-size:2.2em; font-weight: 600; line-height:130%; padding:0; margin:0;}
	
	

	
	nav.navbar .social{
		display:none;
	}
	nav.navbar .menu .navbar-brand {
		height: 50px;
		padding: 5px 5px 5px 15px ;
	}
	header.carousel {
		margin-top: 50px;
		height: 70%;
	}

}

@media (max-width: 480px) {

}
