/* 0zen0 homepage motion v1: loaded only on the approved portfolio pages. */

html.oz-homepage-motion-v1-active body.page-id-52 #content .oz-homepage-motion-v1-section.oz-homepage-motion-v1-footer .elementor-top-column {
	opacity: 0;
	transform: translateY(12px);
	transition-property: opacity, transform;
	transition-duration: 760ms;
	transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

html.oz-homepage-motion-v1-active:not(.oz-homepage-motion-v1-gallery-ready) body.page-id-52 #content .oz-homepage-motion-v1-footer {
	visibility: hidden;
	pointer-events: none;
}

html.oz-homepage-motion-v1-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section.oz-homepage-motion-v1-visible .elementor-top-column {
	opacity: 1;
	transform: translateY(0);
}

html.oz-homepage-motion-v1-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-footer .elementor-top-column {
	transition-duration: 900ms;
	transition-delay: 100ms;
}

html.oz-homepage-motion-v1-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer) .elementor-top-column {
	opacity: 1;
	transform: none;
	transition: none;
}

html.oz-homepage-motion-v1-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer) .oz-homepage-motion-v1-card {
	opacity: 0;
	transform: translateY(12px);
	transition-property: opacity, transform;
	transition-duration: 760ms;
	transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
	transition-delay: var(--oz-homepage-motion-delay, 0ms);
}

html.oz-homepage-motion-v1-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer).oz-homepage-motion-v1-visible .oz-homepage-motion-v1-card {
	opacity: 1;
	transform: translateY(0);
}

html.oz-homepage-motion-v1-active body.page-id-52 #sidebar #media_image-7,
html.oz-homepage-motion-v1-active body.page-id-52 #sidebar #media_image-8 {
	opacity: 0;
	transform: translateY(8px);
	transition-property: opacity, transform;
	transition-duration: 900ms;
	transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

html.oz-homepage-motion-v1-active body.page-id-52 #sidebar #media_image-8 {
	transition-delay: 120ms;
}

html.oz-homepage-motion-v1-active body.page-id-52 #sidebar #media_image-7.oz-homepage-motion-v1-visible,
html.oz-homepage-motion-v1-active body.page-id-52 #sidebar #media_image-8.oz-homepage-motion-v1-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Project cards: shared quiet reveal with no scale, tilt, rotation, or perspective. */
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card .e-gallery-image {
	transition-property: transform;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card .elementor-gallery-item__title,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card .elementor-gallery-item__description {
	transform: translateY(4px);
	transition-property: opacity, transform;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:hover .elementor-gallery-item__title,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:focus-visible .elementor-gallery-item__title {
	opacity: 1;
	transform: translateY(0);
	transition-delay: 80ms;
}

body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:hover .elementor-gallery-item__description,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:focus-visible .elementor-gallery-item__description {
	opacity: 1;
	transform: translateY(0);
	transition-delay: 140ms;
}

/* Neutralize Elementor's lazy-load and hover image transforms on all three card pages. */
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card .e-gallery-image,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:hover .e-gallery-image,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:focus-visible .e-gallery-image {
	transform: none !important;
}

body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:hover .elementor-gallery-item__title,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:focus-visible .elementor-gallery-item__title,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:hover .elementor-gallery-item__description,
body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card:focus-visible .elementor-gallery-item__description {
	opacity: 1;
	transform: translateY(0) !important;
}

/* Shared card motion B: a quiet desktop spread that settles into each existing grid. */
html.oz-homepage-motion-v1-active.oz-homepage-card-motion-b-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer) .oz-homepage-motion-v1-card {
	opacity: 0;
	transform: translate(var(--oz-homepage-card-motion-b-spread, 0px), var(--oz-homepage-card-motion-b-spread-y, 42px));
	transition-property: opacity, transform;
	transition-duration: 900ms;
	transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
	transition-delay: var(--oz-homepage-motion-delay, 0ms);
}

html.oz-homepage-motion-v1-active.oz-homepage-card-motion-b-active.oz-homepage-card-motion-b-settled body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer).oz-homepage-motion-v1-visible .oz-homepage-motion-v1-card {
	opacity: 1;
	transform: translate(0, 0);
}

@media (max-width: 768px) {
	html.oz-homepage-motion-v1-active.oz-homepage-card-motion-b-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer) .oz-homepage-motion-v1-card {
	transform: translateY(20px);
	transition-duration: 720ms;
	}

	html.oz-homepage-motion-v1-active.oz-homepage-card-motion-b-active.oz-homepage-card-motion-b-settled body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer).oz-homepage-motion-v1-visible .oz-homepage-motion-v1-card {
	transform: translateY(0);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.oz-homepage-motion-v1-page,
	body.oz-homepage-motion-v1-page * {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-delay: 0ms !important;
		transition-duration: 0.01ms !important;
	}

	html.oz-homepage-motion-v1-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section .elementor-top-column,
	html.oz-homepage-motion-v1-active body.page-id-52 #sidebar #media_image-7,
	html.oz-homepage-motion-v1-active body.page-id-52 #sidebar #media_image-8 {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	html.oz-homepage-motion-v1-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer) .oz-homepage-motion-v1-card {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card .e-gallery-image,
	body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card .elementor-gallery-item__title,
	body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-card .elementor-gallery-item__description {
		transform: none !important;
		transition: none !important;
	}

	html.oz-homepage-motion-v1-active.oz-homepage-card-motion-b-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer) .oz-homepage-motion-v1-card,
	html.oz-homepage-motion-v1-active.oz-homepage-card-motion-b-active body.oz-homepage-motion-v1-page #content .oz-homepage-motion-v1-section:not(.oz-homepage-motion-v1-footer).oz-homepage-motion-v1-visible .oz-homepage-motion-v1-card {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}
