/* 
Theme Name: Zoo Theme
Description: 
Author: Zoo Studio
Author URI: https://zoo.ad
Template: canvas
*/

@import url("../canvas/style.css");


/* ---------- FONTS ---------- */

@font-face {
	font-family: 'FuturaPT-Book';
	src: url('webfonts/FuturaPT-Book.eot');
	src: url('webfonts/FuturaPT-Book.eot?#iefix') format('embedded-opentype'), url('webfonts/FuturaPT-Book.woff2') format('woff2'), url('webfonts/FuturaPT-Book.woff') format('woff'), url('webfonts/FuturaPT-Book.ttf') format('truetype');
}

/* ---------- BODY ---------- */

html body, body p,
body .entry, body .entry p, 
body h1, body h2, body h3,
body ul.nav li a, 
body #top ul.nav li a,
body #navigation ul.rss a, 
body #navigation ul.cart a.cart-contents, 
body #navigation .cart-contents #navigation ul.rss, 
body #navigation ul.nav-search, 
body #navigation ul.nav-search a,
body #footer-widgets .widget p, 
body #footer-widgets .widget .textwidget,
body #footer,
body #wrapper #loopedSlider.business-slider .content p {
	font-family: 'FuturaPT-Book', 'PT Sans', sans-serif;
	line-height: normal;
}
html body {
	font-size: 20px;
}
body .entry h1, body .entry .widget h1 {
	font-size: 40px;
	line-height: 44px;
}
.entry h1, .entry h2, .entry h3, .entry h4, .entry h5, .entry h6,
.entry .widget h1, .entry .widget h2, .entry .widget h3, .entry .widget h4, .entry .widget h5, .entry .widget h6 {
	font-family: 'FuturaPT-Book', 'PT Sans', sans-serif;
    line-height: normal;
	color: #3b3b3b;
}
body p {
    margin: 0 0 1.2em;
}
body .entry, body .entry p {
	font-size: 18px;
	color: #3b3b3b;
}
img {
	height: auto;
}
a:focus, a:hover {
	color: black !important;
}
*:focus {
	outline: 0;
}
.textleft, .textleft p {
	text-align: left !important;
}
.white a:focus, .white a:hover {
	color: white !important;
}
#logo img {
	width: 106px;
	height: auto;
}
.featured-img img {
	width: 100%;
}
#content,
#navigation .nav-home, 
#navigation .nav-close, 
#navigation ul.rss li a, 
#navigation ul.cart a.cart-contents, 
#navigation ul.nav-search a.search-contents {
	box-sizing: content-box;
}
.cap {
    width: 100%;
    position: relative;
}
.page-title, .post .title, .page .title {
	text-transform: capitalize;
}
.page .title, .home .title, .archive .page-title {
	display: none;
}

#cmplz-document.cookie-statement {
    max-width: 760px;
    margin: 0 auto;
}
#cmplz-document.cookie-statement p, #cmplz-document.cookie-statement li, #cmplz-document.cookie-statement td {
    font-size: 16px;
}

@media only screen and (min-width: 768px) {
	
	body #wrapper {
		padding: 0 15px;
	}
	div.projects {
		margin-top: 50px;
	}
	#content {
		padding-top: 100px;
	}
	body .widget h3 {
		font-size: 30px;
	}
}

/* ---------- MENUS ---------- */

ul.nav li.current_page_item > a, 
ul.nav li.current_page_parent > a, 
ul.nav li.current-menu-ancestor > a, 
ul.nav li.current-cat > a, 
ul.nav li.current-menu-item > a {
	background: transparent;
	color: black;
	text-decoration: underline;
}
ul.sub-menu li.current_page_item > a {
	text-decoration: none;
}

@media only screen and (min-width: 768px) {
	
	#logo {
		position: absolute;
		z-index: 999;
		top: 32px;
	}
	#top {
	    background: transparent;
	    position: absolute;
    	z-index: 998;
    	top: 38px;
    	right: 19px;
	}
	#top ul.nav {
		margin-right: 0;
		float: right;
	}
	#top ul.nav > li:hover, #top ul.nav > li:focus, 
	#top ul.nav > li a:hover, #top ul.nav > li a:focus, 
	#navigation ul.nav > li:hover, #navigation ul.nav > li:focus, 
	#navigation ul.nav > li a:hover, #navigation ul.nav > li a:focus {
    	background: none !important;
    	text-decoration: underline;
	}
	.cap:hover, .trans {
		background: rgba(255, 255, 255, 0.8);
	}
	.cap {
		position: fixed;
		display: block;
		z-index: 996;
		height: 100px;
		transition: all 0.5s ease 0s;
		-moz-transition: all 0.5s ease 0s;
		-webkit-transition: all 0.5s ease 0s;
	}
	#header-container #header {
		padding-top: 0;
		padding-bottom: 0;
		height: 100px;
		box-sizing: content-box;
	}
	#nav-container, #navigation {
		background: transparent;
	}
	#nav-container {
		margin: 0;
		padding: 0;
		position: absolute;
		z-index: 997;
		top: 38px;
		width: 100%;
	}
	#nav-container #navigation { 
		text-align: center;
	}
	ul#main-nav { 
		float: none;
		display: inline-block;
		vertical-align: top;
		margin: 0;
	}
	#header-container #top ul.nav li a, 
	#nav-container #navigation ul.nav li a {
		padding: 0 .6em !important;
		line-height: normal;
	}
	#header-container #top ul.nav ul li a, 
	#nav-container #navigation ul.nav ul li a {
		padding: 0 .4em 0 .2em !important;
	}
	#navigation ul.nav li {
		position: initial;
	}
	
	#navigation .nav li.parent > a:after {
		display: none;
	}
	#navigation ul.nav ul {
		background: none;
		position: absolute;
	    left: 50%;
	    width: 500px;
		margin-left: -250px;
		padding: 20px 0;
	    text-align: center;
	}
	#nav-container #navigation ul.nav > li:hover > ul {
		left: 50%;
	}
	#navigation ul.nav ul li {
		display: inline-block;
	}
	#navigation ul.nav ul li a {
		font-size: 20px;
	}
	.guionet {
		width: 15px;
		height: 2px;
		background-color: black;
		display: inline-block;
		margin-bottom: 3px;
	}
}

/* ---------- MOBILE MENU ---------- */


.nav-toggle {
	position: absolute;
	right: 0;
	background: transparent;
	border: none;
	z-index: 9999;
}
.nav-toggle:before {
	color: black;
	border: none;
	text-shadow: none;
	padding: 13px 1.618em;
	margin: 10px 0;
}
.nav-toggle a {
	display: none;
}
.nav>li>a:focus, .nav>li>a:hover {
	background-color: white;
}

@media only screen and (max-width: 767px) {
	
	#navigation {
		background: black;
		font-size: 18px;
		padding-top: 2em;
	}
	#navigation ul.nav li a {
		color: white;
	}
	#navigation h3, 
	#navigation .nav-home, 
	#navigation .nav-close {
		display: none;
	}
	body #header {
		padding-top: 15px;
		padding-bottom: 15px;
	}
	/* Align right */
	#nav-container #navigation {
		left: 180%;
	}
	body.show-nav #inner-wrapper {
	    left: auto;
		right: 80%;
	}
}

/* ---------- CANVAS ---------- */

.nocomments {
	display: none;
}
.entry img, img.thumbnail {
	background: none;
	border: medium none;
	padding: 0;
}

@media only screen and (max-width: 425px) {
	
	body.full-width #header, #nav-container, body.full-width #content, body.full-width #footer-widgets, body.full-width #footer {
	    padding-left: 1em;
	    padding-right: 1em;
	}
	body.full-width #header {
		min-height: 70px;
	}
}

/* ---------- HOME ---------- */

body.home .entry p {
	font-size: 20px;
}
#loopedSlider {
	height: auto !important;
	/*max-height: 940px;*/
}
#loopedSlider .content {
	background: none;
	text-align: center;
	padding: 20px 0 0;
}
#loopedSlider .content p {
	padding: 0 20px;
}
#loopedSlider .content a {
	text-decoration: underline;
}
.slider-pagination {
	opacity: 1;
}
#loopedSlider .pagination li a, #loopedSlider .flex-control-nav li a, .slider-pagination a {
    background: silver;
    border-color: silver;
}
#loopedSlider .pagination li.current a, #loopedSlider .flex-control-nav li .flex-active, .slider-pagination .flex-active a {
	background: black;
    border-color: black;
}
#loopedSlider a.flex-prev span, #loopedSlider a.flex-next span {
    width: 30px;
    height: 20px;
    border: none;
}
.fa-angle-right:before, .fa-angle-left:before {
	content: "";
}
.fa-angle-right {
	background-image: url('images/arrow-right.png');
}
.fa-angle-left {
	background-image: url('images/arrow-left.png');
}
.flex-direction-nav {
	display: none;
}

#loopedSlider .pagination li a, #loopedSlider .flex-control-nav li a, .slider-pagination a {
	display: inline;
	background: transparent;
	border: none;
	color: #BDBDBD;
}
#loopedSlider .pagination li.current a, #loopedSlider .flex-control-nav li .flex-active, .slider-pagination .flex-active a,
#loopedSlider .pagination li a, #loopedSlider .flex-control-nav li a:hover, .slider-pagination li a:hover {
	background: transparent;
	border: none;
	color: #3B3B3B;
	text-decoration: none;
}
#loopedSlider .pagination li, #loopedSlider .flex-control-nav li, .slider-pagination li {
    display: inline-block;
    margin: 0 10px;
    width: auto;
    height: auto;
}

@media only screen and (min-width: 1024px) {
	
	body #wrapper #loopedSlider.business-slider .content {
		padding-top: 0px;
	}
}

@media only screen and (min-width: 768px) {
	
	#loopedSlider ul.slides li.slide {
	    display: flex !important;
	    align-items: center;
	    justify-content: center;
	}
	body.full-header.full-slider #loopedSlider {
	    margin-top: 0;
	}
	body #wrapper #loopedSlider.business-slider .content {
		background: none;
		margin: 0;
		top: inherit;
		padding-top: 90px;
	}
	#wrapper #loopedSlider.business-slider div.content.left {
		margin-right: 50%;
	}
	#wrapper #loopedSlider.business-slider div.content.right {
		margin-left: 50%;
	}
	#wrapper #loopedSlider.business-slider div.content.center {
		margin: 0 25%;
	}
	#wrapper #loopedSlider.business-slider div.content.black p,
	#wrapper #loopedSlider.business-slider div.content.black a {
		color: black;
	}
	#wrapper #loopedSlider.business-slider div.content.white p,
	#wrapper #loopedSlider.business-slider div.content.white a {
		color: white;
	}
	#loopedSlider.has-pagination {
	    margin-bottom: 20px;
	}
	.flex-direction-nav {
		display: block;
	}
}

@media only screen and (max-width: 767px) {

	#loopedSlider .content img {
		display: none;
	}
}

@media only screen and (max-width: 425px) {
	
	body .entry h1, body .entry .widget h1 {
		font-size: 30px;
		line-height: normal;
	}
	body .entry h2 {
		font-size: 20px;
		line-height: normal;
	}
}

/* ---------- PROJECTS GRID ---------- */

.projects ul.projects li.project figure {
	margin-bottom: 25px;
}
.projects ul.projects li.project img, 
.projects-page ul.projects li.project img {
	padding: 0;
	border: 0;
	margin-bottom: 0;
}
.projects ul.projects li.project a h3, 
.projects-page ul.projects li.project a h3,
#main .short-description p {
	font-size: 20px;
	color: #383838;
	text-align: center;
	margin-bottom: 0;
	padding-bottom: 0;
}
.projects ul.projects li.project a:hover h3, 
.projects-page ul.projects li.project a:hover h3 {
	color: #383838;
}
.short-description {
	margin-bottom: 30px;
}
.sow-image-container img {
	background-color: #EBEAE6;
}
.logos .panel-grid-cell .so-panel {
	position: relative;
	margin-bottom: 0 !important;
}
.logos .widget_sow-editor .panel-widget-style {
	position: absolute;
	bottom: -60px;
	width: 100%;
}

@media only screen and (min-width: 980px) {
	
	.projects.columns-3 ul.projects li.project {
	    width: 32%;
		margin-right: 2%;
	}
	.term-description {
		width: 66%;
	}
}

@media only screen and (max-width: 425px) {
	
	.projects.columns-3 ul.projects li.project {
	    width: 100%;
		margin-right: 0;
	}
}

/* ---------- PROJECTS PAGE ---------- */

.projects.one-col .entry-summary, .projects-page.one-col .entry-summary,
.projects.one-col .entry-media, .projects-page.one-col .entry-media {
    width: 100%;
    float: none;
    text-align: center;
}
.projects.has-gallery .gallery img, .projects-page.has-gallery .gallery img {
	width: 100%;
	margin-bottom: 3%;
}
.projects .project h1, .projects-page .project h1,
.projects .project h2, .projects-page .project h2 {
	font-size: 24px;
	margin-bottom: 0;
}
.single-project-short-description {
	margin-bottom: 1em;
}
.single-project-description {
	margin-bottom: 3%;
}
.projects.one-col .entry-summary, .projects-page.one-col .entry-summary {
	margin-bottom: 3em;
}
.post-entries {
	min-height: 75px;
	margin-top: 1em;
    text-align: center;
}
.post-entries a:hover {
    text-decoration: underline;
}
.post-entries a:link, .post-entries a:visited {
    font-size: 1em;
    color: black;
}
.comparteix {
    clear: both;
    padding-top: 2em;
}
.credits {
	text-align: center;
	margin-bottom: 60px;
}
.linia-vertical {
	width: 2px;
	height: 80px;
	background-color: black;
	margin: 20px auto;
	clear: both;
}

@media only screen and (min-width: 769px) {
	
	.projects .project h1, .projects-page .project h1,
	.projects .project h2, .projects-page .project h2,
	.projects .entry, .projects .entry p {
		font-size: 20px;
	}
	.projects .entry span, .projects .entry p span {
		font-size: 20px;
	}
	.post-entries {
		padding: 0 50px;
	}
	.comparteix {
		position: absolute;
	    width: 300px;
	    left: 50%;
	    margin-left: -150px;
	    padding-top: 0;
	}
}
@media only screen and (max-width: 425px) {
	
	.projects .project h1, .projects-page .project h1,
	.projects .project h2, .projects-page .project h2,
	.projects .entry, .projects .entry p {
		font-size: 18px;
	}
	.projects.has-gallery .gallery img, 
	.projects-page.has-gallery .gallery img,
	.single-project-description {
		margin-bottom: 1.618em;
	}
}

/* Projectes amb fons gris */

.postid-5067, .postid-5068, .postid-5069, 
.postid-6133, .postid-6134, .postid-6135 {
	background-color: #f9f9f9;
}

/* ---------- PAGE ---------- */

body.page-template-default .entry, 
body.page-template-default .entry p {
	font-size: 20px;
	text-align: center;
}
.serveis h2 {
	font-size: 30px;
	line-height: 1.2em;
    margin-bottom: 1.2em;
}
.nosaltres img {
	margin-bottom: 25px;
}
.nosaltres .gracies {
	width: 65.33%;
    float: left;
    position: relative;
    height: 540px;
    display: table;
}
.nosaltres .gracies h1 {
	display: table-cell;
    vertical-align: middle;
}
.nosaltres .gracies .linia {
	width: 2px;
	height: 75%;
	background-color: black;
	position: absolute;
    left: 50%;
    top: 75%;
}
.nosaltres .ampleimg {
	width: 380px;
	max-width: 100%;
	margin: 0 auto 1em;
}
h1 br {
	display: none;
}

@media only screen and (min-width: 768px) {
	
	.page-template-default .entry {
		margin-top: 75px;
	}
	.margintop {
		margin-top: 60px;
	}
    h1 br {
		display: block;
	}
}

@media only screen and (max-width: 768px) {
	
	.nosaltres .gracies {
    	width: 100%;
    }
    .nosaltres .gracies .linia {
		height: 35%;
	}
}

/* ---------- PAGE BUILDER ---------- */

.bottom .panel-grid-cell, .middle .panel-grid-cell {
	position: relative;
}
.bottom .panel-grid-cell .widget_sow-editor {
    position: absolute;
	bottom: -15px;
}

@media only screen and (min-width: 768px) {
	
	.middle .panel-grid-cell .widget_sow-editor {
	    position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
}

@media only screen and (max-width: 425px) {
	
	.panel-widget-style {
		padding: 0 !important;
	}
}

/* ---------- FORMS ---------- */

.grecaptcha-badge { 
	visibility: hidden;
}
label {
	font-family: 'FuturaPT-Book', 'PT Sans', sans-serif;
	line-height: normal;
	color: black;
	text-align: left;
	width: 100%;
	font-weight: 500 !important;
}
input[type=text], input[type=email], textarea {
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	width: 100%;
	border-radius: 0;
	border: 1px solid black;
}
input[type=submit] {
	font-family: 'FuturaPT-Book', 'PT Sans', sans-serif;
	background: transparent;
	color: black !important;
	text-transform: none;
	border-radius: 0;
	border: 1px solid black;
	padding-bottom: .2em;
	margin-top: 10px;
    float: right;
}
input[type=submit]:hover {
	background: black;
	color: white !important;
}
div.wpcf7-validation-errors {
	border-color: black;
    clear: both;
    margin: 0;
}
span.wpcf7-not-valid-tip {
    font-size: 16px;
    font-weight: 500;
    margin-top: 5px;
    position: absolute;
    width: 300px;
}
div.wpcf7-response-output {
    clear: both;
    color: black;
    margin: 2em 0;
}
span.wpcf7-list-item {
	margin: 0;
}
.wpcf7-form a {
    text-decoration: underline;
}

@media only screen and (min-width: 768px) {
	
	textarea {
		height: 323px;
	}
}

/* ---------- MAPS ---------- */

.flxmap-container {
	border: 1px solid black;
}

@media only screen and (max-width: 767px) {
	
	.flxmap-container {
		height: 400px !important;
	}
}

/* ---------- FOOTER ---------- */

body #footer-widgets-container {
	background-color: black;
}
#footer-widgets {
	padding: 25px 0;
	font-size: 20px;
}
#footer-widgets .widget p {
	margin-bottom: 26px;
}
#footer-widgets .widget .textwidget {
	text-align: center;
}
#footer, #footer a, #footer a:hover {
	color: #808080 !important;
}
#footer div {
	text-align: center;
	margin-bottom: 2%;
}
#footer-widgets a:link, #footer-widgets a:visited, #footer-widgets a:focus, #footer-widgets a:hover {
	color: white !important;
	outline: none;
}
body #footer-container {
	background-color: black;
}

@media only screen and (min-width: 768px) and (max-width: 979px) {
	
	body .fourcol-one {
		width: 48% !important;
	}
	body #footer div:nth-child(even) {
		margin-right: 0;
	}
}

@media only screen and (max-width: 425px) {
	
	.single-project .projects {
		display: none;
	}
}

/* ---------- ANIMATION ---------- */

#wrapper {
	opacity: 0;
}
figure {
    position: relative;
}
.cover {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: white;
}
.cover .negre {
	width: 2px;
	background-color: black;
	height: 100%;
	margin: 0 auto;
}

#logo {
	display: block;
}
#logozoo {
	display: none;
	width: 110px;
	height: 55px;
	background-color: black;
	position: absolute;
    z-index: 999;
    top: 25px;
	mask: url('/wp/wp-content/themes/zoostudio/images/logo.svg') no-repeat 50% 50%;
	-webkit-mask: url('/wp/wp-content/themes/zoostudio/images/logo.svg') no-repeat 50% 50%;
	mask-size: cover;
	-webkit-mask-size: cover;
	animation-name: cmyk;
	-webkit-animation-name: cmyk;
	animation: 4s linear;
	-webkit-animation: 4s linear;
}
@keyframes cmyk {
	0% { background-color: white; }
	25% { background-color: cyan; }
	50% { background-color: magenta; }
	75% { background-color: yellow; }
	100% { background-color: black; }
}
@-webkit-keyframes cmyk {
	0% { background-color: white; }
	25% { background-color: cyan; }
	50% { background-color: magenta; }
	75% { background-color: yellow; }
	100% { background-color: black; }
}

@media only screen and (max-width: 425px) {
	
	#logozoo {
		top: 15px;
	}
}


