/* Fallback if this file is ever injected into Wagtail admin */
.w-body section {
	isolation: auto !important;
	position: static !important;
}

:root {
	--ph-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

html {
	scroll-behavior: smooth;
}

body {
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

.ph-animate-static .reveal-element {
	opacity: 1;
	transform: none;
	filter: none;
}

.ph-animate-ready .reveal-element {
	opacity: 0;
	transform: translate3d(0, 18px, 0);
	transition:
		opacity 0.55s var(--ph-ease),
		transform 0.55s var(--ph-ease);
	transition-delay: var(--ph-delay, 0ms);
}

.ph-animate-ready .reveal-element.is-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media (min-width: 768px) {
	main section {
		position: relative;
		isolation: isolate;
	}

	main section::before {
		content: "";
		position: absolute;
		inset: 8% auto auto 50%;
		z-index: -1;
		width: min(38rem, 70vw);
		height: min(38rem, 70vw);
		border-radius: 9999px;
		background: radial-gradient(circle, rgba(244, 63, 94, 0.08), transparent 62%);
		opacity: 0;
		transform: translate3d(-50%, 12px, 0);
		transition: opacity 0.8s var(--ph-ease), transform 0.8s var(--ph-ease);
		pointer-events: none;
	}

	main section.ph-section-visible::before {
		opacity: 1;
		transform: translate3d(-50%, 0, 0);
	}

	a[class*="rounded-full"]:hover,
	button[class*="rounded-full"]:hover {
		box-shadow: 0 18px 40px rgba(244, 63, 94, 0.15);
	}

	.group[class*="rounded"]:hover,
	[class*="rounded-2xl"][class*="border"]:hover,
	[data-portfolio-card] > a:hover {
		transform: translate3d(0, -4px, 0);
		box-shadow: 0 18px 50px rgba(24, 24, 27, 0.08);
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.001ms !important;
	}

	.ph-animate-ready .reveal-element {
		opacity: 1;
		transform: none;
		filter: none;
	}
}
