/*!
Theme Name: do2soles
Theme URI: http://underscores.me/
Author: Albert - JAVAJAN
Author URI: http://albertsanchez.cat
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: do2soles
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

do2soles is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');
// <weight>: Use a value from 100 to 1000
// <uniquifier>: Use a unique and descriptive class name
.dm-sans-<uniquifier> {
  font-family: "DM Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */
:root{
	--font-family: "DM Sans", sans-serif;
	--container: 1600px;
	--primary: #FFFF00;
	--secondary: #00FFFF;
}
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

body {
	margin: 0;
	font-family: var(--font-family);
	color:black;
}
main {
	display: block;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

textarea {
	overflow: auto;
}

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #222;
	font-family: var(--font-family);
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: black;
	text-decoration: none;
}

a:visited {
	color: #111;
}

a:hover,
a:focus,
a:active {
	color: #111;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
.d-flex{
	display: flex;
}
.justify-content-center{
	justify-content: center;
}
.justify-content-between{
	justify-content: space-between;
}
.align-items-center{
	align-items: center;
}
.flex-wrap{
	flex-wrap: wrap;
}
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
.site-branding{
	width: 190px;
}
.site-branding a{
	display: block;
}
.home .site-branding{
	opacity: 0;
	transition: 2s;
}
.scrolled .site-branding {
opacity: 1;
}
/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
	transition: all .5s;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.container{
	max-width: var(--container);
	margin: 0 auto;
}
.sticky {
	display: block;
}

.post,
.page {
	margin: 0;
}

.updated:not(.published) {
	display: none;
}


/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

@media screen and (max-width:800px) {
	.reconeixements .gallery{
		grid-template-columns: repeat(auto-fit, minmax(210px, 1fr))!important;
	}
	.reconeixements .gallery,.presskit-images{
		flex-wrap: wrap;
	}
	.presskit-image{
		width:100%!important;
	}
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}


#page{
	/* overflow: hidden; */
}
/* HEADER */
header{
	position: relative;
	z-index: 10;
}
header .container{
	
}
.menu-toggle{
	background: transparent;
	color:black;
	padding: 0;
	border:0;
}
.wpml-ls-first-item{
	margin-left: 20px!important;
}
@media screen and (max-width:800px) {
	#site-navigation > div{
		position: absolute;
		right: 0;
		top: 60px;
		width: 100%;
		z-index: 99
		
	}
	#site-navigation > div ul#primary-menu{
		padding: 20px;
		background: rgba(255,255,255,.99);
		box-shadow: -5px 5px 10px rgba(0,0,0,.51)
	}
	
	header #primary-menu li.wpml-ls-item::after{
		bottom: 12px;
	}
	#site-navigation > div ul#primary-menu li{
		background: transparent;
		border: 0;
	}
	#site-navigation > div ul#primary-menu li a{
		color: black;
		font-size: 24px;
	}
	.site-header ul#primary-menu li.wpml-ls-item:first-child{
		padding-left: 15px;
	}
	.site-header ul#primary-menu li.wpml-ls-item{
		display: inline-block;
		margin-top: 20px;
		margin: 40px 5px 0
	}
	.menu-toggle {
		display: inline-flex!important;
	}
	.main-navigation ul {
		display: none
	}
}
@media screen and (min-width: 801px) {
	.menu-toggle {
		display: none!important;
	}
}

.site-header.light.bg-transparent.scrolled{
	background: rgba(0,0,0, 0.5); /* fondo semitransparente */
	  backdrop-filter: blur(10px);           /* desenfoque del fondo */
	  -webkit-backdrop-filter: blur(10px);   /* Safari */
	  box-shadow: 0 4px 30px rgba(0,0,0,0.1);           /* opcional para profundidad */
	  transition: all 0.3s ease;
}
.site-header{
	background: white;
	
	width: 100%;
	margin: 0 auto;
	padding: 30px;
	border-bottom: 2px solid black;
	position: sticky;
	top: 0;
	z-index: 100;
	transition:all .5s;
}
.site-header:not(.bg-transparent){
	background: rgba(255,255,255, 0.8); /* fondo semitransparente */
	  backdrop-filter: blur(10px);           /* desenfoque del fondo */
	  -webkit-backdrop-filter: blur(10px);   /* Safari */
	  box-shadow: 0 4px 30px rgba(0,0,0,0.1);           /* opcional para profundidad */
	  transition: all 0.3s ease;
}
.site-header .container{
	display: flex;
	justify-content: space-between;
	gap: 15px;
	align-items: center;
}
.site-header.bg-transparent{
	background: transparent;
	border-bottom: 0;
}
.site-header.light #site-navigation{
	color: white;
}
.site-header.light ul#primary-menu li{
	border-color: white;
	background-color: rgba(0,0,0,.05);
}

.site-header.light ul#primary-menu li:hover{
	background-color: white;
}
.site-header.light ul#primary-menu li a{
	color: white;
}
.site-header.light ul#primary-menu li:hover a{
	color:black;
}

.site-header img{
	max-width: 190px;
	width: 100%;
}
#site-navigation{
	display: flex;
	gap:10px;
	justify-content: flex-end;
	align-items: center;
}
header #primary-menu{
	justify-content: flex-end;
	gap: 10px;
}
header ul#primary-menu li{
	border: 1px solid black;
	border-radius:20px;
}
header ul#primary-menu li a{
	color: black;
	font-weight: 700;
	padding: 8px 22px;
}
header #primary-menu li.current-menu-item{
	background-color: var(--secondary);
}
header #primary-menu li.wpml-ls-item{
	background-color: transparent;
	border: 0;
	padding:0;
	display: flex;
	align-items: center;
}
.site-header.light ul#primary-menu li.wpml-ls-item{
	background-color: transparent;
}
.site-header ul#primary-menu li.wpml-ls-item a{
	padding: 6px 2px;
}
header #primary-menu li.wpml-ls-item:not(.wpml-ls-current-language) a{
	font-weight: 400;
}
header #primary-menu li.wpml-ls-item::after{
	position: absolute;
	right: -8px;
	content:"/"
}
header #primary-menu li.wpml-ls-item:last-child::after{
	content:none
}

/* FOOTER */
footer{
	background: var(--secondary);
	padding: 30px;
}
footer p{
	margin: 0;
	font-size:18px;
	font-weight: 700;
}
footer ul{
	list-style: none;
	display: flex;
	justify-content: flex-end;
	gap:10px;
}
footer ul li a{
	font-weight: bold;
	font-size: 18px;
	transition: all .5s
}
footer a:hover{
	text-decoration: underline;
}
footer li.wpml-ls-menu-item{
	display: none;
}
.footer-logo{
	display: block;
	margin-top: 10dvh;
	margin-bottom: 30px;
}
.footer-logo a{
	display: block;
}
.footer-logo img{
	width: 100%;
}
footer .widget-social{
	display: flex;
	gap: 10px;
}

footer .widget-social li{
	position: relative;
	padding-right: 20px;
}

footer .widget-social li::after{
	content: " - ";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

footer .widget-social li:last-child::after{
	content: none;
}
footer .wp-block-list{
	padding: 0;
	margin: 0;
}
footer .widget-copyright p{
	font-size: 16px;
}
@media screen and (max-width:800px) {
	.site-footer{
		padding: 30px 20px;
	}
	.site-footer .footer-col{
		width: 100%;
	}
	.site-footer .footer-col .footer-widget p{
		text-align: center;
	}
	.site-footer .footer-col .footer-widget .menu,
	.site-footer .footer-col .footer-widget .wp-block-list,
	.site-footer .footer-col .footer-widget.widget-social{
		justify-content: center;
		padding: 0;
	}
	.footer-widget .menu{
		flex-wrap: wrap;
	}
}


/* VIDEO SLIDER */
.evs-video-slider,
.evs-slide {
	position: relative;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}

.evs-slide iframe{
	position:absolute;
	top:50%;
	left:50%;

	width:100vw;
	height:100vh;

	min-width:177.78vh;
	min-height:56.25vw;

	transform:translate(-50%,-50%);
}


/* Pantalles més altes que 16:9 */
@media (min-aspect-ratio: 16/9) {
	.evs-slide iframe {
		width: 100vw;
		height: 56.25vw;
	}
}

.swiper-slide{
	position: relative;
}
/* .evs-video-embed,.evs-video-embed iframe{
	position: relative;
	width: 100%;
	height: 100%;
} */
.slick-next{
	right: 30px;
}
.slick-prev{
	left: 30px;
	z-index: 99
}
/* @media screen and (min-width:801px) {
	.evs-video-slider,
	.evs-video-slider .swiper-wrapper,
	.evs-slide{
		width: 100vw;
		height: 100dvh;
		overflow: hidden;
	}
	.evs-video-embed,.evs-video-embed iframe{
		height: 100%;
	}
} */
.evs-cover{
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	z-index: 2;
}

.evs-play-btn{
	position: absolute;
	inset: 0;
	margin: auto;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	border: none;
	cursor: pointer;
	background: transparent;
	color: #fff;
	z-index: 3;
	transition: all .5s;
	display: flex;
}

.evs-play-btn:hover{
	transform: scale(1.05);
}
.slick-dotted.slick-slider{
	margin: 0;
}
.slick-dots{
	bottom: 25px;
	z-index: 999;
}
.slick-dots li button:before{
	color:white;
	opacity: .6;
	font-size: 12px;
}
.slick-dots li.slick-active button:before{
	color: white;
	opacity: 1;
}
.arrow-left{
	left: 10px;
	z-index: 999;
	top: 105px;
	position: absolute;
	cursor:pointer;
	-webkit-filter: drop-shadow( 0 0 10px rgba(255,255,255, .9));
	filter: drop-shadow( 0 0 10px rgba(255,255,255, .9));
	transition: all .5s;
}
.arrow-right{
	right: 20px;
	z-index: 999;
	top: 105px;
	position: absolute;
	transform: rotate(180deg);
	cursor:pointer;
	-webkit-filter: drop-shadow( 0px 0px 10px rgba(255,255,255, .9));
	filter: drop-shadow( 0px 0px 10px rgba(255,255,255, .9));
	transition: all .5s;
}
.arrow-left:hover,.arrow-right:hover{
	fill: #333;
}

.imatge-slider{
	position: absolute;
	bottom: 20px;
	width: calc(100% - 40px);
	height: auto;
	left: 20px;
	text-align: center;
}
.imatge-slider img{
	max-width: var(--container)!important;
	margin: 0 auto;
	width: 100%;
}

/* PROJECTES SLIDER */

.do2soles-projectes-slider .slider-track {
	display: flex;
	gap: 24px;
}
.slider-track {
  scroll-snap-type: x mandatory;
  overflow-x: auto;
  overflow-y: hidden;

  scrollbar-width: none;      /* Firefox */
  -ms-overflow-style: none;   /* Edge antic / IE */
}

.slider-track::-webkit-scrollbar {
  display: none;              /* Chrome, Edge, Safari */
}
.slider-track:hover .arrow{
	opacity: 1
}
.arrow {
  position: absolute;
  top: 120px;
  transform: translateY(-50%);
  z-index: 10;
  background: rgba(0,0,0,0.5);
  color: white;
  border: none;
  font-size: 24px;
  cursor: pointer;
  padding: 8px 12px;
  opacity: .1;
  transition:all .5s;
}

.arrow.left {
  left: 0;
}

.arrow.right {
  right: 0;
}


.projecte-item {
	scroll-snap-align: start;
	padding-bottom: 20px;
	margin: 0 5px;
}
.projecte-item h3, p{
	margin: 0
}
.projecte-item a{
	display: flex;
	position: relative;
	transition: all .2s;
	border-radius: 10px!important;
}
.projecte-item h3{
	margin-top: 8px;
	margin-bottom: 6px;
}
.projecte-item p{
	font-size: 15px;
	font-weight: 600;
}
.projecte-item .thumb a:hover::after{
	position: absolute;
	content:'';
	top: 0;
	width: 100%;
	height: 100%;
	background: #00FFFF;
	opacity: .68;
}
.projecte-item img{
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 10px!important;
	margin-bottom: 0px;
}
.text-projecte,.sinopsis-projecte,.detail-item{
	font-size: 18px;
}
.text-projecte{
	border-top: 1px solid black;
	padding-top:15px;
}
.info-desc h2{
	font-size: 24px;
	margin-bottom: 10px;
}
.info-desc h3{
	font-size: 20px;
	margin-bottom: 10px;
}
.nav-arrow{
	line-height: 0;
}

/* NOTICIES LIST */
.noticia-item{
	border-top: 1px solid black;
	padding: 15px;
	transition: all .5s;
	display: flex;
	justify-content: space-between;
	align-items:center;
	gap: 30px;
}
.noticia-item:last-child{
	border-bottom: 1px solid black;
}
.noticia-item:hover{
	background-color: var(--secondary);
}
.noticia-mes{
	text-transform: uppercase;
	font-size: 14px;
}
h3.noticia-title {
	margin: 15px 0;
	max-width: 560px;
}
.noticia-info p{
	font-weight:400;
	font-size: 1.17em;
	margin-top:-10px
}
.noticia-thumb {
	max-width: 25%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 10px;
	border:1px solid black;
	min-width:200px;
	width:100%;
}

.noticia-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width:800px){
	.noticia-item{
		flex-wrap: wrap;
	}
	.noticia-thumb{
		width: 100%;
		max-width: 350px;
		margin:0 auto;
	}
}
/* PROJECTES GRID */
.projectes-filter li.active::after{
	color: white;
}
.do2soles-projectes-grid ul{
	list-style: none;
	padding: 0;
}
.do2soles-projectes-grid ul li {
	position: relative;
	padding-right: 10px;
	cursor: pointer;
}

.do2soles-projectes-grid ul li::after {
	content: "|";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	opacity: 0.6;
}

.do2soles-projectes-grid ul li:last-child::after {
	content: none;
}
.projecte-card{
	margin-bottom: 40px;
	transition: opacity 0.3s ease, transform 0.3s ease;
}
.projectes-grid{
	/* padding: 0 15px; */
}
/* estat ocult */
.projecte-card.is-hidden {
	opacity: 0;
	transform: translateX(10px);
	pointer-events: none;
}
.projecte-card .projecte-thumb{
	aspect-ratio: 16 / 9;
	object-fit: cover;
	overflow: hidden;
	border-radius:10px!important;
	margin-bottom: 5px;
	position: relative;
	
}
.projecte-card a{
	transition: all .5s;
}
.projecte-card img{
	border-radius:10px!important;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	transition: all .5s;
}
.projecte-card:hover img{
	transform: scale(1.05);
}
.projecte-card:hover .projecte-thumb a::after{
	content: '';
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,0,.75);
	z-index: 1;
}
.projecte-card h3{
	margin: 0;
}
.projecte-card p{
	font-weight: 600;
	line-height: 18px;
}
.projectes-load-more{
	margin-bottom: 50px;
	text-align: center;

}
.projectes-load-more button{
	background: var(--secondary);
	color: black;
	font-weight: 600;
	border-radius: 50px;
	border: 1px solid black;
	padding: 15px 40px;
	cursor: pointer;
}

/* SINGLE PROJECTE */
#single-projecte .container {
	padding: 0 30px;
}
#single-projecte h1{
	text-align: center;
	font-size: 45px;
	font-weight: 600;
	color: black;
	
}
.video-thumb{
	aspect-ratio: 16 / 9;
	object-fit: cover;
	background-position: center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 15px;
}
.video-embed{
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.video-embed iframe{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
.video-play{
	background: transparent;
	padding: 0;
	width: 70px;
	height: 70px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	margin: 0 auto;
}
.video-play svg{
	width: 100%;
	cursor: pointer;
}
.info-projecte{
	display: flex;
	width: 100%;
	justify-content: space-between;
	margin-top: 60px;
	margin-bottom: 120px;
}
.info-details{
	width: 30%;
	border-top:1px solid black;
	padding-top: 13px;
}
.detail-item{
	margin-bottom: 18px;

}
.details-title{
	font-size: 18px;
	font-weight:600;
}
.info-desc{
	width: 65%;
	border-top:1px solid black;
	padding-top: 5px;
}
.sinopsis-projecte{
	margin-top: 0px;
	padding-top: 8px;
	border-top: 0px solid black;
	margin-bottom: 60px;
}
.sinopsis-projecte .details-title{
	margin-bottom: 10px;
}
.press-kit{
	background: black;
	color:white;
	padding: 70px 20px;
}
.presskit-btn{
	background: white;
	color: black;
	display: inline-flex;
	align-items: center;
	margin: 0 auto;
	padding: 7px 14px;
	border-radius: 50px;
	font-size: 18px;
	font-weight: 600;
	gap: 55px;
	transition: all .5s;
}
.presskit-btn:hover{
	gap: 65px;
}
.presskit-btn svg{
	height: 25px;
}
.presskit-images{
	display: flex;
	margin-top: 60px;
	justify-content: space-between;
	flex-wrap: wrap;
}
.presskit-image{
	width: 30%;
}
.presskit-image img{
	width: 100%;
	border-radius: 10px;
}
.reconeixements{
	padding: 50px 0;
}
.reconeixements h2{
	font-size: 30px;
}
/* .reconeixements .gallery{
	display: flex;
	gap:15px;
	justify-content: center;
} */
.reconeixements .gallery{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(270px, 280px));
	gap: 20px;
	align-items: center;
	justify-content: center;
}
.reconeixements .gallery .item{
	/* width: 22%; */

	overflow: hidden;
}
.reconeixements .gallery .item img{
	border-radius: 10px;
}
.navigations{
	border-top: 1px solid black;
	padding: 50px 0;
}
.navigations .arrow{
	border-radius: 50px;
	border: 1px solid black;
	width: 35px;
	height: 35px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 30px;
	line-height: 0;
}
.nav-next .arrow {
	padding-left: 2px;
}
.nav-subtitle{
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 700;
}
.nav-next{
	display: flex;
	justify-content: flex-end;
}
.navigation{
	border: 0;
	padding: 0;
	margin: 0;
}
.project-navigation{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 15px;
}
.project-navigation .btn-all{
	border:1px solid black;
	padding: 8px 20px;
	border-radius: 50px;
	font-weight: 700;
}
.project-navigation .btn-all:hover{
	background:black;
	color:white;
	transition:all .5s;
}

.text-center{
	text-align: center;
}
@media screen and (max-width:801px) {
	.info-projecte{
		flex-wrap: wrap;
	}
	.info-desc{
		order:1;
		width: 100%;
	}
	.info-details{
		order:2;
		width: 100%;
	}
	.project-navigation {
		flex-wrap: wrap;
	}
	.project-navigation .nav-all{
		order:3;
		width: 100%;
		margin-top: 15px;
	}
	.info-details{
		padding-top: 25px;
		margin-top: 25px;
	}
}

/* NOTICIES */
.noticies-view-more{
	margin-top: 32px;
	text-align: center;
}

.noticies-view-more button{
	padding: 8px 20px;
	background: white;
	border: 1px solid black;
	border-radius: 30px;
	cursor: pointer;
}
.noticies-load-more{
	position: relative;
}

.noticies-load-more.is-loading{
	pointer-events: none;
	opacity: .6;
}

.noticies-load-more.is-loading::after{
	content: "";
	width: 16px;
	height: 16px;
	border: 2px solid currentColor;
	border-top-color: transparent;
	border-radius: 50%;
	display: inline-block;
	margin-left: 8px;
	animation: spin .8s linear infinite;
	vertical-align: middle;
}

@keyframes spin{
	to{ transform: rotate(360deg); }
}
.posted-on{
	text-transform: uppercase;
}
.single .post{
	padding: 50px 0;
}
.single .post-thumbnail img{
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(0,0,0,.05);
	margin: 30px 0;
}
.single .entry-content{
	font-size: 18px;
}

.elementor-widget-text-editor p{
	margin-bottom: 15px;
}

.footer-col:has(.widget-social){
	display: flex;
	gap:15px;
}
.widget-social{
	display: flex;
	align-items: center;
	gap: 16px;
	justify-content: center;
}
.widget-social img{
	height: 50px;
	width: auto;
}
.legal{
	text-align: right;
}
.legal a{
	margin-left: 10px;
}
.legal .widget_text{
	margin-bottom: 0;
}
.contacte ul{
	justify-content: flex-start;
}
.evs-video-bg,
.evs-video-bg iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	min-height: 100%;
	min-width: 177.77%;
	transform: translate(-50%, -50%);
	pointer-events: none; /* clave */
}

.section-title{
	font-family: "DM Sans", Sans-serif;
	font-size: 30px;
	font-weight: 700;
	color: var(--e-global-color-text);
	margin-top: 50px;
	margin-bottom: -30px;
}
@media screen and (max-width:800px){
	.section-title{
		padding: 0 20px;
	}
}

.slick-list{
	border-radius: 8px;
}

.slick-track {
	display: flex;
	gap: 5px;
	margin-left: -5px;	
}
.evs-video-slider .slick-track{
	margin: 0;
	gap:0;
}

.btn-icon svg{
	fill: black;
}


.noticia-item {
  display: flex;
  gap: 2rem;
  align-items: flex-start;
}

.noticia-info {
  flex: 1;
  min-width: 0;
}

.noticia-thumb {
  flex: 0 0 320px;      /* ancho fijo */
  width: 320px;
  aspect-ratio: 16 / 9; /* misma altura siempre */
  overflow: hidden;
}

.noticia-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media (max-width: 640px) {
  .noticia-item { flex-direction: column; }
  .noticia-thumb { flex-basis: auto; width: 100%; }
}