@charset utf-8;
/*
Theme Name: Toro
Author: Code by Ricardo Juárez Design by Phantasia
Author URI: http://rjvv.com/
Version: 1.0
License: GNU/GPL Version 2 or later. http://www.gnu.org/licenses/gpl.html
Copyright: (c) 2025 Ricardo Juárez
*/


:root 	{
	--body: 20px;
	--linebody: 25px;
	--lsbody:0.05em;


	
	--primary:#FFFFFF;
	--contrast: #000000;
	
	--pad:20px;
	--padb:60px;
	--padb2:100px;
	--padh:150px;
	--pads: 10px;
    
	--sans: 'ABC Oracle Thin', Arial, sans-serif;

	 --real100: 100vh;
}

body {
 cursor: none;}

a, button {
 cursor: none;}

#loader {
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    transform: translateY(0); 
}

.search-page{
	position: fixed;
	z-index: 999;
	height: var(--real100);
	width: 100vw;
}

/*
.barba-container {
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.barba-leave-active {
    opacity: 1;
    animation: fadeOut 1s forwards;
}

.barba-enter-active {
    opacity: 0;
    animation: fadeIn 1s forwards;
}
*/

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}


#about{
	margin-top: 26.5px; 
	flex-direction: column;
display: flex;
}
#about .intro{
	flex: 1;
	display: flex;
	justify-content: center;
	flex-direction: column;
}
.normalcase{
	text-transform: none;
}
.normalcase strong{
	text-transform: uppercase !important;
}


#logo {
    position: absolute; 
    left: 0%; /* Horizontally centered */
    margin: 0 10px;
    top:32.5px;
    width: calc(100% - 20px);
    opacity: 0; /* Start invisible */
    will-change: opacity, top; /* Hint for better animation performance */
    transition: opacity 1s ease-in-out, top 1s ease-in-out; /* Smooth transitions */
}
.page-template-home #header, .home-content {
    opacity: 0;
    visibility: hidden; 
    transition: opacity 1s ease-in-out;
}

.page-template-home{
	overflow-x: hidden;
}

#header.show, .home-content.show {
    opacity: 1;
    visibility: visible;
}
.home-content {
		position: relative;
	z-index: 2;
}
.hero{
	padding-top: 50vh;
	width:100vw;
	display: flex;
	justify-content: center;
	align-items: center;
}
.hero img, .hero video{
	margin: var(--padb2) var(--padb);
	height: calc(100vh - var(--padh));
	width:  calc(100vw - var(--padb) - var(--padb));
	object-fit:contain;
	max-width: 900px;
}

.count{
	
}
 .centered-slider .swiper-slide{
	 	width: fit-content !important;
}
 .centered-slider .swiper-slide img,  .centered-slider .swiper-slide video{
	 height: 600px;
	 width: auto;
 }
 
 .centerdiv{
	 display: flex;
	 align-items: center;
	position: absolute;
width: 100%;
left: 0;	 justify-content: center;
	 margin-top: 30px;
 }


.filter-menu{
	position: sticky;
	bottom: 0;
	left: 0;
	padding: var(--pads);
	z-index: 99999;
}

.fade-in {
    opacity: 0;
    animation: fadeIn 0.6s ease-in-out forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}


 .grid-images{
	 display: grid;
	 grid-template-columns: 1fr 1fr 1fr;
	 gap:180px;
	 padding: 0 180px 130px;
   }
   .grid-item{
	   width: 100%;
	   display: flex;
	  justify-content:  center;
   }
.grid-item a, .lightbox-link{
	display:inline-flex;
	width: 100%;
	max-width: 320px;
	aspect-ratio:1;
} 
.grid-item img, .grid-item video{
	height: 100%;
	object-fit:contain;
  object-position: center top;
  width: 100%; /* Ensure it stretches properly */
}
.gallery-block{
	overflow: hidden;
	position: relative;
}
.gallery-block  .centered-slider{
 padding-bottom: 180px;
 }
 .gallery-block  .block-slider{
 padding-bottom: 120px;
 }
.swipe{
user-select:none;
text-align: right;
padding: 0 var(--pads) var(--pads);
 	color:rgba(1,1,1,0.4);
}

.bggrey .g_title{
	margin-top: -80px;
	margin-bottom: 70px;
}


.g_title{
	pointer-events: none;
	left: 50%;
	top:0;
	position: absolute;
	margin-bottom: 7px;
	min-height: var(--linebody);
}

.hover-media-search{
opacity: 0;
position: absolute;
transition: all 0.3s ease;
bottom: var(--pads);
left: var(--pads);
max-width: 600px;
max-height: 600px;
width: auto;
}

.results{
margin-top: calc(50vh - (30px + var(--linebody) + var(--padb2)));
}


.buy{
	background: rgba(255,255,255,0.8);
	padding: 15px 20px;border-radius: 10px;
	margin: 0px auto;
	display: inline-block;
	text-transform: none;

}

.body {
    font-size: var(--body);
    line-height: var(--linebody);
    letter-spacing: var(--lsbody);
}

.medium, .block-text h3 {
    font-size: var(--medium);
    line-height: var(--linemedium);
    letter-spacing: var(--lsmedium);
    }
.menusize, .medium2, .header {
font-weight: 100;
	
    font-size: var(--body);
    line-height: var(--linebody);
    letter-spacing: var(--lsbody);
    text-transform: uppercase;
    font-family: var(--serif);    
 }


.sans{
	font-family: var(--sans);
}
.serif{
	font-family: var(--serif);
}
.bold{
	font-weight: 500;
}
.uppercase{
	text-transform: uppercase;
}

.primary-bg {
    background-color: var(--primary);
    --color:var(--primary);
}

.contrast-bg {
    background-color: var(--contrast);
 }


.primary {
    color: var(--primary);
}

.contrast {
    color: var(--contrast);
}

.tcenter{
	text-align: center;
}

*{
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
     -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;

}
html, body
{
	overscroll-behavior-block: none;
overscroll-behavior: none;
margin:0;
font-size:100%;
width:100%;
     }
     
     	html { margin-top: 0px !important; }
	* html body { margin-top: 0px !important; }
	@media screen and ( max-width: 782px ) {
		html { margin-top: 0px !important; }
		* html body { margin-top: 0px !important; }
	}

body {
transition: background-color 0.6s ease;
display: flex;
min-height: var(--real100);
flex-direction: column;     
margin:0;
-moz-osx-font-smoothing: grayscale; 
text-rendering:geometricPrecision;
-webkit-font-smoothing: subpixel-antialiased;
font-size: var(--body);
line-height: var(--linebody);
letter-spacing: var(--lsbody);
font-family: var(--sans);
color: var(--contrast);
background-color: var(--primary);
font-weight: 300;
}

#main{
	transition: background-color 1s ease;
	flex:1;
	background: var(--primary);
}
.page-template-home #main{
	overflow-x: hidden;	
}


h1, h2, h3, h4{
	margin-bottom: 0;
	font-size: inherit;
	font-weight: 300;
}

.hidden{
	opacity: 0;
}
.justflex{
	display: flex;
}

.flex{
	display: flex;
	justify-content: center;
	align-items: center;
}
.padded{
	padding: var(--pads);
}


[class^="menu-lang"]{
	display: flex;
}

svg{
	display: block;
}
.content-sections .block-text.lista{
margin-bottom: 50px;
}
.content-sections .block-text{
	margin-bottom: var(--padb2);
}
.content-sections  .block-text h2{
	margin-bottom: 0;
}
.content-sections  .block-text li{
	list-style: none;
}
.content-sections  .block-text ul{
	padding-left: 0;
}

.content-sections  .block-text p{
	margin-bottom: 50px;
}
.content-sections strong{
	text-transform: none;
}

.header{
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
position: fixed;
top: 0;
padding: var(--pads);
display: grid;
grid-template-columns: 1fr 1fr;
justify-content: space-between;
width: 100%;
z-index: 9999;
width: 100%;
color: var(--contrast);
transition: top 0.6s ease;
	background-color: var(--color);
}

.nav-up {
    top: -var(--padb2);
	background-color: var(--color);
}

.nav-fixed{
	top:0 !important;
}


.nav-down{
	background-color: var(--color);
}
header.invert.nav-down{
	background: transparent;
}
.single .logo{
	--logo: var(--primary);
}
.block-text a, .suggested-projects a, .grey{
				color: rgba(0, 0, 0, 0.40);

}
.lightbox-swiper-cont.hover-cont{
	position: fixed;
}
/* Lightbox overlay */
.lightbox-swiper-cont {
   position: fixed;
   cursor: none;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background:var(--primary);
   z-index: 9999999; /* High z-index to appear on top */
   justify-content: center;
   align-items: center;
   display: flex;
   padding: 60px 0;
   opacity: 0;
   transition: opacity 0.6s ease;

}

/* Close button */
.swiper-close {
  position: absolute;
  top: var(--pads);
  text-transform: uppercase;
  right: var(--pads);
  z-index: 10000;
}

.lightbox-swiper img{
	max-width:85vw;
	width: auto !important;
	max-height: calc(100vh - 160px);
}

.lightbox-swiper .swiper-wrapper{
	display: flex;
	align-items: center;
}

.lightbox-swiper .swiper-slide{
	justify-content: center;
	display: flex;
	align-items: center;
	height: calc(100vh - 120px);
}





	footer{
			color: rgba(0, 0, 0, 0.40);
		display: flex;
		gap:var(--pad);
		justify-content: space-between;
	padding:  var(--pads);
	align-items: baseline;
}

.righted{margin-left: auto;
}
.lefted,
.centered,
.righted{
	width: calc((100% / 8) * 5);
	}
	.image-block.lefted{
	margin: var(--padh) auto var(--padh) var(--pads);
}

	.image-block.centered, .image-block.centered img{
		margin: var(--padh) auto;
	}
	.image-block.righted{
	margin: var(--padh) var(--pads) var(--padh) auto;
}

.image-block.righted img{
	margin-left: auto;
}
.fulled{
	position: relative;
	width: 100%;
}
.fulled .caption{
	position: absolute;
		width: calc((100% / 8) * 5);
		bottom: 0;
		padding: var(--pads);
		z-index: 9;
		color: var(--primary);
}
.fulled .featured-image img, .fulled  .featured-image video{
	object-fit:cover !important;
	height: 100%;
}
.half{
	width: 50%;
}

.twothirds{
	width: calc(((100% - var(--pad) - var(--pad)) / 3) * 2);
}




.hover-cont {
 cursor: none;    position: relative;
}

.hover-media {
    user-select: none;
    pointer-events: none;
    opacity: 0;
    z-index: 9999;
    height: auto;
    position: fixed;
    transition: opacity 0.4s ease, transform 0.1s ease;
    mix-blend-mode:difference;
    color: var(--primary);
}
img.hover-media, video.hover-media{
    max-width: 200px;
    max-height: 200px;
    height: auto;
    width: auto;
    mix-blend-mode:normal;
	
}
/* TEXT */

.block-text.half.righted{
	padding: 0 var(--pads) 0 0;
}


.block-text.half p, .block-text.half span, .block-text.half{
	text-align: left !important;
}
strong, b{
	font-weight: normal !important;
	text-transform: none !important;
}

.section-text{
	padding: var(--pad);
display: flex;
justify-content: space-between;
gap:var(--pad);	
}
.section-text .block-text{
padding: 0;
flex-basis: calc((100% / 12) * 7);
}
.block-text{
	padding: var(--pads);
}
.block-text p, .block-text h3, .block-text h4, .block-text h5, .block-text h6{
	margin: 0px 0px var(--linebody);
}
 .block-text h3, .block-text h4, .block-text h5, .block-text h6,  .block-text h2, .block-text h1{
	 font-weight: 300;
 }
.block-text h4{
	text-transform: uppercase;
}

.block-text a{
	text-decoration: none;
}

.block-text h4{
margin-top: var(--pad);
}

.block-text h2{
	margin: 0px 0px var(--linebody);
		text-transform: none;
}
.block-text.block.righted{
	margin: var(--padb2) 0 var(--padb2) auto !important;
	
}

.block.about-block{
	margin: 0;
	padding: var(--padb2) 0;
}

.about-block.bggrey .gallery-block .block-slider{padding-bottom: 0;}

.block{
	margin: var(--padb2) 0;
}
.block-text > :last-child, .block > :last-child, .extra-info > :last-child{
	margin-bottom: 0 !important;
}
.block-text ul, .block-text ol{
	padding-left: 18px;
}
.block-text ul li{
	list-style: disc;
}

#onepagenav, .bottom-bar{
	position: fixed;
	bottom: 0;
	padding: var(--pads);
	left: 0;
	z-index: 99999;
}
.image-caption{
	margin-top: var(--pads);
}
 #onepagenav li, .bottom-bar li{
	 margin-right: var(--pad);
	 display: inline-block;
	 }


.meta{
	display: flex;
	gap:var(--pad);
}
#onepagenav li a, .bottom-bar a{
		color: rgba(0, 0, 0, 0.40);
}
#onepagenav li.current a, .bottom-bar .current-menu-item a{
		color: rgba(0, 0, 0, 1);
}

.framed-slider,
.full-slider,
.overlapped-slider,
.overlapped-full-slider,
.centered-slider,
.swiper-container,
.gallery-top,
.block-slider,
.thumbnail-slider,
.small-slider {
    position: relative;
    overflow: hidden; 
}

.bggrey{
	margin: 0;
	padding-top: var(--padb2);
	background-color: #e5e5e5;
}

.cover-image{
position: relative;
height: 100vh;
}

.block-columns{
	margin: var(--padh) 0;
}
.block-columns .column{
flex: 1 1 50%;
}
.content-sections > :last-child {
	padding-bottom: var(--padb2);
}

.single h1{
	display: inline-block;
}
.close-project{
	display: flex;
	position: absolute;
	top: var(--pads);
	right: var(--pads);
  justify-content: flex-end;
}
.single .header{
	    mix-blend-mode:difference;
    color: var(--primary);
	grid-template-columns: 1fr 1fr;
}
.single header.nav-down{
	color: var(--contrast);
}

.close-project a{
		transition: color: 0.3s ease;

	opacity: 0.4;
	    mix-blend-mode:difference;
    color: var(--primary);
    }

.single .intro{
	margin-top: var(--pad);
}

.video-container *{
	width: 100%;
	height: 100%;
	object-fit:cover;
}

.video-container iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	}

.video-container {
    position: relative;
    aspect-ratio: var(--proportion);
    overflow: hidden;
}
.cover-image img, .cover-image video{
	width: 100%;
	height: 100%;
	object-fit:cover;
}







/* SLIDER */

.block-slider {
  padding: 0 var(--pads);
  overflow: hidden;
}

#team .block-slider img.vertical, #equipo .block-slider img.vertical{
max-width: 29vw;
}



.block-slider img,
.block-slider video {
 max-height: 600px;
 width: auto;
}

.block-slider .swiper-slide {
  flex-shrink: 0;
  width: auto !important; 
}


.overflowhidden{
	overflow: hidden;
}





/* Default state when fonts are loading */
body.font-loading .animated-box {
  opacity: 0; /* Hide content */
  animation: none; /* Disable animations */
}

/* Once fonts are loaded */
body.font-loaded .splash {
  opacity: 1; /* Show content */
  animation: maskOut 0.6s ease-in-out 1.8s forwards;
}

body.font-loading .animated-box {
  animation: none;
}

body.font-loaded .animated-box {
  animation: horizontalBounce 1.8s ease forwards;
}

body.font-loading .logo-flex.buro {
  animation: none;
}

body.font-loaded .logo-flex.buro {
  animation: buro 1.8s ease forwards;
}

.splash {
  position: fixed;
  height: var(--real100);
  width: 100vw;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: var(--contrast);
  animation: maskOut 0.6s ease-in-out 1.8s forwards; 
  overflow: hidden; /* Ensures content gets hidden during mask animation */
}

.animated-box {
width: 580px;
  height: 205px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  animation: horizontalBounce 1.8s ease forwards;
  padding: var(--pad);
}
.logo-flex.buro{
	width: 330px;
  animation: buro 1.8s ease forwards;
  }

@keyframes buro {
  10% {
width: 330px;
  }

  50%{
    width: 100%;
	  
  }
   
  95%,100% {
    width: 100%;
  }
}



@keyframes horizontalBounce {
  10% {
width: 580px;
  height: 205px;
  }

  50%, 55%{
    width: 100vw;
	  height: 195px;
	  
  }

  95%,100% {
    width: 100vw;
    height: 100%;
  }
}

@keyframes maskOut {
  0% {
  transform: translateY(0);
  }
  100% {
  transform: translateY(-100%); 
   }
}

video{
	width: 100%;
	height: 100%;
	object-fit:cover;
}
.caption{
	margin-top: 7px;
}

.swiper-wrapper{
	display: flex;
}
.slider{
	position: relative;
	overflow: hidden;
	max-width: 100vw;
}

.swiper-slide{
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.swiper-slide img{
}
.gallery-wrapper{
	position: relative;
}
.nexter{
	width: 50%;
	height: 100%;
/*     cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='52' viewBox='0 0 80 52'%3E%3Cpath d='M53.78 0.35 L79.47 26.05 L53.78 51.74' stroke='black' fill='none'/%3E%3Cpath d='M79.47 26.05 H0' stroke='black' fill='none'/%3E%3C/svg%3E") 80 26, auto; */
	right: 0;
top:0;
position: absolute;
z-index: 99;
}
.prever{
	width: 50%;
	height: 100%;
/*     cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='52' viewBox='0 0 80 52'%3E%3Cpath d='M26.4 0.35 L0.71 26.05 L26.4 51.74' stroke='black' fill='none'/%3E%3Cpath d='M0.71 26.05 H80' stroke='black' fill='none'/%3E%3C/svg%3E") 0 26, auto; */
	left: 0;
top:0;
position: absolute;
z-index: 99;
}


#contact{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap:var(--pad);
	height: var(--real100);
}
#contact .block-text{
	padding: 0;
display: flex;
  flex-direction: column;
  justify-content: flex-end;
  margin-bottom: var(--pads);
  }
#contact .block-text a{  
		color: rgba(0, 0, 0, 0.40);

	}
  


.half-image video, .half-image img{
	object-fit:cover;
	height: 100%;
}


.full-cont-slider{
	height: var(--real100);
	display: flex;
	flex-direction: column;
	padding: 40px 0;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	position: relative;
}

a.button, button{
	font-size: var(--body);
	appearance: none;

	
padding: 15px 20px 15px 20px;
border-radius: 10px;



background-color: rgba(255,255,255,0.5);
transition: all 0.3s ease;
outline: none;
border: none;
	color: var(--contrast);
	text-decoration: none;
	display: inline-block;
	font-family: var(--sans);
}



.preloader{
	position: absolute;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--primary);
	top: 0;
	left: 0;
	z-index: 9;
}

.logo-flex{
	display: flex;
	justify-content: space-between;
	width: 100%;
}


#projects {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--padb); 
    align-items: center;
    	padding: var(--padb);

}
.project-item {
    	padding: var(--padb) 0;
    position: relative; 
    display: flex;
  justify-content: center;
    }
.project-title{
	margin-top: 7px;
}


.image-block{

	margin: var(--padh) 0;
}
.image-block, .featured-image{
	max-width: 680px;
}
.image-block.fulled, .fulled .featured-image{
	max-width: 100%;
}



.block-columns{
	display: grid;
		gap:var(--pads);
		padding: var(--pads);
grid-template-columns: 1fr 1fr;
}

.page-template-home .featured-image img, .page-template-home .featured-image video {
        display: block;
        height: 100%;
        object-fit:contain;
       }
.page-template-projects .featured-image img, .page-template-projects .featured-image video {
        display: block;
        width: auto;
        height: auto;
       }
       
.page-template-projects .featured-image, .page-template-projects .featured-image img, .page-template-projects .featured-image video{
	max-width: 40vw;
		max-height: 680px;
}


.image-block img, .image-block video{
		max-height: 80vh;
		width: auto;
		display: block;
}

.fulled.image-block img, .fulled.image-block video{
	min-width: 100%;
	max-height: none;
}

.image-block.righted .caption{
	margin-left: auto;
}


.project-item:nth-child(3n-2) {
    grid-column: span 2;
    margin: 0px auto;
}
.project-item:nth-child(3n-1),
.project-item:nth-child(3n) {
    grid-column: span 1;
}

.page-content{
	padding-top: 200px;
}





/* MENU */

.open-search{
	margin-right: var(--pad);
	display: inline-block;
	margin-right: var(--pad);
		color: rgba(0, 0, 0, 0.40);
	transition: color: 0.3s ease;
	}
.close-search a, .close-filters a{
	display: inline-block;
		color: rgba(0, 0, 0, 0.40);
	transition: color: 0.3s ease;
	}
	
	.close-filters{
	position: fixed;
	top: var(--pads);
	right: var(--pads);
		
		}
		
		.fancybox__container{
			z-index: 9999999;
		}

.fancybox-fadeIn {
    animation: fadeIn 0.5s ease-in-out both; /* 'both' ensures state is retained */
}

.fancybox-fadeOut {
    animation: fadeOut 0.5s ease-in-out both;
}

@keyframes fadeIn {
    from { opacity: 0; transform: scale(0.95); } /* Slight scale for smoother feel */
    to { opacity: 1; transform: scale(1); }
}

@keyframes fadeOut {
    from { opacity: 1; transform: scale(1); }
    to { opacity: 0; transform: scale(0.95); }
}	
	.fancybox__carousel .fancybox__slide.can-zoom_in .fancybox__content img{
		transform: none !important;
		will-change: auto !important;  
		transition: opacity 0.3s ease !important;
	}
	
.close-bar{
	width: calc(50vw - var(--pads));
	display: flex;
	justify-content: space-between;
	text-transform: uppercase;
	position: fixed;
	top: var(--pads);
	right: var(--pads);
}
header [id^="menu-main"], header [id^="menu-lang"], [id^="menu-social"]{
	display: flex;
	gap:var(--pad);
}
[class^="menu-social"]{
	margin-left: auto;
}
header [id^="menu-main"] li a{
	display: flex;
	color: rgba(0, 0, 0, 0.40);
	transition: color: 0.3s ease;
}
 [id^="menu-main"] li a{
	color: rgba(0, 0, 0, 0.40);
	transition: color: 0.3s ease;

}

header [id^="menu-lang"] li a{
	display: flex;
}

.filter-menu div{
	transition: all 0.6s ease;
	opacity: 0.3;
margin: 0 15px;	
}
header [id^="menu-main"] .current-menu-item a, .wpml-ls-current-language a{
	color: rgba(0, 0, 0, 1);
}


.filter-menu div.active,
[id^="menu-main"] li.current-menu-item a, [id^="menu-main"] li a:active, [id^="menu-main"] li a:focus{
	opacity: 1;
		color: rgba(0, 0, 0, 1);

}


.colophon{
		color: rgba(0, 0, 0, 0.40);
margin-top: 30px;
	letter-spacing: 0.5px;
text-transform: none;
font-size: 12px;}


.related{
	padding: var(--padh);
	text-align: center;
}
.related-projects{
	margin-top: 80px;
	align-items: center;
	display: flex;
	gap:var(--padh);
	justify-content: center;
}
.related-projects .project-item{
	flex-basis: 50%;
}

.menu-hover.appear{
	opacity: 1;
	pointer-events: all;
}
.menu-hover{
opacity: 0;
transition: all 0.4s ease;
pointer-events: none;
	position: fixed;
	width: 100%;
	height: var(--real100);
	top: 0;
	background-color: var(--primary);
z-index: 99999999}
.menu-int{
padding: var(--pads);
	    height: var(--real100);
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


.search-overlay{
	position: fixed;
	z-index: 99999;
	width: 100vw;
	height: var(--real100);
	top:0;
	left: 0;
	display: none;
}


.clear-button {
    display: none;
    opacity: 0.4;
    position: absolute;
    right: 0;
    top: 0;
padding: 19px 20px 18px 20px;
}


/* INPUTS */
input[type="checkbox"]
{
     -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     display: inline-block;
     position: relative;
     height: 0px;
     border-radius: 0;
     width: 0px;
     outline: none;
     border: none;
     margin: 0;
}

input[type="checkbox"]:checked + label{
	color: #444444;
}
input[type="checkbox"]:hover
{
     background-color: var(--contrast);
}
input[type="checkbox"]:checked
{
background-color: var(--contrast);
}

input[type="submit"]{
	  font-size: var(--body);
	 -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     display: inline-block;
     font-family: var(--sans);
     text-transform: uppercase;
     border: none;
     outline: none;
	padding: 15px 20px 15px 20px;
border-radius: 10px;
background-color: var(--primary);
margin-left: 20px;
}
.block-text form{
	text-align: center;
}
.block-text table{
	width: 100%;
}
input[type="text"],
input[type="tel"], 
input[type="email"], 
input[type="password"],
select,
textarea{
cursor: none;
	width: 400px;
padding: 15px 20px 15px 20px;
border-radius: 10px;
background-color: rgba(255,255,255,0.5);
transition: all 0.3s ease;
	flex: 1;
	  font-size: var(--body);
	 -webkit-appearance: none;
     -moz-appearance: none;
     appearance: none;
     display: inline-block;
     position: relative;
     font-family: var(--sans);
     color: var(--contrast);
     border: 1px solid rgba(255,255,255,0.5);
     outline: none;
     margin: 0px auto;
}

form{
	width: fit-content;
	position: relative;
}


input[type="text"]:focus,
input[type="tel"]:focus, 
input[type="email"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus{
		background-color: rgba(255,255,255,1);
 border-color:#999;
} 
input[type="text"]:active,
input[type="tel"]:active, 
input[type="email"]:active,
input[type="password"]:active,
select:active,
textarea:active{
		background-color: rgba(255,255,255,1);
 border-color:#fff;
} 
input[type="text"]:not(:placeholder-shown),
input[type="tel"]:not(:placeholder-shown),
input[type="email"]:not(:placeholder-shown),
input[type="password"]:not(:placeholder-shown),
textarea:not(:placeholder-shown) {
    background-color: rgba(255, 255, 255, 1);
    border-color: #fff;
}



.fancybox__backdrop{
	background-color: var(--primary) !important;
}
.fancybox__toolbar{
	background: transparent !important;
}

.carousel__button{
	width: auto !important;
 margin-top: 0 !important;
 align-items: flex-start !important;
	
	}
	.carousel__button:after{
	content: 'Close';
	text-transform: uppercase;
				color: rgba(0, 0, 0, 0.40);
}
.fancybox__toolbar{
	padding: var(--pads) !important;
}
.fancybox__caption,
.carousel__button svg,
.fancybox__button--zoom,
.fancybox__thumbs,
.fancybox__nav,
.fancybox__button--slideshow,
.fancybox__button--fullscreen,
.fancybox__button--thumbs,.fancybox__toolbar__items--left{
	display: none !important;
}




/*
      .custom-cursor::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  background-color: var(--contrast);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  transition: width 0.3s ease, height 0.3s ease;
  z-index: -1;
}
.custom-cursor.pointer::after {
  width: 100%;
  height: 100%;
}
*/
.custom-cursor.pointer {
opacity: 0.4;
}


        
.custom-cursor {
	mix-blend-mode:difference;
 opacity:1; position: fixed;
  top: -100px;
   background-color: var(--primary);
 left: -100px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  z-index: 99999999;
  transition: opacity 0.3s ease
}

/* Add a subtle shrink effect when clicking */
.custom-cursor.click {
  transform: translate(-50%, -50%) scale(0.8);
}


@media all and (-ms-high-contrast:none){}