/* ============================================================
   Splash intro — cortina tropical Jambo Summer Adventure
   Timeline (~2.6s): blobs respiran → JAMBO cae → SUMMER pop
   → ADVENTURE pop → sede + sol + chango → cortina clip-path
   ============================================================ */
#jsa-splash {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	background: radial-gradient(120% 120% at 50% 0%, var(--jsa-teal-soft) 0%, var(--jsa-teal) 45%, var(--jsa-deep) 100%);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	animation: jsa-splash-exit .65s cubic-bezier(.65, 0, .35, 1) 3.8s forwards;
}

#jsa-splash.jsa-splash--done { display: none; }

@keyframes jsa-splash-exit {
	from { clip-path: circle(150% at 50% 50%); }
	to   { clip-path: circle(0% at 50% 42%); visibility: hidden; }
}

.jsa-splash__bg { position: absolute; inset: 0; }

.jsa-splash__blob--1 { width: 46vmax; height: 46vmax; left: -14vmax; top: -16vmax; background: rgba(53, 208, 232, .28); }
.jsa-splash__blob--2 { width: 38vmax; height: 38vmax; right: -12vmax; bottom: -10vmax; background: rgba(141, 198, 63, .22); animation-delay: -3s; }
.jsa-splash__blob--3 { width: 22vmax; height: 22vmax; right: 8vmax; top: -8vmax; background: rgba(255, 255, 255, .10); animation-delay: -6s; }

.jsa-splash__sun {
	position: absolute;
	top: clamp(18px, 6vh, 56px);
	right: clamp(18px, 7vw, 72px);
	opacity: 0;
	animation: jsa-pop-in .5s cubic-bezier(.34, 1.56, .64, 1) .85s forwards;
}

.jsa-splash__rays {
	transform-origin: 60px 60px;
	animation: jsa-spin-slow 14s linear infinite;
}

.jsa-splash__stage {
	position: relative;
	text-align: center;
	padding: 0 24px;
	transform: translateY(-4vh);
}

.jsa-splash__brand {
	color: var(--jsa-white);
	font-size: clamp(1.4rem, 3.4vw, 2.2rem);
	letter-spacing: .42em;
	text-indent: .42em;
	margin: 0 0 .4em;
	opacity: 0;
	animation: jsa-splash-drop .55s cubic-bezier(.34, 1.56, .64, 1) .15s forwards;
}

@keyframes jsa-splash-drop {
	from { opacity: 0; transform: translateY(-60px); }
	60%  { transform: translateY(8px); }
	to   { opacity: 1; transform: translateY(0); }
}

.jsa-splash__title { margin: 0; }

.jsa-splash__word {
	display: block;
	font-size: clamp(2.6rem, 9.5vw, 6.4rem);
}

.jsa-splash__word--summer { color: var(--jsa-lime); text-shadow: 0 5px 0 rgba(0, 0, 0, .2); }

.jsa-splash__word span {
	display: inline-block;
	opacity: 0;
	animation: jsa-pop-in .38s cubic-bezier(.34, 1.56, .64, 1) forwards;
}

.jsa-splash__word--summer span:nth-child(1) { animation-delay: .34s; }
.jsa-splash__word--summer span:nth-child(2) { animation-delay: .39s; }
.jsa-splash__word--summer span:nth-child(3) { animation-delay: .44s; }
.jsa-splash__word--summer span:nth-child(4) { animation-delay: .49s; }
.jsa-splash__word--summer span:nth-child(5) { animation-delay: .54s; }
.jsa-splash__word--summer span:nth-child(6) { animation-delay: .59s; }

.jsa-splash__word--adventure span:nth-child(1) { animation-delay: .62s; }
.jsa-splash__word--adventure span:nth-child(2) { animation-delay: .66s; }
.jsa-splash__word--adventure span:nth-child(3) { animation-delay: .70s; }
.jsa-splash__word--adventure span:nth-child(4) { animation-delay: .74s; }
.jsa-splash__word--adventure span:nth-child(5) { animation-delay: .78s; }
.jsa-splash__word--adventure span:nth-child(6) { animation-delay: .82s; }
.jsa-splash__word--adventure span:nth-child(7) { animation-delay: .86s; }
.jsa-splash__word--adventure span:nth-child(8) { animation-delay: .90s; }
.jsa-splash__word--adventure span:nth-child(9) { animation-delay: .94s; }

.jsa-splash__sede {
	display: inline-block;
	margin-top: 1.1em;
	padding: .35em 1.4em .45em;
	font-family: var(--jsa-font-display);
	font-weight: 600;
	font-size: clamp(1rem, 2.6vw, 1.5rem);
	color: var(--jsa-accent-ink);
	background: var(--jsa-accent);
	border: 3px solid var(--jsa-white);
	border-radius: 999px;
	box-shadow: 0 6px 0 rgba(0, 0, 0, .2);
	transform: rotate(-2deg);
	opacity: 0;
	animation: jsa-pop-in .45s cubic-bezier(.34, 1.56, .64, 1) 1.05s forwards;
}

.jsa-splash__mascot {
	position: absolute;
	bottom: -3vh;
	left: clamp(-30px, 4vw, 8vw);
	width: clamp(130px, 22vmin, 240px);
	height: auto;
	filter: drop-shadow(0 14px 24px rgba(0, 0, 0, .35));
	opacity: 0;
	animation: jsa-splash-mascot .6s cubic-bezier(.34, 1.56, .64, 1) 1.15s forwards;
}

@keyframes jsa-splash-mascot {
	from { opacity: 0; transform: translateY(60%) rotate(-8deg); }
	to   { opacity: 1; transform: translateY(0) rotate(0deg); }
}

/* Cortina interna: onda blanca sutil que acompaña la salida */
.jsa-splash__curtain {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 50% 42%, rgba(255, 255, 255, .28) 0%, transparent 32%);
	opacity: 0;
	animation: jsa-splash-flash .55s ease 3.75s forwards;
}

@keyframes jsa-splash-flash {
	from { opacity: 0; }
	50%  { opacity: 1; }
	to   { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
	#jsa-splash { animation: jsa-splash-fade .3s ease .9s forwards; }
	#jsa-splash * { animation-duration: .01s !important; animation-delay: 0s !important; }

	@keyframes jsa-splash-fade {
		to { opacity: 0; visibility: hidden; }
	}
}
