/* Plaza Gamer — overrides sobre Kadence starter "Events" */

/* Cada página ya trae su propio H1 dentro del contenido (pg-section-heading) —
   el título + breadcrumb automático de Kadence duplicaba el H1 y generaba
   ~200-280px de aire vacío arriba de cada página. Se oculta en todo el sitio. */
.entry-hero,
.entry-header.page-title {
	display: none !important;
}

/* Unificar el fondo: usar el mismo azul casi-negro del theme anterior en todo el sitio */
html, body, .entry.content-bg, .site, .site-content, .site-header, header, .content-area, main, footer, .site-footer {
	background-color: #050a14 !important;
}

/* Nav más compacto + visible sobre fondo oscuro */
.site-header nav a, header nav a, .main-navigation a {
	font-size: 13px !important;
	padding: 8px 8px !important;
	color: rgba(255,255,255,0.85) !important;
}
.site-header nav a:hover, header nav a:hover, .main-navigation a:hover {
	color: #00d4ff !important;
}

/* Menú móvil (drawer) — oscuro; el ícono de cerrar ya es blanco, solo faltaba contraste */
.drawer-inner {
	background-color: #0a1020 !important;
}
.drawer-inner a {
	color: rgba(255,255,255,0.85) !important;
}
.drawer-inner a:hover {
	color: #00d4ff !important;
}

/* Submenú desplegable — oscuro, no el blanco por defecto de Kadence */
.sub-menu, .dropdown-menu {
	background-color: #0a1020 !important;
	border: 1px solid rgba(0,102,255,0.2) !important;
	box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
}
.sub-menu a, .dropdown-menu a {
	color: rgba(255,255,255,0.75) !important;
}
.sub-menu a:hover, .dropdown-menu a:hover {
	color: #00d4ff !important;
	background-color: rgba(0,102,255,0.08) !important;
}
/* Item activo del submenú (página actual) — Kadence lo pinta blanco por defecto */
.sub-menu li.current-menu-item > a,
.sub-menu li.current_page_item > a,
.dropdown-menu li.current-menu-item > a,
.dropdown-menu li.current_page_item > a {
	background-color: rgba(0,102,255,0.12) !important;
	color: #00d4ff !important;
}

/* Logo del header (nav) — tamaño original */
.custom-logo {
	height: 84px !important;
	width: auto !important;
}

/* CTA del header: reemplaza "Tickets" por Reservar */
a.header-button {
	background: #00d4ff !important;
	color: #04101a !important;
	font-weight: 700;
}

:root {
	--global-palette1: #0066ff;
	--global-palette2: #003174;

	--pg-circuit: #0066ff;
	--pg-white: #ffffff;
	--pg-cta: #00d4ff;
	--pg-cta-text: #001a33;
	--pg-magenta: #ff2d78;
	--pg-font-display: 'Exo 2', sans-serif;
	--pg-glow-green: 0 0 6px rgba(0,102,255,0.9), 0 0 18px rgba(0,102,255,0.5), 0 0 40px rgba(0,102,255,0.2);
	--pg-glow-white: 0 0 8px rgba(255,255,255,0.5), 0 0 20px rgba(255,255,255,0.2);
	--pg-glow-magenta: 0 0 8px rgba(255,45,120,0.9), 0 0 22px rgba(255,45,120,0.5), 0 0 48px rgba(255,45,120,0.2);
}

/* ─── Contenido migrado del theme anterior (secciones de página) ── */
.pg-section {
	position: relative;
	padding-block: clamp(1.5rem, 2.5vw, 2.5rem);
	padding-inline: clamp(1.5rem, 5vw, 4rem);
	max-width: 1100px;
	margin-inline: auto;
	width: 100%;
	box-sizing: border-box;
}

.pg-section--hero {
	padding-block: clamp(1rem, 2vw, 1.5rem) clamp(1.5rem, 2vw, 2rem);
	min-height: auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

/* El header flota (position:absolute) sobre el contenido — en mobile su
   altura tapaba el label "Caseros · Buenos Aires". Le damos aire suficiente. */
@media (max-width: 600px) {
	.pg-section--hero {
		padding-top: 100px;
	}
}

/* Kadence agrega block-gap entre bloques de nivel superior — sumado a nuestro
   padding, generaba mucho más aire en pantalla real que en el editor (el
   editor renderiza en un iframe angosto, así que los clamp() con vw dan
   valores menores ahí). Achicamos ese gap heredado. */
.entry-content > .wp-block-group,
.wp-block-post-content > .wp-block-group {
	margin-block: 0 !important;
}

.pg-hero-inner { max-width: min(900px, 94vw); margin-inline: auto; padding-inline: 2rem; display: flex; flex-direction: column; align-items: center; }
.pg-hero-actions { justify-content: center; }
.pg-hero-logo { display: block; height: clamp(220px, 22vw, 350px); width: auto; margin-bottom: 1.2rem; }
.pg-hero-label {
	font-family: var(--pg-font-display); font-size: clamp(0.7rem, 1.2vw, 0.85rem); font-weight: 700;
	letter-spacing: 0.22em; text-transform: uppercase; color: var(--pg-circuit); text-shadow: var(--pg-glow-green);
	margin-bottom: 1rem; display: flex; align-items: center; gap: 0.75rem;
}
.pg-hero-label::before { content: ''; display: inline-block; width: 32px; height: 1.5px; background: var(--pg-circuit); box-shadow: var(--pg-glow-green); }
.pg-hero-title { font-family: var(--pg-font-display) !important; }
.pg-hero-tagline {
	font-family: var(--pg-font-display); font-size: clamp(1.1rem, 2.5vw, 1.6rem); font-weight: 600;
	color: rgba(255,255,255,0.85); line-height: 1.3; max-width: 640px; margin-bottom: 2rem;
}
.pg-hero-tagline em { color: var(--pg-circuit); font-style: normal; text-shadow: 0 0 12px rgba(0,102,255,0.6); }

@media (max-width: 860px) {
	.pg-hero-actions { flex-direction: column !important; align-items: flex-start !important; gap: 0.75rem !important; }
	.pg-hero-actions .pg-magnetize-wrap { width: 100%; }
	.pg-hero-actions .pg-magnetize { width: 100%; max-width: 100%; box-sizing: border-box; }
}

.pg-section-label {
	font-family: var(--pg-font-display); font-size: clamp(0.65rem, 1.1vw, 0.78rem); font-weight: 700;
	letter-spacing: 0.24em; text-transform: uppercase; color: var(--pg-circuit); text-shadow: var(--pg-glow-green);
	margin-bottom: 1rem;
}
.pg-section-heading {
	font-family: var(--pg-font-display) !important; font-size: clamp(2rem, 4.5vw, 3.8rem) !important; font-weight: 900 !important;
	color: var(--pg-white); text-shadow: var(--pg-glow-white); text-transform: uppercase; line-height: 1.02 !important; margin: 0 0 1.5rem !important;
}
/* Palabras resaltadas en azul dentro de un heading blanco heredaban el glow blanco (se veía como halo blanco detrás del texto azul) */
.pg-section-heading span[style*="0066ff"],
.pg-hero-title span[style*="0066ff"],
.pg-cta-heading span[style*="0066ff"] {
	text-shadow: 0 0 8px rgba(0,58,82,0.9), 0 0 20px rgba(0,58,82,0.6) !important;
}
.pg-section-body { font-size: clamp(0.95rem, 1.5vw, 1.05rem); color: rgba(255,255,255,0.65); line-height: 1.7; max-width: 560px; }

/* Tech trail */
.pg-tech-section { padding-inline: max(2rem, 4vw); max-width: min(1200px, 96vw); margin-inline: auto; }
.pg-tech-trail { display: flex; flex-direction: column; gap: 0; }
.pg-tech-item { display: flex; align-items: center; gap: 1.6rem; padding: 1.5rem 0; border-bottom: 1px solid rgba(0,102,255,0.08); }
.pg-tech-item:last-child { border-bottom: none; }
.pg-tech-photo {
	width: 72px; height: 72px; flex-shrink: 0; display: flex; align-items: center; justify-content: center;
	border: 1.5px dashed rgba(0,102,255,0.28); border-radius: 10px; background: rgba(0,102,255,0.03); overflow: hidden;
}
.pg-tech-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
.pg-tech-name { font-family: var(--pg-font-display); font-size: clamp(1rem, 1.8vw, 1.2rem); font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--pg-white); word-break: normal; overflow-wrap: normal; hyphens: none; }
.pg-tech-desc { font-size: 0.875rem; color: rgba(255,255,255,0.5); margin-top: 0.15rem; word-break: normal; overflow-wrap: normal; hyphens: none; }
.pg-tech-node { width: 8px; height: 8px; border-radius: 50%; background: var(--pg-circuit); box-shadow: var(--pg-glow-green); flex-shrink: 0; margin-left: auto; }
.pg-tech-item > div:not(.pg-tech-photo) { flex: 1 1 auto; min-width: 0; }

@media (max-width: 480px) {
	.pg-tech-item { gap: 1rem; }
	.pg-tech-photo { width: 56px; height: 56px; }
	.pg-tech-name { font-size: 0.95rem; }
	.pg-tech-desc { font-size: 0.8rem; }
	.pg-tech-node { display: none; }
}

/* Events */
.pg-events-section { max-width: min(1400px, 98vw); margin-inline: auto; }
.pg-events-frame {
	position: relative; border: 1.5px solid rgba(0,102,255,0.2); border-radius: 16px;
	padding: clamp(1.5rem, 4vw, 2.5rem); background: rgba(0,102,255,0.025); overflow: hidden;
}
.pg-events-heading { font-family: var(--pg-font-display); }
.pg-events-grid.wp-block-columns { display: flex !important; flex-wrap: wrap !important; gap: 1.5rem !important; }
.pg-events-grid > .wp-block-column { flex: 1 1 calc(50% - 0.75rem) !important; max-width: none !important; min-width: 260px; }
@media (max-width: 700px) { .pg-events-grid > .wp-block-column { flex: 1 1 100% !important; } }
.pg-event-type-title {
	font-family: var(--pg-font-display) !important; font-size: clamp(1.2rem, 2.5vw, 1.6rem) !important; font-weight: 800 !important;
	text-transform: uppercase; color: var(--pg-white) !important; margin-bottom: 1rem !important; padding-left: 1rem; border-left: 2px solid var(--pg-circuit);
}
.pg-event-type-body { font-size: 0.95rem; color: rgba(255,255,255,0.62); line-height: 1.7; padding-left: 1rem; }

/* CTA section */
.pg-cta-section { display: flex; flex-direction: column; align-items: center; text-align: center; padding-inline: 2rem; padding-block: clamp(1rem, 2vw, 1.5rem); }
.pg-cta-heading {
	font-family: var(--pg-font-display) !important; font-size: clamp(2.2rem, 5.5vw, 4.5rem) !important; font-weight: 900 !important;
	text-transform: uppercase; letter-spacing: -0.02em; color: var(--pg-white); text-shadow: var(--pg-glow-white); margin-bottom: 2rem !important; line-height: 1.02 !important;
}
.pg-cta-subtext { font-size: 0.95rem; color: rgba(255,255,255,0.45); margin-top: 1.2rem; letter-spacing: 0.04em; }

/* Cards */
.pg-card { border: 1px solid rgba(0,102,255,0.18); border-radius: 14px; padding: 1.8rem 1.6rem 1.6rem !important; background: rgba(0,102,255,0.022); }

/* Placeholder de foto pendiente (mismo patrón usado en todas las páginas) */
.pg-img-placeholder {
	width: 100%;
	aspect-ratio: 16 / 9;
	background: rgba(0,102,255,0.02);
	border: 1.5px dashed rgba(0,102,255,0.18);
	border-radius: 12px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	color: rgba(0,102,255,0.22);
	margin-block: 1.5rem;
	position: relative;
	overflow: hidden;
}
.pg-img-placeholder svg { width: 36px; height: 36px; opacity: 0.3; }
.pg-img-placeholder--wide { aspect-ratio: 21 / 9; }
.pg-img-placeholder--square { aspect-ratio: 1 / 1; }
@media (max-width: 600px) { .pg-img-placeholder--wide { aspect-ratio: 16 / 9; } }

/* Photos (fotos reales, no placeholders) */
.pg-photo { width: 100%; max-width: 620px; aspect-ratio: 16/9; border-radius: 12px; overflow: hidden; margin-block: 1.5rem; }
.pg-photo--wide { aspect-ratio: 21/9; }
.pg-photo--square { aspect-ratio: 1/1; }
.pg-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
@media (max-width: 600px) { .pg-photo--wide { aspect-ratio: 16/9; } }

/* Footer badge (ubicación / teléfono) */
.pg-footer-badge-section { padding-block: clamp(2rem, 5vw, 4rem); padding-inline: max(1rem, 4vw); }
.pg-footer-badge-inner { display: flex; flex-wrap: wrap; align-items: center; gap: 1.5rem 3rem; }
.pg-location-badge {
	display: inline-flex; align-items: center; gap: 0.65rem; padding: 0.7rem 1.8rem; border: 1.5px solid rgba(255,45,120,0.5);
	border-radius: 100px; background: rgba(255,45,120,0.06); color: var(--pg-magenta); font-family: var(--pg-font-display);
	font-size: clamp(0.78rem, 1.3vw, 0.88rem); font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; box-shadow: var(--pg-glow-magenta);
}
.pg-location-badge__icon { width: 16px; height: 16px; fill: var(--pg-magenta); flex-shrink: 0; }
.pg-phone { font-family: var(--pg-font-display); font-size: clamp(1.5rem, 3vw, 2.4rem); font-weight: 700; color: var(--pg-white); letter-spacing: 0.04em; text-decoration: none; }
.pg-phone:hover { color: var(--pg-circuit); text-shadow: var(--pg-glow-green); }

/* Legal pages */
.pg-legal-content { max-width: 760px; color: rgba(255,255,255,0.65); line-height: 1.8; font-size: 0.95rem; }
.pg-legal-content h2 {
	font-family: var(--pg-font-display); font-size: clamp(0.9rem, 1.5vw, 1.05rem); font-weight: 800; letter-spacing: 0.08em;
	text-transform: uppercase; color: #fff; margin: 2rem 0 0.75rem; padding-bottom: 0.5rem; border-bottom: 1px solid rgba(0,102,255,0.1);
}
.pg-legal-content h2:first-child { margin-top: 0; }
.pg-legal-content ul { padding-left: 1.5rem; margin: 0 0 1rem; }
.pg-legal-content ul li::marker { color: #0066ff; }
.pg-legal-content a { color: rgba(0,102,255,0.8); }

/* Achicar el aire entre secciones (rows de Kadence) */
.kt-row-column-wrap {
	padding-top: clamp(2rem, 5vw, 3.5rem) !important;
	padding-bottom: clamp(2rem, 5vw, 3.5rem) !important;
}

.wp-block-kadence-rowlayout {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* Magnetize button (recreado del theme anterior) */
@keyframes pg-cta-pulse {
	0%, 100% { box-shadow: 0 0 0 0 rgba(0, 212, 255, 0.55); }
	50% { box-shadow: 0 0 0 14px rgba(0, 212, 255, 0); }
}

.pg-magnetize.kt-button,
a.pg-magnetize,
button.pg-magnetize {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 0.7rem;
	padding: 1.1rem 2.6rem !important;
	font-family: var(--pg-font-display);
	font-size: clamp(0.9rem, 1.6vw, 1.05rem) !important;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border-radius: 100px;
	background: #003a52 !important;
	border-color: #003a52 !important;
	color: #ffffff !important;
	text-decoration: none;
	animation: pg-cta-pulse 2.8s infinite;
	transition: background 0.25s ease, box-shadow 0.25s ease, transform 0.2s ease, color 0.25s ease;
	white-space: nowrap;
}

.pg-magnetize.kt-button:hover,
a.pg-magnetize:hover,
button.pg-magnetize:hover {
	background: #00d4ff !important;
	color: #04101a !important;
	box-shadow: 0 0 24px rgba(0,212,255,1), 0 0 55px rgba(0,212,255,0.75), 0 0 100px rgba(0,212,255,0.38);
	transform: translateY(-2px);
}
