/* Montek Creative Agency Business HTML-5 Template */

/************ TABLE OF CONTENTS ***************
1. Fonts
2. Reset
3. Global
4. Main Header
5. Banner One
6. Services One
7. Gallery One
7b. Clients One
7c. Allies One
8. journal One
9. Testimonial One
10. Counter One
11. Awards One
12. Main Footer
13. Page Title
14. Team One
15. journal Detail
16. Work One
17. Work Detail
18. Contact Info
19. Contact Form

====================================================================
	Attachment Css Files
====================================================================

***/

@import url('global.css');
@import url('header.css');
@import url('footer.css');
@import url('animate.css');
@import url('swiper.min.css');
@import url('font-awesome.css');
@import url('custom-animate.css');
@import url('odometer-theme-default.css');

/* Título H1 solo para SEO/accesibilidad cuando el héroe es visual */
.seo-visually-hidden{
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0, 0, 0, 0);
	clip-path:inset(50%);
	white-space:nowrap;
	border:0;
}

/*** 

====================================================================
	Banner One
====================================================================

***/

.banner-one{
	position:relative;
	padding:280px 0px 80px;
	background-size:cover;
}

/* Hero animación Spline + cinta texto (index) */
.banner-one--spline{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	min-height: 100vh;
	min-height: 100dvh;
	min-height: 100svh;
	padding: 90px 0 0;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-attachment: fixed;
}

/* Capa “TV / glitch” — hero, blog, cifras y contacto (fondo page-wrapper) */
.banner-one--spline::after,
.journal-one::after,
.stats-one::after,
.page-wrapper.page-wrapper--tv-glitch::after{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 5;
	pointer-events: none;
	opacity: 1;
	mix-blend-mode: hard-light;
	background-color: rgba(0, 0, 0, 0.085);
	background-image:
		repeating-linear-gradient(
			0deg,
			rgba(0, 0, 0, 0) 0px,
			rgba(0, 0, 0, 0) 2px,
			rgba(0, 0, 0, 0.59) 2px,
			rgba(0, 0, 0, 0.59) 3px
		),
		repeating-linear-gradient(
			90deg,
			rgba(255, 0, 80, 0.26) 0px,
			transparent 1px,
			rgba(0, 255, 230, 0.23) 2px,
			transparent 4px
		),
		repeating-linear-gradient(
			0deg,
			transparent 0px,
			transparent 42px,
			rgba(255, 255, 255, 0.11) 42px,
			rgba(255, 255, 255, 0.16) 44px,
			rgba(255, 255, 255, 0.11) 46px,
			transparent 48px
		),
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.082) 0%,
			transparent 32%,
			transparent 68%,
			rgba(0, 0, 0, 0.42) 100%
		);
	background-size: 100% 3px, 4px 100%, 100% 100px, 100% 100%;
	background-repeat: repeat, repeat, repeat, no-repeat;
	animation:
		banner-one-tv-scan 3.5s linear infinite,
		banner-one-tv-glitch 2.08s steps(1, end) infinite;
	will-change: transform, filter, clip-path, opacity;
}

/* Fondo fijo (Nosotros, etc.): misma imagen que image-layer, parallax al scroll */
.page-wrapper.image-layer.page-wrapper--bg-fixed{
	background-attachment: fixed;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/* Contenido por encima del glitch (contacto, nosotros y páginas con page-wrapper--tv-glitch) */
.page-wrapper.page-wrapper--tv-glitch > .main-header,
.page-wrapper.page-wrapper--tv-glitch > section,
.page-wrapper.page-wrapper--tv-glitch > footer.main-footer{
	position: relative;
	z-index: 6;
}

/*** Pantalla de carga inicial (glitch + logo) ***/

.body--site-loading{
	overflow: hidden;
}

.loader-wrap.site-loader-glitch{
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 9999999;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #020617;
	overflow: hidden;
}

/* Fundido a blanco al pasar del loader al sitio (capa encima del loader) */
.site-loader-curtain{
	position: fixed;
	inset: 0;
	z-index: 10000000;
	background: #fff;
	pointer-events: none;
	opacity: 0;
}

/* Crominancia / panel que “salta” */
.loader-wrap.site-loader-glitch::before{
	content: '';
	position: absolute;
	inset: -4px;
	z-index: 0;
	pointer-events: none;
	mix-blend-mode: hard-light;
	opacity: 0.95;
	background:
		linear-gradient(105deg, rgba(255, 0, 90, 0.35) 0%, transparent 42%),
		linear-gradient(-15deg, transparent 55%, rgba(0, 255, 220, 0.32) 100%);
	animation: site-loader-chroma-panel 1.65s steps(1, end) infinite;
}

@keyframes site-loader-chroma-panel{
	0%, 100%{ transform: translate3d(0, 0, 0) scale(1); opacity: 0.88; }
	6%{ transform: translate3d(-14px, 6px, 0) scale(1.02); opacity: 1; }
	6.6%{ transform: translate3d(16px, -8px, 0) scale(1.01); }
	7.2%{ transform: translate3d(-6px, 3px, 0); }
	8%{ transform: translate3d(0, 0, 0) scale(1); opacity: 0.9; }
	38%{ transform: translate3d(12px, -4px, 0); opacity: 1; }
	38.8%{ transform: translate3d(-18px, 8px, 0); }
	39.5%{ transform: translate3d(0, 0, 0); opacity: 0.88; }
	62%{ transform: translate3d(8px, 10px, 0) skewX(-3deg); }
	62.7%{ transform: translate3d(-10px, -6px, 0) skewX(4deg); }
	63.4%{ transform: translate3d(0, 0, 0); }
	88%{ transform: translate3d(-20px, 0, 0); opacity: 1; }
	88.6%{ transform: translate3d(14px, 5px, 0); }
	89.2%{ transform: translate3d(0, 0, 0); opacity: 0.9; }
}

.site-loader-glitch__noise{
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	mix-blend-mode: hard-light;
	opacity: 1;
	background-color: rgba(0, 0, 0, 0.18);
	background-image:
		repeating-linear-gradient(
			0deg,
			rgba(0, 0, 0, 0) 0px,
			rgba(0, 0, 0, 0) 1px,
			rgba(0, 0, 0, 0.72) 1px,
			rgba(0, 0, 0, 0.72) 2px
		),
		repeating-linear-gradient(
			90deg,
			rgba(255, 0, 100, 0.42) 0px,
			transparent 1px,
			rgba(0, 255, 235, 0.38) 2px,
			transparent 5px
		),
		repeating-linear-gradient(
			0deg,
			transparent 0px,
			transparent 38px,
			rgba(255, 255, 255, 0.14) 38px,
			rgba(255, 255, 255, 0.2) 40px,
			rgba(255, 255, 255, 0.12) 42px,
			transparent 44px
		),
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.12) 0%,
			transparent 35%,
			transparent 65%,
			rgba(0, 0, 0, 0.55) 100%
		);
	background-size: 100% 2px, 5px 100%, 100% 88px, 100% 100%;
	background-repeat: repeat, repeat, repeat, no-repeat;
	animation: site-loader-scan 1.85s linear infinite;
}

@keyframes site-loader-scan{
	0%{ background-position: 0 0, 0 0, 0 0, 0 0; }
	100%{ background-position: 0 320px, 18px 0, 0 120px, 0 0; }
}

/* Bandas horizontales tipo VHS / rolling */
.site-loader-glitch__distort{
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	mix-blend-mode: overlay;
	opacity: 0.85;
	background: repeating-linear-gradient(
		180deg,
		transparent 0,
		transparent 22px,
		rgba(255, 255, 255, 0.07) 22px,
		rgba(255, 255, 255, 0.07) 23px,
		transparent 23px,
		transparent 48px,
		rgba(255, 0, 80, 0.09) 48px,
		rgba(255, 0, 80, 0.09) 50px
	);
	animation: site-loader-roll 0.12s steps(2) infinite;
}

@keyframes site-loader-roll{
	0%{ transform: translateY(0); }
	100%{ transform: translateY(-6px); }
}

/* Destellos breves */
.site-loader-glitch__flash{
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	background: #fff;
	mix-blend-mode: overlay;
	opacity: 0;
	animation: site-loader-flash 2.4s steps(1, end) infinite;
}

@keyframes site-loader-flash{
	0%, 4%, 100%{ opacity: 0; }
	4.5%{ opacity: 0.22; }
	4.7%{ opacity: 0; }
	31%{ opacity: 0; }
	31.2%{ opacity: 0.35; }
	31.35%{ opacity: 0.08; }
	31.5%{ opacity: 0; }
	56%{ opacity: 0; }
	56.15%{ opacity: 0.28; }
	56.3%{ opacity: 0; }
	72%{ opacity: 0; }
	72.1%{ opacity: 0.18; }
	72.25%{ opacity: 0; }
}

.site-loader-glitch__inner{
	position: relative;
	z-index: 5;
	padding: min(6vw, 32px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: clamp(1.35rem, 4.5vw, 2.15rem);
	text-align: center;
}

/* Logo: glitch solo por posición/corte — sin filtros que cambien color */
.site-loader-glitch__logo{
	display: block;
	width: min(72vw, 280px);
	height: auto;
	position: relative;
	animation: site-loader-logo-glitch 1.35s steps(1, end) infinite;
	filter: none;
}

@keyframes site-loader-logo-glitch{
	0%, 100%, 92%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		clip-path: inset(0 0 0 0);
	}
	1.8%{
		transform: translate3d(-10px, 5px, 0) skewX(-3.5deg);
		clip-path: inset(12% 0 70% 0);
	}
	2.4%{
		transform: translate3d(12px, -7px, 0) skewX(4deg);
		clip-path: inset(58% 0 18% 0);
	}
	3%{
		transform: translate3d(-5px, 3px, 0) skewX(-1.5deg);
		clip-path: inset(28% 8% 38% 10%);
	}
	3.8%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		clip-path: inset(0 0 0 0);
	}
	22%{
		transform: translate3d(8px, 2px, 0) skewX(2deg);
		clip-path: inset(72% 0 6% 0);
	}
	22.5%{
		transform: translate3d(-14px, 6px, 0) skewX(-3deg);
		clip-path: inset(5% 0 82% 0);
	}
	23.2%{
		transform: translate3d(0, 0, 0);
		clip-path: inset(0 0 0 0);
	}
	44%{
		transform: translate3d(-12px, -4px, 0) skewX(-2.2deg);
		clip-path: inset(40% 0 42% 0);
	}
	44.6%{
		transform: translate3d(14px, 5px, 0) skewX(3deg);
		clip-path: inset(10% 12% 75% 14%);
	}
	45.2%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		clip-path: inset(0 0 0 0);
	}
	66%{
		transform: translate3d(6px, -8px, 0) skewX(2.8deg);
		clip-path: inset(65% 0 12% 0);
	}
	66.5%{
		transform: translate3d(-9px, 4px, 0);
		clip-path: inset(18% 0 65% 0);
	}
	67.2%{
		transform: translate3d(0, 0, 0);
		clip-path: inset(0 0 0 0);
	}
	82%{
		transform: translate3d(11px, 6px, 0) skewX(-4deg);
		clip-path: inset(48% 0 35% 0);
	}
	82.6%{
		transform: translate3d(-7px, -3px, 0);
		clip-path: inset(0 18% 0 20%);
	}
	83.2%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		clip-path: inset(0 0 0 0);
	}
}

/* Texto tipo monitor / terminal antiguo */
.site-loader-glitch__terminal{
	margin: 0;
	font-family: ui-monospace, 'Cascadia Mono', 'Consolas', 'Liberation Mono', 'Courier New', monospace;
	font-size: clamp(0.7rem, 2.6vw, 0.95rem);
	font-weight: 600;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #86efac;
	text-shadow:
		0 0 6px rgba(134, 239, 172, 0.95),
		0 0 16px rgba(34, 197, 94, 0.55),
		-1px 0 0 rgba(255, 80, 120, 0.35),
		1px 0 0 rgba(0, 220, 200, 0.35);
	line-height: 1.5;
	animation: site-loader-terminal-glitch 0.22s steps(2) infinite;
}

.site-loader-glitch__prompt{
	margin-right: 0.35em;
	color: #4ade80;
	opacity: 0.95;
}

.site-loader-glitch__cmd{
	letter-spacing: 0.28em;
}

.site-loader-glitch__dots{
	display: inline-block;
	min-width: 1.1em;
	animation: site-loader-dots 0.7s steps(4, end) infinite;
}

@keyframes site-loader-dots{
	0%, 100%{ opacity: 1; letter-spacing: 0.15em; }
	50%{ opacity: 0.65; letter-spacing: 0.35em; }
}

.site-loader-glitch__cursor{
	display: inline-block;
	margin-left: 0.15em;
	color: #bbf7d0;
	animation: site-loader-cursor 0.72s steps(1, end) infinite;
}

@keyframes site-loader-cursor{
	0%, 49%{ opacity: 1; }
	50%, 100%{ opacity: 0; }
}

@keyframes site-loader-terminal-glitch{
	0%, 100%{ transform: translate3d(0, 0, 0); filter: none; }
	33%{ transform: translate3d(-1px, 0, 0); filter: hue-rotate(-12deg); }
	66%{ transform: translate3d(1px, 1px, 0); filter: hue-rotate(10deg); }
}

@keyframes banner-one-tv-scan{
	0%{ background-position: 0 0, 0 0, 0 0, 0 0; }
	100%{ background-position: 0 275px, 5px 0, 0 108px, 0 0; }
}

@keyframes banner-one-tv-glitch{
	0%, 100%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		filter: brightness(1) contrast(1) hue-rotate(0deg) saturate(1) blur(0px);
		clip-path: inset(0 0 0 0);
		opacity: 1;
	}
	8%{
		transform: translate3d(-17px, 5px, 0) skewX(-2.45deg);
		filter: brightness(0.52) contrast(1.58) hue-rotate(-58deg) saturate(1.72) blur(0.45px);
		clip-path: inset(14% 0 68% 0);
		opacity: 0.72;
	}
	8.35%{
		transform: translate3d(20px, -7px, 0) skewX(2.65deg);
		filter: brightness(1.48) contrast(1.46) hue-rotate(68deg) saturate(1.82) blur(0px);
		clip-path: inset(62% 0 18% 0);
		opacity: 0.7;
	}
	8.75%{
		transform: translate3d(-9px, 2px, 0) skewX(-1.1deg);
		filter: brightness(0.82) contrast(1.5) hue-rotate(28deg) saturate(1.55) blur(0.35px);
		clip-path: inset(28% 14% 44% 12%);
		opacity: 0.8;
	}
	9.4%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		filter: brightness(1) contrast(1) hue-rotate(0deg) saturate(1) blur(0px);
		clip-path: inset(0 0 0 0);
		opacity: 1;
	}
	46%{
		transform: translate3d(14px, 2px, 0) skewX(1.85deg);
		filter: brightness(1.25) contrast(1.3) hue-rotate(44deg) saturate(1.58);
		clip-path: inset(68% 0 12% 0);
		opacity: 0.78;
	}
	46.35%{
		transform: translate3d(-21px, 6px, 0) skewX(-2.5deg);
		filter: brightness(0.48) contrast(1.62) hue-rotate(-72deg) saturate(1.88) blur(0.5px);
		clip-path: inset(26% 0 52% 0);
		opacity: 0.66;
	}
	46.75%{
		transform: translate3d(12px, -3px, 0) skewX(1.35deg);
		filter: brightness(1.38) contrast(1.28) hue-rotate(-34deg) saturate(1.48);
		clip-path: inset(0 12% 0 10%);
		opacity: 0.74;
	}
	47.45%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		filter: brightness(1) contrast(1) hue-rotate(0deg) saturate(1) blur(0px);
		clip-path: inset(0 0 0 0);
		opacity: 1;
	}
	74%{
		transform: translate3d(-13px, -3px, 0) skewX(-1.75deg);
		filter: brightness(0.64) contrast(1.46) hue-rotate(82deg) saturate(1.65);
		clip-path: inset(38% 0 42% 0);
		opacity: 0.75;
	}
	74.3%{
		transform: translate3d(22px, -8px, 0) skewX(2.85deg);
		filter: brightness(1.52) contrast(1.4) hue-rotate(-88deg) saturate(1.72) blur(0.4px);
		clip-path: inset(6% 18% 78% 15%);
		opacity: 0.68;
	}
	74.75%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		filter: brightness(1) contrast(1) hue-rotate(0deg) saturate(1) blur(0px);
		clip-path: inset(0 0 0 0);
		opacity: 1;
	}
	90%{
		transform: translate3d(18px, 8px, 0) skewX(-2.75deg);
		filter: brightness(0.42) contrast(1.68) hue-rotate(98deg) saturate(1.92) blur(0.55px);
		clip-path: inset(48% 0 34% 0);
		opacity: 0.64;
	}
	90.38%{
		transform: translate3d(-25px, -7px, 0) skewX(3deg);
		filter: brightness(1.62) contrast(1.36) hue-rotate(-108deg) saturate(1.78);
		clip-path: inset(8% 0 78% 0);
		opacity: 0.66;
	}
	90.8%{
		transform: translate3d(9px, 3px, 0) skewX(-1.35deg);
		filter: brightness(0.88) contrast(1.42) hue-rotate(36deg) blur(0px);
		clip-path: inset(78% 0 8% 0);
		opacity: 0.82;
	}
	91.5%{
		transform: translate3d(0, 0, 0) skewX(0deg);
		filter: brightness(1) contrast(1) hue-rotate(0deg) saturate(1) blur(0px);
		clip-path: inset(0 0 0 0);
		opacity: 1;
	}
}

/* Flecha scroll encima de la cinta inferior */
.banner-one--spline .down-box{
	position: absolute;
	left: 50%;
	margin-left: -62px;
	bottom: 88px;
	z-index: 9;
	pointer-events: auto;
}

/* Cinta / marquee en el “pie” del hero */
.banner-one-marquee{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 7;
	padding: 16px 0;
	background: linear-gradient(180deg, rgba(2, 6, 23, 0) 0%, rgba(2, 6, 23, 0.88) 40%, rgba(2, 6, 23, 0.96) 100%);
	border-top: none;
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	pointer-events: none;
}

.banner-one-marquee::before{
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 2px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(15, 118, 110, 0.45) 18%,
		rgba(26, 109, 99, 0.85) 50%,
		rgba(15, 118, 110, 0.45) 82%,
		transparent 100%
	);
	pointer-events: none;
}

.banner-one-marquee-viewport{
	overflow: hidden;
	width: 100%;
	mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.banner-one-marquee-track{
	display: flex;
	width: max-content;
	animation: banner-one-marquee-x 38s linear infinite;
}

.banner-one-marquee:hover .banner-one-marquee-track{
	animation-play-state: paused;
}

.banner-one-marquee-segment{
	display: flex;
	align-items: center;
	flex-shrink: 0;
	gap: 2.25rem;
	padding-right: 2.25rem;
	font-family: 'Inter', sans-serif;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.92);
	white-space: nowrap;
}

.banner-one-marquee-dot{
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: var(--accent-metal-mid);
	background-image: var(--bg-accent-metallic-brushed);
	background-size: 40px 40px, 100% 100%;
	background-repeat: repeat, no-repeat;
	background-blend-mode: overlay, normal;
	flex-shrink: 0;
	opacity: 0.9;
}

@keyframes banner-one-marquee-x{
	0%{ transform: translateX(0); }
	100%{ transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce){
	.banner-one-marquee-track{
		animation: none;
		justify-content: center;
		flex-wrap: wrap;
		width: 100% !important;
		max-width: 100%;
	}
	.banner-one-marquee-viewport{
		mask-image: none;
		-webkit-mask-image: none;
	}
	.banner-one-marquee-segment[aria-hidden="true"]{
		display: none;
	}
	.banner-one-marquee-segment{
		justify-content: center;
		flex-wrap: wrap;
		white-space: normal;
		text-align: center;
		row-gap: 0.5rem;
	}
	.banner-one--spline::after,
	.journal-one::after,
	.stats-one::after,
	.page-wrapper.page-wrapper--tv-glitch::after{
		animation: none;
		transform: none;
		filter: none;
		clip-path: none;
		opacity: 0.82;
		mix-blend-mode: overlay;
		background-position: 0 0, 0 0, 0 0, 0 0;
	}

	.loader-wrap.site-loader-glitch::before{
		animation: none;
		opacity: 0.45;
	}

	.site-loader-glitch__noise{
		animation: none;
		opacity: 0.55;
	}

	.site-loader-glitch__distort,
	.site-loader-glitch__flash{
		animation: none;
		opacity: 0.2;
	}

	.site-loader-glitch__logo{
		animation: none;
		filter: none;
	}

	.site-loader-glitch__terminal,
	.site-loader-glitch__dots,
	.site-loader-glitch__cursor{
		animation: none;
	}
}

.banner-one:before{
	position:absolute;
	content:'';
	left:0px;
	top:0px;
	right:0px;
	bottom:0px;
	opacity:0.90;
	background-color:var(--color-four);
}

.banner-one_content{
	position:relative;
	z-index: 2;
}

.banner-one_content-inner{
	position:relative;
}

.banner-one_heading{
	font-weight:700;
	text-align:center;
	margin-bottom:80px;
	color: var(--white-color);
	text-transform:uppercase;
}

.banner-one_text{
	position: relative;
	font-size: 30px;
	line-height: 40px;
	padding-top:20px;
	padding-right:180px;
	color: var(--white-color);
	border-top: none;
}

.banner-one_text::before{
	content: '';
	position: absolute;
	left: 0;
	right: 180px;
	top: 0;
	height: 1px;
	background: linear-gradient(
		90deg,
		var(--accent-metal-dark) 0%,
		var(--accent-metal-light) 45%,
		var(--accent-metal-shine) 100%
	);
	opacity: 0.9;
}

.banner-one_text-two{
	position: relative;
	font-size: 30px;
	line-height: 40px;
	padding-bottom:20px;
	padding-right:180px;
	color: var(--white-color);
	border-bottom:1px solid var(--white-color);
}

.banner-one .down-box{
	position:absolute;
	left:47%;
	bottom:65px;
	z-index:10;
	width:125px;
	height:125px;
	cursor:pointer;
	-webkit-animation: icon-bounce 0.8s ease-out infinite;
    animation: icon-bounce 0.8s ease-out infinite;
}

/*** 

====================================================================
	Services One
====================================================================

***/

.services-one{
	position:relative;
	padding:100px 0px 70px;
	background-color: #ffffff;
	background-image: none;
}

.services-one .sec-title_heading{
	color: var(--accent-metal-dark);
}

/* Icono decorativo del título: visible sobre fondo blanco */
.services-one .sec-title_icon img{
	filter: brightness(0) saturate(100%) invert(14%) sepia(45%) saturate(1200%) hue-rotate(128deg) brightness(0.55) contrast(1.05);
	opacity: 0.92;
}

.service-block_one{
	position:relative;
	margin-bottom:30px;
}

.service-block_one-inner{
	position:relative;
	padding:35px 40px;
	border: 1px solid rgba(var(--color-two-rgb), 0.18);
}

.service-block_one-inner:before{
	position:absolute;
	content:'';
	left:-1px;
	top:-1px;
	right:-1px;
	bottom:-1px;
	opacity:0;
	transform:scale(1,0.2);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
	background-color: rgba(var(--main-color-rgb), 0.08);
}

.service-block_one-inner:hover::before{
	opacity:1;
	transform:scale(1,1);
}

.service-block_one-intro{
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	padding-right: 16px;
}

.service-block_one-index{
	display: block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.14em;
	color: rgba(var(--color-two-rgb), 0.5);
	margin-bottom: 10px;
	font-family: 'Inter', sans-serif;
}

.service-block_one-heading{
	position:relative;
	font-weight:400;
	color: var(--accent-metal-dark);
}

.service-block_one-heading a{
	position:relative;
	color: var(--accent-metal-dark);
}

.service-block_one-excerpt{
	position: relative;
	margin: 22px 0 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.65;
	font-weight: 400;
	color: rgba(var(--color-two-rgb), 0.92);
	max-width: 42em;
}

.service-block_one-icon{
	position:relative;
	flex-shrink: 0;
}

.services-one .service-block_one-icon img{
	display: block;
	filter: brightness(0) saturate(100%) invert(14%) sepia(45%) saturate(1200%) hue-rotate(128deg) brightness(0.55) contrast(1.05);
	opacity: 0.92;
}

/* Iconos en línea (SVG) — servicios index */
.services-one .service-block_one-icon-svg{
	display: block;
	width: 44px;
	height: 44px;
	flex-shrink: 0;
	color: var(--accent-metal-dark);
	opacity: 0.88;
}

/*** 

====================================================================
	Gallery One
====================================================================

***/

.gallery-one{
	position:relative;
	padding:100px 0px 70px;
	background-color: var(--color-four);
}

.gallery-projects-hint{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0 0 22px;
	padding: 0 12px;
	text-align: center;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.04em;
	color: rgba(var(--white-color-rgb), 0.55);
}

.gallery-projects-hint i{
	color: var(--main-color);
	opacity: 0.95;
}

.gallery-projects-wrap{
	position: relative;
	padding: 0 48px;
}

.gallery-projects-nav{
	position: absolute;
	top: 44%;
	z-index: 8;
	width: 42px;
	height: 42px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid rgba(var(--white-color-rgb), 0.35);
	border-radius: 50%;
	background: rgba(var(--color-four-rgb), 0.72);
	color: var(--white-color);
	font-size: 15px;
	line-height: 1;
	cursor: pointer;
	-webkit-transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease, opacity 0.25s ease;
	transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease, opacity 0.25s ease;
}

.gallery-projects-nav:hover{
	border-color: rgba(var(--main-color-rgb), 0.85);
	background: rgba(var(--main-color-rgb), 0.22);
	color: var(--white-color);
}

.gallery-projects-nav.swiper-button-disabled{
	opacity: 0.22;
	pointer-events: none;
	cursor: default;
}

.gallery-projects-prev{
	left: 0;
}

.gallery-projects-next{
	right: 0;
}

.gallery-projects-swiper{
	position: relative;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 40px;
}

@media (hover: hover) and (pointer: fine){
	.gallery-projects-swiper{
		cursor: url('../images/cursors/scroll-horizontal.svg') 32 32, grab;
	}

	.gallery-projects-swiper a,
	.gallery-projects-swiper button,
	.gallery-projects-swiper .swiper-pagination-bullet{
		cursor: pointer;
	}
}

.gallery-projects-swiper .swiper-slide{
	height: auto;
	box-sizing: border-box;
}

.gallery-projects-swiper .gallery-block_one{
	margin-bottom: 0;
}

.gallery-projects-swiper .swiper-pagination{
	bottom: 4px;
}

.gallery-projects-swiper .swiper-pagination-bullet{
	width: 8px;
	height: 8px;
	background: rgba(var(--white-color-rgb), 0.4);
	opacity: 1;
}

.gallery-projects-swiper .swiper-pagination-bullet-active{
	background: var(--main-color);
}

@media (min-width: 992px){
	.gallery-projects-swiper .swiper-pagination{
		display: none;
	}
}

.gallery-block_one{
	position:relative;
	margin-bottom:30px;
}

.gallery-block_one-inner{
	position:relative;
}

.gallery-block_one-content{
	position:relative;
	padding:25px 25px;
	border: 1px solid rgba(var(--white-color-rgb), 0.20);
}

.gallery-block_one-content:before{
	position:absolute;
	content:'';
	left:-1px;
	top:-1px;
	right:-1px;
	bottom:-1px;
	opacity:0;
	transform:scale(0.2,1);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
	background-color: var(--accent-metal-mid);
	background-image: var(--bg-accent-metallic-up);
	background-size: var(--accent-metallic-tile-size), 100% 100%;
	background-repeat: repeat, no-repeat;
	background-blend-mode: overlay, normal;
}

.gallery-block_one-inner:hover .gallery-block_one-content:before{
	opacity:1;
	transform:scale(1,1);
}

.gallery-block_one-image{
	position:relative;
	overflow:hidden;
	margin-bottom:25px;
	aspect-ratio: 4 / 3;
}

.gallery-block_one-inner:hover .gallery-block_one-image:before{
	-webkit-animation: shine 1s;
	animation: shine 1s;
}

.gallery-block_one-image:before{
	position: absolute;
	top: 0;
	left: -85%;
	z-index: 99;
	display: block;
	content: '';
	width: 50%;
	height: 100%;
	background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .7) 100%);
	background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, .7)));
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .7) 100%);
	-webkit-transform: skewX(-25deg);
	-ms-transform: skewX(-25deg);
	transform: skewX(-25deg);
}

.gallery-block_one-image a{
	display: block;
	width: 100%;
	height: 100%;
	line-height: 0;
}

.gallery-block_one-image img{
	position:relative;
	width:100%;
	height:100%;
	display:block;
	object-fit: cover;
	object-position: center center;
}

.gallery-block_one-image video{
	position:relative;
	width:100%;
	height:100%;
	display:block;
	object-fit: cover;
	object-position: center center;
}

.gallery-block_one-title{
	position:relative;
	font-size:18px;
	text-transform:capitalize;
	color:rgba(var(--white-color-rgb), 0.50);
}

.gallery-block_one-heading{
	position:relative;
	font-weight: 600;
	margin-top:10px;
	text-transform:uppercase;
}

.gallery-block_one-heading a{
	position:relative;
	color:rgba(var(--white-color-rgb), 1);
}

.gallery-block_one-heading a:hover{
	color: rgb(255 255 255);
}

.service-block_one-more{
	position:relative;
	margin-left:25px;
}

.service-block_one-more .view-more{
	position:relative;
	font-size:16px;
	line-height:1em;
	display:inline-block;
	padding:9px 45px 9px 10px;
	color:var(--color-four);
	text-transform:uppercase;
	background-color:var(--white-color);
}

.service-block_one-more .view-more i{
	position:absolute;
	right:1px;
	top:1px;
	bottom:1px;
	width:35px;
	font-size:18px;
	line-height:33px;
	color:var(--white-color);
	background-color:var(--color-four);
}

/*** 

====================================================================
	Clients One
====================================================================

***/

.clients-one{
	position: relative;
	padding: 100px 0 70px;
	background-color: #ffffff;
}

.clients-one .sec-title_heading{
	color: var(--accent-metal-dark);
}

.clients-one .sec-title_icon img{
	filter: brightness(0) saturate(100%) invert(14%) sepia(45%) saturate(1200%) hue-rotate(128deg) brightness(0.55) contrast(1.05);
	opacity: 0.92;
}

.clients-one-lead{
	max-width: 42em;
	margin: -18px 0 36px;
	font-family: 'Inter', sans-serif;
	font-size: 15px;
	line-height: 1.65;
	font-weight: 400;
	color: rgba(var(--color-two-rgb), 0.72);
}

.client-block_one{
	position: relative;
	margin-bottom: 30px;
}

.client-block_one-inner{
	position: relative;
	padding: 28px 32px 32px;
	border: 1px solid rgba(var(--color-two-rgb), 0.18);
	-webkit-transition: border-color 0.35s ease;
	transition: border-color 0.35s ease;
}

.client-block_one-inner:before{
	position: absolute;
	content: '';
	left: -1px;
	top: -1px;
	right: -1px;
	bottom: -1px;
	opacity: 0;
	transform: scale(1, 0.2);
	-webkit-transition: all 500ms ease;
	transition: all 500ms ease;
	background-color: rgba(var(--main-color-rgb), 0.08);
}

.client-block_one-inner:hover:before{
	opacity: 1;
	transform: scale(1, 1);
}

.client-block_one-inner:hover{
	border-color: rgba(var(--main-color-rgb), 0.35);
}

.client-block_one-logo{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 72px;
	margin-bottom: 18px;
}

.client-block_one-logo img{
	display: block;
	max-width: 200px;
	max-height: 56px;
	width: auto;
	height: auto;
	object-fit: contain;
}

.client-block_one-logo:has(img) .client-block_one-fallback{
	display: none;
}

.client-block_one-fallback{
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 120px;
	min-height: 56px;
	padding: 10px 16px;
	font-family: 'Inter', sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(var(--color-two-rgb), 0.38);
	border: 1px dashed rgba(var(--color-two-rgb), 0.28);
	border-radius: 2px;
}

.client-block_one-name{
	position: relative;
	margin: 0;
	font-weight: 500;
	font-size: 18px;
	color: var(--accent-metal-dark);
}

.client-block_one-tag{
	position: relative;
	margin: 8px 0 0;
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	line-height: 1.5;
	color: rgba(var(--color-two-rgb), 0.55);
}

/*** 

====================================================================
	Allies One
====================================================================

***/

.allies-one{
	position: relative;
	padding: 52px 0 48px;
	background-color: var(--color-four);
	overflow: hidden;
}

.allies-one-head{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 12px 18px;
	margin-bottom: 8px;
	text-align: center;
}

.allies-one_heading{
	position: relative;
	margin: 0;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--white-color);
}

.allies-one_icon{
	line-height: 0;
}

.allies-one_icon img{
	display: block;
	width: auto;
	height: 28px;
	opacity: 0.9;
	filter: brightness(0) invert(1);
}

.allies-one-lead{
	margin: 0 0 28px;
	text-align: center;
	font-family: 'Inter', sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	color: rgba(var(--white-color-rgb), 0.52);
}

.allies-logos-swiper{
	position: relative;
	margin-left: auto;
	margin-right: auto;
	padding: 4px 0 8px;
}

.allies-logos-swiper .swiper-slide{
	height: auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

.allies-slide-inner{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	padding: 8px 12px;
	box-sizing: border-box;
}

.allies-slide-inner img{
	display: block;
	max-width: 100%;
	max-height: 40px;
	width: auto;
	height: auto;
	object-fit: contain;
	opacity: 0.78;
	filter: brightness(0) invert(1);
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
}

.allies-slide-inner:hover img{
	opacity: 1;
}

.allies-slide-inner img.allies-logo--color{
	filter: none;
	opacity: 0.92;
}

.allies-slide-inner:has(img) .allies-slide-fallback{
	display: none;
}

.allies-slide-fallback{
	font-family: 'Inter', sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(var(--white-color-rgb), 0.35);
	border: 1px dashed rgba(var(--white-color-rgb), 0.28);
	border-radius: 2px;
	padding: 10px 14px;
}

/*** 

====================================================================
	journal One
====================================================================

***/

.journal-one{
	position:relative;
	padding:100px 0px 70px;
	background-attachment:fixed;
	background-size:cover;
	overflow: hidden;
}

.journal-one:before{
	position:absolute;
	content:'';
	left:0px;
	top:0px;
	right:0px;
	bottom:0px;
	z-index: 1;
	opacity:0.70;
	background-color:var(--color-four);
}

.journal-one .auto-container{
	position: relative;
	z-index: 6;
}

.journal-one .journal-block_one{
	width:20%;
	float:left;
	padding:0px 15px;
}

/* Blog en home: carrusel Swiper (misma base que gallery-projects-swiper) */
.journal-one .journal-one-swiper .journal-block_one{
	width: 100%;
	float: none;
	padding: 0;
	margin-bottom: 0;
}

@media (hover: hover) and (pointer: fine){
	.journal-one-swiper{
		cursor: url('../images/cursors/scroll-horizontal.svg') 32 32, grab;
	}

	.journal-one-swiper a,
	.journal-one-swiper button,
	.journal-one-swiper .swiper-pagination-bullet{
		cursor: pointer;
	}
}

.journal-block_one{
	position:relative;
	margin-bottom:30px;
}

.journal-block_one-inner{
	position:relative;
	padding:25px 25px;
	background-color:rgba(var(--black-color-rgb), 0.50);
}

.journal-block_one-inner:before{
	position:absolute;
	content:'';
	left:-1px;
	top:-1px;
	right:-1px;
	bottom:-1px;
	opacity:0;
	transform:scale(0.2,1);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
	background-color: var(--accent-metal-mid);
	background-image: var(--bg-accent-metallic-up);
	background-size: var(--accent-metallic-tile-size), 100% 100%;
	background-repeat: repeat, no-repeat;
	background-blend-mode: overlay, normal;
}

.journal-block_one-inner:hover::before{
	opacity:1;
	transform:scale(1,1);
}

.journal-block_one-title{
	position:relative;
	font-size:14px;
	padding:5px 15px;
	text-transform:capitalize;
	color:var(--white-color);
	display:inline-block;
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
	border: 1px solid rgba(var(--white-color-rgb), 0.50);
}

.journal-block_one-inner:hover .journal-block_one-title{
	color:var(--white-color);
	border-color:var(--color-four);
	background-color:var(--color-four);
}

.journal-block_one-heading{
	position:relative;
	font-weight:400;
	margin-top:18px;
	max-width:220px;
	margin-bottom:110px;
}

.journal-block_one-heading a{
	position:relative;
	color:var(--white-color);
}

.journal-block_one-arrow{
	position:absolute;
	right:10px;
	bottom:15px;
	line-height:1em;
	font-size:30px;
	display:inline-block;
	color:var(--white-color);
	transform:rotate(45deg);
}

.journal-block_one-arrow:hover{
	color:var(--color-four);
}

/*** 

====================================================================
	Testimonial One
====================================================================

***/

.testimonial-one{
	position:relative;
	padding:100px 0px 70px;
	background-color:#ffffff;
	background-image:none;
}

.testimonial-one .sec-title_heading{
	color: var(--accent-metal-dark);
}

.testimonial-one .sec-title_icon img{
	filter: brightness(0) saturate(100%) invert(14%) sepia(45%) saturate(1200%) hue-rotate(128deg) brightness(0.55) contrast(1.05);
	opacity: 0.92;
}

.testimonial-one.style-two{
	padding-top:0px;
	background-color:#ffffff;
	background-image:none;
}

.testimonial-block_one{
	position:relative;
	margin-bottom:30px;
}

.testimonial-block_one-inner{
	position:relative;
}

.testimonial-block_one-content{
	position:relative;
	padding:25px 25px;
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
	border: 1px solid rgba(var(--color-two-rgb), 0.18);
}

.testimonial-block_one-content:before{
	position:absolute;
	content:'';
	left:0px;
	top:0px;
	right:0px;
	bottom:0px;
	opacity:0;
	background-color:rgba(var(--main-color-rgb), 0.10);
	
	-webkit-transition: all 900ms ease;
    -ms-transition: all 900ms ease;
    -o-transition: all 900ms ease;
    transition: all 900ms ease;
    -webkit-transform: perspective(400px) rotateX(-90deg);
    -moz-transform: perspective(400px) rotateX(-90deg);
    -ms-transform: perspective(400px) rotateX(-90deg);
    -o-transform: perspective(400px) rotateX(-90deg);
    transform: perspective(400px) rotateX(-90deg);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    -o-transform-origin: top;
    transform-origin: top;
    -ms-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

.testimonial-block_one-inner:hover .testimonial-block_one-content:before{
	opacity:1;
	-webkit-transform: perspective(400px) rotateX(0deg);
    -moz-transform: perspective(400px) rotateX(0deg);
    -ms-transform: perspective(400px) rotateX(0deg);
    -o-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
}

.testimonial-block_one-author{
	position:relative;
	width:70px;
	height:70px;
	display:inline-block;
}

.testimonial-block_one-name{
	position:relative;
	font-weight:500;
	margin-top:25px;
	color:var(--accent-metal-dark);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.testimonial-block_one-inner:hover .testimonial-block_one-designation,
.testimonial-block_one-inner:hover .testimonial-block_one-name{
	color:var(--main-color);
}

.testimonial-block_one-designation{
	position:relative;
	font-weight:400;
	font-size:15px;
	margin-top:5px;
	opacity:0.65;
	color:rgba(var(--color-two-rgb), 0.95);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.testimonial-block_one-number{
	position:relative;
	font-weight:700;
	font-size:40px;
	margin-top:30px;
	opacity:0.14;
	text-align:right;
	color:var(--accent-metal-dark);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.testimonial-block_one-inner:hover .testimonial-block_one-number{
	opacity:0.5;
	color:var(--main-color);
}

.testimonial-block_one-lower{
	position:relative;
	margin-left:30px;
	margin-top:25px;
	font-size:18px;
	line-height:28px;
	padding-left:70px;
	color:rgba(var(--color-two-rgb), 0.92);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.testimonial-block_one-inner:hover .testimonial-block_one-lower{
	color:var(--accent-metal-dark);
}

.testimonial-block_one-lower .quote_icon{
	position:absolute;
	left:0px;
	top:6px;
	line-height:1em;
}

.testimonial-block_one-lower .quote_icon img{
	filter: brightness(0) saturate(100%) invert(14%) sepia(45%) saturate(1200%) hue-rotate(128deg) brightness(0.55) contrast(1.05);
	opacity: 0.88;
}

/*** 

====================================================================
	stats One
====================================================================

***/

.stats-one{
	position:relative;
	padding:100px 0px 100px;
	background-attachment:fixed;
	background-size:cover;
	overflow: hidden;
}

.stats-one.style-two::before{
	display:none;
}

.stats-one:before{
	position:absolute;
	content:'';
	left:0px;
	top:0px;
	right:0px;
	bottom:0px;
	z-index: 1;
	opacity:0.90;
	background-color:var(--color-four);
}

.stats-one .auto-container{
	position: relative;
	z-index: 6;
}

.stats-one .inner-container{
	position:relative;
	overflow:hidden;
	border: 1px solid rgba(var(--white-color-rgb), 1);
	border-bottom:0px;
}

.stats-one .counter-block_one{
	float:left;
	padding:0px 0px;
}

.counter-block_one{
	position:relative;
}

.counter-block_one-inner{
	position:relative;
	padding:35px 55px;
	border-right: 1px solid rgba(var(--white-color-rgb), 1);
	border-bottom: 1px solid rgba(var(--white-color-rgb), 1);
}

.counter-block_one-inner:before{
	position:absolute;
	content:'';
	right:20px;
	top:20px;
	width:15px;
	height:15px;
	border-radius:50px;
	background-color: var(--accent-metal-mid);
	background-image: var(--bg-accent-metallic-up);
	background-size: var(--accent-metallic-tile-size), 100% 100%;
	background-repeat: repeat, no-repeat;
	background-blend-mode: overlay, normal;
}

.counter-block_one-counter{
	position:relative;
	font-size:75px;
	font-weight:500;
	line-height:1em;
	color:var(--white-color);
}

.counter-block_one-text{
	position:relative;
	font-size:20px;
	margin-top:0px;
	color:var(--white-color);
	text-transform:capitalize;
}

.stats-one_contact-column{
	padding:0px 0px;
	float:left;
}

.stats-one .stats-one_contact-column{
	position:relative;
}

.stats-one_contact-inner{
	position:relative;
	padding:35px 35px;
	background-color: var(--accent-metal-mid);
	background-image: var(--bg-accent-metallic-up);
	background-size: var(--accent-metallic-tile-size), 100% 100%;
	background-repeat: repeat, no-repeat;
	background-blend-mode: overlay, normal;
}

.stats-one_contact-content{
	position:relative;
	padding:19px 30px 19px 80px;
	background-color:var(--color-four);
}

.stats-one_contact-icon{
	position:absolute;
	left:25px;
	top:40px;
	font-size:34px;
	line-height:1em;
	color:var(--white-color);
}

.stats-one_contact-content h3{
	position:relative;
	font-size:30px;
	font-weight:500;
	color:var(--white-color);
	text-transform:uppercase;
}

.stats-one_contact-content .text{
	position:relative;
	font-size:20px;
	font-weight:400;
	color:var(--white-color);
	text-transform:capitalize;
}

/*** 

====================================================================
	Awards One
====================================================================

***/

.awards-one{
	position:relative;
	padding:100px 0px 100px;
	background-color:var(--color-four);
}

.awards-one.style-two{
	padding-top:0px;
	background:none;
}

.awards-block_one{
	position:relative;
	margin-bottom:10px;
}

.awards-block_one-inner{
	position:relative;
	padding:10px 10px;
	min-height:122px;
	border: 1px solid rgba(var(--white-color-rgb), 0.10);
}

.awards-block_one-inner:before{
	position:absolute;
	content:'';
	left:-1px;
	top:-1px;
	right:-1px;
	bottom:-1px;
	opacity:0;
	transform:scale(1,0.2);
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
	background-color: var(--accent-metal-mid);
	background-image: var(--bg-accent-metallic-up);
	background-size: var(--accent-metallic-tile-size), 100% 100%;
	background-repeat: repeat, no-repeat;
	background-blend-mode: overlay, normal;
}

.awards-block_one-inner:hover::before{
	opacity:1;
	transform:scale(1,1);
}

.awards-block_one-content{
	position:relative;
	padding-top:25px;
	padding-left:125px;
}

.awards-block_one-number{
	position:absolute;
	left:0px;
	top:0px;
	width:100px;
	height:100px;
	font-size:40px;
	line-height:98px;
	text-align:center;
	display:inline-block;
	color:var(--white-color);
	background-color:var(--black-color);
	border: 1px solid rgba(var(--white-color-rgb), 0.10);
}

.awards-block_one-title{
	position:relative;
	font-weight:400;
	color:var(--white-color);
	text-transform:uppercase;
}

.awards-block_one-title span{
	position:relative;
	font-size:17px;
	top:-5px;
	opacity:0;
	margin-left:10px;
	-webkit-transition:all 500ms ease;
	-moz-transition:all 500ms ease;
	-ms-transition:all 500ms ease;
	-o-transition:all 500ms ease;
	transition:all 500ms ease;
}

.awards-block_one-inner:hover .awards-block_one-title span{
	opacity:1;
}

.awards-block_one-arrow{
	position:absolute;
	right:25px;
	top:25px;
	z-index:1;
	font-size:44px;
	line-height:1em;
	color:var(--white-color);
}

.awards-block_one-link{
	position:absolute;
	left:0px;
	top:0px;
	right:0px;
	bottom:0px;
	z-index:10;
	display:block;
}

/*** 

====================================================================
	Page Title
====================================================================

***/

.page-title{
	position:relative;
	text-align:center;
	padding:150px 0px 90px;
}

.page-title_heading{
	position:relative;
	font-size:120px;
	line-height:1em;
	color:var(--white-color);
	text-transform:uppercase;
}

.page-title_text{
	position:relative;
	font-size:18px;
	margin-top:10px;
	color:var(--white-color);
}

/*** 

====================================================================
	Team One
====================================================================

***/

.team-one{
	position:relative;
	padding:0px 0px 0px;
}

.team-one .title-box{
	position:relative;
}

.team-one .title-box h2{
	position:relative;
	font-size:40px;
	font-weight:400;
	line-height:50px;
	max-width:670px;
	margin-bottom:40px;
	color:var(--white-color);
}

.team-block_one{
	position:relative;
	margin-bottom:40px;
}

.team-block_one-inner{
	position:relative;
	padding-left:25px;
	padding-bottom:40px;
}

.team-block_one-inner:before{
	position:absolute;
	content:'';
	left:0px;
	top:45px;
	right:0px;
	bottom:0px;
	border: 1px solid rgba(var(--white-color-rgb), 0.10);
}

.team-block_one-socials{
	position:relative;
	width:172px;
	margin-top:70px;
	display:inline-block;
	padding:10px 9px 4px;
	background-color:var(--black-color);
	border: 1px solid rgba(var(--white-color-rgb), 0.10);
}

.team-block_one-socials a{
	position:relative;
	width:70px;
	height:40px;
	margin:0px 2px 5px;
	line-height:38px;
	text-align:center;
	display:inline-block;
	border: 1px solid rgba(var(--white-color-rgb), 0.10);
}

.team-block_one-socials a img{
	position:relative;
	width:24px;
	top:-1px;
}

.team-block_one-socials a:hover{
	
}

.team-block_one-image{
	position:absolute;
	right:30px;
	bottom:0px;
}

.team-block_one-heading{
	position:relative;
	font-weight:500;
	margin-top:35px;
}

.team-block_one-heading a{
	position:relative;
	color:var(--white-color);
}

.team-block_one-designation{
	position:relative;
	font-size:16px;
	margin-top:0px;
	opacity:0.50;
	color:var(--white-color);
}

/*** 

====================================================================
	Contact One
====================================================================

***/

.contact-one{
	position:relative;
	padding:30px 0px 70px;
}

.contact-one_info-column{
	position:relative;
	margin-bottom:30px;
}

.contact-one_info-outer{
	position:relative;
}

.contact-one_heading{
	position:relative;
	font-size:40px;
	font-weight:400;
	color:var(--white-color);
}

.contact-one_list{
	position:relative;
	margin-top:25px;
	padding:20px 0px;
	border-top: 1px solid rgba(var(--white-color-rgb), 0.50);
	border-bottom: 1px solid rgba(var(--white-color-rgb), 0.50);
}

.contact-one_list li{
	position:relative;
	font-size:22px;
	line-height:32px;
	margin-bottom:20px;
	color:var(--white-color);
}

.contact-one_list li a{
	position:relative;
	color:var(--white-color);
}

.contact-one_list li:nth-child(2){
	margin-bottom:0px;
}

.contact-one_list li:last-child{
	margin-bottom:0px;
}

.contact-one_socials{
	position:relative;
	margin-top:25px;
}

.contact-one_socials li{
	position:relative;
	margin-right:10px;
	display:inline-block;
}

.contact-one_socials li a{
	position: relative;
    font-size: 18px;
    font-weight: 400;
    color: var(--white-color);
}

.contact-one_form-column{
	position:relative;
	margin-bottom:30px;
}

.contact-one_form-outer{
	position:relative;
}

.contact-one_form-outer h3{
	position:relative;
	font-weight: 400;
	margin-bottom:20px;
    color: var(--white-color);
}


/*** 

====================================================================
	Contact Form
====================================================================

***/

.contact-form .form-group{
	position: relative;
	margin-bottom:20px;
}

.contact-form .form-group:last-child{
	margin-bottom:0px;
}

.contact-form .form-group input[type="text"],
.contact-form .form-group input[type="password"],
.contact-form .form-group input[type="tel"],
.contact-form .form-group input[type="email"],
.contact-form .form-group select{
	position:relative;
	display:block;
	width:100%;
	line-height:28px;
	padding:10px 20px;
	height:60px;
	border-radius:0px;
	font-weight: 400;
	font-size:20px;
	color:var(--white-color);
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	transition:all 300ms ease;
	background:none;
	border:1px solid rgba(var(--white-color-rgb), 0.10);
}

.contact-form .form-group textarea::-webkit-input-placeholder,
.contact-form .form-group input::-webkit-input-placeholder{
	color:var(--white-color);
}

.contact-form .form-group input[type="text"]:focus,
.contact-form .form-group input[type="password"]:focus,
.contact-form .form-group input[type="tel"]:focus,
.contact-form .form-group input[type="email"]:focus,
.contact-form .form-group select:focus,
.contact-form .form-group textarea:focus{
	border-color:var(--white-color);
}

.contact-form .form-group textarea{
	position:relative;
	display:block;
	width:100%;
	font-size:20px;
	line-height:24px;
	padding:15px 20px 25px;
	color:var(--white-color);
	height:180px;
	resize:none;
	border-radius:0px;
	font-weight: 400;
	-webkit-transition:all 300ms ease;
	-ms-transition:all 300ms ease;
	-o-transition:all 300ms ease;
	-moz-transition:all 300ms ease;
	transition:all 300ms ease;
	background:none;
	border:1px solid rgba(var(--white-color-rgb), 0.10);
}

.contact-form .form-group button{
	margin-top: 0px;
	position: relative;
    padding: 17px 40px;
    border-radius: 0px;
    font-weight: 400;
    font-size: 20px;
	color:var(--white-color);
    display: inline-block;
	text-transform:uppercase;
    background-color: var(--accent-metal-mid);
    background-image: var(--bg-accent-metallic-up);
    background-size: var(--accent-metallic-tile-size), 100% 100%;
    background-repeat: repeat, no-repeat;
    background-blend-mode: overlay, normal;
}

.contact-form .form-group button:hover{
	background-color: var(--accent-metal-dark);
	background-image: var(--bg-accent-metallic-deep);
	background-size: var(--accent-metallic-tile-size), 100% 100%;
	background-repeat: repeat, no-repeat;
	background-blend-mode: overlay, normal;
}

.contact-form input.error,
.contact-form select.error,
.contact-form textarea.error{
	border-color:#ff0000 !important;	
}

.contact-form label.error{
	display:block;
	line-height:24px;
	padding:5px 0px 0px;
	margin:0px;
	text-transform:uppercase;
	font-size:12px;
	color:#ff0000;
	font-weight:500;	
}

/*** 

====================================================================
	journal One
====================================================================

***/

.journal-two{
	position:relative;
	padding:30px 0px 70px;
}

.journal-two__cell{
	margin-bottom: 24px;
}

.journal-two .journal-block_one{
	float: none;
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin-bottom: 0;
}

.journal-two .journal-block_one-heading{
	max-width: none;
}

/*** 

====================================================================
	journal Detail
====================================================================

***/

.journal-detail{
	position:relative;
	padding:180px 0px 50px;
}

.journal-detail .column{
	position:relative;
	margin-bottom:30px;
}

.journal-detail_image{
	position:relative;
	padding-right:30px;
	margin-bottom:30px;
}

.journal-detail_image img{
	position:relative;
	width:100%;
	display:block;
}

.journal-detail_title{
	position:relative;
	font-weight:400;
	font-size:50px;
	line-height:60px;
	margin-bottom:15px;
	color:var(--white-color);
}

.journal-detail p{
	position:relative;
	font-size:18px;
	line-height:28px;
	margin-bottom:15px;
	color:var(--white-color);
}

/*** 

====================================================================
	Single Work
====================================================================

***/

.single-work{
	position:relative;
	padding:180px 0px 50px;
}

.single-work .column{
	position:relative;
	margin-bottom:30px;
}

.single-work_image{
	position:relative;
	padding-right:30px;
	margin-bottom:30px;
}

.single-work_image img{
	position:relative;
	width:100%;
	display:block;
}

.single-work_title{
	position:relative;
	font-size:60px;
	font-weight:600;
	line-height:70px;
	margin-bottom:15px;
	color:var(--white-color);
	text-transform:uppercase;
}

.single-work p{
	position:relative;
	font-size:18px;
	line-height:28px;
	margin-bottom:15px;
	color:var(--white-color);
}

.single-work_list{
	position:relative;
	margin-top:30px;
	border:1px solid rgba(var(--white-color-rgb), 1);
	border-bottom:0px;
}

.single-work_list li{
	position:relative;
	padding:20px 20px;
	font-size:26px;
	font-weight:500;
	color:var(--white-color);
	text-transform:uppercase;
	border-bottom:1px solid rgba(var(--white-color-rgb), 1);
}

.single-work_list li span{
	position:relative;
	display:block;
	font-size:18px;
	margin-top:6px;
	text-transform:capitalize;
}

/* Ficha proyecto interna: hero + texto + malla full width */
.page-wrapper--project-interior{
	background-color:#020617;
	background-image:none !important;
}
.project-hero{
	position:relative;
	min-height:clamp(300px, 50vh, 620px);
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
	display:flex;
	align-items:flex-end;
	padding:150px 0 52px;
	margin:0;
	box-sizing:border-box;
}
.project-hero__overlay{
	position:absolute;
	inset:0;
	background:linear-gradient(180deg, rgba(2, 6, 23, 0.25) 0%, rgba(2, 6, 23, 0.55) 38%, rgba(2, 6, 23, 0.92) 100%);
	pointer-events:none;
}
.project-hero__inner{
	position:relative;
	z-index:1;
}
.project-hero__title{
	position:relative;
	font-size:clamp(28px, 4.2vw, 56px);
	font-weight:600;
	line-height:1.08;
	margin:0 0 18px;
	color:var(--white-color);
	text-transform:uppercase;
	letter-spacing:0.02em;
}
.project-hero__categories{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	gap:10px 12px;
}
.project-hero__cat{
	display:inline-block;
	margin:0;
	padding:9px 16px;
	border:1px solid rgba(var(--white-color-rgb), 0.42);
	font-size:11px;
	font-weight:600;
	letter-spacing:0.14em;
	text-transform:uppercase;
	color:rgba(var(--white-color-rgb), 0.95);
	line-height:1.2;
}
/* Información: flujo normal en móvil; panel lateral desplegable en PC */
.project-sidebar-backdrop{
	display:none;
}
.project-sidebar-tab{
	display:none;
}
.project-sidebar{
	position:relative;
	width:100%;
	padding:40px 0 32px;
	margin:0;
	box-sizing:border-box;
}
.project-sidebar__panel{
	position:relative;
}
.project-sidebar__head{
	display:none;
}
.project-sidebar__title{
	margin:0;
	font-size:15px;
	font-weight:600;
	letter-spacing:0.12em;
	text-transform:uppercase;
	color:var(--white-color);
}
.project-sidebar__body{
	max-width:1200px;
	margin:0 auto;
	padding-left:15px;
	padding-right:15px;
	box-sizing:border-box;
}
.project-sidebar .single-work_list{
	margin-top:24px;
}
.project-sidebar p{
	position:relative;
	font-size:18px;
	line-height:28px;
	margin-bottom:15px;
	color:var(--white-color);
}
.project-sidebar__close{
	flex-shrink:0;
	width:44px;
	height:44px;
	padding:0;
	border:1px solid rgba(var(--white-color-rgb), 0.35);
	background:rgba(0,0,0,0.35);
	color:#fff;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:18px;
	line-height:1;
	transition:background 0.2s ease, border-color 0.2s ease;
}
.project-sidebar__close:hover,
.project-sidebar__close:focus{
	background:rgba(255,255,255,0.1);
	border-color:rgba(var(--white-color-rgb), 0.55);
	outline:none;
}
@media (min-width:992px){
	.project-sidebar-backdrop{
		display:block;
		position:fixed;
		inset:0;
		z-index:10000000;
		background:rgba(2,6,23,0.55);
		opacity:0;
		visibility:hidden;
		pointer-events:none;
		transition:opacity 0.3s ease, visibility 0.3s ease;
	}
	.project-sidebar-backdrop.is-visible{
		opacity:1;
		visibility:visible;
		pointer-events:auto;
	}
	.project-sidebar-tab{
		display:inline-flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		gap:10px;
		position:fixed;
		right:0;
		top:50%;
		transform:translateY(-50%);
		z-index:10000001;
		min-height:120px;
		width:46px;
		padding:16px 6px;
		margin:0;
		border:none;
		border-radius:10px 0 0 10px;
		background:rgba(2,6,23,0.94);
		border:1px solid rgba(var(--white-color-rgb), 0.2);
		border-right:none;
		color:var(--white-color);
		cursor:pointer;
		font-size:10px;
		font-weight:700;
		letter-spacing:0.1em;
		text-transform:uppercase;
		line-height:1.25;
		transition:background 0.2s ease, opacity 0.25s ease, visibility 0.25s ease;
	}
	.project-sidebar-tab:hover,
	.project-sidebar-tab:focus{
		background:rgba(var(--main-color-rgb), 0.22);
		outline:none;
	}
	.project-sidebar-tab__icon{
		font-size:20px;
		line-height:1;
	}
	.project-sidebar-tab__text{
		writing-mode:vertical-rl;
		transform:rotate(180deg);
		white-space:nowrap;
	}
	body.project-sidebar-open .project-sidebar-tab{
		opacity:0;
		visibility:hidden;
		pointer-events:none;
	}
	.project-sidebar{
		position:fixed;
		top:0;
		right:0;
		width:min(440px, 42vw);
		max-width:100%;
		height:100vh;
		height:100dvh;
		z-index:10000001;
		padding:0;
		transform:translateX(100%);
		visibility:hidden;
		pointer-events:none;
		transition:transform 0.36s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.36s ease;
	}
	.project-sidebar.project-sidebar--open{
		transform:translateX(0);
		visibility:visible;
		pointer-events:auto;
	}
	.project-sidebar__panel{
		height:100%;
		overflow-y:auto;
		overflow-x:hidden;
		-webkit-overflow-scrolling:touch;
		background:rgba(2,6,23,0.98);
		border-left:1px solid rgba(var(--white-color-rgb), 0.15);
		box-shadow:-12px 0 40px rgba(0,0,0,0.35);
	}
	.project-sidebar__head{
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:12px;
		position:sticky;
		top:0;
		z-index:2;
		padding:88px 24px 18px 28px;
		margin:0;
		background:linear-gradient(180deg, rgba(2,6,23,1) 0%, rgba(2,6,23,0.96) 70%, rgba(2,6,23,0) 100%);
		border-bottom:1px solid rgba(var(--white-color-rgb), 0.08);
	}
	.project-sidebar__body{
		max-width:none;
		padding:12px 28px 56px 32px;
	}
	body.project-sidebar-open{
		overflow:hidden;
	}
}
.project-media-fullbleed{
	width:100%;
	margin:0;
	padding:0;
	overflow:hidden;
	line-height:0;
}
.project-material-grid--fullbleed{
	grid-template-columns:repeat(4, minmax(0, 1fr));
	gap:0;
	margin:0;
	width:100%;
	max-width:none;
	align-items:stretch;
}
.project-material-grid--fullbleed img{
	width:100%;
	height:auto;
	display:block;
}
.project-material-grid--fullbleed .project-video-card{
	border-radius:0;
	aspect-ratio:16 / 11;
}
.project-material-grid--fullbleed .project-video-card:hover,
.project-material-grid--fullbleed .project-video-card:focus{
	transform:none;
	box-shadow:inset 0 0 0 2px rgba(var(--main-color-rgb), 0.75);
}
@media (max-width:991px){
	.project-material-grid--fullbleed{
		grid-template-columns:1fr;
	}
	.project-hero{
		padding:120px 0 40px;
		min-height:clamp(260px, 42vh, 480px);
	}
}

/*** 

====================================================================
	Work One
====================================================================

***/

.work-one{
	position:relative;
	padding:40px 0px 100px;
}




.robot {
    position: absolute !important;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 3;
    mix-blend-mode: exclusion;
    pointer-events: auto;
}

.robot iframe {
	display: block;
	width: 100%;
	min-height: 480px;
	height: 62vh;
	border: 0;
}

/* Spline: alto 100% del área hero, ancho por ratio; sobrante horizontal recortado */
.banner-one--spline .robot {
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: stretch;
	justify-content: center;
	padding: 0;
	box-sizing: border-box;
	overflow: hidden;
}

.banner-one--spline .robot iframe,
.banner-one--spline .robot spline-viewer {
	flex: 0 0 auto;
	align-self: stretch;
	width: auto;
	max-width: none;
	min-width: 0;
	height: 100%;
	min-height: 0;
	margin: 0;
	/* 16:9 a partir del alto del contenedor → en pantallas estrechas sobresale el ancho y .robot lo recorta */
	aspect-ratio: 16 / 9;
}

/* Ocultar marca Spline en iframe: recorte de la esquina (no acceso al DOM del iframe) */
.banner-one--spline .robot iframe.spline-embed {
	-webkit-clip-path: inset(0 min(152px, 16vw) min(56px, 8vh) 0);
	clip-path: inset(0 min(152px, 16vw) min(56px, 8vh) 0);
}	

.single-work_list a {
    color: #fff;
}

.single-work_list a:hover {
    color: var(--main-color);
}

/* Galería de material de proyecto (001.jpg, 002.jpg, …) */
.project-material-grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:20px;
	margin-top:10px;
}
.project-material-grid img{
	width:100%;
	height:auto;
	display:block;
	cursor:pointer;
}

/* Miniaturas de vídeo (PROYECTO 02, etc.) */
.project-material-grid--video{
	align-items:start;
}
.project-image-card{
	position:relative;
	display:block;
	width:100%;
	padding:0;
	margin:0;
	border:none;
	background:#0a0f1a;
	cursor:pointer;
	overflow:hidden;
	text-align:left;
	transition:box-shadow 0.2s ease, transform 0.2s ease;
}
.project-image-card:hover,
.project-image-card:focus{
	outline:none;
	box-shadow:0 0 0 2px rgba(var(--main-color-rgb), 0.85);
	transform:translateY(-2px);
}
.project-image-card img{
	width:100%;
	height:auto;
	display:block;
	pointer-events:none;
}
.project-material-grid--fullbleed .project-image-card{
	border-radius:0;
}
.project-material-grid--fullbleed .project-image-card:hover,
.project-material-grid--fullbleed .project-image-card:focus{
	transform:none;
	box-shadow:inset 0 0 0 2px rgba(var(--main-color-rgb), 0.75);
}
.project-video-card{
	position:relative;
	display:block;
	width:100%;
	padding:0;
	margin:0;
	border:none;
	background:#0a0f1a;
	cursor:pointer;
	overflow:hidden;
	aspect-ratio:16 / 10;
	text-align:left;
	transition:box-shadow 0.2s ease, transform 0.2s ease;
}
.project-video-card:hover,
.project-video-card:focus{
	outline:none;
	box-shadow:0 0 0 2px rgba(var(--main-color-rgb), 0.85);
	transform:translateY(-2px);
}
.project-video-card video{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	pointer-events:none;
}
.project-video-card__play{
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(2, 6, 23, 0.35);
	color:#fff;
	font-size:28px;
	pointer-events:none;
	transition:background 0.2s ease;
}
.project-video-card:hover .project-video-card__play,
.project-video-card:focus .project-video-card__play{
	background:rgba(2, 6, 23, 0.5);
}
.project-lightbox__slide-inner--video video{
	width:100%;
	max-height:78vh;
	max-width:100%;
	background:#000;
}
@media (max-width:991px){
	.project-material-grid{
		grid-template-columns:repeat(2, 1fr);
	}
}
@media (max-width:575px){
	.project-material-grid{
		grid-template-columns:1fr;
	}
}

/* Lightbox galería de proyecto (Swiper) */
.project-lightbox{
	position:fixed;
	inset:0;
	z-index:10000002;
	display:none;
	align-items:center;
	justify-content:center;
	padding:24px 16px;
	box-sizing:border-box;
}
.project-lightbox--open{
	display:flex;
}
.project-lightbox__backdrop{
	position:absolute;
	inset:0;
	background:rgba(2, 6, 23, 0.92);
	cursor:pointer;
}
.project-lightbox__panel{
	position:relative;
	z-index:1;
	width:100%;
	max-width:min(1200px, 96vw);
	max-height:90vh;
	pointer-events:auto;
}
.project-lightbox__close{
	position:absolute;
	top:-6px;
	right:-6px;
	z-index:5;
	width:48px;
	height:48px;
	padding:0;
	border:1px solid rgba(255,255,255,0.35);
	background:rgba(0,0,0,0.45);
	color:#fff;
	border-radius:0;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:22px;
	line-height:1;
	transition:background 0.2s ease, border-color 0.2s ease;
}
.project-lightbox__close:hover,
.project-lightbox__close:focus{
	background:rgba(255,255,255,0.12);
	border-color:rgba(255,255,255,0.55);
	outline:none;
}
.project-lightbox__close:focus-visible{
	box-shadow:0 0 0 2px var(--main-color, #c9a227);
}
.project-lightbox-swiper{
	width:100%;
	max-height:85vh;
	padding:0 44px 40px;
	box-sizing:border-box;
}
.project-lightbox__slide-inner{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:40vh;
	max-height:78vh;
	padding:8px 0;
}
.project-lightbox__slide-inner img{
	max-width:100%;
	max-height:78vh;
	width:auto;
	height:auto;
	object-fit:contain;
	display:block;
}
.project-lightbox__nav{
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	z-index:4;
	width:44px;
	height:44px;
	margin:0;
	padding:0;
	border:1px solid rgba(255,255,255,0.35);
	background:rgba(0,0,0,0.4);
	color:#fff;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:18px;
	transition:background 0.2s ease;
}
.project-lightbox__nav:hover,
.project-lightbox__nav:focus{
	background:rgba(255,255,255,0.15);
	outline:none;
}
.project-lightbox__prev{
	left:0;
}
.project-lightbox__next{
	right:0;
}
.project-lightbox .swiper-pagination{
	position:relative;
	margin-top:12px;
	bottom:auto !important;
}
.project-lightbox .swiper-pagination-bullet{
	background:rgba(255,255,255,0.45);
	opacity:1;
}
.project-lightbox .swiper-pagination-bullet-active{
	background:var(--main-color, #c9a227);
}
body.project-lightbox-open{
	overflow:hidden;
}
@media (max-width:575px){
	.project-lightbox-swiper{
		padding:0 36px 36px;
	}
	.project-lightbox__nav{
		width:36px;
		height:36px;
	}
}

a.backtop {
    background: transparent;
    width: 60px;
    height: 60px;
    text-align: center;
    line-height: 60px;
    border: 1px solid transparent;
    border-image: linear-gradient(135deg, var(--accent-metal-deep), var(--accent-metal-light), var(--accent-metal-mid)) 1;
    font-size: 24px;
    color: var(--main-color);

    transition: background 0.5s ease, color 0.5s ease, border-image 0.5s ease;
}

a.backtop:hover {
    background-color: var(--accent-metal-mid);
    background-image: var(--bg-accent-metallic-brushed);
    background-size: var(--accent-metallic-tile-size), 100% 100%;
    background-repeat: repeat, no-repeat;
    background-blend-mode: overlay, normal;
    color: #fff;
}

.service-block_one-more {
  position: relative;
  z-index: 1;
  opacity: 0;
  transform: translateY(-50px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}

.gallery-block_one-inner:hover .service-block_one-more {
  opacity: 1;
  transform: translateY(0);
}
.row {
    display: flex;
    flex-wrap: wrap;
}

.team-block_one {
    transition: opacity 0.3s, filter 0.3s;
}

.team-block_one-socials a {
    transition: opacity 0.3s;
    opacity: 0;
}

.team-block_one:hover .team-block_one-socials a {
    opacity: 1;
}

.team-block_one:hover {
    opacity: 1;
    filter: blur(0);
    z-index: 1; /* Bring the hovered block to the front */
}

/* General sibling combinators to blur and fade out other team members */
.row:hover .team-block_one:not(:hover) {
    opacity: 0.5;
    filter: blur(2px);
}
.team-block_one {
    transition: transform 0.7s ease;
}
.team-block_one:hover {
    transform: translateY(-10px);
}
.team-block_one-socials a {
    transition: transform 0.7s ease, opacity 0.7s ease;
    transform: translateY(20px);
    opacity: 0;
}
.team-block_one:hover .team-block_one-socials a {
    transform: translateY(0);
    opacity: 1;
}
/* Define keyframes for the animated gradient */
@keyframes gradient-animation {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

/* Base styles for social icons */
.team-block_one-socials a {
    position: relative;

    background-size: 200% 200%;
    transition: transform 0.3s ease-in-out;
}

/* Apply animated gradient on hover */
.team-block_one-socials a:hover {
    animation: gradient-animation 2s ease infinite;
    transform: scale(1.1);
    background-color: var(--accent-metal-mid);
    background-image: var(--bg-accent-metallic-up);
    background-size: var(--accent-metallic-tile-size), 100% 100%;
    background-repeat: repeat, no-repeat;
    background-blend-mode: overlay, normal;
    transition: background-color 1s ease, background-image 1s ease;
}
.team-block_one-socials a {
    position: relative;
    background-size: 200% 200%;
}

/* Create a pseudo-element for the gradient background */
.team-block_one-socials a::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--accent-metal-mid);
    background-image: var(--bg-accent-metallic-up);
    background-size: var(--accent-metallic-tile-size), 100% 100%;
    background-repeat: repeat, no-repeat;
    background-blend-mode: overlay, normal;
    z-index: -1;
    opacity: 0; /* Initially hidden */
    transition: opacity 0.5s ease; /* Smooth transition for opacity */
}

/* Show the pseudo-element on hover */
.team-block_one-socials a:hover::before {
    opacity: 1; /* Show the gradient with transition */
}

/* Customize scrollbar track */
::-webkit-scrollbar {
    width: 10px; /* Width of the scrollbar */
    background-color: transparent; /* Background color of the scrollbar track */
}

/* Customize scrollbar thumb */
::-webkit-scrollbar-thumb {
    background-color: var(--accent-metal-mid);
    background-image: var(--bg-accent-metallic-brushed);
    background-size: var(--accent-metallic-tile-size), 100% 100%;
    background-repeat: repeat, no-repeat;
    background-blend-mode: overlay, normal;
    border-radius: 10px; /* Rounded corners of the scrollbar thumb */
    border: 2px solid transparent; /* Border of the scrollbar thumb */
}

/* On hover, change thumb color */
::-webkit-scrollbar-thumb:hover {
    background-color: var(--accent-metal-deep);
    background-image: var(--bg-accent-metallic-up-reverse);
    background-size: var(--accent-metallic-tile-size), 100% 100%;
    background-repeat: repeat, no-repeat;
    background-blend-mode: overlay, normal;
}

/* Customize scrollbar track when scrollbar is actively being scrolled */
::-webkit-scrollbar-thumb:active {
    background-color: var(--accent-metal-dark);
    background-image: var(--bg-accent-metallic-deep);
    background-size: var(--accent-metallic-tile-size), 100% 100%;
    background-repeat: repeat, no-repeat;
    background-blend-mode: overlay, normal;
}

/* Customize scrollbar corner */
::-webkit-scrollbar-corner {
    background-color: transparent; /* Background color of the scrollbar corner */
}

/* Add gradient to scrollbar track */
::-webkit-scrollbar-track {
    background: linear-gradient(to top, var(--color-three) 0%, var(--color-four) 100%) !important; /* Gradient for the scrollbar track */
}
html {
    scroll-behavior: smooth; /* Enable smooth scrolling behavior for the whole page */
}
