/* =========================================================
   wp-block-wpbote-hero — frontend styles
   ========================================================= */

/* Ensure header nav dropdown always sits above hero content.
   The hero comes after the header in the DOM, so without explicit
   z-index the hero's stacking context would cover the nav submenu. */
.wp-block-template-part[data-area="header"],
header.wp-block-template-part {
	position: relative;
	z-index: 1000;
}

.wp-block-wpbote-hero {
	position: relative;
	z-index: 0;
	overflow: hidden;
	background: #040810;
	display: block;

	padding-top: var(--wp--preset--spacing--50);
	padding-bottom: var(--wp--preset--spacing--50);
}

.wpbote-hero__content {
	margin-top: 0 !important;
}

.wp-block-wpbote-hero canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

/* ---------- layout overlay ---------- */

.wp-block-wpbote-hero .wpbote-hero__content {
	position: relative;
	z-index: 10;
	color: #fff;
}

/* WordPress genera il CSS is-layout-constrained come <style> inline dopo il nostro
   stylesheet, quindi serve !important per sovrascriverlo sul wrapper del blocco.
   Il constrained layout viene riapplicato manualmente su .wpbote-hero__content. */
.wp-block-wpbote-hero.is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: unset !important;
	margin-inline: unset !important;
}

.wp-block-wpbote-hero.is-layout-constrained>.alignwide {
	max-width: unset !important;
}

.wp-block-wpbote-hero .wpbote-hero__content> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: var(--wp--style--global--content-size, 620px);
	margin-inline: auto;
}

.wp-block-wpbote-hero .wpbote-hero__content>.alignwide {
	max-width: var(--wp--style--global--wide-size, 1280px);
	margin-inline: auto;
}

.wp-block-wpbote-hero .wpbote-hero__content>.alignfull {
	max-width: none;
	width: 100%;
}

/*
.wp-block-wpbote-hero .wpbote-hero__content {
	position: relative;
	z-index: 10;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 2rem;
	text-align: center;
	color: #fff;
}
*/

/* ---------- typography ---------- */

.wp-block-wpbote-hero .wpbote-hero__content h1,
.wp-block-wpbote-hero .wpbote-hero__content h2 {
	background: linear-gradient(135deg, #fff 30%, rgba(150, 200, 255, 0.8));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	font-size: clamp(2.2rem, 5.5vw, 4.5rem);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
	margin: 0 0 1.5rem;
}

.wp-block-wpbote-hero .wpbote-hero__content p {
	font-size: clamp(1rem, 1.8vw, 1.25rem);
	line-height: 1.75;
	margin: 0 0 3rem;
	color: rgba(200, 220, 255, 0.7);
}

/* ---------- bottoni ---------- */
/*
.wp-block-wpbote-hero .wpbote-hero__content .wp-block-buttons {
	justify-content: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.wp-block-wpbote-hero .wpbote-hero__content .wp-block-button__link {
	border-radius: 50px;
	padding: 0.9rem 2.2rem;
	font-size: 0.95rem;
	font-weight: 600;
	text-decoration: none;
	transition: opacity 0.2s;
}

.wp-block-wpbote-hero .wpbote-hero__content .wp-block-button__link:hover {
	opacity: 0.85;
}

.wp-block-wpbote-hero .wpbote-hero__content .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: linear-gradient(135deg,
			rgba(74, 158, 255, 0.9),
			rgba(120, 80, 220, 0.9));
	color: #fff;
	box-shadow: 0 0 30px rgba(74, 158, 255, 0.4);
}

.wp-block-wpbote-hero .wpbote-hero__content .wp-block-button.is-style-outline .wp-block-button__link {
	background: rgba(255, 255, 255, 0.07);
	color: rgba(255, 255, 255, 0.85);
	border: 1px solid rgba(255, 255, 255, 0.15);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
}
	*/

/* ---------- scroll indicator ---------- */

.wp-block-wpbote-hero .wpbote-hero__scroll {
	position: absolute;
	bottom: 2.5rem;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	color: rgba(255, 255, 255, 0.4);
	font-size: 0.7rem;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	animation: wpbote-bounce 2.5s ease-in-out infinite;
	pointer-events: none;
}

@keyframes wpbote-bounce {

	0%,
	100% {
		transform: translateX(-50%) translateY(0);
	}

	50% {
		transform: translateX(-50%) translateY(6px);
	}
}

/* =========================================================
   Modificatore "hero-left" — contenuto allineato a sinistra,
   accento singolo cyan (direzione Terminal Editorial)
   ========================================================= */
/*
.wp-block-wpbote-hero.hero-left .wpbote-hero__content {
	align-items: flex-start;
	text-align: left;
	max-width: 1280px;
	margin: 0 auto;
	width: 100%;
	padding-left: clamp(1.5rem, 5vw, 4rem);
	padding-right: clamp(1.5rem, 5vw, 4rem);
}*/

/* niente sfumatura viola: bottone primario cyan pieno */
/*
.wp-block-wpbote-hero.hero-left .wpbote-hero__content .wp-block-buttons {
	justify-content: flex-start;
}

.wp-block-wpbote-hero.hero-left .wpbote-hero__content .wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: #00e5ff;
	color: #04070b;
	box-shadow: 0 0 30px rgba(0, 229, 255, 0.35);
}

.wp-block-wpbote-hero.hero-left .wpbote-hero__content .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: rgba(125, 249, 255, 0.4);
}*/