:root {
  --rojo: #d52b1e;
  --rojo-vivo: #e8473b;
  --azul: #0039a6;
  --azul-texto: #0039a6;
  --velo: 6, 28, 84;
  --fondo: #ffffff;
  --fondo-2: #f4f6fb;
  --panel: #ffffff;
  --panel-2: #eef2f9;
  --superficie: #ffffff;
  --superficie-2: #f6f8fc;
  --vidrio: rgba(255, 255, 255, .94);
  --linea: rgba(10, 35, 90, .10);
  --linea-fuerte: rgba(10, 35, 90, .17);
  --acento: var(--rojo);
  --acento-vivo: var(--rojo-vivo);
  --acento-texto: #ffffff;
  --destacado: var(--rojo);
  --sobre-foto-acento: #ff5247;
  --tinta: #0b1a36;
  --tinta-2: #42506b;
  --tinta-3: #6a7690;
  --texto: var(--tinta);
  --texto-2: var(--tinta-2);
  --texto-3: var(--tinta-3);
  --arena: #f4f6fb;
  --placa: #ffffff;
  --placa-texto: #26324a;
  --error: #d64a3a;
  --error-texto: #b3261e;
  --pie-fondo: #0b1a36;
  --pt-marca: var(--azul);
  --radio: 14px;
  --radio-g: 20px;
  --ancho: 1320px;
  --sombra: 0 14px 34px rgba(12, 32, 80, .10);
  --fs-micro: 10.5px;
  --fs-xs: 11.5px;
  --fs-sm: 12.5px;
  --fs-chico: 13.5px;
  --fs-base: 14px;
  --fs-md: 15px;
  --fs-lg: 16px;
  --fs-xl: 18px;
  --fs-2xl: 20px;
  --fs-3xl: 24px;
  --fs-4xl: 28px;
  --fs-5xl: 32px;
  --fs-campo: 14px;
  --lh-1: 1;
  --lh-titulo: 1.1;
  --lh-base: 1.2;
  --lh-sub: 1.25;
  --lh-texto: 1.45;
  --lh-prosa: 1.7;
  --fuente: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color-scheme: light;
}
:root[data-tema="oscuro"] {
  --rojo-vivo: #f0392b;
  --azul: #1f5fe0;
  --azul-texto: #4a86ff;
  --fondo: #0a0b0f;
  --fondo-2: #101218;
  --panel: #14171f;
  --panel-2: #1a1e29;
  --superficie: #14171f;
  --superficie-2: #191d27;
  --vidrio: rgba(10, 11, 15, .92);
  --linea: rgba(255, 255, 255, .08);
  --linea-fuerte: rgba(255, 255, 255, .15);
  --acento: var(--rojo-vivo);
  --destacado: var(--rojo-vivo);
  --tinta: #f3f4f7;
  --tinta-2: #b9bfcc;
  --tinta-3: #8b92a3;
  --arena: #14171f;
  --error-texto: var(--error-texto);
  --pt-marca: var(--azul-texto);
  --sombra: 0 18px 40px rgba(0, 0, 0, .45);
  color-scheme: dark;
}
@media (pointer: coarse) { :root { --fs-campo: 16px; } }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--fondo);
  color: var(--texto);
  font-family: var(--fuente);
  font-size: var(--fs-base);
  line-height: var(--lh-base);
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select { font: inherit; color: inherit; }
.pt-contenedor { width: min(var(--ancho), 100% - 48px); margin-inline: auto; }
.pt-antetitulo {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: var(--fs-sm); font-weight: 800; letter-spacing: .16em; text-transform: uppercase;
  color: var(--destacado);
}
.pt-antetitulo svg { width: 16px; height: 16px; }
.pt-cinta {
  font-size: var(--fs-xs); font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--acento);
}
.pt-fecha { font-size: var(--fs-xs); letter-spacing: .1em; text-transform: uppercase; color: var(--texto-2); }
.pt-cabeza-seccion {
  display: flex; align-items: flex-end; justify-content: space-between; gap: 24px;
  margin-bottom: 28px;
}
.pt-cabeza-seccion h2 {
  margin: 6px 0 4px; font-size: clamp(27.5px, 3.1vw, 38.5px); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.02em;
}
.pt-cabeza-seccion p { margin: 0; color: var(--texto-2); font-size: var(--fs-md); }
.pt-boton-linea {
  display: inline-flex; align-items: center; gap: 8px; white-space: nowrap;
  padding: 11px 20px; border: 1px solid var(--linea-fuerte); border-radius: 999px;
  color: var(--acento); font-weight: 700; font-size: var(--fs-chico);
  transition: background .2s, color .2s;
}
.pt-boton-linea:hover { background: var(--acento); color: var(--acento-texto); }
.pt-boton {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  padding: 0 26px; height: 54px; border: 0; border-radius: 12px; cursor: pointer;
  background: var(--acento); color: var(--acento-texto); font-weight: 800; font-size: var(--fs-md);
}
.pt-boton:hover { background: var(--acento-vivo); }
.pt-seccion { padding: 72px 0; }
.pt-barra {
  position: sticky; top: 0; z-index: 30;
  background: var(--vidrio); backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--linea);
}
.admin-bar .pt-barra { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) { .admin-bar .pt-barra { top: 0; } }
.pt-barra::after { content: ""; position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: linear-gradient(90deg, var(--azul) 0 34%, var(--rojo) 34% 100%); }
.pt-tema { display: inline-flex; align-items: center; gap: 2px; padding: 3px; border-radius: 999px; border: 1px solid var(--linea-fuerte); background: var(--superficie-2); flex: none; }
.pt-tema button { display: grid; place-items: center; width: 34px; height: 30px; border: 0; border-radius: 999px; background: transparent; color: var(--texto-3); cursor: pointer; }
.pt-tema button svg { width: 18px; height: 18px; }
.pt-tema button[aria-pressed="true"] { background: var(--superficie); color: var(--acento); box-shadow: 0 1px 4px rgba(12, 32, 80, .15); }
:root[data-tema="oscuro"] .pt-tema button[aria-pressed="true"] { background: var(--azul); color: #fff; }
@media (max-width: 700px) {
  .pt-tema { padding: 0; border: 0; background: transparent; }
  .pt-tema button { width: 40px; height: 40px; border: 1px solid var(--linea-fuerte); border-radius: 10px; }
  .pt-tema button[aria-pressed="true"] { display: none; }
}
.pt-barra__fila { display: flex; align-items: center; gap: 22px; height: 76px; padding-inline: 24px; }
.pt-icono-boton {
  display: grid; place-items: center; width: 44px; height: 44px; flex: none;
  border: 1px solid var(--linea-fuerte); border-radius: 10px; background: transparent; cursor: pointer;
}
.pt-icono-boton svg { width: 20px; height: 20px; }
.pt-barra__logo img { height: 30px; width: auto; }
.pt-barra__lema { font-size: var(--fs-sm); line-height: var(--lh-sub); color: var(--texto-2); max-width: 210px; padding-left: 20px; border-left: 1px solid var(--linea-fuerte); }
.pt-barra__buscar { flex: 1; max-width: 430px; margin-left: auto; position: relative; }
.pt-barra__buscar input {
  width: 100%; height: 44px; padding: 0 18px 0 46px; border-radius: 999px;
  border: 1px solid var(--linea-fuerte); background: var(--superficie-2); font-size: var(--fs-chico);
}
.pt-barra__buscar input::placeholder { color: var(--texto-3); }
.pt-barra__buscar svg { position: absolute; left: 16px; top: 12px; width: 20px; height: 20px; color: var(--texto-2); }
.pt-barra__lugar, .pt-barra__fecha { display: flex; align-items: center; gap: 6px; font-size: var(--fs-md); white-space: nowrap; }
.pt-barra__lugar svg { width: 16px; height: 16px; color: var(--acento); }
.pt-barra__sep { width: 1px; height: 28px; background: var(--linea-fuerte); }
.pt-hero { position: relative; min-height: 860px; display: flex; align-items: flex-end; overflow: clip; overflow-clip-margin: 0; }
.pt-hero:has(.pt-selector--abierto) { overflow: visible; z-index: 6; }
.pt-busca { position: relative; z-index: 5; }
.pt-hero__foto {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 60%;
}
.pt-hero::before {
  content: ""; position: absolute; inset: 0; z-index: 1;
  background:
    linear-gradient(90deg, rgba(var(--velo), .78) 0%, rgba(var(--velo), .35) 45%, rgba(var(--velo), 0) 70%),
    linear-gradient(180deg, rgba(var(--velo), .25) 0%, rgba(var(--velo), 0) 30%, rgba(var(--velo), .55) 100%);
}
.pt-hero__cuerpo { position: relative; z-index: 2; width: min(var(--ancho), 100% - 48px); margin: 0 auto; padding: 150px 0 120px; }
.pt-hero h1 {
  margin: 14px 0 12px; font-size: clamp(35px, 4.9vw, 65px); line-height: var(--lh-1); font-weight: 800; letter-spacing: -.03em; text-wrap: balance;
  text-shadow: 0 4px 30px rgba(0,0,0,.35);
}
@media (max-width: 760px) {
  .pt-hero::before { background: linear-gradient(180deg, rgba(var(--velo), .62) 0%, rgba(var(--velo), .70) 55%, rgba(var(--velo), .82) 100%); }
}
.pt-hero { --texto: #ffffff; --texto-2: rgba(255, 255, 255, .88); --texto-3: rgba(255, 255, 255, .72); color: var(--texto); }
.pt-hero .pt-busca, .pt-hero .pt-datos-ficha, .pt-hero .pt-chip { --texto: var(--tinta); --texto-2: var(--tinta-2); --texto-3: var(--tinta-3); color: var(--texto); }
.pt-hero .pt-antetitulo, .pt-hero .pt-chips-cabeza { color: #ffffff; }
.pt-hero .pt-antetitulo svg, .pt-hero .pt-chips-cabeza svg { color: var(--sobre-foto-acento); }
.pt-hero h1 em { font-style: normal; background: var(--sobre-foto-acento); color: var(--placa); padding-inline: 10px; -webkit-box-decoration-break: clone; box-decoration-break: clone; text-shadow: none; }
.pt-hero__bajada { margin: 0 0 34px; font-size: clamp(18px, 1.8vw, 26px); line-height: var(--lh-base); text-wrap: balance; text-shadow: 0 2px 16px rgba(0,0,0,.5); }
.pt-busca {
  background: var(--vidrio); backdrop-filter: blur(14px);
  border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); box-shadow: var(--sombra);
  padding: 28px 30px 26px;
}
.pt-busca__campos { display: grid; grid-template-columns: 1.9fr 1fr 1fr auto; gap: 14px; align-items: end; }
.pt-busca label { display: block; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--texto-2); margin: 0 0 10px 2px; }
.pt-campo { position: relative; }
.pt-campo input, .pt-campo select {
  width: 100%; height: 54px; border-radius: 12px; border: 1px solid var(--linea-fuerte);
  background: var(--superficie); padding: 0 16px; font-size: var(--fs-campo); appearance: none;
}
.pt-campo input { padding-left: 46px; }
.pt-campo input::placeholder { color: var(--texto-3); }
.pt-campo > svg { position: absolute; left: 16px; bottom: 17px; width: 20px; height: 20px; color: var(--texto-3); pointer-events: none; }
.pt-campo select { padding-right: 40px; cursor: pointer; }
.pt-campo--sel::after {
  content: ""; position: absolute; right: 18px; bottom: 23px; width: 8px; height: 8px;
  border-right: 2px solid var(--texto); border-bottom: 2px solid var(--texto); transform: rotate(45deg); pointer-events: none;
}
.pt-campo select option { background: var(--fondo-2); }
.pt-busca__cifras {
  display: grid; grid-template-columns: repeat(3, 1fr) 1.3fr; margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--linea);
}
.pt-cifra { display: flex; align-items: center; gap: 18px; padding-right: 20px; border-right: 1px solid var(--linea); margin-right: 24px; }
.pt-cifra__icono { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; border: 1px solid var(--linea-fuerte); color: var(--acento); flex: none; }
.pt-cifra__icono svg { width: 26px; height: 26px; }
.pt-cifra b { display: block; font-size: var(--fs-5xl); line-height: var(--lh-1); font-weight: 800; letter-spacing: -.02em; }
.pt-cifra span { color: var(--texto-2); }
.pt-busca__lema {
  align-self: center; padding-left: 22px; border-left: 2px solid var(--acento);
  font-size: var(--fs-sm); letter-spacing: .22em; text-transform: uppercase; color: var(--texto-2); line-height: var(--lh-prosa);
}
.pt-hero__credito {
  position: absolute; z-index: 2; left: 32px; bottom: 28px; display: flex; gap: 10px; align-items: flex-start;
  font-size: var(--fs-chico); color: var(--texto); text-shadow: 0 1px 8px rgba(0,0,0,.6);
}
.pt-hero__credito svg { width: 18px; height: 18px; color: var(--sobre-foto-acento); margin-top: 2px; }
.pt-hero__credito small { display: block; color: var(--texto-2); font-size: var(--fs-sm); }
.pt-ahora { display: flex; align-items: center; gap: 20px; font-size: var(--fs-md); margin-bottom: 30px; }
.pt-ahora b { color: var(--acento); }
.pt-ahora a { color: var(--texto); }
.pt-ahora a:hover { color: var(--acento); }
.pt-ahora::after { content: ""; flex: 1; height: 1px; background: var(--linea-fuerte); }
.pt-destacadas { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 18px; height: 720px; }
.pt-nota-foto {
  position: relative; overflow: hidden; border-radius: var(--radio-g); border: 1px solid var(--linea);
  display: flex; flex-direction: column; justify-content: flex-end; padding: 26px; isolation: isolate;
}
.pt-nota-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .6s; }
.pt-nota-foto, .pt-categoria, .pt-lugar, .pt-perfil-foto figcaption {
  --texto: #ffffff; --texto-2: rgba(255, 255, 255, .86); --texto-3: rgba(255, 255, 255, .72); --destacado: var(--sobre-foto-acento); color: var(--texto);
}
.pt-lugar, .pt-categoria, .pt-nota-foto { background-color: rgb(var(--velo)); }
.pt-cal-grande { --texto: var(--tinta); --texto-2: var(--tinta-2); --texto-3: var(--tinta-3); --destacado: var(--rojo); color: var(--texto); }
[data-cf-lista][data-vista="lista"] > .pt-lugar { --texto: var(--tinta); --texto-2: var(--tinta-2); --texto-3: var(--tinta-3); --destacado: var(--rojo); }
.pt-nota-foto::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(var(--velo), .28) 0%, rgba(var(--velo), 0) 22%, rgba(var(--velo), .15) 42%, rgba(var(--velo), .94) 100%); }
.pt-nota-foto:hover img { transform: scale(1.04); }
.pt-nota-foto__arriba { position: absolute; top: 16px; left: 16px; right: 16px; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.pt-nota-foto .pt-cinta { padding: 5px 10px; border-radius: 999px; background: var(--rojo); color: #fff; font-size: var(--fs-micro); letter-spacing: .1em; line-height: var(--lh-sub); }
.pt-nota-foto .pt-fecha { padding: 5px 10px; border-radius: 999px; background: rgba(var(--velo), .78); color: #fff; font-size: var(--fs-micro); letter-spacing: .08em; line-height: var(--lh-sub); backdrop-filter: blur(4px); }
.pt-nota-foto h3, .pt-nota-foto h2 { margin: 0; font-size: var(--fs-xl); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.01em; text-wrap: pretty;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
.pt-nota-foto p { margin: 10px 0 0; color: var(--texto-2); font-size: var(--fs-md); line-height: var(--lh-texto);
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.pt-nota-foto--grande { grid-row: 1 / 3; padding: 34px; }
.pt-nota-foto--grande h3, .pt-nota-foto--grande h2 { font-size: clamp(26px, 2.5vw, 35px); line-height: var(--lh-titulo); letter-spacing: -.02em; }
.pt-nota-foto--grande .pt-nota-foto__arriba { top: 22px; left: 22px; }
.pt-nota-foto--ancha h3, .pt-nota-foto--ancha h2 { font-size: var(--fs-3xl); line-height: var(--lh-titulo); -webkit-line-clamp: 3; }
.pt-destacadas__pie { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
@media (max-width: 1100px) {
  .pt-barra__lema, .pt-barra__fecha, .pt-barra__sep { display: none; }
  .pt-busca__campos { grid-template-columns: 1fr 1fr; }
  .pt-busca__campos .pt-campo:first-child, .pt-busca__campos .pt-boton { grid-column: 1 / -1; }
  .pt-busca__cifras { grid-template-columns: repeat(3, 1fr); }
  .pt-busca__lema { display: none; }
}
@media (max-width: 760px) {
  .pt-barra__fila { gap: 12px; height: 64px; padding-inline: 16px; }
  .pt-barra__buscar, .pt-barra__lugar { display: none; }
  .pt-barra__logo { margin-right: auto; }
  .pt-barra__logo img { height: 24px; }
  .pt-contenedor, .pt-hero__cuerpo { width: calc(100% - 32px); }
  .pt-hero { min-height: 0; }
  .pt-hero__cuerpo { padding: 110px 0 90px; }
  .pt-busca { padding: 20px 18px; }
  .pt-busca__campos { grid-template-columns: 1fr; }
  .pt-cifra { flex-direction: column; align-items: flex-start; gap: 8px; margin-right: 12px; padding-right: 10px; }
  .pt-cifra__icono { width: 44px; height: 44px; }
  .pt-cifra b { font-size: var(--fs-3xl); }
  .pt-cifra span { font-size: var(--fs-sm); }
  .pt-hero__credito { left: 16px; bottom: 18px; }
  .pt-seccion { padding: 52px 0; }
  .pt-cabeza-seccion { flex-direction: column; align-items: flex-start; }
  .pt-ahora { flex-wrap: wrap; gap: 10px 14px; font-size: var(--fs-chico); }
  .pt-ahora::after { display: none; }
  .pt-destacadas { display: flex; flex-direction: column; height: auto; }
  .pt-destacadas .pt-nota-foto { min-height: 300px; }
  .pt-destacadas .pt-nota-foto--grande { min-height: 440px; }
  .pt-destacadas__pie { grid-template-columns: 1fr; }
}
.pt-explora { position: relative; overflow: hidden; }
.pt-explora::before {
  content: ""; position: absolute; inset: 0 0 auto 0; height: 420px; pointer-events: none;
  background: radial-gradient(60% 100% at 85% 0%, color-mix(in srgb, var(--azul) 10%, transparent), transparent 70%);
}
.pt-cabeza-seccion h2 em, .pt-regiones h3 em { font-style: normal; color: var(--acento); }
.pt-cabeza-seccion__lado { display: flex; align-items: center; gap: 26px; }
.pt-categorias { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.pt-categoria {
  position: relative; aspect-ratio: 4 / 2.9; overflow: hidden; border-radius: var(--radio); border: 1px solid var(--linea);
  display: flex; flex-direction: column; justify-content: flex-end; padding: 14px 16px; isolation: isolate;
}
.pt-categoria img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .5s; }
.pt-categoria::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(var(--velo), 0) 40%, rgba(var(--velo), .88) 100%); }
.pt-categoria:hover img { transform: scale(1.06); }
.pt-categoria b { font-size: var(--fs-lg); line-height: var(--lh-sub); font-weight: 800; }
.pt-categoria span { font-size: var(--fs-chico); color: var(--texto-2); }
.pt-regiones {
  margin-top: 30px; padding: 34px 36px; border: 1px solid var(--linea); border-radius: var(--radio-g);
  background: var(--superficie); box-shadow: var(--sombra);
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); grid-template-areas: "texto mapa" "lista mapa";
  grid-template-rows: auto 1fr; gap: 26px 34px;
}
.pt-regiones__texto { grid-area: texto; }
.pt-regiones h3 { margin: 12px 0 8px; font-size: clamp(31.5px, 3.6vw, 46px); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.02em; }
.pt-regiones p { margin: 0; color: var(--texto-2); font-size: var(--fs-lg); }
.pt-regiones .pt-pastillas { grid-area: lista; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; align-self: start; margin: 0; }
.pt-regiones .pt-pastilla { justify-content: space-between; padding: 12px 16px; }
.pt-regiones .pt-pastilla.es-activa { border-color: var(--acento); color: var(--acento); }
.pt-mapa { grid-area: mapa; position: relative; }
.pt-mapa__lienzo { position: relative; }
.pt-mapa__svg { display: block; width: auto; max-width: 100%; height: 660px; margin: 0 auto; overflow: visible; }
.pt-mapa__region { fill: color-mix(in srgb, var(--azul) 16%, var(--superficie)); stroke: var(--superficie); stroke-width: 1.6; cursor: pointer; outline: none; transition: fill .15s ease; }
.pt-mapa__region:nth-of-type(odd) { fill: color-mix(in srgb, var(--azul) 27%, var(--superficie)); }
.pt-mapa__region:hover, .pt-mapa__region:focus-visible, .pt-mapa__region.es-activa { fill: var(--rojo); }
.pt-mapa__sigla { font-size: var(--fs-chico); font-weight: 800; letter-spacing: .04em; fill: var(--texto-3); pointer-events: none; }
.pt-mapa__sigla--oeste { text-anchor: end; }
.pt-mapa__ejes { display: flex; justify-content: center; margin: 6px 0; font-size: var(--fs-micro); font-weight: 800; letter-spacing: .16em; color: var(--texto-3); }
.pt-mapa__ficha { position: absolute; z-index: 3; top: 30%; left: 0; width: 250px; padding: 14px 16px; border-radius: 14px; border: 1px solid var(--linea); background: var(--superficie); box-shadow: var(--sombra); }
.pt-mapa__ficha h4 { margin: 0 0 2px; font-size: var(--fs-lg); font-weight: 800; }
.pt-mapa__total { margin: 0 0 10px; font-size: var(--fs-chico); color: var(--texto-2); }
.pt-mapa__total b { color: var(--acento); font-size: var(--fs-lg); }
.pt-mapa__ficha ul { margin: 0 0 12px; padding: 0; list-style: none; font-size: var(--fs-sm); color: var(--texto-2); }
.pt-mapa__ficha li { display: flex; justify-content: space-between; gap: 8px; padding: 4px 0; border-top: 1px solid var(--linea); }
.pt-mapa__ficha li b { color: var(--texto); }
.pt-mapa__ficha a { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 9px; background: var(--rojo); color: #fff; font-size: var(--fs-sm); font-weight: 700; }
.pt-mapa__ayuda { margin: 0; font-size: var(--fs-sm); color: var(--texto-3); }
.pt-pastillas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.pt-pastilla {
  display: inline-flex; gap: 12px; align-items: center; padding: 10px 17px; border-radius: 999px;
  border: 1px solid var(--linea-fuerte); background: var(--superficie); font-size: var(--fs-base); font-weight: 600;
}
.pt-pastilla span { color: var(--texto-2); font-weight: 500; }
.pt-pastilla:hover { border-color: var(--acento); color: var(--acento); }
@media (max-width: 1100px) {
  .pt-categorias { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 900px) {
  .pt-regiones { grid-template-columns: 1fr; grid-template-areas: "texto" "mapa" "lista"; gap: 18px; }
  .pt-mapa { display: grid; grid-template-columns: minmax(0, 1fr) 132px; gap: 14px; align-items: start; }
  .pt-mapa__lienzo { grid-column: 2; grid-row: 1; }
  .pt-mapa__svg { width: 100%; height: 470px; }
  .pt-mapa__sigla { font-size: var(--fs-xl); }
  .pt-mapa__ficha { grid-column: 1; grid-row: 1; position: sticky; top: 92px; width: auto; padding: 14px; }
  .pt-mapa__total b { display: block; font-size: var(--fs-2xl); line-height: var(--lh-titulo); }
  .pt-mapa__ficha li { flex-direction: column; gap: 0; padding: 5px 0; }
  .pt-mapa__ficha li b { color: var(--acento); }
  .pt-mapa__ficha a { width: 100%; justify-content: center; }
}
@media (max-width: 760px) {
  .pt-categorias { grid-template-columns: 1fr 1fr; gap: 10px; }
  .pt-categoria b { font-size: var(--fs-base); }
  .pt-categoria span { font-size: var(--fs-xs); }
  .pt-regiones { padding: 22px 16px; }
  .pt-regiones h3 { font-size: var(--fs-4xl); }
  .pt-regiones .pt-pastilla { padding: 10px 12px; font-size: var(--fs-sm); }
  .pt-pastilla { padding: 9px 14px; font-size: var(--fs-chico); }
}
.pt-fondo-monte { position: relative; background: var(--fondo-2); }
.pt-fondo-monte::before {
  content: ""; position: absolute; inset: 0 0 auto 0; height: 360px; pointer-events: none;
  background: radial-gradient(55% 100% at 80% 0%, color-mix(in srgb, var(--azul) 8%, transparent), transparent 70%);
}
.pt-lugares { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.pt-lugar {
  position: relative; aspect-ratio: 4 / 4.5; overflow: hidden; border-radius: var(--radio-g); border: 1px solid var(--linea);
  display: flex; flex-direction: column; justify-content: flex-end; padding: 20px; isolation: isolate;
}
.pt-lugar img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .6s; }
.pt-lugar::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(var(--velo), 0) 45%, rgba(var(--velo), .9) 100%); }
.pt-lugar:hover img { transform: scale(1.05); }
.pt-lugar b { font-size: var(--fs-2xl); line-height: var(--lh-sub); font-weight: 800; }
.pt-lugar__donde { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: var(--fs-base); color: var(--texto-2); }
.pt-lugar__donde svg { width: 16px; height: 16px; color: var(--destacado); flex: none; }
.pt-etiqueta {
  position: absolute; top: 16px; left: 16px; padding: 6px 13px; border-radius: 999px;
  font-size: var(--fs-sm); font-weight: 600; color: #fff; background: rgba(var(--velo), .88); border: 1px solid rgba(255,255,255,.18);
}
@media (max-width: 1100px) { .pt-lugares { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) {
  .pt-lugares { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin-inline: -16px; padding-inline: 16px; scrollbar-width: none; }
  .pt-lugares::-webkit-scrollbar { display: none; }
  .pt-lugar { flex: 0 0 78%; scroll-snap-align: start; }
}
.pt-agenda { position: relative; overflow: hidden; }
.pt-franja-roja { background: var(--rojo); --texto: #ffffff; --texto-2: rgba(255, 255, 255, .9); --texto-3: rgba(255, 255, 255, .78); --acento: #ffffff; --destacado: #ffffff; color: var(--texto); }
.pt-franja-roja .pt-cabeza-seccion h2 em { color: #ffffff; text-decoration: underline; text-decoration-thickness: 4px; text-underline-offset: 8px; text-decoration-color: rgba(255, 255, 255, .45); }
.pt-franja-roja .pt-enlace-mas { padding: 9px 16px; border-radius: 999px; border: 1.5px solid rgba(255, 255, 255, .7); }
.pt-franja-roja .pt-evento, .pt-franja-roja .pt-tablero {
  --texto: var(--tinta); --texto-2: var(--tinta-2); --texto-3: var(--tinta-3); --acento: var(--rojo); --destacado: var(--rojo);
  color: var(--texto); background: var(--superficie); border-color: transparent; box-shadow: 0 10px 26px rgba(60, 0, 0, .22);
}
.pt-franja-roja .pt-tablero .pt-cabeza-seccion h2 em { color: var(--rojo); text-decoration: none; }
.pt-franja-roja .pt-riel__flecha { background: #ffffff; color: var(--rojo); border-color: transparent; }
.pt-franja-roja .pt-riel__flecha:hover:not(:disabled) { background: var(--azul); color: #fff; }
.pt-agenda .pt-contenedor { position: relative; z-index: 1; }
.pt-evento {
  display: flex; flex-direction: column; overflow: hidden;
  border-radius: var(--radio); border: 1px solid var(--linea-fuerte); background: var(--superficie);
}
.pt-evento__foto { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--panel-2); }
.pt-evento__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.pt-evento:hover img { transform: scale(1.05); }
.pt-evento__cuerpo { padding: 14px 16px 16px; display: flex; flex-direction: column; flex: 1; }
.pt-evento b { font-size: var(--fs-base); line-height: var(--lh-sub); font-weight: 700; min-height: 3.75em;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.pt-evento__fecha { display: flex; align-items: baseline; gap: 10px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--linea-fuerte); }
.pt-evento__fecha i { font-style: normal; color: var(--destacado); font-weight: 700; font-size: var(--fs-chico); }
.pt-evento__fecha strong { font-size: var(--fs-4xl); line-height: var(--lh-1); font-weight: 800; }
.pt-evento__fecha span { font-size: var(--fs-base); color: var(--texto-2); }
.pt-evento__dato { display: flex; gap: 8px; align-items: flex-start; margin-top: 10px; min-height: 2.7em; font-size: var(--fs-sm); color: var(--texto-2); line-height: var(--lh-texto); }
.pt-evento__dato:empty { visibility: hidden; }
.pt-evento__dato svg { width: 16px; height: 16px; color: var(--destacado); flex: none; margin-top: 1px; }
.pt-pestanas {
  display: flex; gap: 4px; padding: 6px; margin-bottom: 30px; width: max-content; max-width: 100%;
  border: 1px solid var(--linea-fuerte); border-radius: 999px; overflow-x: auto; scrollbar-width: none;
}
.pt-pestanas::-webkit-scrollbar { display: none; }
.pt-pestanas button {
  flex: none; padding: 9px 14px; border: 0; border-radius: 999px; background: transparent; cursor: pointer;
  font-size: var(--fs-base); color: var(--texto); white-space: nowrap;
}
.pt-pestanas button:hover { color: var(--acento); }
.pt-pestanas button[aria-selected="true"] { background: var(--azul); color: #fff; font-weight: 700; box-shadow: inset 0 0 0 1px var(--linea-fuerte); }
.pt-panel-seccion[hidden] { display: none; }
.pt-rejilla-seccion { display: grid; grid-template-columns: 1.02fr 1fr; gap: 16px; }
.pt-rejilla-seccion__lado { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; gap: 16px; }
.pt-rejilla-seccion .pt-nota-foto--grande { min-height: 520px; grid-row: auto; }
.pt-rejilla-seccion .pt-nota-foto--grande h3 { font-size: clamp(26px, 2.4vw, 35px); }
.pt-rejilla-seccion__lado .pt-tarjeta-nota { min-height: 252px; }
.pt-caja-franja { margin-top: 20px; padding: 16px 16px 18px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); background: var(--superficie); }
.pt-caja-franja__cabeza { display: flex; justify-content: space-between; align-items: center; margin: 0 4px 14px; }
.pt-caja-franja__cabeza h3 { display: flex; align-items: center; gap: 10px; margin: 0; font-size: var(--fs-2xl); font-weight: 700; }
.pt-caja-franja__cabeza h3 svg { width: 22px; height: 22px; color: var(--destacado); }
.pt-caja-franja__cabeza a { display: inline-flex; gap: 8px; align-items: center; font-size: var(--fs-base); }
.pt-caja-franja__cabeza a svg { width: 16px; height: 16px; }
.pt-mini-lugar { display: flex; flex-direction: column; overflow: hidden; border-radius: var(--radio); border: 1px solid var(--linea-fuerte); background: var(--superficie); transition: border-color .2s; }
.pt-mini-lugar:hover { border-color: var(--acento); }
.pt-mini-lugar__foto { position: relative; display: block; aspect-ratio: 16 / 10.5; overflow: hidden; background: var(--panel-2); }
.pt-mini-lugar__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.pt-mini-lugar:hover img { transform: scale(1.05); }
.pt-mini-lugar .pt-etiqueta { top: 10px; left: 10px; padding: 4px 10px; font-size: var(--fs-micro); }
.pt-mini-lugar__texto { display: flex; flex-direction: column; flex: 1; padding: 12px 14px 14px; }
.pt-mini-lugar b { font-size: var(--fs-md); line-height: var(--lh-sub); font-weight: 800; }
.pt-mini-lugar .pt-lugar__donde { margin-top: 6px; font-size: var(--fs-sm); line-height: var(--lh-sub); color: var(--texto-2); }
.pt-mini-perfil { display: flex; flex-direction: column; border-radius: var(--radio); border: 1px solid var(--linea-fuerte); overflow: hidden; background: var(--superficie); }
.pt-mini-perfil__placa { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 9; padding: 14px 18px; overflow: hidden; background: var(--placa); }
.pt-mini-perfil__placa img { max-height: 70%; max-width: 80%; object-fit: contain; }
.pt-mini-perfil__placa--foto { padding: 0; }
.pt-mini-perfil__placa--foto img { position: absolute; inset: 0; max-height: none; max-width: none; width: 100%; height: 100%; object-fit: cover; }
.pt-mini-perfil__texto { padding: 10px 14px 12px; }
.pt-mini-perfil__texto b { display: block; font-size: var(--fs-base); }
.pt-mini-perfil__texto span { font-size: var(--fs-sm); color: var(--texto-2); line-height: var(--lh-texto); display: block; }
@media (max-width: 1100px) {
  .pt-rejilla-seccion { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .pt-pestanas { margin-inline: -16px; border-radius: 0; border-inline: 0; width: auto; }
  .pt-rejilla-seccion .pt-nota-foto--grande { min-height: 400px; }
  .pt-rejilla-seccion__lado { grid-template-columns: 1fr; grid-template-rows: none; }
  .pt-rejilla-seccion__lado .pt-tarjeta-nota { min-height: 0; }
}
.pt-dupla { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.pt-tablero { padding: 30px 26px 26px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); background: var(--superficie); }
.pt-tablero .pt-cabeza-seccion { margin-bottom: 22px; align-items: flex-start; }
.pt-tablero .pt-cabeza-seccion h2 { font-size: clamp(24px, 2.1vw, 31.5px); }
.pt-tablero .pt-cabeza-seccion p { font-size: var(--fs-base); }
.pt-perfiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.pt-ranking { display: grid; grid-template-columns: 1fr; gap: 16px; }
.pt-ranking__uno { position: relative; aspect-ratio: 16 / 8; padding: 24px; }
.pt-ranking__uno h3 { max-width: 30ch; }
.pt-numero {
  display: grid; place-items: center; width: 46px; height: 46px; flex: none; border-radius: 10px;
  border: 1.5px solid var(--linea-fuerte); font-size: var(--fs-2xl); font-weight: 800; color: var(--acento);
}
.pt-ranking__uno .pt-numero { background: #fff; color: var(--rojo); border: 0; font-size: var(--fs-lg); width: 30px; height: 26px; border-radius: 999px; }
.pt-ranking__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; column-gap: 22px; }
.pt-ranking__lista li { border-bottom: 1px solid var(--linea); }
.pt-ranking__lista a { display: flex; align-items: center; gap: 12px; padding: 8px 0; font-size: var(--fs-sm); line-height: var(--lh-texto); }
.pt-ranking__lista .pt-numero { width: 36px; height: 36px; font-size: var(--fs-lg); }
.pt-ranking__lista a:hover { color: var(--acento); }
@media (max-width: 1100px) { .pt-dupla { grid-template-columns: 1fr; } }
@media (max-width: 760px) {
  .pt-tablero { padding: 22px 16px 18px; }
  .pt-perfiles { grid-template-columns: 1fr 1fr; }
  .pt-ranking { grid-template-columns: 1fr; }
  .pt-ranking__uno { aspect-ratio: 4 / 3; }
  .pt-ranking__lista { grid-template-columns: 1fr; }
}
.pt-pie { --texto: #e8ecf5; --texto-2: #b8c1d6; --texto-3: #8d98b2; --linea: rgba(255, 255, 255, .10); --linea-fuerte: rgba(255, 255, 255, .18); --pt-marca: #6f9bff; --acento: #ff5247; background: var(--pie-fondo); color: var(--texto); position: relative; margin-top: 0; border-top: 0; overflow: hidden; isolation: isolate; }
.pt-pie::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: linear-gradient(90deg, var(--azul) 0 34%, var(--rojo) 34% 100%); }
.pt-pie__base { display: flex; align-items: center; gap: 24px; padding: 30px 0; border-top: 1px solid var(--linea-fuerte); font-size: var(--fs-base); color: var(--texto-2); }
@media (max-width: 1100px) {
  .pt-pie__base { flex-wrap: wrap; }
}
@media (max-width: 760px) {
}
@media (max-width: 760px) {
  .pt-hero__foto { object-position: 62% center; }
}
@media (max-width: 760px) {
  .pt-caja-franja { padding: 14px 12px; }
  .pt-caja-franja__cabeza { flex-wrap: wrap; gap: 6px 14px; }
  .pt-caja-franja__cabeza h3 { font-size: var(--fs-lg); }
}
.pt-migas { display: flex; flex-wrap: wrap; gap: 8px; font-size: var(--fs-chico); color: var(--texto-2); margin-bottom: 26px; }
.pt-migas a:hover { color: var(--acento); }
.pt-migas span[aria-hidden] { color: var(--texto-3); }
.pt-hero--ficha { min-height: 820px; }
.pt-hero--ficha .pt-hero__cuerpo { padding: 40px 0 60px; }
.pt-hero--ficha h1 { font-size: clamp(38.5px, 5vw, 68.5px); margin-top: 12px; }
.pt-hero__lugar { display: flex; align-items: center; gap: 10px; font-size: var(--fs-lg); margin: 0 0 20px; }
.pt-hero__lugar svg { width: 18px; height: 18px; color: var(--destacado); }
.pt-hero__texto { max-width: 560px; margin: 0 0 40px; font-size: var(--fs-lg); line-height: var(--lh-prosa); color: var(--texto); text-shadow: 0 1px 12px rgba(0,0,0,.55); }
.pt-datos-ficha {
  display: grid; grid-template-columns: repeat(4, 1fr) 300px; gap: 0;
  background: var(--vidrio); backdrop-filter: blur(14px); border: 1px solid var(--linea-fuerte);
  border-radius: var(--radio-g); box-shadow: var(--sombra); overflow: hidden;
}
.pt-dato { display: flex; gap: 16px; padding: 24px 22px; border-right: 1px solid var(--linea); }
.pt-dato__icono { display: grid; place-items: center; width: 48px; height: 48px; flex: none; border-radius: 50%; border: 1px solid var(--linea-fuerte); color: var(--acento); }
.pt-dato__icono svg { width: 20px; height: 20px; }
.pt-dato h2 { margin: 2px 0 6px; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--texto-2); }
.pt-dato p { margin: 0; font-size: var(--fs-base); line-height: var(--lh-texto); overflow-wrap: anywhere; }
.pt-dato a { color: var(--acento); }
.pt-mapa-mini { position: relative; display: flex; align-items: flex-end; justify-content: flex-end; padding: 14px; min-height: 150px;
  background-size: cover; background-position: center 45%; background-repeat: no-repeat; isolation: isolate; }
.pt-mapa-mini::before { content: ""; position: absolute; inset: 0; z-index: -1; background: inherit; filter: invert(.92) hue-rotate(160deg) saturate(.6) brightness(.85); }
.pt-mapa-mini .pt-boton-linea { background: var(--superficie); padding: 9px 14px; font-size: var(--fs-sm); }
.pt-mapa-mini small { position: absolute; left: 10px; bottom: 6px; font-size: var(--fs-micro); color: var(--texto-2); }
.pt-credito-foto { position: absolute; z-index: 2; right: 24px; bottom: 16px; font-size: var(--fs-xs); color: var(--texto-2); text-shadow: 0 1px 6px rgba(0,0,0,.8); }
@media (max-width: 1100px) {
  .pt-datos-ficha { grid-template-columns: 1fr 1fr; }
  .pt-mapa-mini { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .pt-hero--ficha { min-height: 0; }
  .pt-hero--ficha .pt-hero__cuerpo { padding: 28px 0 44px; }
  .pt-datos-ficha { grid-template-columns: 1fr; }
  .pt-dato { border-right: 0; border-bottom: 1px solid var(--linea); padding: 18px; }
  .pt-credito-foto { display: none; }
}
.pt-hero--directorio { min-height: 0; }
.pt-hero--directorio .pt-hero__cuerpo { padding: 56px 0 40px; }
.pt-hero--directorio h1 { font-size: clamp(38.5px, 4.9vw, 67px); }
.pt-hero--directorio .pt-hero__foto { object-position: center 55%; height: 100%; inset: 0; }
.pt-chips-cabeza { display: flex; align-items: center; gap: 10px; margin: 30px 0 14px; font-size: var(--fs-sm); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--destacado); }
.pt-chips-cabeza svg { width: 16px; height: 16px; }
.pt-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.pt-chip {
  display: inline-flex; align-items: center; gap: 10px; padding: 9px 16px; border-radius: 999px;
  border: 1px solid var(--linea-fuerte); background: var(--superficie); font-size: var(--fs-base); font-weight: 600;
}
.pt-chip i { width: 9px; height: 9px; border-radius: 50%; background: var(--c, var(--acento)); }
.pt-chip span { color: var(--texto-2); font-weight: 500; }
.pt-chip:hover { border-color: var(--acento); }
.pt-chip[aria-current="true"] { background: var(--acento); color: var(--acento-texto); border-color: var(--acento); }
.pt-chip[aria-current="true"] span { color: var(--acento-texto); }
.pt-chip[aria-current="true"] i { background: var(--acento-texto); }
.pt-chips--iconos { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 8px; }
.pt-chip--icono { position: relative; min-width: 0; flex-direction: column; justify-content: flex-start; gap: 6px; padding: 12px 4px 10px; border-radius: 14px; text-align: center; white-space: normal; }
.pt-chip__icono { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: color-mix(in srgb, var(--pt-c, var(--azul)) 13%, transparent); color: var(--pt-c, var(--azul-texto)); transition: background .15s, color .15s; }
.pt-chip__icono svg { width: 24px; height: 24px; }
.pt-chip__corto { font-size: var(--fs-xs); font-weight: 700; line-height: var(--lh-titulo); }
.pt-chip--icono .pt-chip__n { font-size: var(--fs-micro); color: var(--texto-3); }
.pt-chip--icono:hover { border-color: var(--azul); }
.pt-chip--icono:hover .pt-chip__icono, .pt-chip--icono:focus-visible .pt-chip__icono { background: var(--rojo); color: #fff; }
.pt-chip--icono[aria-current="true"] { background: var(--azul); border-color: var(--azul); color: #fff; }
.pt-chip--icono[aria-current="true"] .pt-chip__icono { background: rgba(255, 255, 255, .16); color: #fff; }
.pt-chip--icono[aria-current="true"] .pt-chip__n { color: rgba(255, 255, 255, .85); }
.pt-chip--icono::after { content: attr(data-nombre); position: absolute; left: 50%; bottom: calc(100% + 8px); z-index: 5; width: max-content; max-width: 220px;
  padding: 7px 11px; border-radius: 8px; background: var(--rojo); color: #fff; font-size: var(--fs-xs); font-weight: 600; line-height: var(--lh-sub);
  transform: translate(-50%, 4px); opacity: 0; pointer-events: none; transition: opacity .12s, transform .12s; box-shadow: 0 8px 20px rgba(0, 0, 0, .2); }
.pt-chip--icono:hover::after, .pt-chip--icono:focus-visible::after { opacity: 1; transform: translate(-50%, 0); }
:root[data-tema="oscuro"] .pt-chip--icono .pt-chip__icono { background: color-mix(in srgb, var(--pt-c, var(--azul)) 24%, transparent); color: color-mix(in srgb, var(--pt-c, var(--azul-texto)) 55%, #fff); }
@media (max-width: 600px) {
  .pt-chips--iconos { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
  .pt-chip--icono { padding: 10px 2px 8px; }
  .pt-chip__icono { width: 40px; height: 40px; }
  .pt-chip--icono::after { display: none; }
}
.pt-acerca {
  position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr 1fr; min-height: 380px;
  border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); background: var(--panel);
}
.pt-acerca__texto { position: relative; z-index: 1; padding: 36px 36px 30px; }
.pt-acerca__texto h2 { margin: 10px 0 16px; font-size: clamp(27.5px, 2.7vw, 37px); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.02em; }
.pt-acerca__texto h2 em { font-style: normal; color: var(--acento); }
.pt-acerca__texto p { margin: 0 0 20px; max-width: 62ch; font-size: var(--fs-md); line-height: var(--lh-prosa); }
.pt-fuente { display: inline-flex; align-items: center; gap: 8px; font-size: var(--fs-chico); color: var(--texto-2); }
.pt-fuente svg { width: 16px; height: 16px; }
.pt-fuente a { text-decoration: underline; text-underline-offset: 3px; }
.pt-acerca__foto { position: relative; }
.pt-acerca__foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 55%; }
.pt-acerca__foto::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, var(--panel) 0%, transparent 45%); }
.pt-bloque { margin-top: 56px; }
.pt-bloque .pt-cabeza-seccion { margin-bottom: 20px; align-items: flex-end; }
.pt-enlace-mas { display: inline-flex; align-items: center; gap: 6px; color: var(--acento); font-size: var(--fs-base); white-space: nowrap; }
.pt-enlace-mas svg { width: 16px; height: 16px; }
.pt-rejilla-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.pt-rejilla-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.pt-cerca {
  display: flex; align-items: center; gap: 16px; padding: 14px 18px 14px 14px;
  border: 1px solid var(--linea-fuerte); border-radius: var(--radio); background: var(--superficie);
  transition: border-color .2s;
}
.pt-cerca:hover { border-color: var(--acento); }
.pt-cerca img { width: 76px; height: 76px; flex: none; border-radius: 50%; object-fit: cover; }
.pt-cerca div { flex: 1; min-width: 0; }
.pt-cerca b { display: block; font-size: var(--fs-md); line-height: var(--lh-sub); }
.pt-cerca span { font-size: var(--fs-chico); color: var(--texto-2); }
.pt-cerca > svg { width: 18px; height: 18px; color: var(--texto-2); flex: none; }
.pt-correccion {
  display: flex; align-items: center; gap: 20px; margin-top: 30px; padding: 22px 24px;
  border: 1px solid color-mix(in srgb, var(--destacado) 35%, transparent); border-radius: var(--radio); background: color-mix(in srgb, var(--destacado) 6%, transparent);
}
.pt-correccion__icono { display: grid; place-items: center; width: 50px; height: 50px; flex: none; border-radius: 12px; background: var(--destacado); color: var(--acento-texto); }
.pt-correccion__icono svg { width: 24px; height: 24px; }
.pt-correccion div { flex: 1; }
.pt-correccion b { display: block; font-size: var(--fs-lg); }
.pt-correccion p { margin: 4px 0 0; color: var(--texto-2); font-size: var(--fs-base); }
.pt-boton-destacado { display: inline-flex; align-items: center; padding: 12px 22px; border-radius: 10px; background: var(--destacado); color: var(--acento-texto); font-weight: 800; white-space: nowrap; }
.pt-boton-destacado:hover { background: var(--acento-vivo); }
.pt-notas-3 .pt-nota-foto { min-height: 330px; }
.pt-barra-resultados { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; padding-bottom: 22px; margin-bottom: 26px; border-bottom: 1px solid var(--linea); }
.pt-barra-resultados h2 { margin: 0; font-size: var(--fs-4xl); font-weight: 800; letter-spacing: -.01em; }
.pt-barra-resultados__titulo { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.pt-barra-resultados__cuenta { margin: 0; font-size: var(--fs-md); color: var(--texto-2); }
.pt-hero-cuenta { margin: -4px 0 10px; font-size: var(--fs-md); color: var(--texto-2); }
.pt-controles { display: flex; gap: 22px; align-items: flex-end; flex-wrap: wrap; }
.pt-control small { display: block; margin-bottom: 6px; font-size: var(--fs-xs); color: var(--texto-2); }
.pt-segmentado { display: flex; gap: 6px; }
.pt-segmentado button {
  display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 9px; cursor: pointer;
  border: 1px solid var(--linea-fuerte); background: var(--superficie); font-size: var(--fs-sm);
}
.pt-segmentado button svg { width: 16px; height: 16px; }
.pt-segmentado button[aria-pressed="true"] { border-color: var(--acento); color: var(--acento); }
.pt-cargar-mas { display: flex; flex-direction: column; align-items: center; gap: 12px; margin-top: 40px; }
.pt-cargar-mas .pt-boton-linea { padding: 14px 28px; font-size: var(--fs-md); border-width: 2px; }
.pt-cargar-mas small { color: var(--texto-2); font-size: var(--fs-chico); }
.pt-lugares--dir .pt-lugar { aspect-ratio: 4 / 4; }
.pt-lugar--sin-foto { --texto: var(--tinta); --texto-2: var(--tinta-2); --texto-3: var(--tinta-3); --destacado: var(--rojo);
  background: var(--panel-2); border-color: var(--linea-fuerte); justify-content: flex-end; }
.pt-lugar--sin-foto::before { display: none; }
.pt-lugar--sin-foto .pt-etiqueta { color: #fff; }
.pt-lugar__icono { position: absolute; top: 50%; left: 50%; display: grid; place-items: center; width: 74px; height: 74px; margin: -60px 0 0 -37px; border-radius: 50%;
  background: color-mix(in srgb, var(--pt-e, var(--azul)) 14%, transparent); color: var(--pt-e, var(--azul)); }
.pt-lugar__icono svg { width: 36px; height: 36px; }
[data-cf-lista][data-vista="lista"] > .pt-lugar--sin-foto .pt-lugar__icono { left: 90px; margin-top: -37px; }
@media (max-width: 760px) { [data-cf-lista][data-vista="lista"] > .pt-lugar--sin-foto .pt-lugar__icono { left: 58px; width: 60px; height: 60px; margin: -30px 0 0 -30px; } }
@media (max-width: 1100px) {
  .pt-acerca { grid-template-columns: 1fr; }
  .pt-acerca__foto { min-height: 260px; order: -1; }
  .pt-acerca__foto::before { background: linear-gradient(0deg, var(--panel) 0%, transparent 50%); }
  .pt-rejilla-3, .pt-rejilla-4 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .pt-acerca__texto { padding: 24px 20px; }
  .pt-rejilla-3, .pt-rejilla-4 { grid-template-columns: 1fr; }
  .pt-correccion { flex-wrap: wrap; }
  .pt-bloque .pt-cabeza-seccion { flex-direction: row; align-items: flex-end; flex-wrap: wrap; }
}
@media (max-width: 760px) {
  .pt-lugares--dir { display: grid; grid-template-columns: 1fr 1fr; margin-inline: 0; padding-inline: 0; overflow: visible; }
  .pt-lugares--dir .pt-lugar { flex: none; padding: 12px; }
  .pt-lugares--dir .pt-lugar b { font-size: var(--fs-md); }
  .pt-lugares--dir .pt-etiqueta { font-size: var(--fs-micro); top: 10px; left: 10px; padding: 4px 9px; }
}
.pt-boton-linea svg { width: 16px; height: 16px; flex: none; }
.pt-nota-cabeza { padding: 40px 0 0; }
.pt-nota-cabeza .pt-contenedor { max-width: 1120px; }
.pt-nota-cabeza h1 { margin: 14px 0 16px; font-size: clamp(29.5px, 3.4vw, 46px); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.025em; text-wrap: pretty; }
.pt-nota-cabeza h1 em { font-style: normal; color: var(--acento); }
.pt-nota-bajada { margin: 0 0 26px; font-size: var(--fs-xl); line-height: var(--lh-texto); color: var(--texto); text-wrap: pretty; }
.pt-firma { display: flex; align-items: center; gap: 14px; padding: 18px 0; border-top: 1px solid var(--linea); }
.pt-firma > div:not(.pt-compartir-botones) { flex: 1 1 0; min-width: 0; }
.pt-firma__inicial { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--panel-2); border: 1px solid var(--linea-fuerte); color: var(--acento); font-weight: 800; }
.pt-firma b { display: block; font-size: var(--fs-md); }
.pt-firma small { color: var(--texto-2); font-size: var(--fs-sm); }
.pt-nota-foto-principal { margin: 8px auto 0; max-width: 1180px; padding-inline: 24px; }
.pt-nota-foto-principal img { width: 100%; aspect-ratio: 16 / 8.6; object-fit: cover; border-radius: var(--radio-g); }
.pt-nota-foto-principal figcaption { margin-top: 10px; font-size: var(--fs-sm); color: var(--texto-2); }
.pt-lectura { display: grid; grid-template-columns: minmax(0, 680px) 340px; gap: 64px; justify-content: center; padding: 48px 0 20px; }
.pt-cuerpo-nota { font-size: var(--fs-xl); line-height: var(--lh-prosa); }
.pt-cuerpo-nota p { margin: 0 0 22px; }
.pt-cuerpo-nota h2 { margin: 42px 0 14px; font-size: var(--fs-4xl); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.015em; }
.pt-lateral { display: flex; flex-direction: column; gap: 20px; }
.pt-caja-lateral { padding: 20px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); background: var(--superficie); }
.pt-caja-lateral h2 { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font-size: var(--fs-sm); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--acento); }
.pt-caja-lateral h2 svg { width: 16px; height: 16px; color: var(--destacado); }
.pt-top5 { list-style: none; margin: 0; padding: 0; }
.pt-top5 li + li { border-top: 1px solid var(--linea); }
.pt-top5 a { display: flex; gap: 14px; padding: 12px 0; font-size: var(--fs-base); font-weight: 600; line-height: var(--lh-texto); }
.pt-top5 a:hover { color: var(--acento); }
.pt-top5 b { flex: none; width: 24px; font-size: var(--fs-4xl); line-height: var(--lh-1); font-weight: 800; color: var(--acento); }
.pt-mini-fila { display: flex; gap: 14px; align-items: center; padding: 10px 0; }
.pt-mini-fila + .pt-mini-fila { border-top: 1px solid var(--linea); }
.pt-mini-fila img { width: 110px; height: 72px; flex: none; border-radius: 10px; object-fit: cover; }
.pt-mini-fila b { display: block; font-size: var(--fs-base); line-height: var(--lh-sub); }
.pt-mini-fila b + span { display: flex; align-items: center; gap: 6px; margin-top: 4px; font-size: var(--fs-sm); color: var(--texto-2); }
.pt-mini-fila b + span svg { width: 13px; height: 13px; flex: none; color: var(--destacado); }
.pt-caja-lateral .pt-boton-linea { width: 100%; justify-content: center; margin-top: 12px; }
.pt-etiquetas { display: flex; flex-wrap: wrap; gap: 10px; }
.pt-etiquetas a { padding: 8px 15px; border-radius: 999px; border: 1px solid var(--linea-fuerte); font-size: var(--fs-chico); color: var(--texto-2); }
.pt-etiquetas a:hover { color: var(--acento); border-color: var(--acento); }
.pt-cierre-fila { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; padding: 22px 0; border-top: 1px solid var(--linea); border-bottom: 1px solid var(--linea); margin-top: 24px; }
.pt-anterior-siguiente { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
.pt-anterior-siguiente a { padding: 20px 22px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio); background: var(--superficie); }
.pt-anterior-siguiente a:hover { border-color: var(--acento); }
.pt-anterior-siguiente small { display: block; margin-bottom: 6px; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--acento); }
.pt-anterior-siguiente a:last-child { text-align: right; }
.pt-anterior-siguiente b { font-size: var(--fs-lg); line-height: var(--lh-sub); }
.pt-notas-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.pt-notas-4 .pt-nota-foto { min-height: 300px; padding: 18px; }
.pt-notas-4 .pt-nota-foto h3 { font-size: var(--fs-lg); }
@media (max-width: 1100px) {
  .pt-lectura { grid-template-columns: 1fr; gap: 36px; }
  .pt-notas-4 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .pt-nota-cabeza h1 { font-size: var(--fs-5xl); }
  .pt-nota-bajada { font-size: var(--fs-lg); }
  .pt-firma { flex-wrap: wrap; }
  .pt-nota-foto-principal { padding-inline: 0; }
  .pt-nota-foto-principal img { border-radius: 0; aspect-ratio: 4 / 3; }
  .pt-nota-foto-principal figcaption { padding-inline: 16px; }
  .pt-cuerpo-nota { font-size: var(--fs-lg); }
  .pt-cuerpo-nota h2 { font-size: var(--fs-3xl); }
  .pt-anterior-siguiente, .pt-notas-4 { grid-template-columns: 1fr; }
  .pt-anterior-siguiente a:last-child { text-align: left; }
}
.pt-lista-notas { border-top: 1px solid var(--linea); }
.pt-lista-notas a { display: flex; align-items: center; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--linea); }
.pt-lista-notas a:hover h3 { color: var(--acento); }
.pt-lista-notas img { width: 150px; height: 84px; flex: none; border-radius: 10px; object-fit: cover; }
.pt-lista-notas .pt-cinta { color: var(--destacado); font-size: var(--fs-micro); }
.pt-lista-notas h3 { margin: 4px 0 0; font-size: var(--fs-lg); line-height: var(--lh-sub); }
.pt-tarjeta-nota { display: flex; flex-direction: column; overflow: hidden; border: 1px solid var(--linea-fuerte); border-radius: var(--radio); background: var(--superficie); transition: border-color .2s; }
.pt-tarjeta-nota:hover { border-color: var(--acento); }
.pt-tarjeta-nota__foto { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--panel-2); }
.pt-tarjeta-nota__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.pt-tarjeta-nota:hover img { transform: scale(1.04); }
.pt-tarjeta-nota__texto { display: flex; flex-direction: column; padding: 13px 16px 16px; }
.pt-tarjeta-nota__meta { display: flex; align-items: center; gap: 10px; }
.pt-tarjeta-nota .pt-cinta { color: var(--destacado); font-size: var(--fs-micro); }
.pt-tarjeta-nota .pt-fecha { font-size: var(--fs-micro); color: var(--texto-3); }
.pt-tarjeta-nota h3, .pt-tarjeta-nota h2 { margin: 7px 0 0; font-size: var(--fs-md); line-height: var(--lh-sub); font-weight: 800; text-wrap: pretty;
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.pt-tarjeta-nota p { margin: 8px 0 0; font-size: var(--fs-chico); line-height: var(--lh-texto); color: var(--texto-2); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.pt-tarjeta-nota--llena .pt-tarjeta-nota__foto { flex: 1 1 auto; min-height: 130px; aspect-ratio: auto; position: relative; }
.pt-tarjeta-nota--llena .pt-tarjeta-nota__foto img { position: absolute; inset: 0; }
.pt-tarjeta-nota--llena h3 { min-height: 3.66em; }
@media (max-width: 760px) { .pt-lista-notas img { width: 104px; height: 64px; } .pt-lista-notas h3 { font-size: var(--fs-base); } }
.pt-hero--agenda { min-height: 0; }
.pt-hero--agenda .pt-hero__cuerpo { padding: 70px 0 60px; }
.pt-hero--agenda h1 { font-size: clamp(40.5px, 5vw, 70.5px); }
.pt-hero--agenda .pt-hero__foto { object-position: center 40%; }
.pt-rangos { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.pt-rango { display: inline-flex; gap: 10px; align-items: center; padding: 8px 14px; border-radius: 10px; border: 1px solid var(--linea-fuerte); background: var(--superficie); font-size: var(--fs-chico); font-weight: 600; }
.pt-rango span { color: var(--texto-2); font-weight: 500; }
.pt-rango[aria-current="true"] { background: var(--destacado); border-color: var(--destacado); color: var(--acento-texto); }
.pt-rango[aria-current="true"] span { color: var(--acento-texto); }
.pt-busca__campos--agenda { grid-template-columns: 1.4fr 1fr 1fr auto; }
.pt-mes { margin-top: 10px; }
.pt-mes + .pt-mes { margin-top: 56px; }
.pt-mes__cabeza { display: flex; align-items: center; gap: 24px; margin-bottom: 22px; }
.pt-mes__cabeza h2 { margin: 6px 0 0; font-size: clamp(29.5px, 3.1vw, 40.5px); font-weight: 800; letter-spacing: -.02em; white-space: nowrap; }
.pt-mes__cabeza h2 em { font-style: normal; color: var(--acento); }
.pt-mes__cabeza::after { content: ""; flex: 1; height: 1px; background: var(--linea-fuerte); align-self: flex-end; margin-bottom: 14px; }
.pt-eventos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.pt-tarjeta-evento { display: flex; flex-direction: column; overflow: hidden; border-radius: var(--radio); border: 1px solid var(--linea-fuerte); background: var(--superficie); }
.pt-tarjeta-evento:hover { border-color: var(--acento); }
.pt-tarjeta-evento__foto { position: relative; aspect-ratio: 16 / 10.5; overflow: hidden; }
.pt-tarjeta-evento__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s; }
.pt-tarjeta-evento:hover img { transform: scale(1.05); }
.pt-tarjeta-evento .pt-etiqueta { z-index: 1; font-size: var(--fs-xs); }
.pt-tarjeta-evento__cuerpo { display: flex; flex-direction: column; flex: 1; padding: 14px 16px 16px; }
.pt-tarjeta-evento b { font-size: var(--fs-lg); line-height: var(--lh-sub); flex: 1; }
.pt-tarjeta-evento__pie { display: flex; align-items: center; gap: 14px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--linea); }
.pt-cal { display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto; column-gap: 6px; align-items: end; line-height: var(--lh-1); flex: none; }
.pt-cal i { grid-column: 1 / -1; font-style: normal; font-size: var(--fs-xs); font-weight: 800; color: var(--destacado); margin-bottom: 3px; }
.pt-cal strong { font-size: var(--fs-4xl); font-weight: 800; }
.pt-cal span { font-size: var(--fs-sm); color: var(--texto-2); padding-bottom: 3px; }
.pt-tarjeta-evento__lugar { display: flex; gap: 6px; align-items: flex-start; font-size: var(--fs-sm); line-height: var(--lh-texto); color: var(--texto-2); }
.pt-tarjeta-evento__lugar svg { width: 14px; height: 14px; flex: none; color: var(--destacado); margin-top: 1px; }
@media (max-width: 1100px) { .pt-eventos { grid-template-columns: repeat(2, 1fr); } .pt-busca__campos--agenda { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .pt-eventos { grid-template-columns: 1fr; } .pt-busca__campos--agenda { grid-template-columns: 1fr; } .pt-mes__cabeza::after { display: none; } }
.pt-evento-cabeza { padding: 30px 0 20px; }
.pt-evento-rejilla { display: grid; grid-template-columns: 1fr 380px; gap: 18px; }
.pt-evento-portada { position: relative; display: flex; flex-direction: column; overflow: hidden; border-radius: var(--radio-g); border: 1px solid var(--linea-fuerte); background: var(--superficie); }
.pt-evento-portada__foto { margin: 0; aspect-ratio: 16 / 8.5; overflow: hidden; background: var(--panel-2); }
.pt-evento-portada__foto img { width: 100%; height: 100%; object-fit: cover; }
.pt-evento-portada__texto { padding: 26px 30px 28px; }
.pt-evento-portada h1 { margin: 10px 0 12px; font-size: clamp(30px, 3.2vw, 44px); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.025em; text-wrap: pretty; }
.pt-evento-portada h1 em { font-style: normal; color: var(--acento); }
.pt-evento-portada p { margin: 0 0 20px; max-width: 70ch; font-size: var(--fs-lg); line-height: var(--lh-prosa); color: var(--texto-2);
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.pt-evento-portada .pt-evento-datos { padding-top: 18px; border-top: 1px solid var(--linea); }
.pt-evento-datos { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.pt-cal-grande { display: inline-flex; align-items: center; gap: 12px; padding: 12px 18px; border: 1px solid var(--linea-fuerte); border-radius: 12px; background: var(--superficie); }
.pt-cal-grande svg { width: 26px; height: 26px; color: var(--acento); }
.pt-cal-grande i { font-style: normal; font-weight: 800; color: var(--destacado); font-size: var(--fs-lg); }
.pt-cal-grande strong { font-size: var(--fs-5xl); line-height: var(--lh-1); font-weight: 800; }
.pt-cal-grande span { font-size: var(--fs-lg); color: var(--texto-2); }
.pt-evento-lugar { display: flex; gap: 12px; align-items: center; }
.pt-evento-lugar svg { width: 22px; height: 22px; color: var(--destacado); flex: none; }
.pt-evento-lugar b { display: block; font-size: var(--fs-md); }
.pt-evento-lugar small { color: var(--texto-2); }
.pt-evento-lado { display: flex; flex-direction: column; gap: 14px; }
.pt-panel { padding: 22px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); background: var(--superficie); }
.pt-panel h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; font-size: var(--fs-sm); font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--destacado); }
.pt-panel h2 svg { width: 20px; height: 20px; }
.pt-panel p { margin: 0; font-size: var(--fs-base); line-height: var(--lh-prosa); }
.pt-panel-lugar { display: flex; gap: 14px; }
.pt-panel-lugar img { width: 120px; height: 104px; flex: none; border-radius: 10px; object-fit: cover; }
.pt-panel-lugar b { display: block; font-size: var(--fs-md); line-height: var(--lh-sub); }
.pt-panel-lugar small { display: flex; gap: 6px; align-items: center; margin: 6px 0 10px; color: var(--texto-2); }
.pt-panel-lugar small svg { width: 13px; height: 13px; color: var(--acento); }
.pt-panel .pt-boton-linea { padding: 9px 16px; font-size: var(--fs-chico); }
.pt-sobre { display: grid; grid-template-columns: 1fr 420px; gap: 28px; align-items: start; }
.pt-sobre h2 { margin: 8px 0 14px; font-size: clamp(29.5px, 2.9vw, 40.5px); font-weight: 800; letter-spacing: -.02em; }
.pt-sobre p { margin: 0; max-width: 64ch; font-size: var(--fs-lg); line-height: var(--lh-prosa); }
.pt-fila-compartir { display: flex; align-items: center; gap: 10px; margin-top: 30px; padding: 18px 0; border-top: 1px solid var(--linea); border-bottom: 1px solid var(--linea); }
@media (max-width: 1100px) { .pt-evento-rejilla, .pt-sobre { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .pt-evento-portada__foto { aspect-ratio: 4 / 3; } .pt-evento-portada__texto { padding: 18px 16px 20px; } .pt-evento-portada h1 { font-size: var(--fs-4xl); } .pt-cal-grande strong { font-size: var(--fs-4xl); } .pt-panel-lugar img { width: 96px; height: 90px; } }
.pt-hero--perfiles { min-height: 0; }
.pt-hero--perfiles .pt-hero__cuerpo { padding: 64px 0 56px; }
.pt-hero--perfiles h1 { font-size: clamp(38.5px, 4.9vw, 67px); }
.pt-hero--perfiles h1 span { color: var(--texto-2); font-weight: 700; }
.pt-busca__campos--perfiles { grid-template-columns: 1.6fr 1fr auto; }
.pt-origen { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--linea); }
.pt-origen b { font-size: var(--fs-xs); letter-spacing: .14em; text-transform: uppercase; color: var(--texto-2); margin-right: 6px; }
.pt-origen .pt-chip span { margin-left: 2px; }
.pt-perfiles-rejilla { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
.pt-tarjeta-perfil { display: flex; flex-direction: column; overflow: hidden; border-radius: var(--radio); border: 1px solid var(--linea-fuerte); background: var(--superficie); }
.pt-tarjeta-perfil:hover { border-color: var(--acento); }
.pt-tarjeta-perfil__foto { aspect-ratio: 1 / .92; background: var(--placa); display: grid; place-items: center; overflow: hidden; }
.pt-tarjeta-perfil__foto img { width: 100%; height: 100%; object-fit: cover; object-position: center 25%; }
.pt-tarjeta-perfil__foto--logo { padding: 16px; }
.pt-tarjeta-perfil__foto--logo img { object-fit: contain; max-height: 70%; }
.pt-tarjeta-perfil__cuerpo { display: flex; flex-direction: column; flex: 1; padding: 12px 12px 14px; }
.pt-tarjeta-perfil b { font-size: var(--fs-base); line-height: var(--lh-sub); }
.pt-tarjeta-perfil__cuerpo > span { flex: 1; margin: 6px 0 12px; font-size: var(--fs-xs); line-height: var(--lh-texto); color: var(--destacado); }
.pt-pais { align-self: flex-start; display: inline-flex; gap: 6px; align-items: center; padding: 4px 10px; border-radius: 999px; border: 1px solid var(--linea-fuerte); font-size: var(--fs-xs); }
@media (max-width: 1100px) { .pt-perfiles-rejilla { grid-template-columns: repeat(3, 1fr); } .pt-busca__campos--perfiles { grid-template-columns: 1fr 1fr; } .pt-busca__campos--perfiles .pt-campo:first-child { grid-column: 1 / -1; } }
@media (max-width: 760px) { .pt-perfiles-rejilla { grid-template-columns: 1fr 1fr; } .pt-busca__campos--perfiles { grid-template-columns: 1fr; } }
.pt-perfil-cabeza { padding: 34px 0 56px; position: relative; }
.pt-perfil-rejilla { display: grid; grid-template-columns: 340px 1fr 320px; gap: 34px; align-items: start; }
.pt-perfil-foto { position: relative; overflow: hidden; border-radius: var(--radio-g); border: 1px solid var(--linea-fuerte); aspect-ratio: 3 / 3.9; background: var(--placa); }
.pt-perfil-foto img { width: 100%; height: 100%; object-fit: cover; }
.pt-perfil-foto figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 30px 14px 10px; font-size: var(--fs-xs); color: var(--texto); background: linear-gradient(180deg, transparent, rgba(0,0,0,.75)); }
.pt-perfil-rejilla h1 { margin: 12px 0 12px; font-size: clamp(38.5px, 4.3vw, 61.5px); line-height: var(--lh-1); font-weight: 800; letter-spacing: -.03em; }
.pt-perfil-rejilla h1 em { font-style: normal; color: var(--acento); }
.pt-perfil-lema { margin: 0 0 20px; font-size: var(--fs-xl); }
.pt-perfil-meta { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.pt-perfil-meta .pt-chip { background: transparent; }
.pt-perfil-meta span { display: inline-flex; gap: 8px; align-items: center; }
.pt-perfil-meta svg { width: 18px; height: 18px; color: var(--destacado); }
.pt-cita { margin: 0; padding: 22px 24px; border-left: 3px solid var(--acento); border-radius: 0 var(--radio) var(--radio) 0; background: color-mix(in srgb, var(--azul) 6%, transparent); font-size: var(--fs-lg); line-height: var(--lh-prosa); }
.pt-dato-lista dt { font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--texto-2); margin-top: 14px; }
.pt-dato-lista dt:first-child { margin-top: 0; }
.pt-dato-lista dd { margin: 4px 0 0; padding-bottom: 12px; border-bottom: 1px solid var(--linea); font-size: var(--fs-md); }
.pt-dato-lista dd:last-child { border-bottom: 0; }
.pt-enlace-caja { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 16px; border-radius: 12px; border: 1px solid var(--linea-fuerte); }
.pt-enlace-caja:hover { border-color: var(--acento); }
.pt-enlace-caja span { display: flex; gap: 10px; align-items: center; }
.pt-enlace-caja svg { width: 18px; height: 18px; }
.pt-vacio { display: flex; align-items: center; gap: 16px; padding: 20px 22px; border: 1px dashed var(--linea-fuerte); border-radius: var(--radio); color: var(--texto-2); }
.pt-vacio svg { width: 22px; height: 22px; }
.pt-lugares--4 { grid-template-columns: repeat(4, 1fr); }
.pt-lugares--4 .pt-lugar { aspect-ratio: 4 / 3; }
@media (max-width: 1100px) { .pt-perfil-rejilla { grid-template-columns: 280px 1fr; } .pt-perfil-rejilla > aside { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 14px; } }
@media (max-width: 760px) { .pt-perfil-rejilla { grid-template-columns: 1fr; } .pt-perfil-rejilla > aside { grid-template-columns: 1fr; } .pt-perfil-foto { aspect-ratio: 4 / 3; } }
.pt-perfiles-rejilla--4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 760px) { .pt-perfiles-rejilla--4 { grid-template-columns: 1fr 1fr; } .pt-lugares--4 { display: grid; grid-template-columns: 1fr; margin-inline: 0; padding-inline: 0; } .pt-lugares--4 .pt-lugar { flex: none; } }
.pt-cabeza-categoria { position: relative; padding: 34px 0 0; overflow: hidden; }
.pt-cabeza-categoria__fondo { position: absolute; inset: 0 0 auto 0; height: 380px; width: 100%; object-fit: cover; object-position: center 40%; opacity: .32; -webkit-mask-image: linear-gradient(180deg, #000 30%, transparent); mask-image: linear-gradient(180deg, #000 30%, transparent); }
.pt-cabeza-categoria .pt-contenedor { position: relative; }
.pt-cabeza-categoria h1 { margin: 10px 0 8px; font-size: clamp(42px, 5.4vw, 74px); line-height: var(--lh-1); font-weight: 800; letter-spacing: -.035em; }
.pt-cabeza-categoria h1 span { color: var(--texto-2); font-weight: 700; }
.pt-cabeza-categoria .pt-pestanas { margin: 24px 0 12px; }
.pt-temas { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 26px; font-size: var(--fs-sm); color: var(--texto-2); }
.pt-temas a { padding: 5px 12px; border-radius: 999px; border: 1px solid var(--linea); }
.pt-temas a:hover { border-color: var(--acento); color: var(--acento); }
.pt-destacadas--categoria { height: 640px; }
.pt-notas-rejilla { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
@media (max-width: 1100px) { .pt-notas-rejilla { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .pt-notas-rejilla { grid-template-columns: 1fr; } .pt-destacadas--categoria { height: auto; } }
.pt-sobre .pt-panel h2 { margin: 0 0 14px; font-size: var(--fs-sm); letter-spacing: .16em; }
.pt-hero--directorio .pt-hero__credito { left: auto; right: 32px; top: 24px; bottom: auto; }
.pt-hero--directorio .pt-hero__cuerpo { padding-bottom: 56px; }
:where(svg) { width: 1em; height: 1em; flex: none; }
.pt-principal { display: block; min-height: 60vh; }
.pt-oculto-visualmente { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.pt-saltar { position: absolute; left: 12px; top: -60px; z-index: 100; padding: 10px 16px; border-radius: 10px; background: var(--acento); color: var(--acento-texto); font-weight: 700; }
.pt-saltar:focus { top: 12px; }
:focus-visible { outline: 2px solid var(--acento-vivo); outline-offset: 2px; }
.pt-cabeza-seccion h1 { margin: 6px 0 4px; font-size: clamp(29.5px, 3.6vw, 49.5px); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.025em; text-wrap: balance; }
.pt-cabeza-seccion h1 em, .pt-cabeza-seccion h3 em { font-style: normal; color: var(--acento); }
.pt-cabeza-seccion h2 { text-wrap: balance; }
.pt-boton-linea svg, .pt-enlace-mas svg { width: 16px; height: 16px; }
.pt-boton svg { width: 20px; height: 20px; }
.pt-enlace-mas { display: inline-flex; align-items: center; gap: 6px; color: var(--acento); font-size: var(--fs-base); white-space: nowrap; }
.pt-barra__marca { margin: 0; }
.pt-barra__logo { display: inline-flex; color: var(--texto); }
.pt-barra__svg { width: auto; height: 30px; color: var(--texto); }
.pt-barra__buscar { position: relative; }
.pt-barra__buscar > svg { position: absolute; left: 16px; top: 12px; width: 20px; height: 20px; color: var(--texto-2); pointer-events: none; }
.pt-barra__buscar-movil { display: none; }
.pt-buscador__sugerencias { position: absolute; left: 0; right: 0; top: calc(100% + 8px); z-index: 40; max-height: 60vh; overflow-y: auto; padding: 6px; border-radius: 14px; background: var(--fondo-2); border: 1px solid var(--linea-fuerte); box-shadow: var(--sombra); }
.pt-buscador__item { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; font-size: var(--fs-base); }
.pt-buscador__item:hover, .pt-buscador__item[aria-selected="true"] { background: var(--panel-2); color: var(--acento); }
.pt-buscador__tipo { flex: none; padding: 3px 8px; border-radius: 999px; background: color-mix(in srgb, var(--azul) 12%, transparent); color: var(--acento); font-size: var(--fs-micro); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.pt-buscador__vacio { margin: 0; padding: 12px; color: var(--texto-2); font-size: var(--fs-chico); }
.pt-clima { display: flex; align-items: center; gap: 18px; height: 40px; padding-inline: 24px; border-bottom: 1px solid var(--linea); background: var(--superficie-2); font-size: var(--fs-sm); }
.pt-clima__rotulo { flex: none; color: var(--destacado); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.pt-clima__pista { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; min-width: 0; }
.pt-clima__lugar { scroll-snap-align: start; }
.pt-clima__pista::-webkit-scrollbar { display: none; }
.pt-clima__lugar { display: inline-flex; gap: 6px; align-items: center; white-space: nowrap; }
.pt-clima__lugar:hover .pt-clima__nombre { color: var(--acento); }
.pt-clima__nombre, .pt-clima__temp { font-weight: 700; }
.pt-clima__rango { color: var(--texto-2); }
.pt-clima__credito { flex: none; margin-left: auto; font-size: var(--fs-micro); color: var(--texto-3); white-space: nowrap; }
.pt-clima .pt-riel { flex: 1; min-width: 0; }
.pt-hoja-menu[hidden] { display: none; }
.pt-hoja-menu { position: fixed; inset: 0; z-index: 60; }
.pt-hoja-menu__velo { position: absolute; inset: 0; background: rgba(0,0,0,.55); }
.pt-hoja-menu__panel { position: absolute; left: 0; top: 0; bottom: 0; width: min(360px, 88vw); overflow-y: auto; padding: 18px 22px 30px; background: var(--fondo-2); border-right: 1px solid var(--linea); }
.pt-hoja-menu__cabeza { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.pt-hoja-menu__cabeza .pt-barra__svg { height: 26px; }
.pt-hoja-menu h2 { margin: 22px 0 6px; font-size: var(--fs-xs); letter-spacing: .14em; text-transform: uppercase; color: var(--destacado); }
.pt-hoja-menu ul { list-style: none; margin: 0; padding: 0; }
.pt-hoja-menu li a { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--linea); }
.pt-hoja-menu li a svg { width: 18px; height: 18px; color: var(--texto-2); }
.pt-hoja-menu li a:hover, .pt-hoja-menu li a[aria-current] { color: var(--acento); }
.pt-hoja-menu li a:hover svg, .pt-hoja-menu li a[aria-current] svg { color: var(--acento); }
html.pt-menu-abierto { overflow: hidden; }
.pt-etiqueta { background: rgba(var(--velo), .9); background: color-mix(in srgb, var(--pt-e, var(--azul)) 82%, #000); }
.pt-etiqueta--evento { background: var(--rojo); }
.pt-chip i { background: var(--pt-c, var(--acento)); }
.pt-cerca__sin-foto { display: grid; place-items: center; width: 76px; height: 76px; flex: none; border-radius: 50%; background: var(--panel-2); color: var(--texto-3); }
.pt-cerca__sin-foto svg { width: 26px; height: 26px; }
.pt-compartir-botones { display: flex; align-items: center; gap: 10px; }
.pt-compartir-botones > span { margin-right: 6px; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--texto-2); }
.pt-compartir-botones a, .pt-compartir-botones button { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 10px; border: 1px solid var(--linea-fuerte); background: transparent; cursor: pointer; color: var(--texto); }
.pt-compartir-botones a:hover, .pt-compartir-botones button:hover { border-color: var(--acento); color: var(--acento); }
.pt-compartir-botones svg { width: 18px; height: 18px; }
.pt-paginacion { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 14px; margin-top: 40px; }
.pt-paginacion__ir, .pt-paginacion__boton { display: inline-flex; align-items: center; gap: 8px; padding: 13px 26px; border-radius: 999px; border: 2px solid var(--linea-fuerte); background: transparent; color: var(--acento); font-weight: 700; font-size: var(--fs-base); cursor: pointer; }
.pt-paginacion__ir:hover, .pt-paginacion__boton:hover { background: var(--acento); color: var(--acento-texto); border-color: var(--acento); }
.pt-paginacion__estado { font-size: var(--fs-chico); color: var(--texto-2); }
.pt-paginacion--mas { flex-direction: column; gap: 10px; }
.pt-paginacion--mas .pt-paginacion__ir { display: none; }
.pt-paginacion--mas .pt-paginacion__boton { order: -1; }
.pt-paginacion[aria-busy="true"] .pt-paginacion__boton { opacity: .6; pointer-events: none; }
.pt-riel { position: relative; }
.pt-riel__pista { scrollbar-width: none; }
.pt-riel__pista::-webkit-scrollbar { display: none; }
.pt-riel__mandos { display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; }
.pt-riel__mandos[hidden] { display: none; }
.pt-riel__flecha { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; border: 0; background: var(--azul); color: #fff; cursor: pointer; box-shadow: 0 6px 16px rgba(12, 32, 80, .18); transition: background .15s, opacity .15s; }
.pt-riel__flecha svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.pt-riel__flecha--next svg { transform: scaleX(-1); }
.pt-riel__flecha:hover:not(:disabled) { background: var(--rojo); }
.pt-riel__flecha:disabled { opacity: .3; cursor: default; box-shadow: none; }
.pt-riel--linea { display: flex; align-items: center; gap: 10px; min-width: 0; }
.pt-riel--linea > .pt-riel__pista { flex: 1; min-width: 0; }
.pt-riel--linea .pt-riel__mandos { flex: none; margin: 0; gap: 6px; }
.pt-riel--linea .pt-riel__flecha { width: 30px; height: 30px; box-shadow: none; }
.pt-riel--linea .pt-riel__flecha svg { width: 15px; height: 15px; }
.pt-riel--linea.pt-riel--corta-der > .pt-riel__pista { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 36px), transparent); }
.pt-carrusel { --n: 4; --g: 16px; display: flex; gap: var(--g); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.pt-carrusel::-webkit-scrollbar { display: none; }
.pt-carrusel > * { flex: 0 0 calc((100% - (var(--n) - 1) * var(--g)) / var(--n)); min-width: 0; scroll-snap-align: start; }
.pt-carrusel--eventos { --n: 5; }
.pt-carrusel--franja { --g: 12px; }
@media (max-width: 1100px) { .pt-carrusel--eventos, .pt-carrusel--lugares { --n: 3; } .pt-carrusel--franja { --n: 3; } }
@media (max-width: 760px) { .pt-carrusel { --g: 12px; } .pt-carrusel--eventos, .pt-carrusel--franja { --n: 2; } .pt-carrusel--lugares { --n: 1; } }
.pt-prosa { font-size: var(--fs-lg); line-height: var(--lh-prosa); }
.pt-prosa > * { margin: 0 0 22px; }
.pt-prosa h2 { margin: 42px 0 14px; font-size: var(--fs-4xl); line-height: var(--lh-titulo); font-weight: 800; letter-spacing: -.015em; }
.pt-prosa h3 { margin: 32px 0 12px; font-size: var(--fs-2xl); line-height: var(--lh-sub); }
.pt-prosa a { color: var(--acento); text-decoration: underline; text-underline-offset: 3px; }
.pt-prosa ul, .pt-prosa ol { padding-left: 22px; }
.pt-prosa li { margin-bottom: 8px; }
.pt-prosa img { height: auto; border-radius: var(--radio); }
.pt-prosa figure { margin: 28px 0; }
.pt-prosa figcaption { margin-top: 8px; font-size: var(--fs-sm); color: var(--texto-2); }
.pt-prosa blockquote { margin: 28px 0; padding: 18px 22px; border-left: 3px solid var(--acento); border-radius: 0 var(--radio) var(--radio) 0; background: color-mix(in srgb, var(--azul) 6%, transparent); font-size: var(--fs-xl); }
.pt-prosa table { width: 100%; border-collapse: collapse; font-size: var(--fs-base); }
.pt-prosa th, .pt-prosa td { padding: 10px; border-bottom: 1px solid var(--linea); text-align: left; }
@media (max-width: 1100px) {
  .pt-clima__credito { display: none; }
}
@media (max-width: 760px) {
  .pt-barra__buscar { display: none; }
  .pt-barra__buscar.esta-abierto { display: block; position: absolute; left: 12px; right: 12px; top: 70px; max-width: none; z-index: 45; }
  .pt-barra__buscar.esta-abierto input { height: 48px; background: var(--fondo-2); font-size: var(--fs-campo); }
  .pt-barra__buscar-movil { display: grid; }
  .pt-barra__lema, .pt-barra__fecha, .pt-barra__sep, .pt-barra__lugar { display: none; }
  .pt-barra__svg { height: 24px; }
  .pt-clima { padding-inline: 12px; gap: 12px; }
  .pt-prosa { font-size: var(--fs-lg); }
}
@media (max-width: 420px) {
  .pt-barra__fila { gap: 8px; padding-inline: 12px; }
  .pt-barra__svg { height: 21px; }
}
.pt-trampa { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.pt-contacto { display: flex; flex-direction: column; gap: 16px; }
.pt-contacto__fila { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.pt-contacto .pt-campo { margin: 0; }
.pt-contacto label { display: block; margin: 0 0 8px 2px; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--texto-2); }
.pt-contacto input, .pt-contacto select, .pt-contacto textarea { width: 100%; padding: 14px 16px; border-radius: 12px; border: 1px solid var(--linea-fuerte); background: var(--superficie); color: var(--texto); font-size: var(--fs-campo); }
.pt-contacto textarea { resize: vertical; min-height: 140px; }
.pt-contacto__pie { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.pt-contacto__nota { font-size: var(--fs-chico); color: var(--texto-2); }
.pt-aviso { margin: 0 0 16px; padding: 14px 18px; border-radius: 12px; border: 1px solid var(--linea-fuerte); background: var(--panel); }
.pt-aviso--ok { border-color: var(--acento); color: var(--acento-vivo); }
.pt-aviso--error { border-color: var(--error); color: var(--error-texto); }
.pt-modal { width: min(620px, calc(100% - 32px)); max-height: calc(100% - 32px); padding: 0; border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); background: var(--fondo-2); color: var(--texto); }
.pt-modal::backdrop { background: rgba(0, 0, 0, .6); }
.pt-modal__caja { padding: 24px 26px 28px; }
.pt-modal__cabeza { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.pt-modal__titulo { margin: 0; font-size: var(--fs-3xl); font-weight: 800; }
.pt-modal__cerrar { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 10px; border: 1px solid var(--linea-fuerte); background: transparent; color: var(--texto); cursor: pointer; }
.pt-modal__cerrar svg { width: 16px; height: 16px; }
@media (max-width: 760px) { .pt-contacto__fila { grid-template-columns: 1fr; } }
.pt-colabora__intro { margin: 0 0 22px; }
.pt-colabora__pasos { margin: 12px 0 0; padding-left: 22px; color: var(--texto-2); }
.pt-colabora__pasos li { margin: 4px 0; }
.pt-colabora__correo a { color: var(--acento); font-weight: 700; }
.pt-colabora__bloque { margin: 0; padding: 22px 22px 18px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); display: flex; flex-direction: column; gap: 14px; }
.pt-colabora__bloque legend { padding: 0 8px; font-size: var(--fs-sm); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--destacado); }
.pt-colabora__bloque legend small { margin-left: 6px; font-size: var(--fs-xs); font-weight: 600; letter-spacing: 0; text-transform: none; color: var(--texto-3); }
.pt-colabora__nota { margin: 0; font-size: var(--fs-chico); color: var(--texto-2); }
.pt-colabora__ayuda { display: block; margin: 6px 2px 0; font-size: var(--fs-sm); color: var(--texto-3); }
.pt-colabora__error { display: block; margin: 6px 2px 0; font-size: var(--fs-sm); font-weight: 600; color: var(--error-texto); }
.pt-campo--error input, .pt-campo--error select, .pt-campo--error textarea { border-color: var(--error); }
.pt-req { color: var(--destacado); }
.pt-colabora__chk { display: flex; gap: 10px; align-items: flex-start; font-size: var(--fs-chico); color: var(--texto-2); cursor: pointer; }
.pt-colabora .pt-colabora__chk input { width: 18px; height: 18px; padding: 0; margin-top: 2px; flex: none; accent-color: var(--acento); }
.pt-colabora__fotos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.pt-colabora__foto { display: flex; flex-direction: column; gap: 8px; padding: 14px; border: 1px dashed var(--linea-fuerte); border-radius: var(--radio); }
.pt-colabora__foto b { font-size: var(--fs-chico); }
.pt-colabora__foto input[type="file"] { padding: 10px; font-size: var(--fs-sm); }
.pt-colabora__clase { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.pt-colabora__opcion { display: flex; gap: 10px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio); font-size: var(--fs-chico); color: var(--texto-2); cursor: pointer; }
.pt-colabora__opcion b { color: var(--texto); }
.pt-colabora .pt-colabora__opcion input { width: 18px; height: 18px; padding: 0; margin-top: 1px; flex: none; accent-color: var(--acento); }
.pt-colabora__opcion:has(input:checked) { border-color: var(--acento); background: var(--panel); }
.pt-colabora:has(input[name="pt_clase"][value="fiesta"]:checked) .pt-colabora__solo-lugar,
.pt-colabora:has(input[name="pt_clase"][value="lugar"]:checked) .pt-colabora__solo-fiesta { display: none; }
.pt-colabora-gracias { padding: 34px 26px; border: 1px solid var(--acento); border-radius: var(--radio-g); background: var(--panel); text-align: center; }
.pt-colabora-gracias__marca { display: inline-grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--acento); color: var(--acento-texto); font-size: var(--fs-2xl); font-weight: 800; }
.pt-colabora-gracias h2 { margin: 14px 0 8px; font-size: var(--fs-2xl); }
.pt-colabora-gracias p { max-width: 60ch; margin: 0 auto; color: var(--texto-2); }
.pt-colabora-gracias .pt-colabora-gracias__botones { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin-top: 20px; }
.pt-colabora-cta { display: flex; align-items: center; justify-content: space-between; gap: 18px; flex-wrap: wrap; margin: 34px 0 0; padding: 22px 24px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio-g); background: var(--panel); }
.pt-colabora-cta b { font-size: var(--fs-xl); }
.pt-colabora-cta p { margin: 4px 0 0; color: var(--texto-2); }
.pt-colabora-cta__botones { display: flex; gap: 10px; flex-wrap: wrap; }
@media (max-width: 760px) { .pt-colabora__fotos, .pt-colabora__clase { grid-template-columns: 1fr; } .pt-colabora__bloque { padding: 18px 14px 14px; } }
.pt-antetitulo--claro { margin: 0; color: var(--texto); }
.pt-antetitulo--claro svg { color: var(--destacado); }
.pt-nota-foto, .pt-lugar, .pt-categoria { background-color: var(--panel); }
.pt-hero__credito a { color: var(--texto); }
.pt-hero__credito a:hover { color: var(--acento); }
.pt-hero__credito small a { color: var(--texto-2); text-decoration: underline; }
.pt-destacadas { margin-top: 22px; }
.pt-hero--sin-foto { background: radial-gradient(80% 120% at 80% 0%, var(--azul) 0%, rgb(var(--velo)) 70%); }
.pt-hero--sin-foto::before { display: none; }
.pt-datos-ficha { display: flex; flex-wrap: wrap; }
.pt-datos-ficha .pt-dato { flex: 1 1 210px; }
.pt-dato--accion { align-items: center; justify-content: center; }
.pt-dato--accion .pt-boton, .pt-dato--accion .pt-boton:hover { color: var(--acento-texto); }
.pt-mapa-mini { flex: 0 0 300px; min-height: 170px; padding: 0; overflow: hidden; background: var(--superficie-2); }
.pt-mapa-mini::before { display: none; }
.pt-mapa-mini iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; filter: invert(.9) hue-rotate(170deg) saturate(.55) brightness(.9); }
.pt-mapa-mini .pt-boton-linea { position: absolute; right: 12px; bottom: 12px; }
.pt-seccion--ficha { padding-top: 56px; }
.pt-acerca--sin-foto { grid-template-columns: 1fr; }
.pt-acerca__texto .pt-prosa { font-size: var(--fs-md); }
.pt-recorte { position: relative; max-height: 16em; overflow: hidden; }
.pt-recorte.pt-is-abierto { max-height: none; }
.pt-recorte:not(.pt-is-abierto).pt-is-largo::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4em; background: linear-gradient(180deg, transparent, var(--panel)); }
.pt-vermas { margin: 4px 0 16px; padding: 0; border: 0; background: none; color: var(--acento); font-weight: 700; cursor: pointer; }
.pt-fuente { display: flex; align-items: center; gap: 8px; margin: 0; font-size: var(--fs-chico); color: var(--texto-2); }
.pt-fuente svg { width: 16px; height: 16px; }
.pt-fuente a { text-decoration: underline; text-underline-offset: 3px; }
.pt-renombre { margin-bottom: 30px; padding: 16px 20px; border-radius: var(--radio); border: 1px solid color-mix(in srgb, var(--destacado) 40%, transparent); background: color-mix(in srgb, var(--destacado) 7%, transparent); }
.pt-renombre p { margin: 0; }
.pt-renombre a { color: var(--acento); }
.pt-galeria { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 10px; }
.pt-galeria button { padding: 0; border: 1px solid var(--linea); border-radius: var(--radio); overflow: hidden; cursor: zoom-in; background: var(--panel); aspect-ratio: 4 / 3; }
.pt-galeria img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.pt-galeria button:hover img { transform: scale(1.05); }
.pt-visor { width: min(1200px, 96vw); max-height: 94vh; padding: 0; border: 0; background: transparent; color: var(--texto); overflow: visible; }
.pt-visor::backdrop { background: rgba(0, 0, 0, .88); }
.pt-visor__img { display: block; max-width: 100%; max-height: 84vh; margin: 0 auto; border-radius: 10px; }
.pt-visor__pie { margin: 10px 0 0; text-align: center; font-size: var(--fs-chico); color: var(--texto-2); }
.pt-visor__cerrar, .pt-visor__nav { position: absolute; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--linea-fuerte); background: var(--superficie); color: var(--texto); cursor: pointer; }
.pt-visor__cerrar { top: -10px; right: -10px; }
.pt-visor__nav { top: 50%; margin-top: -23px; }
.pt-visor__nav--prev { left: 8px; }
.pt-visor__nav--next { right: 8px; }
.pt-visor button svg { width: 18px; height: 18px; }
.pt-fila-compartir { display: flex; justify-content: flex-end; margin-top: 44px; padding-top: 18px; border-top: 1px solid var(--linea); }
@media (max-width: 1100px) { .pt-mapa-mini { flex-basis: 100%; } }
@media (max-width: 760px) {
  .pt-datos-ficha { flex-direction: column; }
  .pt-datos-ficha .pt-dato { flex: none; }
  .pt-mapa-mini { flex: none; min-height: 200px; }
  .pt-fila-compartir { justify-content: flex-start; }
}
.pt-pie__redes { display: flex; gap: 10px; list-style: none; margin: 18px 0 0; padding: 0; }
.pt-pie__redes a { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--linea-fuerte); }
.pt-pie__redes svg { width: 16px; height: 16px; }
.pt-segmentado a { display: inline-flex; align-items: center; gap: 8px; padding: 9px 14px; border-radius: 9px; border: 1px solid var(--linea-fuerte); background: var(--superficie); font-size: var(--fs-sm); }
.pt-segmentado a[aria-pressed="true"] { border-color: var(--acento); color: var(--acento); }
.pt-segmentado a:hover { border-color: var(--acento); }
.pt-vista-barra[hidden] { display: none; }
.pt-vista-barra { display: flex; flex-direction: column; }
.pt-vista-barra::before { content: "Vista"; display: block; margin-bottom: 6px; font-size: var(--fs-xs); color: var(--texto-2); }
.pt-vista-barra__cuenta { display: none; }
.pt-vista-barra__mandos { display: flex; gap: 6px; }
.pt-vista-barra__boton { display: inline-flex; align-items: center; gap: 8px; padding: 9px 12px; border-radius: 9px; border: 1px solid var(--linea-fuerte); background: var(--superficie); color: var(--texto); font-size: var(--fs-sm); cursor: pointer; }
.pt-vista-barra__boton svg { width: 15px; height: 15px; }
.pt-vista-barra__boton[aria-pressed="true"] { background: var(--acento); border-color: var(--acento); color: var(--acento-texto); }
[data-cf-lista][data-vista="lista"] { grid-template-columns: 1fr; gap: 10px; }
[data-cf-lista][data-vista="lista"] > .pt-lugar { aspect-ratio: auto; min-height: 110px; padding: 18px 20px 18px 200px; justify-content: center; }
[data-cf-lista][data-vista="lista"] > .pt-lugar img { width: 180px; right: auto; }
[data-cf-lista][data-vista="lista"] > .pt-lugar::before { background: linear-gradient(90deg, rgba(var(--velo), 0) 0, rgba(var(--velo), 0) 180px, var(--panel) 180px); }
[data-cf-lista][data-vista="lista"] > .pt-lugar .pt-etiqueta { position: static; align-self: flex-start; margin-bottom: 8px; }
[data-cf-lista][data-vista="grande"] { grid-template-columns: repeat(2, 1fr); }
[data-cf-lista][data-vista="grande"] > .pt-lugar { aspect-ratio: 16 / 10; }
.pt-vacio { padding: 40px; border: 1px dashed var(--linea-fuerte); border-radius: var(--radio-g); text-align: center; }
.pt-vacio b { font-size: var(--fs-xl); }
.pt-vacio p { margin: 8px 0 0; color: var(--texto-2); }
.pt-vacio a { color: var(--acento); text-decoration: underline; }
.pt-texto-pagina { max-width: 780px; margin: 56px auto 0; }
@media (max-width: 760px) {
  [data-cf-lista][data-vista="lista"] > .pt-lugar { padding-left: 132px; min-height: 96px; }
  [data-cf-lista][data-vista="lista"] > .pt-lugar img { width: 116px; }
  [data-cf-lista][data-vista="lista"] > .pt-lugar::before { background: linear-gradient(90deg, rgba(var(--velo), 0) 0, rgba(var(--velo), 0) 116px, var(--panel) 116px); }
  [data-cf-lista][data-vista="grande"] { grid-template-columns: 1fr; }
  .pt-controles { width: 100%; }
}
.pt-pastilla[aria-current] { border-color: var(--acento); background: var(--acento); color: var(--acento-texto); } .pt-pastilla[aria-current] span { color: var(--acento-texto); }
.pt-migas ol { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.pt-migas li + li::before { content: "›"; margin-right: 8px; color: var(--texto-3); }
.pt-migas span[aria-current] { color: var(--texto); }
.pt-firma .pt-compartir-botones { margin-left: auto; }
.pt-firma b a:hover { color: var(--acento); }
.pt-mini-fila > span { display: block; margin: 0; }
.pt-mini-fila--evento { align-items: flex-start; }
.pt-mini-fila--evento .pt-cal { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; width: 56px; height: 60px; flex: none;
  border-radius: 12px; border: 1px solid var(--linea-fuerte); background: color-mix(in srgb, var(--azul) 6%, transparent); }
.pt-mini-fila--evento .pt-cal i { margin: 0; font-size: var(--fs-micro); letter-spacing: .06em; text-transform: uppercase; }
.pt-mini-fila--evento .pt-cal strong { font-size: var(--fs-2xl); line-height: var(--lh-1); }
.pt-mini-fila--evento .pt-cal span { padding: 0; font-size: var(--fs-micro); letter-spacing: .06em; text-transform: uppercase; }
.pt-mini-fila--evento b { font-size: var(--fs-base); }
.pt-nota-foto-principal img { height: auto; }
.pt-cuerpo-nota > p:first-child { font-size: 1.08em; }
.pt-cuerpo-nota p:last-child em { color: var(--texto-2); }
.pt-anterior-siguiente > span { display: block; }
@media (max-width: 760px) { .pt-firma .pt-compartir-botones { flex-basis: 100%; margin-left: 0; } }
.pt-cabeza-categoria { padding-bottom: 10px; }
.pt-cabeza-categoria h1 em { font-style: normal; color: var(--acento); margin-right: 4px; }
.pt-categoria-bajada { max-width: 760px; margin: 0 0 6px; font-size: var(--fs-xl); line-height: var(--lh-texto); color: var(--texto-2); }
.pt-categoria-bajada p { margin: 0; }
.pt-pestanas--enlaces { display: flex; }
.pt-pestanas--enlaces a { flex: none; padding: 9px 14px; border-radius: 999px; font-size: var(--fs-base); white-space: nowrap; }
.pt-pestanas--enlaces a:hover { color: var(--acento); }
.pt-pestanas--enlaces a[aria-current] { background: var(--azul); color: #fff; font-weight: 700; box-shadow: inset 0 0 0 1px var(--linea-fuerte); }
.pt-cabeza-categoria .pt-riel { margin: 24px 0 12px; }
.pt-cabeza-categoria .pt-riel .pt-pestanas { margin: 0; }
.pt-tema-lead .pt-nota-foto--grande { min-height: 460px; margin-top: 10px; }
.pt-hero__cuenta { color: var(--texto-2); font-weight: 700; font-size: .6em; vertical-align: middle; }
.pt-busca__campos--agenda { grid-template-columns: 1.5fr 1fr 1fr auto; }
.pt-rangos { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.pt-rango:hover { border-color: var(--destacado); }
.pt-activos { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 16px; font-size: var(--fs-sm); color: var(--texto-2); }
.pt-activos a { padding: 5px 12px; border-radius: 999px; border: 1px solid var(--linea-fuerte); color: var(--texto); }
.pt-activos a:hover { border-color: var(--acento); color: var(--acento); }
[data-cf-lista="agenda"] > .pt-mes + .pt-mes { margin-top: 56px; }
@media (max-width: 1100px) { .pt-busca__campos--agenda { grid-template-columns: 1fr 1fr; } .pt-busca__campos--agenda .pt-campo:first-child, .pt-busca__campos--agenda .pt-boton { grid-column: 1 / -1; } }
@media (max-width: 760px) { .pt-busca__campos--agenda { grid-template-columns: 1fr; } }
.pt-evento-cabeza .pt-credito-foto { position: static; margin: 10px 0 0; text-align: right; text-shadow: none; }
.pt-panel__accion { margin-top: 14px; }
.pt-sobre--solo { grid-template-columns: 1fr; }
.pt-sobre .pt-prosa { max-width: 70ch; }
.pt-seccion--evento { padding-top: 40px; }
.pt-evento-datos .pt-boton { margin-left: auto; }
@media (max-width: 760px) { .pt-evento-cabeza .pt-credito-foto { display: block; text-align: left; } .pt-evento-datos .pt-boton { margin-left: 0; } }
.pt-perfil-foto--logo { display: grid; place-items: center; padding: 28px; aspect-ratio: 4 / 3; }
.pt-perfil-foto--logo { overflow: hidden; }
.pt-perfil-foto--logo img { width: 100%; height: 100%; max-height: 100%; object-fit: contain; overflow: hidden; }
.pt-perfil-foto--logo figcaption { color: var(--placa-texto); background: none; padding: 8px 12px; }
.pt-perfil-foto__inicial { display: grid; place-items: center; height: 100%; font-size: 84.5px; font-weight: 800; color: var(--azul-texto); }
.pt-perfil-lado { display: flex; flex-direction: column; gap: 14px; }
.pt-enlaces-caja { display: flex; flex-direction: column; gap: 8px; }
.pt-perfil-bio { margin-top: 22px; }
.pt-seccion--perfil { padding-top: 10px; }
.pt-seccion--perfil .pt-bloque:first-child { margin-top: 0; }
.pt-galeria--fija figure { margin: 0; border-radius: var(--radio); overflow: hidden; border: 1px solid var(--linea); aspect-ratio: 4 / 3; }
.pt-galeria--fija figure img { width: 100%; height: 100%; object-fit: cover; }
.pt-perfil-foto { margin: 0; }
.pt-pagina-cabeza { padding-bottom: 28px; border-bottom: 1px solid var(--linea); }
.pt-pagina-fecha { margin: 12px 0 0; font-size: var(--fs-chico); color: var(--texto-2); }
.pt-pagina { max-width: 820px; padding-block: 40px 72px; }
.pt-pagina .pt-prosa > :first-child { margin-top: 0; }
.pt-confianza__entidad { margin-top: 36px; padding: 18px 20px; border: 1px solid var(--linea); border-radius: var(--radio); font-size: var(--fs-base); color: var(--texto-2); }
.pt-pagina-mas { margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--linea); }
.pt-pagina-mas h2 { margin: 0 0 16px; font-size: var(--fs-xl); font-weight: 800; }
.pt-busca--simple { margin-top: 22px; max-width: 900px; }
.pt-busca__campos--simple { grid-template-columns: 1fr auto; }
.pt-cabeza-busqueda h1, .pt-cabeza-404 h1 { font-size: clamp(35px, 4.5vw, 60px); text-wrap: balance; }
.pt-cabeza-busqueda h1 em, .pt-cabeza-404 h1 em { font-style: normal; color: var(--acento); }
.pt-cabeza-busqueda .pt-pestanas--enlaces { margin-top: 22px; }
.pt-pestanas--enlaces a span { margin-left: 6px; font-size: var(--fs-xs); color: var(--texto-2); }
.pt-puente-directorio { display: inline-flex; align-items: center; gap: 8px; margin: 18px 0 8px; font-size: var(--fs-base); color: var(--acento); }
.pt-puente-directorio svg { width: 16px; height: 16px; flex: none; }
.pt-puente-directorio:hover { text-decoration: underline; }
.pt-bloque--busqueda:first-child { margin-top: 0; }
.pt-cabeza-404 { padding-bottom: 40px; }
.pt-panel--enlace { display: block; transition: border-color .2s; }
.pt-panel--enlace:hover { border-color: var(--acento); }
.pt-panel--enlace b { display: block; margin-bottom: 8px; font-size: var(--fs-2xl); }
.pt-panel--enlace p { color: var(--texto-2); }
@media (max-width: 760px) {
  .pt-busca__campos--simple { grid-template-columns: 1fr; }
  .pt-pagina { padding-block: 28px 56px; }
}
.pt-pagina-cabeza .pt-contenedor { max-width: 820px; }
.pt-prosa .pt-indice { margin: 0 0 28px; padding: 18px 22px; border: 1px solid var(--linea-fuerte); border-radius: var(--radio); background: var(--superficie); font-size: var(--fs-md); }
.pt-prosa .pt-indice summary { cursor: pointer; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--destacado); }
.pt-prosa .pt-indice ol { margin: 12px 0 0; padding-left: 20px; }
.pt-prosa .pt-indice li { margin: 4px 0; }
.pt-prosa .pt-indice a { color: var(--texto); text-decoration: none; }
.pt-prosa .pt-indice a:hover { color: var(--acento); }
.pt-prosa .pt-fuente { display: block; margin-top: 32px; padding-top: 16px; border-top: 1px solid var(--linea); font-size: var(--fs-base); }
.pt-fuente__etiqueta { margin-right: 6px; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--destacado); }
@media (max-width: 760px) { .pt-hero--directorio .pt-hero__cuerpo { padding-top: 36px; padding-bottom: 20px; } }
@media (max-width: 760px) {
  .pt-hero { flex-direction: column; align-items: stretch; justify-content: flex-end; }
  .pt-hero .pt-hero__cuerpo { padding-bottom: 20px; }
  .pt-hero .pt-hero__credito { position: relative; inset: auto; z-index: 2; width: calc(100% - 32px); margin: 0 auto 18px; font-size: var(--fs-xs); }
  .pt-hero .pt-hero__credito small { font-size: var(--fs-micro); }
}
.pt-cabeza-categoria { padding-top: 30px; }
.pt-cabeza-categoria h1 { font-size: clamp(40px, 4.6vw, 64px); }
.pt-selector { position: relative; }
.pt-selector select { position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; opacity: 0; pointer-events: none; }
.pt-selector__boton { display: flex; align-items: center; width: 100%; height: 50px; padding: 0 40px 0 16px; border-radius: 12px; border: 1px solid var(--linea-fuerte);
  background: var(--superficie); color: var(--texto); font-size: var(--fs-md); text-align: left; cursor: pointer; }
.pt-selector__boton { height: 54px; }
.pt-selector__boton span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pt-selector__boton:hover, .pt-selector--abierto .pt-selector__boton { border-color: var(--azul); }
.pt-selector--abierto::after { transform: rotate(-135deg); bottom: 19px; }
.pt-selector__lista { position: absolute; z-index: 50; left: 0; right: 0; top: calc(100% + 6px); max-height: 300px; overflow-y: auto; margin: 0; padding: 6px; list-style: none;
  border-radius: 12px; border: 1px solid var(--linea-fuerte); background: var(--superficie); box-shadow: var(--sombra); }
.pt-selector__lista[hidden] { display: none; }
.pt-selector__lista li { padding: 9px 12px; border-radius: 8px; font-size: var(--fs-base); line-height: var(--lh-sub); color: var(--tinta); cursor: pointer; }
.pt-selector__lista li:hover, .pt-selector__lista li.es-foco { background: var(--panel-2); }
.pt-selector__lista li[aria-selected="true"] { color: var(--rojo); font-weight: 700; }
.pt-busca .pt-selector__lista li { color: var(--tinta); }
.pt-busca__campos--agenda { grid-template-columns: 1fr 1.3fr 1fr 1fr auto; }
@media (max-width: 1100px) { .pt-busca__campos--agenda { grid-template-columns: 1fr 1fr; } .pt-busca__campos--agenda .pt-campo:nth-child(2), .pt-busca__campos--agenda .pt-boton { grid-column: 1 / -1; } }
@media (max-width: 760px) { .pt-busca__campos--agenda { grid-template-columns: 1fr 1fr; } }
.pt-barra-resultados--agenda { margin-bottom: 22px; }
[data-cf-lista="agenda"][data-vista="lista"] .pt-eventos { grid-template-columns: 1fr; gap: 10px; }
[data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento { flex-direction: row; }
[data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento__foto { flex: 0 0 200px; aspect-ratio: auto; min-height: 120px; }
[data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento__cuerpo { justify-content: center; }
[data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento b { flex: none; }
[data-cf-lista="agenda"][data-vista="grande"] .pt-eventos { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 760px) {
  [data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento__foto { flex-basis: 110px; min-height: 0; }
  [data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento .pt-etiqueta { display: none; }
  [data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento__cuerpo { padding: 10px 12px; }
  [data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento b { font-size: var(--fs-base); }
  [data-cf-lista="agenda"][data-vista="lista"] .pt-tarjeta-evento__pie { margin-top: 8px; padding-top: 8px; gap: 10px; }
  [data-cf-lista="agenda"][data-vista="lista"] .pt-cal strong { font-size: var(--fs-2xl); }
  [data-cf-lista="agenda"][data-vista="grande"] .pt-eventos { grid-template-columns: 1fr; }
}
.pt-lugar--sin-foto { background-color: color-mix(in srgb, var(--pt-e-fondo, var(--azul)) 7%, var(--panel-2));
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cg fill='none' stroke='%230039a6' stroke-opacity='.13' stroke-width='1.2'%3E%3Cpath d='M-10 60c40-30 80 20 120-6s70-40 140-6'/%3E%3Cpath d='M-10 90c40-30 80 20 120-6s70-40 140-6'/%3E%3Cpath d='M-10 120c40-30 80 20 120-6s70-40 140-6'/%3E%3Cpath d='M-10 150c40-30 80 20 120-6s70-40 140-6'/%3E%3Cpath d='M-10 180c40-30 80 20 120-6s70-40 140-6'/%3E%3Cpath d='M-10 210c40-30 80 20 120-6s70-40 140-6'/%3E%3Cpath d='M-10 30c40-30 80 20 120-6s70-40 140-6'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 240px 240px; }
:root[data-tema="oscuro"] .pt-lugar--sin-foto { background-color: var(--panel-2); }
.pt-lugar__icono { opacity: .5; margin-top: -70px; }
.pt-lugar--sin-foto b { position: relative; }
.pt-lugar__donde { line-height: var(--lh-sub); }
@media (max-width: 760px) {
  .pt-lugares--dir .pt-lugar__donde { margin-top: 4px; gap: 5px; font-size: var(--fs-xs); }
  .pt-lugares--dir .pt-lugar__donde svg { width: 12px; height: 12px; }
  .pt-lugares--dir .pt-etiqueta { font-size: var(--fs-micro); padding: 3px 8px; max-width: calc(100% - 20px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .pt-lugares--dir .pt-lugar b { font-size: var(--fs-md); line-height: var(--lh-titulo); }
  .pt-lugar__icono { width: 54px; height: 54px; margin: -56px 0 0 -27px; }
  .pt-lugar__icono svg { width: 26px; height: 26px; }
}
@media (max-width: 760px) {
  .pt-barra-resultados { gap: 14px; padding-bottom: 16px; margin-bottom: 18px; }
  .pt-barra-resultados h2 { font-size: var(--fs-2xl); }
  .pt-controles { gap: 12px; }
  .pt-control small, .pt-vista-barra::before { margin-bottom: 4px; font-size: var(--fs-micro); }
  .pt-segmentado { gap: 4px; }
  .pt-segmentado a { padding: 6px 9px; font-size: var(--fs-xs); white-space: nowrap; border-radius: 8px; }
  .pt-vista-barra__boton { padding: 6px 9px; border-radius: 8px; }
  .pt-vista-barra__texto { display: none; }
}
@media (max-width: 760px) {
  .pt-busca { padding: 14px 14px 12px; border-radius: 16px; }
  .pt-busca label { margin-bottom: 5px; font-size: var(--fs-micro); }
  .pt-busca__campos { gap: 10px; }
  .pt-campo input, .pt-campo select { height: 46px; }
  .pt-selector__boton { height: 46px; font-size: var(--fs-base); }
  .pt-campo--sel.pt-selector::after { bottom: 19px; }
  .pt-selector--abierto::after { bottom: 15px; }
  .pt-busca .pt-boton { height: 46px; font-size: var(--fs-md); }
  .pt-busca__cifras { display: none; }
  .pt-hero--directorio .pt-hero__bajada, .pt-hero--agenda .pt-hero__bajada, .pt-hero--perfiles .pt-hero__bajada { margin-bottom: 18px; font-size: var(--fs-lg); }
  .pt-hero--directorio h1, .pt-hero--agenda h1, .pt-hero--perfiles h1 { font-size: var(--fs-5xl); }
  .pt-origen { margin-top: 12px; padding-top: 12px; gap: 6px; }
  .pt-origen .pt-chip { padding: 6px 10px; font-size: var(--fs-sm); }
  .pt-chips-cabeza { margin: 18px 0 10px; }
  .pt-chips--iconos { display: flex; flex-wrap: nowrap; gap: 6px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
  .pt-chips--iconos::-webkit-scrollbar { display: none; }
  .pt-chips--iconos > .pt-chip--icono { flex: 0 0 76px; scroll-snap-align: start; }
}
@media (min-width: 761px) {
  .pt-riel--linea:has(> .pt-chips--iconos) { display: block; }
  .pt-riel--linea:has(> .pt-chips--iconos) .pt-riel__mandos { display: none; }
  .pt-riel--linea:has(> .pt-chips--iconos) > .pt-riel__pista { -webkit-mask-image: none; mask-image: none; }
}
.pt-pie { --fs-pie-enlace: 13px; font-size: var(--fs-base); line-height: var(--lh-base); }
.pt-pie p, .pt-pie span, .pt-pie small { font-size: var(--fs-base); line-height: var(--lh-base); }
.pt-pie__cuerpo { display: grid; grid-template-columns: 1.3fr repeat(4, 1fr); padding: 64px 0 56px; }
.pt-pie__svg { width: auto; height: 22px; color: var(--texto); }
.pt-pie__marca { padding-right: 25px; }
.pt-pie__marca p { margin: 16px 0 0; max-width: 280px; color: var(--texto-2); }
.pt-pie__col { padding-left: 25px; border-left: 1px solid var(--linea); }
.pt-pie__grupo + .pt-pie__grupo { margin-top: 30px; }
.pt-pie__col h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 16px; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.pt-pie__col h2::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--acento); }
.pt-pie__col a { display: block; margin-bottom: 10px; font-size: var(--fs-pie-enlace); line-height: var(--lh-base); color: var(--texto); }
.pt-pie__col a:hover { color: var(--acento); }
.pt-pie__base { font-size: var(--fs-base); }
@media (max-width: 1100px) {
  .pt-pie__cuerpo { grid-template-columns: repeat(2, 1fr); gap: 32px 0; }
  .pt-pie__marca { grid-column: 1 / -1; }
  .pt-pie__col:nth-child(2n) { border-left: 0; padding-left: 0; }
}
@media (max-width: 560px) {
  .pt-pie__cuerpo { grid-template-columns: 1fr 1fr; padding-top: 44px; }
  .pt-pie__col { padding-left: 14px; }
}
.pt-hoja-menu li { position: relative; }
.pt-hoja-menu__regiones { margin: 0; }
.pt-hoja-menu__regiones summary { position: absolute; top: 4px; right: 0; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 8px;
  list-style: none; cursor: pointer; color: var(--texto-2); }
.pt-hoja-menu__regiones summary::-webkit-details-marker { display: none; }
.pt-hoja-menu__regiones summary:hover { background: var(--panel-2); color: var(--acento); }
.pt-hoja-menu__regiones summary svg { width: 14px; height: 14px; transform: rotate(90deg); transition: transform .15s; }
.pt-hoja-menu__regiones[open] summary svg { transform: rotate(-90deg); }
.pt-hoja-menu__regiones ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; margin: 4px 0 10px; padding: 8px 0 8px 14px; border-left: 2px solid var(--linea-fuerte); }
.pt-hoja-menu .pt-hoja-menu__regiones li a { display: block; padding: 5px 0; border-bottom: 0; font-size: var(--fs-chico); color: var(--texto-2); }
.pt-hoja-menu .pt-hoja-menu__regiones li a:hover { color: var(--acento); }
[data-cf-lista="seccion"][data-vista="lista"] { grid-template-columns: 1fr; gap: 10px; }
[data-cf-lista="seccion"][data-vista="lista"] > .pt-tarjeta-nota { flex-direction: row; }
[data-cf-lista="seccion"][data-vista="lista"] .pt-tarjeta-nota__foto { flex: 0 0 220px; aspect-ratio: 16 / 10; }
[data-cf-lista="seccion"][data-vista="lista"] .pt-tarjeta-nota__texto { justify-content: center; }
[data-cf-lista="seccion"][data-vista="grande"] { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 760px) {
  [data-cf-lista="seccion"][data-vista="lista"] .pt-tarjeta-nota__foto { flex-basis: 116px; aspect-ratio: 1 / 1; }
  [data-cf-lista="seccion"][data-vista="lista"] .pt-tarjeta-nota__texto { padding: 10px 12px; }
  [data-cf-lista="seccion"][data-vista="lista"] .pt-tarjeta-nota h2 { font-size: var(--fs-md); -webkit-line-clamp: 3; }
  [data-cf-lista="seccion"][data-vista="grande"] { grid-template-columns: 1fr; }
}
.pt-mini-perfil__placa, .pt-mini-perfil__placa--foto { display: grid; place-items: center; aspect-ratio: auto; height: 112px; padding: 0;
  background: color-mix(in srgb, var(--azul) 5%, var(--superficie)); }
.pt-mini-perfil__placa img, .pt-mini-perfil__placa--foto img { position: static; width: 78px; height: 78px; max-width: none; max-height: none;
  border-radius: 50%; background: #fff; box-shadow: 0 0 0 1px var(--linea-fuerte); }
.pt-mini-perfil__placa img { object-fit: contain; padding: 10px; }
.pt-mini-perfil__placa--foto img { object-fit: cover; object-position: center 25%; padding: 0; }
.pt-mini-perfil__texto b { line-height: var(--lh-sub); }
.pt-mini-perfil__texto span { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.pt-busca--portada { max-width: 980px; }
.pt-busca__atajos { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 0; }
.pt-busca__atajos a { padding: 6px 12px; border-radius: 999px; border: 1px solid var(--linea-fuerte); font-size: var(--fs-sm); color: var(--tinta-2); }
.pt-busca__atajos a:hover { border-color: var(--acento); color: var(--acento); }
.pt-busca__campos--portada { grid-template-columns: 1.7fr 1fr auto; }
.pt-busca__cifras--portada { grid-template-columns: repeat(4, 1fr); }
.pt-busca__cifras--portada .pt-cifra { color: var(--tinta); }
.pt-busca__cifras--portada .pt-cifra:last-child { border-right: 0; margin-right: 0; }
.pt-busca__cifras--portada .pt-cifra:hover b { color: var(--acento); }
.pt-busca__cifras--portada .pt-cifra b { font-size: var(--fs-4xl); }
@media (max-width: 1100px) { .pt-busca__campos--portada { grid-template-columns: 1fr 1fr; } .pt-busca__campos--portada .pt-campo:first-child { grid-column: 1 / -1; } .pt-busca__cifras--portada { grid-template-columns: repeat(2, 1fr); gap: 14px 0; } }
@media (max-width: 760px) { .pt-busca__campos--portada { grid-template-columns: 1fr; } .pt-busca__cifras--portada { display: grid; } .pt-busca__cifras--portada .pt-cifra { flex-direction: row; align-items: center; } }
.pt-hero__info { position: absolute; z-index: 3; right: 20px; bottom: 18px; }
.pt-hero__info summary { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; list-style: none; cursor: pointer;
  background: rgba(var(--velo), .55); border: 1px solid rgba(255, 255, 255, .45); color: #fff; font: italic 700 var(--fs-sm)/1 Georgia, serif; }
.pt-hero__info summary::-webkit-details-marker { display: none; }
.pt-hero__info p { position: absolute; right: 0; bottom: 34px; width: max-content; max-width: 340px; margin: 0; padding: 10px 12px; border-radius: 10px;
  background: rgba(var(--velo), .92); color: #fff; font-size: var(--fs-xs); line-height: var(--lh-texto); }
.pt-hero__info p a { color: #fff; text-decoration: underline; }
.pt-secciones-portada .pt-bloque-seccion + .pt-bloque-seccion { margin-top: 56px; padding-top: 44px; border-top: 1px solid var(--linea); }
.pt-secciones-portada > .pt-contenedor > .pt-antetitulo { margin-bottom: 14px; }
.pt-secciones-portada .pt-rejilla-seccion .pt-nota-foto--grande { min-height: 460px; }
.pt-guia { display: none; }
@media (min-width: 1100px) {
  :root[data-guia="ancha"] { --guia: 228px; }
  :root[data-guia="mini"] { --guia: 76px; }
  .pt-guia { display: block; position: fixed; z-index: 25; left: 0; top: 79px; bottom: 0; width: var(--guia, 76px); overflow-y: auto; overscroll-behavior: contain;
    padding: 10px 8px 24px; background: var(--fondo); border-right: 1px solid var(--linea); scrollbar-width: thin; }
  .admin-bar .pt-guia { top: calc(79px + var(--wp-admin--admin-bar--height, 32px)); }
  .pt-principal, .pt-clima, .pt-pie { margin-left: var(--guia, 76px); }
  .pt-guia__grupo + .pt-guia__grupo { margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--linea); }
  .pt-guia__titulo { margin: 6px 12px 6px; font-size: var(--fs-xs); font-weight: 800; letter-spacing: .14em; text-transform: uppercase; color: var(--destacado); }
  .pt-guia__enlace { display: flex; align-items: center; gap: 14px; padding: 9px 12px; border-radius: 10px; color: var(--texto); font-size: var(--fs-base); line-height: var(--lh-sub); }
  .pt-guia__enlace:hover { background: var(--panel-2); }
  .pt-guia__enlace[aria-current] { background: var(--panel-2); color: var(--acento); font-weight: 700; }
  .pt-guia__icono { display: grid; place-items: center; width: 22px; flex: none; color: var(--texto-2); }
  .pt-guia__icono svg { width: 19px; height: 19px; }
  .pt-guia__enlace[aria-current] .pt-guia__icono { color: var(--acento); }
  .pt-guia__corto { display: none; }
  :root[data-guia="mini"] .pt-guia { padding-inline: 4px; }
  :root[data-guia="mini"] .pt-guia__titulo, :root[data-guia="mini"] .pt-guia__texto { display: none; }
  :root[data-guia="mini"] .pt-guia__enlace { flex-direction: column; gap: 5px; padding: 12px 2px 10px; text-align: center; }
  :root[data-guia="mini"] .pt-guia__corto { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--fs-micro); }
  :root[data-guia="mini"] .pt-guia__icono svg { width: 21px; height: 21px; }
}
