/*
Maudimi Companion - premium motion helpers.
Safe to disable: the site keeps its static layout without this layer.
*/

:root {
	--maudimi-companion-gold: #d8b36e;
	--maudimi-companion-cream: #fff8ea;
	--maudimi-companion-ink: #070504;
	--maudimi-companion-ease: cubic-bezier(0.19, 1, 0.22, 1);
}

.maudimi-companion-active .maudimi-premium-reveal,
.maudimi-companion-active .maudimi-stagger > * {
	opacity: 0;
	transform: translateY(16px) scale(0.96);
}

.maudimi-companion-active .maudimi-premium-reveal.is-visible,
.maudimi-companion-active .maudimi-stagger > *.is-visible {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 640ms var(--maudimi-companion-ease), transform 640ms var(--maudimi-companion-ease);
}

.maudimi-companion-active .maudimi-interactive-card,
.maudimi-companion-active .maudimi-companion-tilt {
	position: relative;
	overflow: hidden;
	transform: perspective(1000px) rotateX(var(--mdm-rx, 0deg)) rotateY(var(--mdm-ry, 0deg));
	transition: transform 260ms var(--maudimi-companion-ease), box-shadow 260ms ease, border-color 260ms ease;
	will-change: transform;
}

.maudimi-companion-active .maudimi-interactive-card::before,
.maudimi-companion-active .maudimi-companion-tilt::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at var(--mdm-mx, 50%) var(--mdm-my, 20%), rgba(216, 179, 110, 0.2), transparent 32%);
	opacity: 0;
	pointer-events: none;
	transition: opacity 220ms ease;
}

.maudimi-companion-active .maudimi-interactive-card:hover::before,
.maudimi-companion-active .maudimi-companion-tilt:hover::before {
	opacity: 1;
}

.maudimi-companion-active .maudimi-threshold-companion {
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.maudimi-companion-active .maudimi-threshold-companion::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	z-index: 2;
	height: 32%;
	background: linear-gradient(180deg, transparent, rgba(7, 5, 4, 0.92));
	pointer-events: none;
}

.maudimi-companion-active .maudimi-threshold-companion.is-companion-ready .wp-block-cover__image-background,
.maudimi-companion-active .maudimi-threshold-companion.is-companion-ready img {
	animation: maudimiCompanionHeroDrift 1800ms var(--maudimi-companion-ease) both;
}

.maudimi-cinemagraph {
	position: relative;
	overflow: hidden;
	border-radius: 24px;
	background: var(--maudimi-companion-ink);
}

.maudimi-cinemagraph video,
.maudimi-cinemagraph img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.maudimi-cinemagraph .maudimi-cinemagraph-fallback {
	display: none;
}

.maudimi-reduced-motion .maudimi-cinemagraph video {
	display: none;
}

.maudimi-reduced-motion .maudimi-cinemagraph .maudimi-cinemagraph-fallback {
	display: block;
}

.maudimi-companion-active .maudimi-premium-link {
	position: relative;
	text-decoration: none;
}

.maudimi-companion-active .maudimi-premium-link::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -0.18em;
	left: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--maudimi-companion-gold), transparent);
	transform: scaleX(0.28);
	opacity: 0;
	transition: opacity 180ms ease, transform 180ms ease;
}

.maudimi-companion-active .maudimi-premium-link:hover::after,
.maudimi-companion-active .maudimi-premium-link:focus-visible::after {
	opacity: 1;
	transform: scaleX(1);
}

.maudimi-companion-active .mdm-header-v30,
.maudimi-companion-active .mdm-header-v29,
.maudimi-companion-active .mdm-header-v28 {
	will-change: transform, width, background;
}

.maudimi-companion-active .mdm-header-v30.is-scrolled,
.maudimi-companion-active .mdm-header-v29.is-scrolled,
.maudimi-companion-active .mdm-header-v28.is-scrolled {
	border-color: rgba(243, 207, 133, 0.28);
	background: rgba(8, 5, 4, 0.9);
	box-shadow: 0 22px 76px rgba(0, 0, 0, 0.46);
}

.maudimi-companion-active .mdm-desktop-nav-v30 a.is-active,
.maudimi-companion-active .mdm-desktop-nav-v29 a.is-active,
.maudimi-companion-active .mdm-desktop-nav-v28 a.is-active {
	color: #140e0a;
	background: linear-gradient(135deg, #f3cf85, #d9ab61);
}

@keyframes maudimiCompanionHeroDrift {
	from {
		transform: scale(1.08);
	}
	to {
		transform: scale(1.03);
	}
}

@media (prefers-reduced-motion: reduce) {
	.maudimi-companion-active .maudimi-premium-reveal,
	.maudimi-companion-active .maudimi-stagger > *,
	.maudimi-companion-active .maudimi-premium-reveal.is-visible,
	.maudimi-companion-active .maudimi-stagger > *.is-visible,
	.maudimi-companion-active .maudimi-interactive-card,
	.maudimi-companion-active .maudimi-companion-tilt {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		animation: none !important;
	}

	.maudimi-door-frame-v28 {
		display: none !important;
	}
}
