/* ============================================================
   PARQUE DE LAS CALABAZAS 2026 — Sistema visual
   Todo vive dentro de .pdlc26 para poder embeberse en WordPress
   sin que el tema de fondo pise los estilos (ni al revés).
   ============================================================ */

/* Títulos formales (Gilroy Heavy) */
@font-face {
  font-family: "Gilroy";
  src: url("https://parquedelascalabazas.com/wp-content/uploads/2026/pdlc/H1_GILROY_HEAVY.woff2") format("woff2"),
       url("https://parquedelascalabazas.com/wp-content/uploads/2026/pdlc/H1_GILROY_HEAVY.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gilroy";
  src: url("https://parquedelascalabazas.com/wp-content/uploads/2026/pdlc/H1_GILROY_HEAVY_ITALIC.woff2") format("woff2"),
       url("https://parquedelascalabazas.com/wp-content/uploads/2026/pdlc/H1_GILROY_HEAVY_ITALIC.ttf") format("truetype");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}

/* ---------- 1. Tokens ---------- */
.pdlc26 {
  /* Noche de octubre: la superficie ES el color */
  --noche-900: oklch(0.16 0.055 305);
  --noche-800: oklch(0.22 0.070 303);
  --noche-700: oklch(0.29 0.078 300);
  --noche-600: oklch(0.37 0.082 298);

  /* Primitive orange (DS Figma) */
  --orange-50:  #FFF4E5;
  --orange-300: #FFCD86;
  --orange-400: #FC9635;
  --orange-500: #F06920;
  --orange-600: #BC2F01;
  --orange-700: #7B2205;
  --orange-800: #2b1600;

  /* Primitive neutral (DS Figma) */
  --neutral-200: #E2E2E2;

  /* Semantic primary — 3 niveles para WordPress */
  --primary:        var(--orange-500); /* botones, acentos */
  --primary-300:    var(--orange-300); /* fondos claros */
  --primary-600:    var(--orange-600); /* énfasis / gradiente arriba */
  --primary-800:    var(--orange-800); /* gradiente abajo / tinta fuerte */
  --primary-hover:  var(--orange-400);
  --primary-on:     #FFFFFF;           /* texto sobre primary */

  /* Alias legacy (mismas piezas, nombres viejos) */
  --calabaza:       var(--primary);
  --calabaza-viva:  var(--primary-hover);
  --calabaza-honda: var(--primary-600);
  --maiz:            var(--orange-300);
  --tallo:           oklch(0.60 0.145 148);

  /* Tinta: el café del contorno del logotipo */
  --tinta:      var(--orange-800);
  --tinta-suave:var(--orange-700);

  --hueso:    oklch(0.985 0.010 85);
  --texto:    oklch(0.945 0.012 300);
  --texto-2:  oklch(0.815 0.028 300);
  --texto-3:  oklch(0.700 0.035 300);

  --linea:      color-mix(in oklab, var(--hueso) 16%, transparent);
  --linea-firme:color-mix(in oklab, var(--hueso) 30%, transparent);

  --r-chico: 8px;
  --r: 14px;
  --r-grande: 18px;
  --pastilla: 999px;
  --boton-primary-alto: 52px;

  --paso: clamp(1rem, 2.2vw, 1.6rem);
  --ancho: 1200px;
  --ancho-texto: 62ch;

  --nav-alto: 84px;
  --nav-top: 0px;            /* súbelo si el tema de WP tiene header fijo */

  --salida: cubic-bezier(0.22, 1, 0.36, 1);
  --salida-larga: cubic-bezier(0.16, 1, 0.3, 1);

  /* Escala z semántica */
  --z-fondo: 0;
  --z-contenido: 1;
  --z-flotante: 10;
  --z-nav: 40;
  --z-nav-overlay: 45;
  --z-menu: 50;

  --fuente-display: "Titan One", "Trebuchet MS", "Segoe UI", system-ui, sans-serif; /* títulos juguetones */
  --fuente-titulo:  "Gilroy", "Arial Black", "Helvetica Neue", Arial, sans-serif; /* títulos formales */
  --fuente-texto: "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --texto-cuerpo: 1rem; /* 16px — párrafos, listas y copy de cards */

  position: relative;
  box-sizing: border-box;
  background: var(--noche-900);
  color: var(--texto);
  font-family: var(--fuente-texto);
  font-size: 16px;
  line-height: 1.6;
  font-weight: 400;
  font-style: normal;
  text-transform: none;
  text-align: left;
  text-shadow: none;
  letter-spacing: normal;
  word-spacing: normal;
  text-indent: 0;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: clip;
}

/* ---------- 2. Aislamiento respecto al tema de WordPress ----------
   El bloque vive dentro del tema del cliente, así que neutralizamos
   lo que los temas suelen imponer: bordes en imágenes, mayúsculas en
   títulos, rellenos en <section>, viñetas, subrayados, etc.
   Todo se declara con `.pdlc26 <etiqueta>`: nuestras propias reglas
   usan clases y siempre ganan por especificidad.                     */

.pdlc26 *,
.pdlc26 *::before,
.pdlc26 *::after { box-sizing: border-box; }

.pdlc26 h1, .pdlc26 h2, .pdlc26 h3, .pdlc26 h4, .pdlc26 h5, .pdlc26 h6,
.pdlc26 p, .pdlc26 ul, .pdlc26 ol, .pdlc26 li, .pdlc26 figure,
.pdlc26 dl, .pdlc26 dt, .pdlc26 dd, .pdlc26 blockquote,
.pdlc26 table, .pdlc26 fieldset, .pdlc26 pre { margin: 0; }

.pdlc26 section, .pdlc26 header, .pdlc26 footer, .pdlc26 nav,
.pdlc26 article, .pdlc26 aside, .pdlc26 div, .pdlc26 figure,
.pdlc26 details, .pdlc26 summary, .pdlc26 span {
  padding: 0;
  border: 0;
  background: none;
  box-shadow: none;
  float: none;
}

.pdlc26 ul, .pdlc26 ol { padding: 0; list-style: none; }
.pdlc26 li { list-style: none; }
.pdlc26 li::marker { content: ""; }

.pdlc26 img, .pdlc26 svg, .pdlc26 picture, .pdlc26 video, .pdlc26 iframe {
  display: block;
  max-width: 100%;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  outline: none;
  filter: none;
}
.pdlc26 img { height: auto; }

.pdlc26 a {
  color: inherit;
  text-decoration: none;
  box-shadow: none;
  border: 0;
  background: none;
}

.pdlc26 button, .pdlc26 input, .pdlc26 select, .pdlc26 textarea {
  font: inherit; color: inherit; background: none;
  border: 0; padding: 0; margin: 0;
  border-radius: 0; box-shadow: none; text-transform: none;
  -webkit-appearance: none; appearance: none;
}
.pdlc26 button { cursor: pointer; }

.pdlc26 table { border: 0; border-spacing: 0; }
.pdlc26 th, .pdlc26 td { border: 0; background: none; text-transform: none; }

.pdlc26 details, .pdlc26 summary { display: block; }
.pdlc26 summary::marker,
.pdlc26 summary::-webkit-details-marker { content: ""; display: none; }

.pdlc26 hr { display: none; }

.pdlc26 :focus-visible {
  outline: 3px solid var(--maiz);
  outline-offset: 3px;
  border-radius: 4px;
}

/* ---------- 3. Tipografía ---------- */
.pdlc26 h1, .pdlc26 h2, .pdlc26 h3,
.pdlc26 .pdlc-display {
  font-family: var(--fuente-display);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: -0.012em;
  text-transform: none;
  font-style: normal;
  text-wrap: balance;
  color: var(--hueso);
}

.pdlc26 h1 { font-size: clamp(2.4rem, 6.4vw, 4.8rem); font-weight: 700; }
.pdlc26 h2 { font-size: clamp(1.9rem, 4.4vw, 3.375rem); }
.pdlc26 h3 { font-size: clamp(1.15rem, 2vw, 1.45rem); line-height: 1.12; }

/* Título con contorno, como el letrero de la marca. Uso contado. */
.pdlc26 .pdlc-contorno {
  color: var(--hueso);
  paint-order: stroke fill;
  -webkit-text-stroke: 0.13em var(--tinta);
  text-shadow: 0 0.06em 0 var(--tinta);
}

/* Titan One + contorno (estilo ¡Visítanos!) */
.pdlc26 .pdlc-contorno-titan,
.pdlc26 .pdlc-portada__nombre,
.pdlc26 .pdlc-sede__nombre,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-cabecera h1,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-cabecera h2.pdlc-contorno-titan {
  font-family: var(--fuente-display);
  font-size: clamp(1.9rem, 4.4vw, 3.375rem);
  font-weight: 400;
  letter-spacing: 0.01em;
  text-wrap: balance;
  paint-order: stroke fill;
  -webkit-text-stroke: 0.09em var(--tinta);
  text-shadow: 0 0.04em 0 var(--tinta);
  color: var(--hueso);
}

/* Títulos formales del cuerpo (Gilroy Heavy) */
.pdlc26 .pdlc-titulo,
.pdlc26 .pdlc-pie__titulo {
  font-family: var(--fuente-titulo);
  font-weight: 900;
  font-style: normal;
  letter-spacing: -0.01em;
}

.pdlc26 p { text-wrap: pretty; }
.pdlc26 .pdlc-plomo {
  font-size: clamp(1.03rem, 1.5vw, 1.2rem);
  color: var(--texto-2);
  max-width: var(--ancho-texto);
}

.pdlc26 strong, .pdlc26 b { font-weight: 600; color: var(--texto); }
.pdlc26 em { font-style: italic; }

/* ---------- 4. Estructura ---------- */
.pdlc26 .pdlc-envoltura {
  width: 100%;
  max-width: var(--ancho);
  margin-inline: auto;
  padding-inline: clamp(1.1rem, 4vw, 2.5rem);
}

.pdlc26 .pdlc-seccion {
  position: relative;
  padding-inline: 0;
  padding-block: clamp(3.4rem, 8vw, 6.5rem);
  scroll-margin-top: calc(var(--nav-alto) + var(--nav-top) + 12px);
}

.pdlc26 .pdlc-seccion--apretada { padding-block: clamp(2.6rem, 5vw, 4rem); }

.pdlc26 .pdlc-cabecera { margin-bottom: clamp(2rem, 4vw, 3rem); }
.pdlc26 .pdlc-cabecera p { margin-top: 0.85rem; }

/* ---------- 5. Botones ---------- */
.pdlc26 .pdlc-boton {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0.82rem 1.5rem;
  border-radius: var(--pastilla);
  font-family: var(--fuente-titulo);
  font-weight: 900;
  font-size: 1rem;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.22s var(--salida),
              color 0.22s var(--salida),
              transform 0.22s var(--salida),
              border-color 0.22s var(--salida),
              box-shadow 0.22s var(--salida);
}

.pdlc26 .pdlc-boton:hover { transform: translateY(-2px); }
.pdlc26 .pdlc-boton:active { transform: translateY(0); }

.pdlc26 .pdlc-boton--calabaza,
.pdlc26 .pdlc-boton--primary {
  height: var(--boton-primary-alto);
  min-height: var(--boton-primary-alto);
  max-height: var(--boton-primary-alto);
  padding-block: 0;
  line-height: 1;
  box-sizing: border-box;
  background: var(--primary-600);
  color: var(--primary-on);
  /* Bisel interno: no lo recorta overflow:hidden de paneles (p. ej. sede Valle Oriente) */
  border-bottom: 3px solid var(--primary-800);
  box-shadow: none;
}
.pdlc26 .pdlc-boton--calabaza:hover,
.pdlc26 .pdlc-boton--primary:hover { background: var(--primary-hover); }
.pdlc26 .pdlc-boton--calabaza:active,
.pdlc26 .pdlc-boton--primary:active {
  border-bottom-width: 1px;
  transform: translateY(1px);
}

.pdlc26 .pdlc-boton--linea {
  border: 2px solid var(--linea-firme);
  color: var(--texto);
}
.pdlc26 .pdlc-boton--linea:hover {
  border-color: var(--maiz);
  color: var(--maiz);
}

.pdlc26 .pdlc-boton--whatsapp {
  background: #fff;
  color: var(--primary-800);
  border: 1.5px solid var(--neutral-200);
  box-shadow: none;
  text-transform: none;
  font-family: var(--fuente-texto);
  font-weight: 600;
  letter-spacing: 0;
}
.pdlc26 .pdlc-boton--whatsapp:hover {
  border-color: color-mix(in oklab, var(--primary-800) 28%, var(--neutral-200));
  background: #fff;
}
.pdlc26 .pdlc-boton--whatsapp .pdlc-boton__icono {
  width: 1.2em;
  height: 1.2em;
  flex: none;
  color: #25D366;
}

.pdlc26 .pdlc-boton--tinta {
  /* Alias de primary: mismo color y bisel 3D */
  height: var(--boton-primary-alto);
  min-height: var(--boton-primary-alto);
  max-height: var(--boton-primary-alto);
  padding-block: 0;
  line-height: 1;
  box-sizing: border-box;
  background: var(--primary-600);
  color: var(--primary-on);
  border-bottom: 3px solid var(--primary-800);
  box-shadow: none;
}
.pdlc26 .pdlc-boton--tinta:hover { background: var(--primary-hover); }
.pdlc26 .pdlc-boton--tinta:active {
  border-bottom-width: 1px;
  transform: translateY(1px);
}

.pdlc26 .pdlc-boton--bloque { width: 100%; justify-content: center; }

/* ---------- 6. Navegación ---------- */
/* Transición nativa entre páginas: el nav se siente “fijo” */
@view-transition {
  navigation: auto;
}
.pdlc26 .pdlc-nav {
  view-transition-name: pdlc-nav;
}
@media (prefers-reduced-motion: reduce) {
  @view-transition {
    navigation: none;
  }
  .pdlc26 .pdlc-nav {
    view-transition-name: none;
  }
}

.pdlc26 .pdlc-nav {
  position: sticky;
  top: var(--nav-top);
  z-index: var(--z-nav);
  min-height: var(--nav-alto);
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  overflow: visible;
  background: var(--primary);
  border-bottom: 1px solid color-mix(in oklab, var(--primary-600) 70%, transparent);
  transition: background-color 0.3s var(--salida), border-color 0.3s var(--salida);
}
.pdlc26 .pdlc-nav[data-menu-abierto="si"] {
  z-index: var(--z-menu);
}

/* Checkbox: abre el menú aunque WordPress quite el JS */
.pdlc26 .pdlc-nav__toggle {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.pdlc26 .pdlc-nav[data-fija="si"] {
  background: var(--primary);
  border-bottom-color: var(--primary-600);
}

.pdlc26 .pdlc-nav__fila {
  display: flex;
  align-items: center;
  gap: clamp(0.7rem, 2vw, 1.6rem);
  width: 100%;
  min-height: var(--nav-alto);
  padding-block: 8px;
  box-sizing: border-box;
}

.pdlc26 .pdlc-nav__marca {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-right: auto;
  min-width: 0;
  align-self: center;
}
.pdlc26 .pdlc-nav__marca img { width: 44px; height: 44px; object-fit: contain; }

.pdlc26 .pdlc-nav__sede {
  display: block;
  font-family: var(--fuente-texto);
  font-weight: 500;
  font-size: var(--texto-cuerpo);
  line-height: 1.15;
  color: color-mix(in oklab, var(--primary-on) 88%, transparent);
  padding-block: 0.4rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.2s var(--salida);
}
.pdlc26 .pdlc-nav__marca:hover .pdlc-nav__sede,
.pdlc26 .pdlc-nav__marca:focus-visible .pdlc-nav__sede {
  color: var(--primary-on);
}
.pdlc26 .pdlc-nav__ciudad {
  display: block;
  font-size: 0.74rem;
  font-weight: 600;
  color: color-mix(in oklab, var(--primary-on) 78%, transparent);
  letter-spacing: 0.02em;
}

.pdlc26 .pdlc-nav__enlaces {
  display: flex;
  align-items: center;
  gap: clamp(0.9rem, 2vw, 1.9rem);
}

.pdlc26 .pdlc-nav__enlace {
  position: relative;
  font-size: var(--texto-cuerpo);
  font-weight: 500;
  color: color-mix(in oklab, var(--primary-on) 88%, transparent);
  padding-block: 0.4rem;
  transition: color 0.2s var(--salida);
}
.pdlc26 .pdlc-nav__enlace::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: 0;
  height: 2px;
  background: var(--primary-on);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s var(--salida);
}
.pdlc26 .pdlc-nav__enlace:hover,
.pdlc26 .pdlc-nav__enlace[aria-current="true"],
.pdlc26 .pdlc-nav__enlace[aria-current="page"] { color: var(--primary-on); }
.pdlc26 .pdlc-nav__enlace:hover::after,
.pdlc26 .pdlc-nav__enlace[aria-current="true"]::after,
.pdlc26 .pdlc-nav__enlace[aria-current="page"]::after { transform: scaleX(1); }

.pdlc26 .pdlc-nav__cta { padding-inline: 1.15rem; font-size: var(--texto-cuerpo); }
.pdlc26 .pdlc-nav__cta.pdlc-boton--primary {
  background: var(--primary-600);
  color: var(--primary-on);
  border-bottom: 3px solid var(--primary-800);
  box-shadow: none;
}
.pdlc26 .pdlc-nav__cta.pdlc-boton--primary:hover {
  background: var(--primary-hover);
  color: var(--primary-on);
}

.pdlc26 .pdlc-nav__hamburguesa {
  display: none;
  flex: none;
  align-self: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid color-mix(in oklab, var(--primary-on) 45%, transparent);
  border-radius: var(--r-chico);
  place-items: center;
  background: transparent;
  color: var(--primary-on);
  cursor: pointer;
  box-sizing: border-box;
}
.pdlc26 .pdlc-nav__hamburguesa span {
  display: block;
  position: relative;
  width: 20px;
  height: 2px;
  margin: 0 auto;
  background: var(--primary-on);
  transition: background-color 0.2s var(--salida);
}
.pdlc26 .pdlc-nav__hamburguesa span::before,
.pdlc26 .pdlc-nav__hamburguesa span::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 20px;
  height: 2px;
  margin-left: -10px;
  background: var(--primary-on);
  transform-origin: center center;
  transition: transform 0.25s var(--salida), top 0.25s var(--salida);
}
.pdlc26 .pdlc-nav__hamburguesa span::before { top: -7px; }
.pdlc26 .pdlc-nav__hamburguesa span::after { top: 7px; }
.pdlc26 .pdlc-nav__hamburguesa[aria-expanded="true"] span { background: transparent; }
.pdlc26 .pdlc-nav__hamburguesa[aria-expanded="true"] span::before,
.pdlc26 .pdlc-nav:has(.pdlc-nav__toggle:checked) .pdlc-nav__hamburguesa span::before {
  top: 0;
  transform: rotate(45deg);
}
.pdlc26 .pdlc-nav__hamburguesa[aria-expanded="true"] span::after,
.pdlc26 .pdlc-nav:has(.pdlc-nav__toggle:checked) .pdlc-nav__hamburguesa span::after {
  top: 0;
  transform: rotate(-45deg);
}
.pdlc26 .pdlc-nav:has(.pdlc-nav__toggle:checked) .pdlc-nav__hamburguesa span {
  background: transparent;
}

/* Backdrop CSS (sin JS): cierra al tocar fuera */
.pdlc26 .pdlc-nav__backdrop {
  display: none;
  position: fixed;
  inset: 0;
  z-index: calc(var(--z-nav) - 1);
  margin: 0;
  background: oklch(0 0 0 / 0.52);
  cursor: pointer;
  border: 0;
  padding: 0;
}
.pdlc26 .pdlc-nav:has(.pdlc-nav__toggle:checked) .pdlc-nav__backdrop {
  display: block;
}

.pdlc26 .pdlc-nav__overlay {
  position: fixed;
  inset: 0;
  z-index: var(--z-nav-overlay);
  border: 0;
  padding: 0;
  margin: 0;
  background: oklch(0 0 0 / 0.52);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.32s var(--salida),
    visibility 0s linear 0.32s;
}
.pdlc26 .pdlc-nav__overlay[data-visible="si"] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition:
    opacity 0.32s var(--salida),
    visibility 0s linear 0s;
}
.pdlc26 .pdlc-nav__overlay[hidden] { display: none; }

.pdlc26 .pdlc-menu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: var(--z-menu);
  display: none;
  padding: 1rem clamp(1.1rem, 4vw, 2.5rem) 1.4rem;
  background: var(--primary);
  border-bottom: 1px solid color-mix(in oklab, var(--primary-on) 14%, transparent);
}
.pdlc26 .pdlc-menu[data-abierto="si"] { display: block; }
.pdlc26 .pdlc-menu a {
  display: block;
  padding: 0.75rem 0;
  font-size: 1.05rem;
  color: var(--primary-on);
  border-bottom: 1px solid color-mix(in oklab, var(--primary-on) 18%, transparent);
}
.pdlc26 .pdlc-menu .pdlc-boton {
  margin-top: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding-block: 0;
  padding-inline: 1.5rem;
  text-align: center;
  border-bottom: 3px solid var(--primary-800);
}
.pdlc26 .pdlc-menu .pdlc-boton--primary {
  background: var(--primary-600);
  color: var(--primary-on);
  border-bottom: 3px solid var(--primary-800);
  box-shadow: none;
}
.pdlc26 .pdlc-menu .pdlc-boton--primary:hover {
  background: var(--primary-hover);
  color: var(--primary-on);
}

@media (max-width: 880px) {
  .pdlc26 .pdlc-nav__enlaces,
  .pdlc26 .pdlc-nav__cta--escritorio { display: none; }
  .pdlc26 .pdlc-nav__hamburguesa { display: grid; }
  .pdlc26 .pdlc-menu {
    display: block;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    padding-block: 0;
    border-radius: 0 0 var(--r-grande) var(--r-grande);
    transform: translateY(-0.35rem);
    transform-origin: top center;
    pointer-events: none;
    visibility: hidden;
    transition:
      max-height 0.32s var(--salida),
      opacity 0.32s var(--salida),
      transform 0.32s var(--salida),
      padding 0.32s var(--salida),
      visibility 0s linear 0.32s;
  }
  .pdlc26 .pdlc-menu[data-abierto="si"],
  .pdlc26 .pdlc-nav:has(.pdlc-nav__toggle:checked) .pdlc-menu {
    max-height: min(85vh, 520px);
    opacity: 1;
    padding-block: 1rem 1.4rem;
    transform: translateY(0);
    pointer-events: auto;
    visibility: visible;
    transition:
      max-height 0.32s var(--salida),
      opacity 0.32s var(--salida),
      transform 0.32s var(--salida),
      padding 0.32s var(--salida),
      visibility 0s linear 0s;
  }
  .pdlc26 .pdlc-nav:has(.pdlc-nav__toggle:checked) {
    z-index: var(--z-menu);
  }
}

/* ---------- 7. Selector de sedes (portada) ---------- */
.pdlc26 .pdlc-elige {
  position: relative;
  min-height: calc(100vh - var(--nav-top));
  min-height: calc(100svh - var(--nav-top));
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: minmax(0, 1fr);
  background: var(--noche-900);
  /* sin isolation: permite que mix-blend-mode de las nubes mezcle con el fondo */
}

.pdlc26 .pdlc-elige__fondo {
  position: absolute;
  inset: 0;
  z-index: var(--z-fondo);
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity 1.1s var(--salida-larga);
}
.pdlc26 .pdlc-elige__fondo picture {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.pdlc26 .pdlc-elige__fondo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center 42%;
}

/* Entrada del hero: fondo + nubes, luego marca y textos de sede */
.pdlc26 .pdlc-elige[data-entrada="fondo"] .pdlc-elige__fondo,
.pdlc26 .pdlc-elige[data-entrada="contenido"] .pdlc-elige__fondo,
.pdlc26 .pdlc-elige[data-entrada="listo"] .pdlc-elige__fondo {
  opacity: 1;
}
.pdlc26 .pdlc-elige .pdlc-elige__marca,
.pdlc26 .pdlc-elige .pdlc-sede__cuerpo {
  opacity: 0;
  transition: opacity 0.95s var(--salida-larga);
}
.pdlc26 .pdlc-elige[data-entrada="contenido"] .pdlc-elige__marca,
.pdlc26 .pdlc-elige[data-entrada="listo"] .pdlc-elige__marca,
.pdlc26 .pdlc-elige[data-entrada="contenido"] .pdlc-sede__cuerpo,
.pdlc26 .pdlc-elige[data-entrada="listo"] .pdlc-sede__cuerpo {
  opacity: 1;
}

.pdlc26 .pdlc-sede {
  position: relative;
  z-index: 1;
  display: block;
  overflow: hidden;
  isolation: isolate;
  color: var(--hueso);
  min-height: 0;
  height: 100%;
  cursor: pointer;
}

/* El panel ocupa media pantalla: el anillo de foco va por dentro para verse. */
.pdlc26 .pdlc-sede:focus-visible {
  outline: 3px solid var(--maiz);
  outline-offset: -8px;
  border-radius: 0;
}

.pdlc26 .pdlc-sede__foto {
  position: absolute;
  inset: 0;
  z-index: var(--z-fondo);
  pointer-events: none;
}

/* Degradado inferior al hover: de abajo hacia arriba, sobre la foto */
.pdlc26 .pdlc-sede__foto::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    to top,
    oklch(0.07 0.03 300 / 0.94) 0%,
    oklch(0.07 0.03 300 / 0.78) 18%,
    oklch(0.07 0.03 300 / 0.42) 38%,
    oklch(0.07 0.03 300 / 0.12) 58%,
    transparent 72%
  );
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.45s var(--salida-larga);
}
.pdlc26 .pdlc-elige[data-activa="fundidora"] .pdlc-sede--fundidora .pdlc-sede__foto::before,
.pdlc26 .pdlc-elige[data-activa="sanpedro"] .pdlc-sede--sanpedro .pdlc-sede__foto::before {
  opacity: 1;
}

@supports selector(:has(*)) {
  .pdlc26 .pdlc-elige[data-activa=""] .pdlc-sede:hover .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige:not([data-activa]) .pdlc-sede:hover .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige[data-activa=""] .pdlc-sede:focus-visible .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige:not([data-activa]) .pdlc-sede:focus-visible .pdlc-sede__foto::before {
    opacity: 1;
  }
}

/* Velo uniforme en la sede inactiva (sin filter: evita caja rectangular al centro) */
.pdlc26 .pdlc-sede__foto::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: oklch(0.06 0.025 300 / 0.55);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.55s var(--salida-larga);
}
.pdlc26 .pdlc-elige[data-activa="fundidora"] .pdlc-sede--sanpedro .pdlc-sede__foto::after,
.pdlc26 .pdlc-elige[data-activa="sanpedro"] .pdlc-sede--fundidora .pdlc-sede__foto::after {
  opacity: 1;
}

/* Desvanece el velo hacia el centro para que no corte junto al logo */
.pdlc26 .pdlc-sede--fundidora .pdlc-sede__foto::after {
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.35) 26%, #000 52%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0, 0, 0, 0.35) 26%, #000 52%);
}
.pdlc26 .pdlc-sede--sanpedro .pdlc-sede__foto::after {
  -webkit-mask-image: linear-gradient(to left, transparent 0%, rgba(0, 0, 0, 0.35) 26%, #000 52%);
  mask-image: linear-gradient(to left, transparent 0%, rgba(0, 0, 0, 0.35) 26%, #000 52%);
}

/* Respaldo sin JS */
@supports selector(:has(*)) {
  .pdlc26 .pdlc-elige[data-activa=""]:has(.pdlc-sede:hover) .pdlc-sede:not(:hover) .pdlc-sede__foto::after,
  .pdlc26 .pdlc-elige:not([data-activa]):has(.pdlc-sede:hover) .pdlc-sede:not(:hover) .pdlc-sede__foto::after,
  .pdlc26 .pdlc-elige[data-activa=""]:has(.pdlc-sede:focus-visible) .pdlc-sede:not(:focus-visible) .pdlc-sede__foto::after,
  .pdlc26 .pdlc-elige:not([data-activa]):has(.pdlc-sede:focus-visible) .pdlc-sede:not(:focus-visible) .pdlc-sede__foto::after {
    opacity: 1;
  }
}

@media (hover: none) {
  /* En táctil desktop (tablets): degradado inferior permanente por mitad */
  .pdlc26 .pdlc-sede__foto::before { opacity: 0.88; }
}

.pdlc26 .pdlc-sede__cuerpo {
  position: absolute;
  inset: 0;
  z-index: var(--z-flotante);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding: clamp(1.5rem, 3.4vw, 3rem);
  padding-bottom: clamp(2rem, 4vw, 3.4rem);
  text-align: center;
  pointer-events: none;
}
.pdlc26 .pdlc-sede__cuerpo > * {
  pointer-events: auto;
}

/* Cada sede se ancla a su lado, lejos del logo */
.pdlc26 .pdlc-sede--fundidora .pdlc-sede__cuerpo {
  align-items: flex-start;
  text-align: left;
  padding-right: clamp(3.5rem, 11vw, 9rem);
}
.pdlc26 .pdlc-sede--sanpedro .pdlc-sede__cuerpo {
  align-items: flex-end;
  text-align: right;
  padding-left: clamp(3.5rem, 11vw, 9rem);
}
.pdlc26 .pdlc-sede--fundidora .pdlc-sede__ficha,
.pdlc26 .pdlc-sede--fundidora .pdlc-sede__acciones {
  align-self: flex-start;
  text-align: left;
}
.pdlc26 .pdlc-sede--sanpedro .pdlc-sede__ficha,
.pdlc26 .pdlc-sede--sanpedro .pdlc-sede__acciones {
  align-self: flex-end;
  text-align: right;
}
.pdlc26 .pdlc-sede--fundidora .pdlc-sede__datos { justify-items: start; }
.pdlc26 .pdlc-sede--sanpedro .pdlc-sede__datos { justify-items: end; }

.pdlc26 .pdlc-sede__ciudad {
  font-family: var(--fuente-texto);
  font-size: var(--texto-cuerpo);
  font-weight: 700;
  color: var(--primary-300);
  margin-bottom: 0.5rem;
}

.pdlc26 .pdlc-sede__nombre {
  font-size: clamp(1.9rem, 3.6vw, 3.4rem);
  line-height: 0.96;
}
.pdlc26 .pdlc-sede__ir {
  display: flex;
  flex-direction: column;
  align-items: inherit;
  color: inherit;
  text-decoration: none;
}
.pdlc26 .pdlc-sede__hint {
  display: none;
}

/* Panel de información: entra al hacer hover */
.pdlc26 .pdlc-sede__ficha {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transform: translateY(14px);
  transition: max-height 0.5s var(--salida-larga),
              opacity 0.35s var(--salida),
              transform 0.45s var(--salida-larga),
              margin-top 0.5s var(--salida-larga);
  margin-top: 0;
  width: 100%;
  max-width: 22rem;
}

.pdlc26 .pdlc-elige[data-activa="fundidora"] .pdlc-sede--fundidora .pdlc-sede__ficha,
.pdlc26 .pdlc-elige[data-activa="sanpedro"] .pdlc-sede--sanpedro .pdlc-sede__ficha {
  max-height: 30rem;
  opacity: 1;
  transform: translateY(0);
  margin-top: 1.15rem;
}

@supports selector(:has(*)) {
  .pdlc26 .pdlc-elige[data-activa=""] .pdlc-sede:hover .pdlc-sede__ficha,
  .pdlc26 .pdlc-elige:not([data-activa]) .pdlc-sede:hover .pdlc-sede__ficha,
  .pdlc26 .pdlc-elige[data-activa=""] .pdlc-sede:focus-visible .pdlc-sede__ficha,
  .pdlc26 .pdlc-elige:not([data-activa]) .pdlc-sede:focus-visible .pdlc-sede__ficha {
    max-height: 30rem;
    opacity: 1;
    transform: translateY(0);
    margin-top: 1.15rem;
  }
}

.pdlc26 .pdlc-sede__datos {
  display: grid;
  gap: 0.3rem;
  font-size: var(--texto-cuerpo);
  color: var(--texto-2);
  margin-bottom: 1.15rem;
  justify-items: center;
}
.pdlc26 .pdlc-sede__datos b { color: var(--hueso); font-weight: 600; }
.pdlc26 .pdlc-sede__fecha { color: var(--maiz); font-weight: 600; }

.pdlc26 .pdlc-sede__acciones {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  width: auto;
  max-width: 100%;
}
.pdlc26 .pdlc-sede--fundidora .pdlc-sede__acciones { align-items: flex-start; }
.pdlc26 .pdlc-sede--sanpedro .pdlc-sede__acciones { align-items: flex-end; }

.pdlc26 .pdlc-elige .pdlc-sede__boletos,
.pdlc26 .pdlc-elige .pdlc-sede__entrar {
  align-self: auto;
}

/* Nubes que cruzan el cielo (carrusel infinito)
   Como en Figma: blend Overlay + opacidad 70% en la misma capa.
   El blend va en .pdlc-elige__nubes / .pdlc-portada__nubes (hermano de la foto);
   si va en un hijo dentro de overflow/will-change, el navegador no mezcla con el fondo.
   La animación solo corre cuando data-listo="si" (imágenes con tamaño real). */
.pdlc26 .pdlc-elige__nubes,
.pdlc26 .pdlc-portada__nubes {
  position: absolute;
  top: -60px;
  left: 0;
  right: 0;
  z-index: var(--z-flotante);
  height: clamp(210px, 28vw, 320px);
  overflow: hidden;
  pointer-events: none;
  mix-blend-mode: overlay;
  opacity: 0;
  transition: opacity 1.1s var(--salida-larga);
}
.pdlc26 .pdlc-portada__nubes {
  /* Por encima de la foto, debajo del texto del hero */
  z-index: 0;
}
.pdlc26 .pdlc-elige__nubes[data-listo="si"] {
  opacity: 0;
}
.pdlc26 .pdlc-portada__nubes[data-listo="si"] {
  opacity: 0.7;
}
.pdlc26 .pdlc-elige[data-entrada="fondo"] .pdlc-elige__nubes[data-listo="si"],
.pdlc26 .pdlc-elige[data-entrada="contenido"] .pdlc-elige__nubes[data-listo="si"],
.pdlc26 .pdlc-elige[data-entrada="listo"] .pdlc-elige__nubes[data-listo="si"] {
  opacity: 0.7;
}
.pdlc26 .pdlc-elige__nubes-pista,
.pdlc26 .pdlc-portada__nubes-pista {
  display: flex;
  width: max-content;
  height: 100%;
  will-change: transform;
  animation: pdlc-nubes 160s linear infinite;
  animation-play-state: paused;
}
.pdlc26 .pdlc-elige__nubes[data-listo="si"] .pdlc-elige__nubes-pista,
.pdlc26 .pdlc-portada__nubes[data-listo="si"] .pdlc-portada__nubes-pista {
  animation-play-state: running;
}
.pdlc26 .pdlc-elige__nubes-pista img,
.pdlc26 .pdlc-portada__nubes-pista img {
  display: block;
  height: 100%;
  width: auto;
  /* Dimensiones reales del PNG (evita layout incorrecto antes del decode) */
  aspect-ratio: 5776 / 1020;
  max-width: none;
  flex-shrink: 0;
  user-select: none;
  -webkit-user-drag: none;
}
@keyframes pdlc-nubes {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(-50%, 0, 0); }
}

/* Logo centrado en el hero de inicio */
.pdlc26 .pdlc-elige__marca {
  position: absolute;
  top: calc(50% + clamp(32px, 7vw, 88px));
  left: 50%;
  transform: translate(-50%, -50%);
  /* Por encima de velos de foto; el texto de sede se separa con padding */
  z-index: 5;
  width: clamp(440px, 24vw, 380px);
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  pointer-events: auto;
  isolation: isolate;
  /* Sombra suave sin filter en capas vecinas (evita caja rectangular en hover) */
  filter: drop-shadow(0 10px 22px oklch(0.08 0.03 300 / 0.42));
}

/* Pantallas muy anchas: crece un poco, sin volver a tapar los títulos */
@media (min-width: 1680px) {
  .pdlc26 .pdlc-elige__marca {
    width: clamp(640px, 18vw, 440px);
    top: calc(50% + clamp(40px, 8vw, 96px));
  }
}

@media (max-width: 860px) {
  .pdlc26 .pdlc-elige {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
    min-height: 100svh;
    min-height: 100dvh;
  }
  .pdlc26 .pdlc-elige__fondo img {
    object-position: center center;
  }
  .pdlc26 .pdlc-sede {
    min-height: 0;
    height: auto;
  }

  /* Sin degradado negro en la mitad de arriba (ni fijo ni al hover/tap) */
  .pdlc26 .pdlc-elige .pdlc-sede--fundidora .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige[data-activa="fundidora"] .pdlc-sede--fundidora .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige[data-activa=""] .pdlc-sede--fundidora:hover .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige:not([data-activa]) .pdlc-sede--fundidora:hover .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige[data-activa=""] .pdlc-sede--fundidora:focus-visible .pdlc-sede__foto::before,
  .pdlc26 .pdlc-elige:not([data-activa]) .pdlc-sede--fundidora:focus-visible .pdlc-sede__foto::before {
    opacity: 0 !important;
  }
  .pdlc26 .pdlc-elige .pdlc-sede--sanpedro .pdlc-sede__foto::before {
    opacity: 1;
  }
  .pdlc26 .pdlc-elige .pdlc-sede__foto::after {
    opacity: 0 !important;
  }

  /* En móvil el logo va arriba sobre el cielo. */
  .pdlc26 .pdlc-elige__marca {
    top: 14px;
    transform: translateX(-50%);
    width: 160px;
    height: auto;
  }

  /* Solo sede y CTA; anclados abajo en lados opuestos */
  .pdlc26 .pdlc-elige .pdlc-sede__cuerpo {
    justify-content: flex-end;
    padding: clamp(1rem, 4vw, 1.35rem);
    padding-bottom: clamp(1.35rem, 5vw, 2rem);
  }
  .pdlc26 .pdlc-elige .pdlc-sede--fundidora .pdlc-sede__cuerpo {
    align-items: flex-end;
    text-align: right;
    padding-bottom: calc(clamp(1.35rem, 5vw, 2rem) + 32px);
    transform: translateY(32px);
  }
  .pdlc26 .pdlc-elige .pdlc-sede--sanpedro .pdlc-sede__cuerpo {
    align-items: flex-start;
    text-align: left;
    padding-bottom: calc(clamp(1.35rem, 5vw, 2rem) + 48px);
  }
  .pdlc26 .pdlc-elige .pdlc-sede__nombre {
    font-size: 2.375rem; /* 38px */
    line-height: 0.96;
  }
  .pdlc26 .pdlc-elige .pdlc-sede {
    pointer-events: none;
    cursor: default;
  }
  .pdlc26 .pdlc-elige .pdlc-sede__ir,
  .pdlc26 .pdlc-elige .pdlc-sede__boletos {
    pointer-events: auto;
    cursor: pointer;
  }
  .pdlc26 .pdlc-elige .pdlc-sede__ir {
    align-self: stretch;
    width: auto;
    margin-inline: calc(-1 * clamp(1rem, 4vw, 1.35rem));
    padding-inline: clamp(1rem, 4vw, 1.35rem);
  }
  .pdlc26 .pdlc-elige .pdlc-sede__hint {
    display: block;
    font-family: var(--fuente-texto);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #fff;
    margin-bottom: 0.2rem;
  }
  .pdlc26 .pdlc-elige .pdlc-sede__entrar {
    display: none;
  }
  .pdlc26 .pdlc-elige .pdlc-sede__ciudad,
  .pdlc26 .pdlc-elige .pdlc-sede__datos {
    display: none;
  }
  .pdlc26 .pdlc-elige .pdlc-sede__ficha {
    max-height: none;
    opacity: 1;
    transform: none;
    margin-top: .5rem;
    overflow: visible;
    width: 100%;
    max-width: min(100%, 20rem);
  }
  .pdlc26 .pdlc-elige .pdlc-sede__acciones {
    gap: 0;
  }
  .pdlc26 .pdlc-elige .pdlc-sede--fundidora .pdlc-sede__ficha,
  .pdlc26 .pdlc-elige .pdlc-sede--fundidora .pdlc-sede__acciones {
    align-self: flex-end;
    text-align: right;
  }
  .pdlc26 .pdlc-elige .pdlc-sede--sanpedro .pdlc-sede__ficha,
  .pdlc26 .pdlc-elige .pdlc-sede--sanpedro .pdlc-sede__acciones {
    align-self: flex-start;
    text-align: left;
  }
  .pdlc26 .pdlc-elige .pdlc-sede--fundidora .pdlc-sede__acciones {
    align-items: flex-end;
  }
  .pdlc26 .pdlc-elige .pdlc-sede--sanpedro .pdlc-sede__acciones {
    align-items: flex-start;
  }
}

/* Sin cursor (táctil en desktop/tablet ancho): ficha completa al hover */
@media (hover: none) and (min-width: 861px) {
  .pdlc26 .pdlc-sede__ficha {
    max-height: none;
    opacity: 1;
    transform: none;
    margin-top: 1.15rem;
    overflow: visible;
  }
  .pdlc26 .pdlc-elige[data-activa]:not([data-activa=""]) .pdlc-sede__foto::after { opacity: 0 !important; }
}

/* ---------- 8. Portada: bloque de bienvenida ---------- */
.pdlc26 .pdlc-intro {
  position: relative;
  padding-block: clamp(3rem, 7vw, 5.5rem);
  /* Mismo degradado que .pdlc-visitanos */
  background: radial-gradient(130% 110% at 50% 0%,
              oklch(0.81 0.160 68) 0%,
              var(--calabaza) 68%);
  color: oklch(0.17 0.05 45);
  text-align: left;
  overflow: hidden;
}
.pdlc26 .pdlc-intro__rejilla {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: clamp(1.6rem, 4vw, 3rem);
  align-items: center;
}
.pdlc26 .pdlc-intro__titulo {
  margin-bottom: clamp(1.4rem, 3vw, 2.2rem);
  text-align: center;
}
@media (min-width: 861px) {
  .pdlc26 .pdlc-intro h1,
  .pdlc26 .pdlc-intro__titulo {
    font-size: clamp(3rem, 4vw, 3.25rem);
  }
}
.pdlc26 .pdlc-intro h1,
.pdlc26 .pdlc-intro .pdlc-contorno,
.pdlc26 .pdlc-intro__titulo {
  /* Titan + outline; stroke un poco más fino para que se lea el relleno */
  color: oklch(0.99 0.01 85);
  font-weight: 400;
  -webkit-text-stroke: 0.09em var(--tinta);
  text-shadow: 0 0.04em 0 var(--tinta);
  letter-spacing: 0.01em;
}
.pdlc26 .pdlc-intro__contenido {
  position: relative;
  z-index: var(--z-contenido);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 16px;
  width: 100%;
  min-width: 0;
}
.pdlc26 .pdlc-intro__contenido > p:not(.pdlc-intro__botones) {
  margin: 0;
  max-width: 42ch;
  color: oklch(0.22 0.06 45);
  font-size: clamp(1.02rem, 1.5vw, 1.16rem);
  font-weight: 500;
}
.pdlc26 .pdlc-intro strong,
.pdlc26 .pdlc-intro b {
  color: oklch(0.17 0.05 45);
}
.pdlc26 .pdlc-intro__botones {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  align-self: stretch;
  margin: 16px 0 0;
  width: 100%;
  max-width: none;
}
.pdlc26 .pdlc-intro__boletos-leyenda {
  margin: 0;
  grid-column: 1 / -1;
  text-align: left;
  color: oklch(0.17 0.05 45);
  font-family: var(--fuente-titulo);
  font-size: clamp(1rem, 1.5vw, 1.12rem);
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.pdlc26 .pdlc-intro__boletos-leyenda b {
  font-weight: 900;
  color: inherit;
}
.pdlc26 .pdlc-intro__botones > .pdlc-boton.pdlc-intro__boleto {
  width: 100%;
  max-width: none;
  min-width: 0;
  text-align: center;
  white-space: nowrap;
  font-size: 1rem;
  box-sizing: border-box;
}
.pdlc26 .pdlc-promo {
  position: relative;
  z-index: var(--z-contenido);
  min-width: 0;
}
@media (max-width: 860px) {
  .pdlc26 .pdlc-intro__rejilla {
    grid-template-columns: 1fr;
  }
  .pdlc26 .pdlc-intro__contenido > p:not(.pdlc-intro__botones) {
    text-align: center;
    margin-inline: auto;
  }
  .pdlc26 .pdlc-intro__boletos-leyenda {
    text-align: center;
    grid-column: auto;
  }
  .pdlc26 .pdlc-intro__botones {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    align-self: stretch;
    width: 100%;
    margin-top: 16px;
  }
  .pdlc26 .pdlc-intro__botones > .pdlc-boton.pdlc-intro__boleto {
    width: 100%;
  }
}
.pdlc26 .pdlc-promo__marco {
  position: relative;
  overflow: hidden;
  border-radius: var(--r-grande);
  background: #110818;
  aspect-ratio: 16 / 9;
  box-shadow: 0 20px 50px color-mix(in oklab, var(--tinta) 28%, transparent);
}
.pdlc26 .pdlc-promo__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #110818;
}
.pdlc26 .pdlc-promo__play {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: var(--primary-600);
  background: color-mix(in oklab, #110818 28%, transparent);
  transition: background 0.2s var(--salida);
}
.pdlc26 .pdlc-promo__play:hover,
.pdlc26 .pdlc-promo__play:focus-visible {
  background: color-mix(in oklab, #110818 42%, transparent);
}
.pdlc26 .pdlc-promo__play svg {
  display: block;
  width: clamp(4.4rem, 8vw, 5.5rem);
  height: auto;
  fill: currentColor;
  filter: drop-shadow(0 8px 18px color-mix(in oklab, #000 45%, transparent));
  transition: transform 0.2s var(--salida);
}
.pdlc26 .pdlc-promo__play:hover svg,
.pdlc26 .pdlc-promo__play:focus-visible svg {
  transform: scale(1.06);
}
.pdlc26 .pdlc-promo--reproduciendo .pdlc-promo__play,
.pdlc26 .pdlc-promo__play[hidden] {
  display: none;
}
/* ---------- 9. Portada de sede (hero interno) ---------- */
.pdlc26 .pdlc-portada {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding-block: clamp(3.4rem, 8vw, 6.5rem);
  min-height: min(86svh, 760px);
  display: flex;
  align-items: center;
}

.pdlc26 .pdlc-portada__foto {
  position: absolute;
  inset: 0;
  z-index: var(--z-fondo);
}
.pdlc26 .pdlc-portada__foto picture {
  display: block;
  width: 100%;
  height: 100%;
}
.pdlc26 .pdlc-portada__foto img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center 42%;
}
/* Hero Fundidora: tipografía a la derecha */
.pdlc26 .pdlc-portada--fundidora .pdlc-portada__foto img {
  object-position: 32% 42%;
}
.pdlc26 .pdlc-portada--fundidora .pdlc-envoltura {
  display: flex;
  justify-content: flex-end;
}
.pdlc26 .pdlc-portada--fundidora .pdlc-portada__cuerpo {
  text-align: right;
  margin-inline-start: auto;
}
.pdlc26 .pdlc-portada--fundidora .pdlc-portada__resumen {
  justify-content: flex-end;
}
.pdlc26 .pdlc-portada--fundidora .pdlc-portada__acciones {
  justify-content: flex-end;
}
.pdlc26 .pdlc-portada--fundidora .pdlc-portada__logo {
  display: block;
  margin-inline-start: auto;
  margin-inline-end: 0;
}

/* Hero Valle Oriente: tipografía a la izquierda */
.pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__foto img {
  object-position: 68% 42%;
}
.pdlc26 .pdlc-portada--valle-oriente .pdlc-envoltura {
  display: flex;
  justify-content: flex-start;
}
.pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__cuerpo {
  text-align: left;
  margin-inline: 0;
}
.pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__resumen {
  justify-content: flex-start;
}
.pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__acciones {
  justify-content: flex-start;
}
.pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__logo {
  display: block;
  margin-inline: 0;
}
.pdlc26 .pdlc-portada__foto::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    to top,
    oklch(0.07 0.03 300 / 0.94) 0%,
    oklch(0.07 0.03 300 / 0.78) 18%,
    oklch(0.07 0.03 300 / 0.42) 38%,
    oklch(0.07 0.03 300 / 0.12) 58%,
    transparent 72%
  );
}
.pdlc26 .pdlc-portada__foto::after {
  content: "";
  position: absolute;
  inset: 0;
  background: none;
}

.pdlc26 .pdlc-portada__cuerpo {
  position: relative;
  z-index: var(--z-contenido);
  max-width: 46rem;
}

.pdlc26 .pdlc-portada__logo {
  display: block;
  width: clamp(84px, 10vw, 116px);
  margin-bottom: 1.2rem;
  /* Sin filter:drop-shadow — en Safari/Chrome deja una caja rectangular
     (sobre todo tras el recorrido en iframe o el puente de entrada). */
}

/* Titular del hero de sede: misma pila tipográfica que el selector del home */
.pdlc26 .pdlc-portada__titular {
  margin: 0;
}
.pdlc26 .pdlc-portada__ciudad {
  margin: 0 0 0.45rem;
  font-family: var(--fuente-texto);
  font-weight: 700;
  font-size: clamp(1rem, 1.8vw, 1.15rem);
  color: var(--primary-300);
  letter-spacing: 0.02em;
}
.pdlc26 .pdlc-portada__nombre {
  margin: 0;
  font-size: clamp(2.5rem, 6.4vw, 4.5rem);
  line-height: 0.96;
}

.pdlc26 .pdlc-portada__resumen {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin-top: 1.5rem;
}
.pdlc26 .pdlc-marca-fecha {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.5rem 1rem;
  border-radius: var(--pastilla);
  background: oklch(0.14 0.04 300 / 0.7);
  border: 1px solid var(--linea-firme);
  font-size: var(--texto-cuerpo);
  color: var(--texto);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.pdlc26 .pdlc-marca-fecha b { color: var(--maiz); font-weight: 600; }

.pdlc26 .pdlc-portada__acciones {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.9rem;
}

@media (max-width: 860px) {
  .pdlc26 .pdlc-portada {
    align-items: flex-end;
    padding-block: 0 calc(clamp(1.25rem, 4.5vw, 2rem) + 16px);
  }

  .pdlc26 .pdlc-portada__foto img,
  .pdlc26 .pdlc-portada--fundidora .pdlc-portada__foto img,
  .pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__foto img {
    object-position: center center;
  }

  .pdlc26 .pdlc-portada .pdlc-envoltura,
  .pdlc26 .pdlc-portada--fundidora .pdlc-envoltura,
  .pdlc26 .pdlc-portada--valle-oriente .pdlc-envoltura {
    display: flex;
    justify-content: flex-start;
    width: 100%;
  }

  .pdlc26 .pdlc-portada__cuerpo,
  .pdlc26 .pdlc-portada--fundidora .pdlc-portada__cuerpo,
  .pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__cuerpo {
    text-align: left;
    margin-inline: 0;
    max-width: none;
    width: 100%;
  }

  .pdlc26 .pdlc-portada__logo,
  .pdlc26 .pdlc-portada--fundidora .pdlc-portada__logo,
  .pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__logo {
    margin-inline: 0;
    margin-bottom: 0.85rem;
  }

  .pdlc26 .pdlc-portada__resumen {
    display: none;
  }

  .pdlc26 .pdlc-portada__acciones,
  .pdlc26 .pdlc-portada--fundidora .pdlc-portada__acciones,
  .pdlc26 .pdlc-portada--valle-oriente .pdlc-portada__acciones {
    flex-direction: column;
    align-items: stretch;
    margin-top: 1.25rem;
  }

  .pdlc26 .pdlc-portada__acciones .pdlc-boton {
    justify-content: center;
    text-align: center;
  }
}

/* ---------- 10. Bloques de datos ---------- */
.pdlc26 .pdlc-datos {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.1rem;
  margin-top: clamp(2rem, 4vw, 3rem);
}
.pdlc26 .pdlc-datos .pdlc-dato:last-child {
  grid-column: 1 / -1;
}
@media (max-width: 860px) {
  .pdlc26 .pdlc-datos {
    grid-template-columns: 1fr;
  }
  .pdlc26 .pdlc-datos .pdlc-dato:last-child {
    grid-column: auto;
  }
}

.pdlc26 .pdlc-dato {
  padding: 1.4rem 1.5rem;
  border-radius: var(--r);
  background: var(--noche-800);
  border: 1px solid var(--linea);
}
.pdlc26 .pdlc-dato__titulo {
  font-family: var(--fuente-titulo);
  font-weight: 900;
  font-size: clamp(1.15rem, 2.1vw, 1.4rem);
  color: var(--maiz);
  margin-bottom: 0.6rem;
  letter-spacing: -0.01em;
  text-transform: uppercase;
}
.pdlc26 .pdlc-dato p,
.pdlc26 .pdlc-dato li { color: var(--texto-2); font-size: var(--texto-cuerpo); }
.pdlc26 .pdlc-dato li + li { margin-top: 0.25rem; }
.pdlc26 .pdlc-dato b { color: var(--hueso); }

/* Mapa embebido (Google Maps) bajo la dirección — carga diferida */
.pdlc26 .pdlc-mapa {
  position: relative;
  width: 100%;
  margin-top: 0.85rem;
  height: 340px;
  overflow: hidden;
  border-radius: 16px;
  background: color-mix(in oklab, currentColor 8%, transparent);
}
.pdlc26 .pdlc-mapa::before {
  content: "Cargando mapa…";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-size: 0.92rem;
  font-weight: 500;
  color: color-mix(in oklab, currentColor 55%, transparent);
  pointer-events: none;
  z-index: 1;
}
.pdlc26 .pdlc-mapa[data-mapa="listo"]::before { display: none; }
.pdlc26 .pdlc-mapa iframe {
  position: absolute;
  /* Recorta la franja negra inferior de Google (“Abrir en Maps”) */
  top: 0;
  left: -1px;
  right: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 44px);
  max-width: none;
  border: 0;
  opacity: 0;
  transition: opacity 0.35s var(--salida);
}
.pdlc26 .pdlc-mapa[data-mapa="listo"] iframe { opacity: 1; }

/* Fines de semana */
.pdlc26 .pdlc-fines {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 0.7rem;
  margin-top: 1.6rem;
}
.pdlc26 .pdlc-fin {
  padding: 0.95rem 1.1rem;
  border-radius: var(--r-chico);
  background: color-mix(in oklab, var(--calabaza) 12%, var(--noche-800));
  border: 1px solid color-mix(in oklab, var(--calabaza) 34%, transparent);
  font-size: var(--texto-cuerpo);
  color: var(--texto);
}
.pdlc26 .pdlc-fin b {
  display: block;
  font-family: var(--fuente-titulo);
  font-weight: 900;
  color: var(--calabaza-viva);
  font-size: 24px;
  letter-spacing: 0.04em;
  margin-bottom: 0.35rem;
}
.pdlc26 .pdlc-fin__dias {
  list-style: none;
  margin: 0;
  padding: 0;
}
.pdlc26 .pdlc-fin__dias li {
  position: relative;
  padding-left: 0.9em;
}
.pdlc26 .pdlc-fin__dias li::before {
  content: "·";
  position: absolute;
  left: 0;
  font-weight: 700;
}
.pdlc26 .pdlc-fin__dias li + li {
  margin-top: 0.2rem;
}

/* Bloque "qué es" */
.pdlc26 .pdlc-quees {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
  gap: clamp(1.6rem, 4vw, 3.2rem);
  align-items: center;
}
.pdlc26 .pdlc-quees--solo {
  grid-template-columns: 1fr;
  justify-items: center;
  text-align: center;
}
.pdlc26 .pdlc-quees--solo .pdlc-quees__texto {
  max-width: 42rem;
}
.pdlc26 .pdlc-quees--solo .pdlc-plomo {
  margin-inline: auto;
}
.pdlc26 .pdlc-quees__texto p { margin-top: 1rem; }
.pdlc26 .pdlc-quees__letrero {
  width: min(100%, 300px);
  margin-inline: auto;
  filter: drop-shadow(0 16px 34px oklch(0.08 0.03 300 / 0.6));
}
@media (max-width: 800px) {
  .pdlc26 .pdlc-quees { grid-template-columns: 1fr; }
  .pdlc26 .pdlc-quees__letrero { width: min(70%, 240px); }
}

/* Sección inicio (“¿Qué es…?”) sobre primary-300 */
.pdlc26 .pdlc-seccion--primary-300 {
  background: var(--primary-300);
  color: var(--primary-800);
}
.pdlc26 .pdlc-seccion--primary-300 h2:not(.pdlc-contorno-titan),
.pdlc26 .pdlc-seccion--primary-300 h3,
.pdlc26 .pdlc-seccion--primary-300 .pdlc-dato__titulo {
  color: var(--primary-800);
  font-family: var(--fuente-titulo);
  font-weight: 900;
  letter-spacing: -0.01em;
  font-size: clamp(1.2rem, 2.4vw, 1.5rem);
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-quees__texto h2.pdlc-contorno-titan,
.pdlc26 .pdlc-seccion--primary-300 h2.pdlc-contorno-titan {
  font-size: clamp(1.9rem, 4.4vw, 3.375rem);
  line-height: 0.98;
  color: oklch(0.99 0.01 85);
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-fines__titulo {
  margin-top: clamp(2.4rem, 5vw, 3.4rem);
  text-align: center;
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-plomo,
.pdlc26 .pdlc-seccion--primary-300 .pdlc-dato p,
.pdlc26 .pdlc-seccion--primary-300 .pdlc-dato li {
  color: color-mix(in oklab, var(--primary-800) 78%, transparent);
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-dato b,
.pdlc26 .pdlc-seccion--primary-300 strong {
  color: var(--primary-800);
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-dato {
  background: color-mix(in oklab, var(--primary-on) 35%, transparent);
  border-color: color-mix(in oklab, var(--primary-800) 12%, transparent);
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-fin {
  background: var(--primary-800);
  border-color: color-mix(in oklab, var(--primary-on) 14%, transparent);
  color: color-mix(in oklab, var(--primary-on) 82%, transparent);
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-fin b {
  color: var(--orange-300);
  font-family: var(--fuente-titulo);
  font-weight: 900;
  font-size: 24px;
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-fin__dias li {
  color: color-mix(in oklab, var(--primary-on) 82%, transparent);
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-enlace-maps {
  color: var(--primary-800);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.18em;
}
.pdlc26 .pdlc-seccion--primary-300 .pdlc-enlace-maps:hover,
.pdlc26 .pdlc-seccion--primary-300 .pdlc-enlace-maps:focus-visible {
  color: var(--primary-600);
}

/* Páginas de amenidades y preguntas frecuentes */
.pdlc26.pdlc26--orange-50 {
  background: var(--orange-50);
}
.pdlc26 .pdlc-seccion--orange-50 {
  background: var(--orange-50);
  color: var(--primary-800);
}
.pdlc26 .pdlc-seccion--orange-50 h2:not(.pdlc-contorno-titan) {
  color: var(--primary-800);
  font-family: var(--fuente-titulo);
  font-weight: 900;
  letter-spacing: -0.01em;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-cabecera h1,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-cabecera h2.pdlc-contorno-titan {
  color: #fff;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-cabecera h2.pdlc-contorno-titan {
  font-size: clamp(1.9rem, 4.4vw, 3.375rem);
  line-height: 0.98;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-plomo {
  color: color-mix(in oklab, var(--primary-800) 78%, transparent);
}
.pdlc26 .pdlc-cabecera.pdlc-centro .pdlc-leyenda {
  justify-content: center;
}

/* Cards blancas en amenidades y preguntas frecuentes */
.pdlc26 .pdlc-seccion--orange-50 .pdlc-amenidad,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta {
  background: var(--primary-on);
  border: 1px solid var(--neutral-200);
  transition: border-color 0.25s var(--salida);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta:hover {
  border-color: var(--primary);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta[open] {
  border-color: var(--neutral-200);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta[open]:hover {
  border-color: var(--primary);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-amenidad:hover {
  border-color: var(--neutral-200);
  background: var(--primary-on);
  box-shadow: 0 4px 18px color-mix(in oklab, var(--primary-800) 8%, transparent);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-amenidad__cuerpo h3 {
  color: var(--primary);
  font-size: 28px;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-amenidad__cuerpo p,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-amenidad__nota {
  color: color-mix(in oklab, var(--primary-800) 78%, transparent);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-etiqueta--incluida {
  background: color-mix(in oklab, var(--tallo) 14%, var(--primary-on));
  color: oklch(0.42 0.12 148);
  border: 1px solid color-mix(in oklab, var(--tallo) 35%, var(--neutral-200));
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-etiqueta--extra {
  background: color-mix(in oklab, var(--calabaza) 12%, var(--primary-on));
  color: var(--primary-600);
  border: 1px solid color-mix(in oklab, var(--calabaza) 35%, var(--neutral-200));
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-etiqueta--todas {
  background: var(--primary-on);
  color: var(--primary-800);
  border: 1px solid var(--neutral-200);
}

/* ---------- 11. Amenidades ---------- */
.pdlc26 .pdlc-amenidades {
  position: relative;
  overflow: hidden;
}
.pdlc26 .pdlc-amenidades .pdlc-envoltura { position: relative; z-index: var(--z-contenido); }

.pdlc26 .pdlc-rejilla {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.5rem);
}
@media (max-width: 860px) {
  .pdlc26 .pdlc-rejilla {
    grid-template-columns: 1fr;
  }
}

.pdlc26 .pdlc-amenidad {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: var(--r);
  overflow: hidden;
  background: var(--noche-700);
  border: 1px solid var(--linea);
  transition: border-color 0.28s var(--salida), background-color 0.28s var(--salida), box-shadow 0.28s var(--salida);
}
.pdlc26 .pdlc-amenidad:hover {
  border-color: color-mix(in oklab, var(--calabaza) 55%, transparent);
  background: color-mix(in oklab, var(--calabaza) 9%, var(--noche-700));
}

.pdlc26 .pdlc-amenidad__marco {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background:
    linear-gradient(145deg,
      color-mix(in oklab, var(--calabaza) 22%, var(--noche-600)),
      var(--noche-700));
}
.pdlc26 .pdlc-amenidad__marco img {
  width: 100%; height: 100%;
  object-fit: cover;
}

/* Marcador cuando aún no hay foto cargada */
.pdlc26 .pdlc-amenidad__marco[data-sinfoto="si"] > img { display: none; }
.pdlc26 .pdlc-amenidad__espera {
  display: none;
  position: absolute;
  inset: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  text-align: center;
  padding: 1rem;
}
.pdlc26 .pdlc-amenidad__marco[data-sinfoto="si"] .pdlc-amenidad__espera { display: flex; }
.pdlc26 .pdlc-amenidad__espera img {
  width: 54px; height: 54px;
  object-fit: contain;
  opacity: 0.75;
}
.pdlc26 .pdlc-amenidad__espera span {
  font-size: 0.78rem;
  color: var(--texto-3);
  letter-spacing: 0.03em;
}

.pdlc26 .pdlc-amenidad__cuerpo {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  padding: 1.25rem 1.35rem 1.4rem;
  flex: 1;
}
.pdlc26 .pdlc-amenidad__cuerpo h3 {
  font-family: var(--fuente-titulo);
  font-weight: 900;
  letter-spacing: -0.01em;
}
.pdlc26 .pdlc-amenidad__cuerpo p {
  color: var(--texto-2);
  font-size: var(--texto-cuerpo);
  line-height: 1.55;
}
.pdlc26 .pdlc-amenidad__nota {
  font-size: 0.875rem;
  color: var(--texto-3);
  font-style: italic;
  font-weight: 600;
  line-height: 1.5;
}

.pdlc26 .pdlc-etiqueta {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  align-self: flex-start;
  margin-top: auto;
  padding: 0.4rem 0.85rem;
  border-radius: var(--pastilla);
  font-size: 0.81rem;
  font-weight: 600;
  letter-spacing: 0.01em;
}
.pdlc26 .pdlc-etiqueta--incluida {
  background: color-mix(in oklab, var(--tallo) 24%, var(--noche-900));
  color: oklch(0.88 0.13 148);
  border: 1px solid color-mix(in oklab, var(--tallo) 48%, transparent);
}
.pdlc26 .pdlc-etiqueta--extra {
  background: color-mix(in oklab, var(--calabaza) 22%, var(--noche-900));
  color: oklch(0.86 0.14 68);
  border: 1px solid color-mix(in oklab, var(--calabaza) 48%, transparent);
}
.pdlc26 .pdlc-etiqueta--todas {
  background: color-mix(in oklab, var(--hueso) 18%, var(--noche-900));
  color: var(--hueso);
  border: 1px solid var(--linea-firme);
}
.pdlc26 .pdlc-etiqueta__punto {
  width: 7px; height: 7px;
  border-radius: 50%;
  background: currentColor;
  flex: none;
}

.pdlc26 .pdlc-leyenda {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.6rem 0.7rem;
  margin-top: 1.4rem;
}
.pdlc26 .pdlc-leyenda__rotulo {
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--primary-800);
  margin-right: 0.15rem;
}
.pdlc26 .pdlc-leyenda .pdlc-etiqueta {
  margin-top: 0;
  cursor: pointer;
  transition: box-shadow 0.2s var(--salida), transform 0.2s var(--salida), opacity 0.2s var(--salida);
}
.pdlc26 .pdlc-leyenda .pdlc-etiqueta[aria-pressed="false"] {
  opacity: 0.72;
}
.pdlc26 .pdlc-leyenda .pdlc-etiqueta[aria-pressed="true"] {
  opacity: 1;
  box-shadow: 0 0 0 2px currentColor;
}
.pdlc26 .pdlc-leyenda .pdlc-etiqueta:hover {
  opacity: 1;
  transform: translateY(-1px);
}
.pdlc26 .pdlc-amenidad[hidden] {
  display: none;
}

/* ---------- 12. Preguntas frecuentes ---------- */
.pdlc26 .pdlc-faq { display: grid; gap: calc(0.6rem + 4px); }

.pdlc26 .pdlc-pregunta {
  border: 1px solid var(--linea);
  border-radius: var(--r);
  background: var(--noche-800);
  overflow: hidden;
  transition: border-color 0.25s var(--salida);
}
.pdlc26 .pdlc-pregunta[open] { border-color: color-mix(in oklab, var(--calabaza) 48%, transparent); }

.pdlc26 .pdlc-pregunta summary {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.05rem 1.3rem;
  cursor: pointer;
  list-style: none;
  font-family: var(--fuente-display);
  font-weight: 600;
  font-size: clamp(1rem, 1.6vw, 1.12rem);
  color: var(--hueso);
  line-height: 1.25;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta summary {
  font-family: var(--fuente-titulo);
  font-weight: 900;
  font-size: 28px;
  letter-spacing: -0.01em;
  color: var(--primary);
  padding: 1.4rem 1.6rem;
  transition: color 0.25s var(--salida);
}
.pdlc26 .pdlc-pregunta summary::-webkit-details-marker { display: none; }
.pdlc26 .pdlc-pregunta summary:hover { color: var(--maiz); }
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta:hover summary {
  color: var(--primary);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta[open] summary {
  color: var(--primary);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta[open]:hover summary {
  color: var(--primary);
}

@media (max-width: 860px) {
  .pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta summary {
    font-size: 20px;
  }
}

.pdlc26 .pdlc-pregunta__signo {
  position: relative;
  flex: none;
  margin-left: auto;
  width: 26px; height: 26px;
  border-radius: 50%;
  background: color-mix(in oklab, var(--calabaza) 26%, transparent);
}
.pdlc26 .pdlc-pregunta__signo::before,
.pdlc26 .pdlc-pregunta__signo::after {
  content: "";
  position: absolute;
  top: 50%; left: 50%;
  width: 12px; height: 2px;
  margin: -1px 0 0 -6px;
  background: var(--calabaza-viva);
  transition: transform 0.28s var(--salida);
}
.pdlc26 .pdlc-pregunta__signo::after { transform: rotate(90deg); }
.pdlc26 .pdlc-pregunta[open] .pdlc-pregunta__signo::after { transform: rotate(0deg); }

.pdlc26 .pdlc-pregunta__respuesta {
  padding: 0 1.3rem 1.3rem;
  color: var(--texto-2);
  font-size: var(--texto-cuerpo);
  max-width: 68ch;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta {
  max-width: none;
  padding: 0 1.6rem 1.6rem;
  color: color-mix(in oklab, var(--primary-800) 78%, transparent);
}
.pdlc26 .pdlc-pregunta__respuesta > * + * { margin-top: 0.8rem; }
.pdlc26 .pdlc-pregunta__respuesta em {
  font-style: italic;
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.5;
}
.pdlc26 .pdlc-pregunta__respuesta b { color: var(--hueso); }
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta b { color: var(--primary-800); }
.pdlc26 .pdlc-pregunta__respuesta a {
  color: var(--maiz);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta a {
  color: var(--primary-600);
}
.pdlc26 .pdlc-pregunta__respuesta a:hover { color: var(--calabaza-viva); }
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta a:hover { color: var(--primary); }
.pdlc26 .pdlc-enlace-semibold { font-weight: 600; }
.pdlc26 .pdlc-pregunta__respuesta a.pdlc-boton,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta a.pdlc-boton {
  text-decoration: none;
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta a.pdlc-boton--primary,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta a.pdlc-boton--primary:hover {
  color: var(--primary-on);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta a.pdlc-boton--whatsapp,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-pregunta__respuesta a.pdlc-boton--whatsapp:hover {
  color: var(--primary-800);
}
.pdlc26 .pdlc-seccion--orange-50 .pdlc-enlace-maps {
  color: var(--primary-800);
  font-weight: 600;
}
.pdlc26 .pdlc-lista-puntos li {
  position: relative;
  padding-left: 1.15rem;
}
.pdlc26 .pdlc-lista-puntos li + li { margin-top: 0.35rem; }
.pdlc26 .pdlc-lista-puntos li::before {
  content: "";
  position: absolute;
  left: 0; top: 0.62em;
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--calabaza);
}

/* Tarifas dentro de la respuesta */
.pdlc26 .pdlc-tarifas {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--texto-cuerpo);
}
.pdlc26 .pdlc-tarifas th,
.pdlc26 .pdlc-tarifas td {
  padding: 0.6rem 0.7rem;
  text-align: left;
  border-bottom: 1px solid var(--linea);
}
.pdlc26 .pdlc-tarifas th {
  font-family: var(--fuente-titulo);
  font-weight: 900;
  color: var(--maiz);
  font-size: var(--texto-cuerpo);
  letter-spacing: -0.01em;
}
.pdlc26 .pdlc-tarifas td:first-child { color: var(--hueso); font-weight: 600; }
.pdlc26 .pdlc-tabla-scroll { overflow-x: auto; }
.pdlc26 .pdlc-seccion--orange-50 .pdlc-tarifas th,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-tarifas td,
.pdlc26 .pdlc-seccion--orange-50 .pdlc-tarifas td:first-child {
  color: var(--primary-800);
  border-bottom-color: var(--neutral-200);
}

/* ---------- 13. Llamado final ---------- */
.pdlc26 .pdlc-visitanos {
  position: relative;
  overflow: hidden;
  background: radial-gradient(130% 110% at 50% 0%,
              oklch(0.81 0.160 68) 0%,
              var(--calabaza) 68%);
  color: oklch(0.17 0.05 45);
  padding-block: clamp(1.6rem, 3.2vw, 2.4rem) 0;
}
.pdlc26 .pdlc-visitanos__fila {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 40rem) minmax(0, 1fr);
  align-items: end;
  column-gap: clamp(0.35rem, 1.5vw, 1rem);
}
.pdlc26 .pdlc-visitanos__copy {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  justify-self: center;
  width: 100%;
  max-width: 40rem;
  padding-block: clamp(0.6rem, 1.5vw, 1.2rem);
  padding-bottom: calc(clamp(0.6rem, 1.5vw, 1.2rem) + 4px);
  text-align: center;
}
.pdlc26 .pdlc-visitanos__personaje {
  grid-column: 1;
  grid-row: 1;
  justify-self: end;
  width: clamp(130px, 17vw, 240px);
  height: auto;
  pointer-events: none;
  user-select: none;
}
.pdlc26 .pdlc-visitanos__letrero {
  grid-column: 3;
  grid-row: 1;
  justify-self: start;
  width: clamp(110px, 14vw, 200px);
  height: auto;
  pointer-events: none;
  user-select: none;
}
@media (max-width: 768px) {
  .pdlc26 .pdlc-visitanos__fila {
    grid-template-columns: 1fr;
    row-gap: 0;
  }
  .pdlc26 .pdlc-visitanos__personaje,
  .pdlc26 .pdlc-visitanos__letrero { display: none; }
  .pdlc26 .pdlc-visitanos__copy {
    grid-column: 1;
    padding-top: calc(clamp(1.2rem, 4vw, 2rem) + 16px);
    padding-bottom: calc(clamp(1.2rem, 4vw, 2rem) + 16px + 16px + 4px);
  }
}
.pdlc26 .pdlc-visitanos h2,
.pdlc26 .pdlc-visitanos .pdlc-contorno,
.pdlc26 .pdlc-contorno-titan {
  color: oklch(0.99 0.01 85);
  font-weight: 400;
  -webkit-text-stroke: 0.09em var(--tinta);
  text-shadow: 0 0.04em 0 var(--tinta);
  letter-spacing: 0.01em;
}
.pdlc26 .pdlc-visitanos p {
  margin: 1.1rem auto 0;
  color: oklch(0.22 0.06 45);
  font-size: clamp(1.02rem, 1.6vw, 1.18rem);
  font-weight: 500;
}
.pdlc26 .pdlc-visitanos__datos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.55rem;
  margin-top: 1.6rem;
}
.pdlc26 .pdlc-visitanos__dato {
  padding: 0.5rem 1.05rem;
  border-radius: var(--pastilla);
  background: oklch(0.99 0.01 85 / 0.9);
  color: oklch(0.24 0.07 45);
  font-size: var(--texto-cuerpo);
  font-weight: 600;
}
.pdlc26 .pdlc-visitanos .pdlc-boton { margin-top: calc(1.9rem - 4px); }

/* ---------- 14. Pie ---------- */
.pdlc26 .pdlc-pie {
  background: var(--primary-800);
  border-top: 1px solid color-mix(in oklab, var(--hueso) 14%, transparent);
  padding-block: clamp(2.6rem, 5vw, 4rem) 1.6rem;
}
.pdlc26 .pdlc-pie__rejilla {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) repeat(auto-fit, minmax(170px, 1fr));
  gap: clamp(1.6rem, 4vw, 3rem);
}
.pdlc26 .pdlc-pie__marca img { width: 76px; margin-bottom: 0.9rem; }
.pdlc26 .pdlc-pie__marca p {
  color: var(--texto-3);
  font-size: var(--texto-cuerpo);
  max-width: 32ch;
}
.pdlc26 .pdlc-pie__titulo {
  font-family: var(--fuente-titulo);
  font-weight: 900;
  font-size: var(--texto-cuerpo);
  color: var(--maiz);
  margin-bottom: 0.8rem;
}
.pdlc26 .pdlc-pie__lista li + li { margin-top: 0.5rem; }
.pdlc26 .pdlc-pie__lista a,
.pdlc26 .pdlc-pie__lista span {
  font-size: var(--texto-cuerpo);
  color: var(--texto-2);
  transition: color 0.2s var(--salida);
}
.pdlc26 .pdlc-pie__lista a:hover { color: var(--maiz); }
.pdlc26 .pdlc-pie__lista b { font-weight: 700; color: inherit; }
.pdlc26 .pdlc-pie__redes {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.65rem;
}
.pdlc26 .pdlc-pie__red {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.65rem;
  width: auto;
  height: auto;
  min-height: 28px;
  color: var(--texto-2);
  transition: color 0.2s var(--salida);
}
.pdlc26 .pdlc-pie__red:hover,
.pdlc26 .pdlc-pie__red:focus-visible {
  color: var(--maiz);
}
.pdlc26 .pdlc-pie__red span {
  font-size: var(--texto-cuerpo);
  color: inherit;
  transition: color 0.2s var(--salida);
}
.pdlc26 .pdlc-pie__red svg {
  display: block;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px;
  min-height: 24px;
  max-width: none;
  flex-shrink: 0;
}

@media (max-width: 860px) {
  .pdlc26 .pdlc-pie__rejilla {
    grid-template-columns: 1fr;
  }
  .pdlc26 .pdlc-pie__marca p {
    display: none;
  }
}

.pdlc26 .pdlc-pie__base {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.5rem;
  justify-content: space-between;
  align-items: center;
  margin-top: clamp(2rem, 4vw, 3rem);
  padding-top: 1.4rem;
  border-top: 1px solid var(--linea);
  font-size: 0.85rem;
  color: var(--texto-3);
}

/* ---------- 15. Movimiento ---------- */
/* El contenido nace visible; el JS activa la entrada solo si puede animarla. */
.pdlc26[data-animar="si"] .pdlc-entra {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.6s var(--salida-larga), transform 0.7s var(--salida-larga);
}
.pdlc26[data-animar="si"] .pdlc-entra.pdlc-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .pdlc26 *,
  .pdlc26 *::before,
  .pdlc26 *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .pdlc26[data-animar="si"] .pdlc-entra { opacity: 1; transform: none; }
  /* El oscurecido sigue existiendo: es información, no adorno. Solo cambia al instante. */
  .pdlc26 .pdlc-sede__ficha { transition: none; }
}

/* ---------- 16. Recorrido cinematográfico (home → sede) ---------- */
.pdlc-recorrido {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  height: 100dvh;
  z-index: 9999;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #160D26;
  pointer-events: auto;
  transition: background-color 0.35s ease;
}
.pdlc-recorrido--entrada {
  background: transparent;
  pointer-events: none;
}
.pdlc-recorrido[hidden] { display: none !important; }

/* La sede se precarga oculta; al salir el video hace fade y deja ver la página debajo */
.pdlc-recorrido__destino {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  z-index: 0;
  background: #160D26;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
}
.pdlc-recorrido--salida .pdlc-recorrido__destino {
  /* Contenido ya listo detrás: sin crossfade, solo el video se desvanece encima */
  opacity: 1;
  visibility: visible;
}
.pdlc-recorrido__video {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  max-width: none;
  max-height: none;
  display: block;
  object-fit: cover;
  object-position: center 38%;
  background: transparent;
  opacity: 1;
  transition: opacity 1s var(--salida-larga);
}
@media (max-width: 860px) {
  .pdlc-recorrido__video {
    object-position: center bottom;
  }
}
.pdlc-recorrido--entrada .pdlc-recorrido__video {
  opacity: 0;
}
.pdlc-recorrido--salida .pdlc-recorrido__video {
  opacity: 0;
}
.pdlc-recorrido__saltar {
  position: absolute;
  right: clamp(1rem, 3vw, 2rem);
  bottom: clamp(1rem, 3vw, 2rem);
  z-index: 2;
  padding: 0.7rem 1.25rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  background: rgba(22, 13, 38, 0.45);
  color: #fff;
  font-family: "Gilroy", "Arial Black", "Helvetica Neue", Arial, sans-serif;
  font-weight: 900;
  font-size: var(--texto-cuerpo);
  letter-spacing: 0.02em;
  cursor: pointer;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: opacity 0.25s ease;
}
.pdlc-recorrido__saltar[hidden],
.pdlc-recorrido--salida .pdlc-recorrido__saltar {
  display: none !important;
}
.pdlc-recorrido__saltar:hover,
.pdlc-recorrido__saltar:focus-visible {
  background: rgba(22, 13, 38, 0.7);
  outline: none;
}

/* Tras el fade: el iframe queda como la página “viva” */
.pdlc-recorrido--vivo {
  z-index: 9999;
}
.pdlc-recorrido__destino--vivo {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 1;
}

html.pdlc-recorrido-activo,
html.pdlc-recorrido-activo body {
  overflow: hidden;
}

/* Fade-out al iniciar el recorrido: nubes, logo y textos (encima de
   la foto). El fondo se queda hasta que el video ya está detrás. */
.pdlc26 .pdlc-elige__marca,
.pdlc26 .pdlc-elige__nubes,
.pdlc26 .pdlc-sede,
.pdlc26 .pdlc-intro,
.pdlc26 .pdlc-pie {
  transition: opacity 1s var(--salida-larga);
}
html.pdlc-recorrido-activo .pdlc26 .pdlc-elige__marca,
html.pdlc-recorrido-activo .pdlc26 .pdlc-elige__nubes,
html.pdlc-recorrido-activo .pdlc26 .pdlc-sede,
html.pdlc-recorrido-activo .pdlc26 .pdlc-intro,
html.pdlc-recorrido-activo .pdlc26 .pdlc-pie,
html.pdlc-recorrido-activo .pdlc26 .pdlc-elige[data-entrada] .pdlc-elige__marca,
html.pdlc-recorrido-activo .pdlc26 .pdlc-elige[data-entrada] .pdlc-sede__cuerpo {
  opacity: 0 !important;
  pointer-events: none;
}
html.pdlc-recorrido-activo .pdlc26 .pdlc-elige .pdlc-sede__foto::before,
html.pdlc-recorrido-activo .pdlc26 .pdlc-elige .pdlc-sede__foto::after {
  opacity: 0 !important;
  transition: opacity 1s var(--salida-larga);
}

/* La foto cubre el overlay: el video arranca debajo y luego ella se
   desvanece, para que el primer frame parezca la misma imagen. */
html.pdlc-recorrido-activo .pdlc26 .pdlc-elige__fondo {
  position: fixed;
  inset: 0;
  z-index: 10000;
  opacity: 1 !important;
  pointer-events: none;
  transition: opacity 1s var(--salida-larga);
}
html.pdlc-recorrido-video .pdlc26 .pdlc-elige__fondo {
  opacity: 0 !important;
  /* Sin esto, al terminar el video la foto puede “saltar” otra vez al frente. */
  visibility: hidden;
}
html.pdlc-recorrido-activo .pdlc-recorrido:not(.pdlc-recorrido--entrada):not(.pdlc-recorrido--salida) .pdlc-recorrido__video {
  transition: none;
}
/* Durante la salida el video está encima; el home no debe reaparecer debajo. */
.pdlc26[hidden] {
  display: none !important;
}

/* Puente visual (fallback WordPress / sin iframe): el overlay se desvanece
   y deja ver el contenido de la sede debajo — mismo gesto que el fade del video. */
html.pdlc-espera-entrada,
html.pdlc-espera-entrada body {
  background: #160D26 !important;
}
.pdlc-puente {
  position: fixed;
  inset: 0;
  z-index: 9998;
  margin: 0;
  background: #160D26;
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.9s var(--salida-larga);
}
.pdlc-puente--fuera {
  opacity: 0;
}

/* ---------- 17. Utilidades ---------- */
.pdlc26 .pdlc-solo-lectores {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.pdlc26 .pdlc-centro { text-align: center; }
.pdlc26 .pdlc-centro .pdlc-plomo { margin-inline: auto; }

/* ---------- 18. Titan One: títulos a 38px en mobile ---------- */
@media (max-width: 860px) {
  .pdlc26 .pdlc-contorno-titan,
  .pdlc26 h2.pdlc-contorno-titan,
  .pdlc26 .pdlc-seccion--primary-300 h2.pdlc-contorno-titan,
  .pdlc26 .pdlc-seccion--primary-300 .pdlc-quees__texto h2.pdlc-contorno-titan,
  .pdlc26 .pdlc-sede__nombre,
  .pdlc26 .pdlc-elige .pdlc-sede__nombre,
  .pdlc26 .pdlc-portada__nombre,
  .pdlc26 .pdlc-intro h1,
  .pdlc26 .pdlc-intro__titulo,
  .pdlc26 .pdlc-visitanos h2,
  .pdlc26 .pdlc-seccion--orange-50 .pdlc-cabecera h1,
  .pdlc26 .pdlc-seccion--orange-50 .pdlc-cabecera h2.pdlc-contorno-titan {
    font-size: 38px;
  }
}
