/* Fixed Swesite homepage intro. All selectors are intentionally isolated. */
html.swesite-intro-pending,
html.swesite-intro-pending body {
	overflow: hidden !important;
	overscroll-behavior: none;
}

html.swesite-intro-pending body {
	max-width: 100vw;
}

html.swesite-intro-pending [data-swesite-intro-header],
html.swesite-intro-pending [data-swesite-intro-hero],
html.swesite-intro-pending [data-swesite-intro-title],
html.swesite-intro-pending [data-swesite-intro-actions] {
	opacity: 0;
}

html.swesite-intro-pending [data-swesite-intro-logo] {
	visibility: hidden;
}

html.swesite-intro-pending .swesite-consent-floating-link {
	opacity: 0 !important;
	pointer-events: none !important;
}

.swesite-intro-overlay {
	align-items: stretch;
	background: #f7f9fc;
	display: flex;
	inset: 0;
	justify-content: stretch;
	overflow: hidden;
	pointer-events: all;
	position: fixed;
	touch-action: none;
	z-index: 99990;
}

.swesite-intro-overlay::before {
	background:
		radial-gradient(circle at 18% 16%, rgba(37, 99, 235, .12), transparent 34%),
		radial-gradient(circle at 82% 72%, rgba(20, 184, 166, .12), transparent 38%);
	content: '';
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.swesite-intro-logo-clone {
	align-items: center;
	display: flex;
	gap: 10px;
	left: 0;
	margin: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	transform-origin: center center;
	transform-style: preserve-3d;
	will-change: transform, opacity, filter;
	z-index: 2;
}

.swesite-intro-logo-clone .swesite-theme-logo-img {
	flex: 0 0 auto;
}

html.swesite-intro-revealing [data-swesite-intro-header] {
	animation: swesite-intro-header-reveal .58s cubic-bezier(.22, .8, .25, 1) both;
}

html.swesite-intro-revealing [data-swesite-intro-logo] {
	visibility: visible;
}

html.swesite-intro-revealing [data-swesite-intro-hero] {
	animation: swesite-intro-hero-reveal .68s .08s cubic-bezier(.22, .8, .25, 1) both;
}

html.swesite-intro-revealing [data-swesite-intro-title] {
	animation: swesite-intro-content-reveal .62s .18s cubic-bezier(.22, .8, .25, 1) both;
}

html.swesite-intro-revealing [data-swesite-intro-actions] {
	animation: swesite-intro-content-reveal .62s .3s cubic-bezier(.22, .8, .25, 1) both;
}

html.swesite-intro-landing-shake body {
	animation: swesite-intro-land-shake .28s ease-out both;
}

@keyframes swesite-intro-header-reveal {
	from { opacity: 0; filter: blur(5px); }
	to { opacity: 1; filter: blur(0); }
}

@keyframes swesite-intro-hero-reveal {
	from { opacity: 0; filter: blur(4px); }
	to { opacity: 1; filter: blur(0); }
}

@keyframes swesite-intro-content-reveal {
	from { opacity: 0; transform: translateY(18px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes swesite-intro-land-shake {
	0%, 100% { transform: translate3d(0, 0, 0); }
	30% { transform: translate3d(-1.5px, .5px, 0); }
	60% { transform: translate3d(1.5px, -.5px, 0); }
	80% { transform: translate3d(-.5px, 0, 0); }
}

@media (max-width: 520px) {
	.swesite-intro-overlay::before {
		background:
			radial-gradient(circle at 24% 18%, rgba(37, 99, 235, .1), transparent 38%),
			radial-gradient(circle at 76% 70%, rgba(20, 184, 166, .1), transparent 42%);
	}
}

@media (prefers-reduced-motion: reduce) {
	html.swesite-intro-pending,
	html.swesite-intro-pending body {
		overflow: auto !important;
	}

	html.swesite-intro-pending [data-swesite-intro-header],
	html.swesite-intro-pending [data-swesite-intro-hero],
	html.swesite-intro-pending [data-swesite-intro-title],
	html.swesite-intro-pending [data-swesite-intro-actions] {
		opacity: 1;
	}

	html.swesite-intro-pending [data-swesite-intro-logo] {
		visibility: visible;
	}

	.swesite-intro-overlay {
		display: none !important;
	}
}
