/*
Theme Name: Joaninha
Theme URI:
Description: Theme By Takemedia.
Author: Jorge Oliveira
Author URI: http://takemedia.pt
Version: 0.1
Tags: takemedia
*/


html{margin: 0;padding: 0;height:100%;}
body{background-color: #F4F4F4;margin: 0;height:100%;font-variant-ligatures: no-common-ligatures;font-size: 14px;}
body, input, textarea{color: #222; font-family: 'Roboto', sans-serif; line-height: 1.5; }
h1, h2, h3, h4, h5, h6{font-weight: normal;clear: both;}
hr{background-color: #999;border: 0;height: 1px;margin-bottom: 1.5em;}
pre{font: 11px Monaco, monospace;line-height: 1.5;margin-bottom: 1.5em;}
code{font: 11px Monaco, monospace;}
p{margin: 4px 0 12px 0;}
a{color: #E92212;text-decoration: none;}
a:hover{color: #532333;}
.clear{clear:both}
.b{font-weight: 700;}

h1{
    font-size: 20px;
}

h2{
    font-size: 26px;
    margin-top: 25px;
    font-weight: 700;
    margin-bottom: 5px;
}

.wrapper{
    
    min-height:100%;
    position:relative;
    min-width: 350px;
     
}
#documentcontent{     
    padding-bottom:40px;      
}

.pwidth{
    max-width:1100px;
    margin: 0 auto;
    padding:0 25px;
    position: relative;
}
#header{      
    width: 100%;
    position: relative;
    background-color: #fff;
    z-index: 999;    
}


.headercontent{
    position: relative;
    margin: 0 auto;      
}

#header .logo{
    float:left;
    padding: 0px 10px 15px 10px;   
}

#header .logo img{
    margin-top: 14px;
}

.menubar{
    height: 65px;
    position: relative;    
    z-index: 999;
}


#menu{
    float: right;    
    font-size: 19px;
    padding: 0px;
    margin: 0px;
    list-style: none;
    font-weight: 300;
}

.homepage{
    background: #EAEAEA;
}

.menu-toggle {
    position: relative;
    float: right;
    padding: 7px 10px 4px 10px;    
    background-color: transparent;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
    border-color: #ddd;
    cursor: pointer;    
    margin: 18px 0px 8px 0px;
    display: none;
    margin-right: 15px;
        
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.menu-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px;
    background-color: #888;
    margin-bottom: 4px;
}

.menuiten{
    float:left;       
    position: relative;
    font-style: normal;
    border-radius: 0 0 5px 5px;
}
.menuiten a{
    color:#000;
    display: block;
    padding: 14px 28px;
}

#menu .menuiten a:hover{    
    color:#E92212;
}

#menu .menuiten:hover a{
   color:#000;
   font-weight: 400;
}

#header .active{
    background: #E92212;
    
}

#header .active a{
    color:#FFF !important;
    font-weight: 400;
}

#header .active a:hover{
    color:#000;
}

.mobile{
    background-color: rgba(255,255,255,0.8);
    padding: 10px 25px;
    top: 60px;
    right: 0px;
    position: absolute;
    display: none;
}

.mobile .menuiten{
    float: none;
    height: auto;
}

.social{float: right;text-align: center;padding: 15px 0px;width: 35px;}
.langlist{float: right;margin: 0 5px;}
.langlist div{float: left;}
.langlist div a{display: block;color:#000;margin: 0 2px;    padding: 14px 4px;font-weight:300;font-size: 18px;}
.langlist .langactive a{background: #000;border-radius: 0 0 5px 5px;color:#fff;}
.fullbanner{
    position: absolute;   
    background: #000;
    top:65px;
    bottom: 40px;
    width: 100%;
}

.fullbanner .owl-carousel{
    height:100%;
}

.fullbanner .owl-carousel .owl-wrapper-outer{
    height:100%;
}

.fullbanner .owl-wrapper{
    height: 100%;
}

.fullbanner .owl-item{
    height: 100%;
}

.boxhome{
    position: absolute;
    background: #fff;
    margin-top: 35px;
    width: 40%;
}

.boxhometitle{
    background: #e4e4e4;
    color:#000;
    font-size: 18px;
    padding: 10px;
    float: left;
    width: calc(50% - 20px);
    position: relative;
}

.destaque{
    position: relative;   
    width:100%;
    height:100%;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}


.boxhomedes{
    padding: 10px 25px;
    float: right;
    width: calc(50% - 50px);
}

.toppage{
    height: 300px;
    background-color: #000;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.contactstop{
    background-image: url(images/ContactosHeader.jpg);
}

.quemsomostop{
    background-image: url(images/QuemSomosHeader.jpg);
    
}

.page{
    margin-top: 30px;
}

.pcontent{
    width:48%;
    float: left;
}

.galeria{
    float: right;
    width: 48%;
}

.galeria img{
    
    width: 100%;
}

.owl-carousel{
    position:relative;
}


.owl-carousel .owl-buttons{
    position: absolute;
    bottom: 45px;
    width:100%;    
}

.owl-theme .owl-controls .owl-buttons div {
    width: 38px;
    height: 38px;
    background-repeat: no-repeat;
    text-indent: -9999px;
    white-space: nowrap;
    position: absolute;
}

.owl-theme .owl-controls .owl-buttons .owl-prev {
    background-image: url(images/left.png);
    left:10px;
    
}

.owl-theme .owl-controls .owl-buttons .owl-next {
    background-image: url(images/right.png);   
    right:10px;
}

.search{
    width:300px;
    margin: 20px auto;
    position: relative;
}

.imgsearch{
    background: #fff;
    padding: 10px;
    border-radius: 20px;
    float: left;
    position: absolute;
    top:0px;
    left:0px;
    z-index: 9;
}

.search input[type="text"]{    
    background: #919191;
    width: 210px;
    padding-left: 30px;
    margin-left: 18px;
    height: 31px;
    z-index: 6;
    position: relative;
    color:#fff;
}

.search input[type="submit"]{
    float:right;    
    border-radius: 20px;
    position: absolute;
    background-color: #fff;
    right:0px;
    background-image: url(images/submit.png);
    background-repeat: no-repeat;
    background-position: center;
    width: 55px;
    height: 33px;
    z-index: 4;
}

.leftprod{
    float: left;
    background: #fff;
    width:170px;
    
}

.pttitle{
    background: #000;
    color:#fff;
    padding: 10px 15px;
}

.leftprod a{
    display: block;
    padding: 5px 15px;
    color:#000;
}

.leftprod a:hover{
    font-weight: 700;
    background-color:#EAEAEA;
}

.pttitle h1{
    padding: 0;
    margin: 0;
}

.rightprod{
    float: left;
    margin-left: 15px;  
    width:calc(100% - 185px);
}

.rightprod a:hover path{
    fill: #000;
}


.catitem{
    float: left;
    margin: 0 1% 10px 1%;
    background: #fff;
    width: 31%;    
    min-width: 160px;
}

a .catitem{
    color:#000;
}

a.catactive{
    background: #FF2600;
    color:#fff;
    font-weight: 700;
}

.catimg{    
    border-radius: 80px;
    background-color: #EAEAEA;
    width: 160px;
    margin: 20px auto;
    height: 160px;
    line-height: 150px;
    position: relative;       
}

.catimg svg{
    position: absolute;
     top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.catname{
    text-align: center;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 16px;
    margin-bottom: 10px;
}

.cform{
    float: left;
    width:45%;
    padding: 20px 0px;
}

.contactc{
    float: right;
    width: 50%;
}

.parent-page{
    width: 49%;
    float: left;
}

.produto{
    float:left;
    width:31%;
    margin: 0 1% 10px 1%;
    background: #fff;
    text-align: center;
    min-width: 200px;
}

.produto a{
    color:#000;
}

.produto img{
    max-width: 225px;
    width: 100%;
}

.produtname{
    text-align: center;
    font-weight: 700;
    text-transform: uppercase;
    height:45px;
    padding: 5px 10px;
}

.produtcara{
    text-align: left;
    color: #000;
    background: #e4e4e4;
    padding: 1px 10px 10px 10px;
    position: relative;
}

.toparrow{
    position: absolute;
    top:-10px;
    left:1px;
}

.produtcara p{
    margin: 0;
}

.produtcara h3{
    font-weight: 700;
    margin-bottom: 2px;
}

.singlecontent{
    color: #000;
    background: #e4e4e4;
    float: left;
    width: 41%;
    padding: 80px 2% 20px 2%;
    padding-bottom: 20px;
    position: relative;
}

.singlehead{
    position: absolute;
    height: 60px;
    top:0px;
    left:0px;
    width: 100%;
}

.singlehead .pname{
    float: left;
    margin-left: 10px;
    text-transform: uppercase;  
    width: calc(100% - 83px);
}

.arrowsvg{
    position: absolute;
    right:-21px;
    top:1px;
}

.back{
    height: 60px;
    width: 70px;
    background-color: #FF2600;
    background-image: url(images/back.png);
    background-repeat: no-repeat;
    background-position: center;
    float: left;
}

.cara p{
    margin: 0px;
    padding: 0px;
}

.single{
    background: #fff;
}

.singlegaleria{
    width: 55%;
    float: right;
}

.singlegaleria .galeria{
    float: none;
    width:90%;
    margin: 0 auto;
}


.tophistoria{
    width:100%;
    max-width: 600px;
    background: url(images/historia_top.png) no-repeat top center;
    height: 190px;
    margin: 0 auto;
    background-size: contain;
    margin-top: 20px;
}

.bothistoria{
    width:100%;
    max-width: 600px;
    background: url(images/historia_bot.png) no-repeat top center;
    height: 190px;
    margin: 0 auto;
    background-size: contain;
    margin-bottom: 20px;
}

.historiacontent{
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    padding: 20px 2%;
    background: #fff;
}

.form_error{
    background-color: #ffcccc; 
}

input{
    width:100%;
    margin-bottom: 10px;
    border: 0;
    
    height: 30px;
}

textarea{
    width: 100%;
    border: 0;   
    resize: none;
    margin-bottom: 10px;
    height:60px;
}

input[type='button']{
    background: #403A41;
    border:0;    
    width: auto;
    color:#fff;
    font-size: 16px;
    padding: 5px 10px;    
    text-transform: uppercase;
    margin-bottom: 0px;
}

#request{display: block;text-align: center;background-color: #FF2600;padding: 10px;color:#fff;margin-top: 10px}

.left{
    float: left;
}

.right{
    float: right;
}

#gmap{
    width: 100%;
    height: 300px;
}

#footer{
   position:absolute;
   bottom:0;
   width:100%;
   padding:5px 0px; 
   height:25px;   /* Height of the footer */
   font-size: 9px;
   color:#000;
   font-style: normal;
   background-color: #D5D5D5;
}

.sociallinks{
    float:left;
    margin-right: 15px;
}

.sociallinks div{
    float: left;
    margin-left: 5px;
}

.linkfooter{
    float: right;
}

#footer .left{
    padding-top: 6px;
}

#footer .right img{padding-top: 5px;}

.texfpower{
    float: left;
    padding-top: 6px;
    margin-right: 5px
}

.powerimg{
    float: right;
}


#back-to-top {
    position: fixed;
    bottom: 40px;
    right: 40px;
    z-index: 9999;
    width: 32px;
    height: 32px;
    text-align: center;
    line-height: 30px;
    background: #f5f5f5;
    color: #444;
    cursor: pointer;
    border: 0;
    border-radius: 2px;
    text-decoration: none;
    transition: opacity 0.2s ease-out;
    opacity: 0;
}

#back-to-top:hover {
    background: #e9ebec;
}
#back-to-top.show {
    opacity: 1;
}

@media (max-width: 950px){
    .menu-toggle{
	display: block;
    }
    .bzone{
	background-size: cover;
    }
    .empresa{
	height: auto;
    }
    .empresa img{
	width: 100%;
    }
    .filters{
	width: auto;
    }
    .menupick{
	left: 10px;
    }
    
    .infobox{
	display: none;
    }
    .lastnews{
	font-size: 15px;
	padding:22px 0px
    }
}

@media (max-width: 750px){
    
    .catitem{
	width:48%;	
    }
    
    .boxhome{
	width:80%;
    }
    
    .produto{
	width:48%;
    }
    
    .pcontent{
	float: none;
	width:100%;
    }
    
    .singlecontent{
	float: none;
	width:96%;
    }
    
    .singlegaleria{
	margin: 20px auto;
	width:100%;
	max-width: 605px;
	float: none;	
    }
    
    .galeria{
	margin: 20px auto;
	width:100%;
	max-width: 605px;
	float: none;
	position: relative !important;
	top:0px !important;
    }
    
    #fullmap{
	min-height: 600px;
	position: relative;
    }
}

@media (max-width: 450px){
    .rightprod{
	float: none;
	width: 100%;
	margin-left: 0px;
    }
    
    .catitem{
	float: none;
	margin: 0 auto 10px auto;
	width: 90%;
    }
    
    .produto{
	width: 90%;
	margin: 0 auto 10px auto;
	float: none;
    }
    
    
    .leftprod{display: none;}
    
    
    #footer{	
	height: auto;
	position: relative;	
    }    
    
}

#wp_page_numbers ul, #wp_page_numbers li, #wp_page_numbers a {
	
	padding: 0;
	margin: 0;
	border: none;
	text-decoration: none;
	font-weight: normal;
	font-style: normal;
	list-style: none;
	text-transform: none;
	text-indent: 0px;
	font-variant: normal;
	text-align: left;
	line-height: 12px;
	letter-spacing: 0px;
	word-spacing: 0px;
	font-size: 11px;
	font-family: Arial;
}

#wp_page_numbers {
    margin: 0 auto;
    margin-top: 30px;	
	width: 100%;
	margin-bottom: 10px;
}
#wp_page_numbers ul {
	width: 100%;
}
#wp_page_numbers li {
	float: left;
	display: block;
	margin-bottom: 2px;
	
}

#wp_page_numbers a {
	padding: 3px;
	padding-left: 5px;
	padding-right: 5px;
	margin-left: 2px;
	margin-right: 2px;
	display: block;
	color: #333;
	border: 1px solid #bfbfbf;
	background: #fff;
}

#wp_page_numbers li a:hover {
	border-color: #000;
}

#wp_page_numbers li.space {
	padding: 6px;
	padding-left: 2px;
	padding-right: 2px;
}

#wp_page_numbers li.first_last_page {
	font-style: italic;
}

#wp_page_numbers li.active_page a {
	border-color: #0075b8;
}
#wp_page_numbers li.active_page a:hover  {
	color: black; /* IE fix */
	text-decoration: underline;
	border-color: #000;
}

#wp_page_numbers li.page_info {
	float: left;
	display: block;
	padding: 3px;
	padding-left: 5px;
	padding-right: 5px;
	margin-right: 2px;
	color: #666;
	font-size: 11px;
	border: 1px solid #bfbfbf;
	background: #fff;
}