/* IPAR Run Club: detalles que theme.json no cubre (textura, cinta, tarjetas, galería). */

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation: none !important; transition: none !important; }
}
body { overflow-x: hidden; }
[id] { scroll-margin-top: 80px; }

/* Grano de película sobre toda la web */
body:not(.block-editor-iframe__body)::after {
	content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 9999; opacity: .07; mix-blend-mode: overlay;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* Titular con textura grunge (estilo de bloque "Grunge") */
.is-style-grunge {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 -5 3.6'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 -5 3.6'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
	text-wrap: balance;
}
h1, h2, h3 { text-wrap: balance; }

/* Etiqueta pequeña con tracking (estilo "Etiqueta") */
.is-style-label {
	font-family: var(--wp--preset--font-family--label);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 700; line-height: 1.3; letter-spacing: .22em; text-transform: uppercase;
	color: var(--wp--preset--color--mute);
}
.is-style-label strong, .is-style-label b { color: var(--wp--preset--color--pink); font-weight: 700; }

/* Sello píldora (estilo "Sello") */
.is-style-stamp {
	display: inline-block; align-self: flex-start; width: auto !important;
	font-family: var(--wp--preset--font-family--label); font-size: .6875rem; font-weight: 700; line-height: 1;
	letter-spacing: .2em; text-transform: uppercase;
	border: 1px solid var(--wp--preset--color--pink); color: var(--wp--preset--color--pink);
	padding: 7px 10px; border-radius: 999px; margin: 0;
}

/* Botón contorno blanco (estilo "Contorno" de WordPress) */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent; color: var(--wp--preset--color--chalk); border-color: var(--wp--preset--color--chalk);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--chalk); color: var(--wp--preset--color--stone); border-color: var(--wp--preset--color--chalk);
}
.wp-block-button__link { transition: background .2s, color .2s, border-color .2s; }

/* Cabecera fija */
.ipar-header {
	position: sticky; top: 0; z-index: 100;
	background: color-mix(in srgb, var(--wp--preset--color--stone) 82%, transparent);
	-webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.admin-bar .ipar-header { top: var(--wp-admin--admin-bar--height, 32px); }
.ipar-header .wp-block-site-logo img { height: 34px; width: auto; }
.ipar-header .wp-block-navigation a { color: var(--wp--preset--color--mute); text-decoration: none; }
.ipar-header .wp-block-navigation a:hover { color: var(--wp--preset--color--chalk); }
.ipar-header .wp-block-button__link { padding: 11px 16px; font-size: .6875rem; }
.ipar-brand { text-decoration: none; }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--stone) !important; color: var(--wp--preset--color--chalk) !important; }
.wp-block-navigation__responsive-container.is-menu-open a { font-size: 1.5rem; }

/* Portada */
.ipar-hero h1 .ipar-pink, .ipar-pink { color: var(--wp--preset--color--pink); }
.ipar-hero h1, .ipar-hero p { text-shadow: 0 2px 24px rgba(0,0,0,.45); }
.ipar-hero .wp-block-cover__image-background { object-position: 50% 40%; }

/* Cinta en movimiento (estilo de grupo "Cinta en movimiento") */
.is-style-ticker {
	overflow: hidden; white-space: nowrap;
	border-block: 1px solid var(--wp--preset--color--line);
	padding-block: 14px !important;
}
.is-style-ticker > p {
	display: inline-block; margin: 0 !important; padding-left: 2rem;
	font-family: var(--wp--preset--font-family--display); font-size: 1.375rem; line-height: 1;
	text-transform: uppercase; letter-spacing: .04em; color: var(--wp--preset--color--mute);
	animation: ipar-tick 38s linear infinite;
}
.is-style-ticker > p strong { color: var(--wp--preset--color--pink); font-weight: 400; padding-inline: 1.25rem; }
@keyframes ipar-tick { to { transform: translateX(-50%); } }

/* Tarjetas */
.is-style-card {
	background: var(--wp--preset--color--stone-2);
	border: 1px solid var(--wp--preset--color--line); border-radius: 4px;
}
.is-style-card-pink {
	background: var(--wp--preset--color--pink); color: var(--wp--preset--color--ink);
	border: 1px solid var(--wp--preset--color--pink); border-radius: 4px;
}
.is-style-card-pink .is-style-label { color: color-mix(in srgb, var(--wp--preset--color--ink) 70%, transparent); }
.is-style-card-pink .is-style-stamp { color: var(--wp--preset--color--ink); border-color: var(--wp--preset--color--ink); }
.is-style-card-pink .wp-block-button__link { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--pink); border-color: var(--wp--preset--color--ink); }
.is-style-card-pink .wp-block-button__link:hover { background: transparent; color: var(--wp--preset--color--ink); }

/* Tarjetas de socio a la misma altura con el botón abajo */
.ipar-plans > .wp-block-column { display: flex; }
.ipar-plans > .wp-block-column > .wp-block-group { flex: 1; display: flex; flex-direction: column; }
.ipar-plans .wp-block-buttons { margin-top: auto !important; padding-top: 1rem; }
.ipar-plans .wp-block-button, .ipar-plans .wp-block-button__link { width: 100%; text-align: center; }
.ipar-price { font-family: var(--wp--preset--font-family--display); font-size: 4.75rem; line-height: .9; font-variant-numeric: tabular-nums; margin: 0; }

/* Ventajas de socio */
.ipar-perks { border-top: 1px solid var(--wp--preset--color--line); padding-top: 1.5rem; }
.ipar-perks h4::before { content: "✦"; display: block; color: var(--wp--preset--color--pink); font-size: 1rem; margin-bottom: .6rem; }

/* Cifras del próximo evento */
.ipar-count { gap: 1px !important; background: var(--wp--preset--color--line); border: 1px solid var(--wp--preset--color--line); }
.ipar-count > .wp-block-column { background: var(--wp--preset--color--stone-2); padding: 16px 10px; text-align: center; }
.ipar-count > .wp-block-column > * { margin: 0; }
.ipar-count h4 { font-variant-numeric: tabular-nums; }
@media (max-width: 781px) {
	.ipar-count { flex-wrap: nowrap !important; }
	.ipar-count > .wp-block-column { flex-basis: 0 !important; }
}

/* Tarjeta de evento con foto */
.ipar-event { border-radius: 4px; overflow: hidden; }
.ipar-event .wp-block-cover__image-background { object-position: 50% 15%; transition: transform .8s; }
.ipar-event:hover .wp-block-cover__image-background { transform: scale(1.03); }

/* Lista de datos (estilo "Datos") */
.is-style-facts { list-style: none; padding: 0 !important; border-top: 1px solid var(--wp--preset--color--line); }
.is-style-facts li { display: grid; grid-template-columns: 110px 1fr; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--wp--preset--color--line); }
.is-style-facts li strong {
	font-family: var(--wp--preset--font-family--label); font-size: .6875rem; font-weight: 700; line-height: 1.9;
	letter-spacing: .2em; text-transform: uppercase; color: var(--wp--preset--color--mute);
}

/* Imágenes verticales (estilo "Vertical 4:5") */
.wp-block-image.is-style-tall img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; border-radius: 4px; }
.wp-block-image.is-style-tall { position: relative; overflow: hidden; border-radius: 4px; }
.wp-block-image.is-style-tall img { transition: transform .8s; }
.wp-block-image.is-style-tall:hover img { transform: scale(1.04); }

/* Drop de edición limitada */
.ipar-drop { border: 1px dashed var(--wp--preset--color--pink); border-radius: 4px; height: 100%; }

/* Galería deslizable (estilo de grupo "Galería deslizable") */
.is-style-gallery-scroll {
	overflow-x: auto; scroll-snap-type: x mandatory; flex-wrap: nowrap !important;
	padding-bottom: 12px; scrollbar-width: thin; scrollbar-color: var(--wp--preset--color--line) transparent;
}
.is-style-gallery-scroll > .wp-block-image { flex: none; margin: 0; scroll-snap-align: start; }
.is-style-gallery-scroll > .wp-block-image img { height: clamp(300px, 42vw, 500px); width: auto; max-width: none; border-radius: 4px; object-fit: cover; }

/* Rejilla de sponsors */
.ipar-sponsors { gap: 0 !important; border-top: 1px solid var(--wp--preset--color--line); border-left: 1px solid var(--wp--preset--color--line); }
.ipar-sponsors > .wp-block-column { border-right: 1px solid var(--wp--preset--color--line); border-bottom: 1px solid var(--wp--preset--color--line); padding: 30px 20px; min-height: 130px; display: flex; flex-direction: column; justify-content: space-between; }
.ipar-sponsors > .wp-block-column.ipar-sponsor-you { border-style: dashed; }
.ipar-sponsors > .wp-block-column.ipar-sponsor-you h4 { color: var(--wp--preset--color--pink); }
@media (max-width: 781px) {
	.ipar-sponsors { flex-wrap: wrap !important; }
	.ipar-sponsors > .wp-block-column { flex-basis: 50% !important; }
}

/* Pie */
.ipar-footer { border-top: 1px solid var(--wp--preset--color--line); }
.ipar-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.ipar-footer a { text-decoration: none; }
@media (max-width: 781px) {
	.ipar-footer .wp-block-columns { flex-wrap: wrap !important; }
	.ipar-footer .wp-block-column { flex-basis: 45% !important; }
}

/* Texto secundario */
.ipar-muted { color: var(--wp--preset--color--mute); }

/* Páginas interiores */
.wp-block-post-content a { text-decoration-color: var(--wp--preset--color--pink); text-underline-offset: 3px; }

/* La cabecera completa se queda fija arriba y las secciones van pegadas */
.wp-site-blocks > header.wp-block-template-part { position: sticky; top: 0; z-index: 100; }
.admin-bar .wp-site-blocks > header.wp-block-template-part { top: var(--wp-admin--admin-bar--height, 32px); }
.admin-bar .ipar-header { top: auto; }
.ipar-header { position: relative; }
.wp-site-blocks > * + *, main.wp-block-group > * + .alignfull { margin-block-start: 0; }
main.wp-block-group > .alignfull { margin-block-start: 0 !important; }
.is-style-gallery-scroll { padding-left: var(--wp--style--root--padding-left) !important; padding-right: var(--wp--style--root--padding-right) !important; }

/* Ajustes finos */
.ipar-hero > .wp-block-cover__inner-container { width: 100% !important; max-width: 1240px; margin-inline: auto !important; }
.ipar-hero > .wp-block-cover__inner-container > * { max-width: none; margin-left: 0 !important; }
.is-style-gallery-scroll { padding-left: max(16px, 3vw) !important; padding-right: max(16px, 3vw) !important; }
.is-style-card-pink .wp-block-button.is-style-outline > .wp-block-button__link,
.is-style-card-pink .wp-block-button > .wp-block-button__link { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--pink); border-color: var(--wp--preset--color--ink); }
.is-style-card-pink .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: transparent; color: var(--wp--preset--color--ink); }
.is-style-card-pink p:not(.is-style-label):not(.is-style-stamp) { color: color-mix(in srgb, var(--wp--preset--color--ink) 75%, transparent); }
/* La máscara recorta lo que sobresale de la caja: deja sitio a las tildes de las mayúsculas (Á, É) */
.is-style-grunge { padding-top: .14em; margin-top: -.14em; }
