/* =========================================================
   U.G.S. HOME — BRANDED LOADING SCREEN 08D
   Instant inline mark with the approved opening transition intact.
   ========================================================= */

#preloader{
	position:fixed !important;
	inset:0 !important;
	z-index:2147483000 !important;
	display:block !important;
	width:auto !important;
	height:auto !important;
	min-height:100vh !important;
	margin:0 !important;
	padding:0 !important;
	overflow:hidden !important;
	background:#050706 !important;
	background-color:#050706 !important;
	background-image:
		radial-gradient(
			circle at 50% 48%,
			rgba(0,139,82,.075) 0,
			rgba(0,139,82,.026) 19%,
			rgba(0,139,82,0) 43%
		) !important;
	opacity:1 !important;
	visibility:visible !important;
	pointer-events:auto !important;
	transform:translateZ(0) !important;
	-webkit-transform:translateZ(0) !important;
	transition:
		opacity .46s cubic-bezier(.22,.72,.18,1),
		visibility 0s linear 0s !important;
	will-change:opacity !important;
}

#preloader::before{
	content:"" !important;
	position:absolute !important;
	left:50% !important;
	top:calc(50% - 42px) !important;
	width:62px !important;
	height:62px !important;
	margin:0 !important;
	background-image:
		var(
			--ugs-loader-mark,
			url("../images/brand/ugs-logo-2026.png")
		) !important;
	background-position:center !important;
	background-size:contain !important;
	background-repeat:no-repeat !important;
	filter:drop-shadow(0 0 22px rgba(0,139,82,.16)) !important;
	-webkit-filter:drop-shadow(0 0 22px rgba(0,139,82,.16)) !important;
	transform:translate3d(-50%,-50%,0) scale(.985) !important;
	-webkit-transform:translate3d(-50%,-50%,0) scale(.985) !important;
	animation:ugsLoadingMark 1.65s cubic-bezier(.37,0,.21,1) infinite alternate !important;
}

#preloader::after{
	content:"U.G.S. INTERNATIONAL · MÉXICO" !important;
	position:absolute !important;
	left:50% !important;
	top:calc(50% + 15px) !important;
	display:block !important;
	width:max-content !important;
	max-width:calc(100vw - 48px) !important;
	margin:0 !important;
	padding:0 !important;
	font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
	font-size:9px !important;
	line-height:1.2 !important;
	font-weight:700 !important;
	letter-spacing:2.2px !important;
	text-align:center !important;
	white-space:nowrap !important;
	color:rgba(246,248,247,.60) !important;
	-webkit-text-fill-color:rgba(246,248,247,.60) !important;
	transform:translateX(-50%) !important;
	-webkit-transform:translateX(-50%) !important;
}

#preloader .preloader{
	position:absolute !important;
	left:50% !important;
	top:calc(50% + 51px) !important;
	display:block !important;
	width:112px !important;
	height:1px !important;
	margin:0 !important;
	padding:0 !important;
	overflow:hidden !important;
	border:0 !important;
	border-radius:999px !important;
	background:rgba(255,255,255,.105) !important;
	box-shadow:none !important;
	opacity:1 !important;
	transform:translateX(-50%) !important;
	-webkit-transform:translateX(-50%) !important;
}

#preloader .preloader::before{
	content:"" !important;
	position:absolute !important;
	left:0 !important;
	top:0 !important;
	display:block !important;
	width:42% !important;
	height:1px !important;
	margin:0 !important;
	padding:0 !important;
	border:0 !important;
	border-radius:999px !important;
	background:linear-gradient(90deg,rgba(0,139,82,0),#00a864 48%,rgba(0,168,100,.18)) !important;
	box-shadow:0 0 10px rgba(0,168,100,.28) !important;
	animation:ugsLoadingLine 1.18s cubic-bezier(.45,0,.25,1) infinite !important;
}

#preloader .preloader::after{
	content:none !important;
	display:none !important;
}

#preloader .preloader span{
	display:none !important;
	width:0 !important;
	height:0 !important;
	animation:none !important;
}

#preloader.is-leaving{
	opacity:0 !important;
	visibility:hidden !important;
	pointer-events:none !important;
	transition:
		opacity .46s cubic-bezier(.22,.72,.18,1),
		visibility 0s linear .46s !important;
}

@keyframes ugsLoadingMark{
	0%{
		opacity:.72;
		transform:translate3d(-50%,-50%,0) scale(.982);
	}
	100%{
		opacity:1;
		transform:translate3d(-50%,-50%,0) scale(1);
	}
}

@keyframes ugsLoadingLine{
	0%{
		transform:translateX(-118%);
	}
	56%{
		transform:translateX(92%);
	}
	100%{
		transform:translateX(248%);
	}
}

@media (pointer:coarse) and (max-width:700px){
	#preloader{
		min-height:100dvh !important;
	}

	#preloader::before{
		top:calc(50% - 38px) !important;
		width:56px !important;
		height:56px !important;
	}

	#preloader::after{
		top:calc(50% + 13px) !important;
		font-size:8px !important;
		letter-spacing:1.9px !important;
	}

	#preloader .preloader{
		top:calc(50% + 46px) !important;
		width:96px !important;
	}
}

@supports not (min-height:100dvh){
	@media (pointer:coarse) and (max-width:700px){
		#preloader{
			min-height:100vh !important;
		}
	}
}

@media (prefers-reduced-motion:reduce){
	#preloader::before,
	#preloader .preloader::before{
		animation:none !important;
	}

	#preloader.is-leaving{
		transition-duration:.16s !important;
	}
}
