/* =========================================================
   YO, TURO — Loader de marca
   ========================================================= */

.turo-page-loader {
	position: fixed;
	inset: 0;
	z-index: 999999;

	display: flex;
	align-items: center;
	justify-content: center;

	background: #ffffff;

	opacity: 0;
	visibility: hidden;
	pointer-events: none;

	transition:
		opacity 0.32s ease,
		visibility 0.32s ease;
}

.turo-page-loader.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}

.turo-page-loader__content {
	position: relative;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	width: 240px;
	min-height: 220px;
}

.turo-page-loader__logo {
	display: block;
	width: 150px;
	height: auto;

	animation: turoLoaderLogo 1.4s ease-in-out infinite;
}

.turo-page-loader__paw {
	display: block;
	width: 54px;
	height: auto;
	margin-top: 22px;

	animation: turoLoaderPaw 0.9s ease-in-out infinite;
}

.turo-page-loader__paw-small {
	position: absolute;
	display: block;
	width: 28px;
	height: auto;
	opacity: 0.25;
}

.turo-page-loader__paw-small--left {
	top: 5px;
	left: 25px;
	transform: rotate(-22deg);
	animation: turoLoaderPawSmallLeft 1.8s ease-in-out infinite;
}

.turo-page-loader__paw-small--right {
	top: 18px;
	right: 24px;
	transform: rotate(22deg);
	animation: turoLoaderPawSmallRight 1.8s ease-in-out infinite;
	animation-delay: 0.3s;
}

@keyframes turoLoaderLogo {
	0%,
	100% {
		transform: scale(1);
		opacity: 0.88;
	}

	50% {
		transform: scale(1.035);
		opacity: 1;
	}
}

@keyframes turoLoaderPaw {
	0%,
	100% {
		transform: translateY(0) scale(1);
	}

	30% {
		transform: translateY(-18px) scale(1.08);
	}

	50% {
		transform: translateY(0) scale(0.94);
	}

	68% {
		transform: translateY(-7px) scale(1.03);
	}
}

@keyframes turoLoaderPawSmallLeft {
	0%,
	100% {
		transform: translateY(0) rotate(-22deg);
		opacity: 0.22;
	}

	50% {
		transform: translateY(-5px) rotate(-17deg);
		opacity: 0.42;
	}
}

@keyframes turoLoaderPawSmallRight {
	0%,
	100% {
		transform: translateY(0) rotate(22deg);
		opacity: 0.22;
	}

	50% {
		transform: translateY(-5px) rotate(17deg);
		opacity: 0.42;
	}
}

@media (max-width: 767px) {
	.turo-page-loader__content {
		width: 190px;
		min-height: 190px;
	}

	.turo-page-loader__logo {
		width: 125px;
	}

	.turo-page-loader__paw {
		width: 46px;
		margin-top: 18px;
	}

	.turo-page-loader__paw-small {
		width: 23px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.turo-page-loader,
	.turo-page-loader__logo,
	.turo-page-loader__paw,
	.turo-page-loader__paw-small {
		transition: none;
		animation: none;
	}
}