/* ═══════════════════════════════════════════════════════════════
   SISTEMA DE DISEÑO v2 · Reencuentro Bene 96–99
   Dirección: FESTIVAL DE GENERACIÓN — energía de gran convención
   sobre la identidad histórica negro + dorado del emblema.
   Tokens espejo de theme.json (WordPress).
   ═══════════════════════════════════════════════════════════════ */
:root{
  --negro:#111111;
  --negro-2:#1A181B;          /* negro real del emblema */
  --carbon:#333333;
  --marfil:#F4F0E6;
  --marfil-2:#EAE3D2;
  --blanco:#FFFFFF;
  --oro:#C49D57;              /* dorado del emblema · sobre negro 7.47 AAA */
  --oro-claro:#FADE8A;        /* brillo · sobre negro 14.28 AAA */
  --oro-profundo:#6E5520;     /* texto/enlaces sobre claro 6.19 AA */
  --fiesta:#E4572E;           /* acento festivo · display sobre negro 5.13 AA */
  --fiesta-tinta:#B33A28;     /* acento festivo sobre claro 5.19 AA */
  --borde:#DCD3BF;
  --borde-fuerte:#C2B393;
  --verde:#2C4A3E;
  --ambar:#8A5A00;

  --grito:'Anton', 'Arial Narrow', sans-serif;       /* display de festival */
  --pluma:'Libre Baskerville', Georgia, serif;        /* voz emocional */
  --texto:'Source Sans 3', -apple-system, sans-serif; /* cuerpo */

  --t-mega:clamp(3.2rem, 1.2rem + 10.5vw, 9.5rem);
  --t-h1:clamp(2.4rem, 1.4rem + 4.6vw, 5.2rem);
  --t-h2:clamp(1.9rem, 1.2rem + 3vw, 3.4rem);
  --t-h3:clamp(1.2rem, 1.05rem + .6vw, 1.5rem);
  --t-lead:clamp(1.1rem, 1rem + .55vw, 1.35rem);
  --t-base:1.0625rem;
  --t-small:.9375rem;
  --t-micro:.8125rem;

  --e-2:.5rem; --e-3:.75rem; --e-4:1rem; --e-5:1.5rem;
  --e-6:2rem; --e-7:3rem; --e-8:4rem; --e-9:6rem;
  --seccion:clamp(4rem, 2.2rem + 7vw, 8rem);
  --ancho:76rem;
  --transicion:200ms cubic-bezier(.2,.7,.3,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--negro);color:var(--marfil);
  font-family:var(--texto);font-size:var(--t-base);line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
p{margin:0}
a{color:var(--oro-claro)}
img{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--fiesta);outline-offset:3px}

.grito{font-family:var(--grito);font-weight:400;text-transform:uppercase;
  line-height:.92;letter-spacing:.01em;margin:0}
.pluma{font-family:var(--pluma);font-style:italic}

.saltar{position:absolute;left:-9999px;background:var(--fiesta);color:#fff;
  padding:var(--e-3) var(--e-4);z-index:300;font-weight:700}
.saltar:focus{left:var(--e-4);top:var(--e-4)}

.env{width:100%;max-width:var(--ancho);margin-inline:auto;padding-inline:var(--e-5)}
@media(min-width:48rem){.env{padding-inline:var(--e-6)}}

/* ══════ MARQUESINA ══════ */
.cinta{overflow:hidden;background:var(--oro);color:var(--negro);
  border-block:3px solid var(--negro);position:relative;z-index:5}
.cinta-in{display:flex;gap:0;white-space:nowrap;width:max-content;
  animation:rodar 28s linear infinite;padding-block:.55rem}
.cinta span{font-family:var(--grito);text-transform:uppercase;font-size:1.05rem;
  letter-spacing:.08em;padding-inline:1.2rem;display:inline-flex;align-items:center;gap:1.2rem}
.cinta span::after{content:"★";font-size:.8em}
.cinta-roja{background:var(--fiesta);color:#fff;border-block:3px solid var(--negro)}
@keyframes rodar{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.cinta-in{animation:none;width:auto;white-space:normal;flex-wrap:wrap}}

/* ══════ EVENTKOI · FICHA DEL REENCUENTRO ══════ */
.single-eventkoi_event .eventkoi-front{
  max-width:76rem;
  margin-inline:auto;
}
.single-eventkoi_event .eventkoi-front>.wp-block-columns:first-child h1{
  max-width:18ch;
  color:var(--marfil);
  font-family:var(--grito);
  font-size:clamp(2.35rem,1.4rem + 3.5vw,4.4rem);
  font-weight:400;
  letter-spacing:.015em;
  line-height:1.03;
  text-transform:uppercase;
}
.single-eventkoi_event .eventkoi-front .wp-block-image.size-large img{
  width:100%;
  aspect-ratio:8/3;
  border:1px solid rgba(196,157,87,.5);
  border-radius:1rem;
  box-shadow:0 1.25rem 3rem rgba(0,0,0,.32);
  object-fit:cover;
}
.single-eventkoi_event .eventkoi-front h2,
.single-eventkoi_event .eventkoi-front h3{
  margin-top:clamp(2rem,1.5rem + 2vw,3.5rem);
  margin-bottom:1rem;
  color:var(--marfil);
  font-family:var(--grito);
  font-weight:400;
  letter-spacing:.015em;
  line-height:1.08;
  text-transform:uppercase;
}
.single-eventkoi_event .eventkoi-front blockquote{
  margin:2rem 0;
  padding:1rem 1.25rem;
  border-left:.35rem solid var(--oro);
  background:rgba(196,157,87,.1);
}
.single-eventkoi_event .eventkoi-front>.wp-block-columns:nth-of-type(2)>.wp-block-column:nth-child(2)>.wp-block-group.has-background{
  border-color:var(--oro)!important;
  background:var(--marfil)!important;
  box-shadow:.45rem .45rem 0 var(--oro);
  color:var(--negro)!important;
}
.single-eventkoi_event .eventkoi-front>.wp-block-columns:nth-of-type(2)>.wp-block-column:nth-child(2)>.wp-block-group.has-background :where(p,strong,a){
  color:var(--negro)!important;
}
.single-eventkoi_event .eventkoi-front>.wp-block-columns:nth-of-type(2)>.wp-block-column:nth-child(2)>.wp-block-group.has-background p.has-text-color{
  color:#5f594d!important;
}
.single-eventkoi_event .eventkoi-front .wp-block-button__link{
  border-color:var(--oro)!important;
  background:transparent!important;
  color:var(--marfil)!important;
}
.single-eventkoi_event .eventkoi-front .wp-block-button__link:hover,
.single-eventkoi_event .eventkoi-front .wp-block-button__link:focus-visible{
  background:var(--oro)!important;
  color:var(--negro)!important;
}
.single-eventkoi_event .eventkoi-front>.wp-block-columns:nth-of-type(2)>.wp-block-column:nth-child(2) button{
  min-height:3rem;
  border:2px solid var(--fiesta);
  border-radius:.25rem;
  background:var(--fiesta);
  color:#fff;
  font-family:var(--grito);
  font-size:1.05rem;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.single-eventkoi_event .eventkoi-front>.wp-block-columns:nth-of-type(2)>.wp-block-column:nth-child(2) button:hover,
.single-eventkoi_event .eventkoi-front>.wp-block-columns:nth-of-type(2)>.wp-block-column:nth-child(2) button:focus-visible{
  border-color:var(--oro-claro);
  background:var(--oro-claro);
  color:var(--negro);
}

/* EventKoi crea el RSVP en un portal con fondo blanco. Fijamos un tema claro
   completo para impedir que herede el texto marfil de la página oscura. */
.single-eventkoi_event [role="dialog"].eventkoi-front{
  background:#fff!important;
  color:var(--negro)!important;
  font-family:var(--texto);
}
.single-eventkoi_event [role="dialog"].eventkoi-front :where(h2,p,label,span){
  color:var(--negro)!important;
}
.single-eventkoi_event [role="dialog"].eventkoi-front h2{
  margin:0;
  color:var(--negro)!important;
  font-family:var(--grito);
  font-size:1.65rem;
  font-weight:400;
  letter-spacing:.015em;
  line-height:1.18;
  text-transform:uppercase;
}
.single-eventkoi_event [role="dialog"].eventkoi-front label{
  line-height:1.45!important;
}
.single-eventkoi_event [role="dialog"].eventkoi-front :where(input,select,textarea){
  border-color:#8a8a8a!important;
  background:#fff!important;
  color:var(--negro)!important;
  caret-color:var(--negro);
}
.single-eventkoi_event [role="dialog"].eventkoi-front :where(input,textarea)::placeholder{
  color:#696969!important;
  opacity:1;
}
.single-eventkoi_event [role="dialog"].eventkoi-front input[readonly]{
  background:var(--marfil)!important;
  color:#4b4b4b!important;
}
.single-eventkoi_event [role="dialog"].eventkoi-front :where([role="checkbox"],[role="radio"]){
  width:1.15rem;
  height:1.15rem;
  border:1.5px solid var(--negro)!important;
  background:#fff!important;
  color:#fff!important;
}
.single-eventkoi_event [role="dialog"].eventkoi-front :where([role="checkbox"],[role="radio"])[data-state="checked"]{
  border-color:var(--fiesta)!important;
  background:var(--fiesta)!important;
}
.single-eventkoi_event [role="dialog"].eventkoi-front a{
  color:var(--oro-profundo)!important;
  font-weight:700;
}
.single-eventkoi_event [role="dialog"].eventkoi-front button[type="submit"]{
  min-height:2.75rem;
  border:2px solid var(--fiesta)!important;
  background:var(--fiesta)!important;
  color:#fff!important;
  font-weight:700;
}
.single-eventkoi_event [role="dialog"].eventkoi-front button[type="submit"]:hover,
.single-eventkoi_event [role="dialog"].eventkoi-front button[type="submit"]:focus-visible{
  border-color:var(--negro)!important;
  background:var(--negro)!important;
}
.single-eventkoi_event [role="dialog"].eventkoi-front button[type="button"]:not([role="checkbox"]):not([role="radio"]){
  color:var(--negro)!important;
}
@media(min-width:40rem){
  .single-eventkoi_event [role="dialog"].eventkoi-front{
    max-width:36rem!important;
  }
}
@media(max-width:48rem){
  .single-eventkoi_event .eventkoi-front{
    padding-inline:1rem!important;
  }
  .single-eventkoi_event .eventkoi-front>.wp-block-columns:first-child h1{
    font-size:clamp(2.1rem,10vw,3.25rem);
  }
}

/* ══════ ENCABEZADO ══════ */
.cab{position:sticky;top:0;z-index:100;background:rgba(17,17,17,.92);
  backdrop-filter:blur(10px);border-bottom:1px solid rgba(196,157,87,.35)}
.cab-in{display:flex;align-items:center;justify-content:space-between;gap:var(--e-4);min-height:4.5rem}
.wm{display:flex;align-items:center;gap:.65rem;text-decoration:none}
.wm-t{display:flex;flex-direction:column;line-height:1}
.wm-t b{font-family:var(--grito);font-size:1.3rem;letter-spacing:.04em;color:var(--marfil);font-weight:400}
.wm-t small{font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--oro);font-weight:700;margin-top:.22rem}
.nav{display:none;gap:.15rem}
@media(min-width:75rem){.nav{display:flex;align-items:center}}
.nav a{font-family:var(--grito);font-size:.92rem;letter-spacing:.05em;text-transform:uppercase;
  color:var(--marfil);text-decoration:none;padding:.55rem .65rem;white-space:nowrap;transition:var(--transicion)}
.nav a:hover{color:var(--oro-claro);transform:rotate(-2deg)}
.nav a[aria-current="page"]{color:var(--negro);background:var(--oro)}
.nav .cta-nav{background:var(--fiesta);color:#fff;margin-left:.5rem}
.nav .cta-nav:hover{background:var(--oro);color:var(--negro);transform:rotate(2deg) scale(1.04)}
.hamb{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;
  width:2.9rem;height:2.9rem;padding:.65rem;background:none;border:2px solid var(--oro);cursor:pointer}
@media(min-width:75rem){.hamb{display:none}}
.hamb i{display:block;height:2px;background:var(--oro)}
.menu{display:none;border-top:1px solid rgba(196,157,87,.35);background:var(--negro);padding-bottom:var(--e-4)}
.menu.abierto{display:block}
@media(min-width:75rem){.menu{display:none!important}}
.menu a{display:block;padding:1rem var(--e-5);color:var(--marfil);text-decoration:none;
  font-family:var(--grito);text-transform:uppercase;letter-spacing:.06em;font-size:1.15rem;
  border-bottom:1px solid rgba(196,157,87,.25)}
.menu a[aria-current="page"]{color:var(--negro);background:var(--oro)}

/* ══════ BOTONES ══════ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  font-family:var(--grito);font-size:1.15rem;letter-spacing:.05em;text-transform:uppercase;
  line-height:1;padding:1.15rem 2.1rem;text-decoration:none;border:3px solid var(--negro);
  cursor:pointer;transition:var(--transicion);min-height:3.4rem;position:relative}
.btn-fiesta{background:var(--fiesta);color:#fff;box-shadow:5px 5px 0 var(--oro)}
.btn-fiesta:hover{transform:translate(-2px,-2px) rotate(-1deg);box-shadow:8px 8px 0 var(--oro)}
.btn-oro{background:var(--oro);color:var(--negro);box-shadow:5px 5px 0 rgba(244,240,230,.25)}
.btn-oro:hover{transform:translate(-2px,-2px) rotate(1deg);box-shadow:8px 8px 0 rgba(244,240,230,.4)}
.btn-linea{background:transparent;color:var(--marfil);border-color:var(--oro)}
.btn-linea:hover{background:var(--oro);color:var(--negro);transform:rotate(-1deg)}
.btn-tinta{background:var(--negro);color:var(--marfil);box-shadow:5px 5px 0 var(--oro)}
.btn-tinta:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--oro)}
.btns{display:flex;flex-wrap:wrap;gap:var(--e-4)}
@media(max-width:30rem){.btns{flex-direction:column}.btns .btn{width:100%}}

/* ══════ INSIGNIA GIRADA ══════ */
.sello{position:absolute;display:flex;align-items:center;justify-content:center;
  width:7.5rem;height:7.5rem;border-radius:50%;background:var(--fiesta);color:#fff;
  font-family:var(--grito);text-transform:uppercase;text-align:center;line-height:1.05;
  font-size:1.05rem;letter-spacing:.03em;border:3px dashed rgba(255,255,255,.7);
  transform:rotate(9deg);box-shadow:0 8px 22px rgba(0,0,0,.45);z-index:6;
  animation:latir 3.2s ease-in-out infinite}
@keyframes latir{0%,100%{transform:rotate(9deg) scale(1)}50%{transform:rotate(7deg) scale(1.05)}}
@media(prefers-reduced-motion:reduce){.sello{animation:none}}

/* ══════ ESTADOS EDITORIALES ══════ */
.est{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--t-micro);
  font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.35rem .75rem;border:2px solid}
.est::before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:currentColor}
.est-ok{color:#9FD6B4;border-color:#3E6B52;background:rgba(44,74,62,.35)}
.est-pre{color:var(--oro-claro);border-color:var(--oro);background:rgba(196,157,87,.15)}
.est-pend{color:#CFC8BA;border-color:#5A554E;background:rgba(90,85,78,.3)}
.claro .est-ok{color:var(--verde);border-color:#9FBFA9;background:#E9F0EB}
.claro .est-pre{color:var(--ambar);border-color:#D9C089;background:#FAF2DF}
.claro .est-pend{color:var(--carbon);border-color:var(--borde-fuerte);background:var(--marfil-2)}
.meta{font-size:var(--t-micro);letter-spacing:.02em;opacity:.75}

/* ══════ SECCIONES ══════ */
.sec{padding-block:var(--seccion);position:relative}
.claro{background:var(--marfil);color:var(--negro)}
.claro p{color:var(--carbon)}
.claro .grito{color:var(--negro)}
.oro-bloque{background:var(--oro);color:var(--negro)}
.oro-bloque p{color:#3D2F14}
.rotulo{font-family:var(--grito);font-size:1rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--fiesta);margin-bottom:var(--e-4);display:flex;align-items:center;gap:var(--e-3)}
.claro .rotulo{color:var(--fiesta-tinta)}
.rotulo::after{content:"";flex:1;height:3px;background:currentColor;max-width:4rem;opacity:.7}
.lead{font-size:var(--t-lead);line-height:1.55}
.sec p+p{margin-top:var(--e-4)}

/* contorno tipográfico de festival */
.hueco{color:transparent;-webkit-text-stroke:2px var(--oro)}
.claro .hueco{-webkit-text-stroke:2px var(--negro)}

/* ══════ PORTADA ══════ */
.hero{position:relative;overflow:hidden;background:var(--negro);
  padding-block:clamp(3.5rem,2rem + 8vw,7rem) 0}
.hero::before{content:"";position:absolute;inset:0;opacity:.08;pointer-events:none;
  background-image:radial-gradient(var(--oro) 1px,transparent 1px);background-size:26px 26px}
.hero::after{content:"";position:absolute;top:-30%;right:-18%;width:70vw;height:70vw;
  max-width:56rem;max-height:56rem;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(228,87,46,.28),rgba(196,157,87,.12) 45%,transparent 68%)}
.hero-in{position:relative;z-index:2}
.hero .fechas-arriba{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e-3) var(--e-5);margin-bottom:var(--e-5)}
.hero .fechas-arriba b{font-family:var(--grito);font-size:1.1rem;letter-spacing:.12em;color:var(--oro)}
.hero .fechas-arriba span{font-size:var(--t-small);color:#C4BCAD}
.hero h1{font-size:var(--t-mega);color:var(--marfil)}
.hero h1 .l2{display:block;color:var(--oro)}
.hero h1 .l3{display:block;color:transparent;-webkit-text-stroke:2.5px var(--fiesta);letter-spacing:.02em}
.hero .frase{font-family:var(--pluma);font-style:italic;font-size:clamp(1.15rem,1rem + 1vw,1.7rem);
  color:#E8DFCE;max-width:34rem;margin-block:var(--e-6);line-height:1.45}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e-5);margin-bottom:var(--e-8)}

/* cuenta regresiva */
.cuenta{display:flex;gap:var(--e-3);flex-wrap:wrap;margin-bottom:var(--e-7)}
.cuenta div{background:var(--negro-2);border:2px solid var(--oro);padding:.85rem 1.1rem;
  min-width:5.4rem;text-align:center;transform:rotate(-1deg)}
.cuenta div:nth-child(2n){transform:rotate(1.2deg)}
.cuenta b{display:block;font-family:var(--grito);font-size:clamp(1.9rem,1.4rem + 2vw,3rem);
  color:var(--oro-claro);line-height:1}
.cuenta span{font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;color:#C4BCAD}

/* ══════ REJILLAS ══════ */
.rej{display:grid;gap:var(--e-5)}
@media(min-width:40rem){.rej-2{grid-template-columns:repeat(2,1fr)}}
@media(min-width:56rem){.rej-3{grid-template-columns:repeat(3,1fr)}}
.lado{display:grid;gap:var(--e-6)}
@media(min-width:56rem){.lado{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:var(--e-8);align-items:start}}

/* ══════ TARJETA DE DÍA · CARTEL ══════ */
.dia{position:relative;background:var(--marfil);color:var(--negro);border:3px solid var(--negro);
  padding:var(--e-5);display:flex;flex-direction:column;gap:var(--e-4);
  box-shadow:7px 7px 0 var(--oro);transition:var(--transicion)}
.dia:hover{transform:translate(-3px,-3px) rotate(-.6deg);box-shadow:11px 11px 0 var(--fiesta)}
.dia .n{font-family:var(--grito);font-size:clamp(4rem,3rem + 4vw,6.5rem);line-height:.85;color:var(--fiesta-tinta)}
.dia .d{font-family:var(--grito);font-size:1rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oro-profundo)}
.dia h3{font-family:var(--grito);font-size:var(--t-h3);text-transform:uppercase;letter-spacing:.03em;margin:0}
.dia p{font-size:var(--t-small);color:var(--carbon)}
.dia .tag{font-family:var(--grito);font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;
  background:var(--negro);color:var(--oro-claro);align-self:flex-start;padding:.35rem .7rem;transform:rotate(-2deg)}

/* ══════ TARJETA GENERAL ══════ */
.card{background:var(--blanco);color:var(--negro);border:3px solid var(--negro);
  padding:var(--e-5);display:flex;flex-direction:column;gap:var(--e-3);
  box-shadow:6px 6px 0 var(--borde-fuerte);transition:var(--transicion)}
.card:hover{transform:translate(-2px,-2px);box-shadow:9px 9px 0 var(--oro)}
.card h3{font-family:var(--grito);font-size:var(--t-h3);text-transform:uppercase;margin:0}
.card p{font-size:var(--t-small);color:var(--carbon)}
.card .num{font-family:var(--grito);font-size:2rem;color:var(--fiesta-tinta);line-height:1}

/* ══════ AVISOS ══════ */
.aviso{border:2px solid var(--negro);border-left-width:8px;background:var(--blanco);color:var(--negro);
  padding:var(--e-4) var(--e-5);display:flex;flex-direction:column;gap:var(--e-2)}
.aviso b{font-family:var(--grito);text-transform:uppercase;letter-spacing:.04em;font-size:1rem}
.aviso p{font-size:var(--t-small);color:var(--carbon)}
.aviso-alerta{border-left-color:var(--ambar);background:#FAF2DF}
.aviso-calma{border-left-color:var(--verde);background:#E9F0EB}
.aviso-fiesta{border-left-color:var(--fiesta)}
.oscuro-aviso{background:var(--negro-2);color:var(--marfil);border-color:var(--oro)}
.oscuro-aviso p{color:#CFC8BA}

/* ══════ LISTAS ══════ */
.lista{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--e-3)}
.lista li{position:relative;padding-left:var(--e-6)}
.lista li::before{content:"★";position:absolute;left:0;top:.05em;color:var(--fiesta);font-size:.95em}
.claro .lista li::before{color:var(--fiesta-tinta)}
.lista-preg li::before{content:"?";font-family:var(--grito);color:var(--fiesta-tinta)}

/* ══════ CIFRAS DEL EVENTO ══════ */
.cifras{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--e-5)}
@media(min-width:48rem){.cifras{grid-template-columns:repeat(4,1fr)}}
.cifras div{text-align:center;padding:var(--e-4)}
.cifras b{display:block;font-family:var(--grito);font-size:clamp(2.6rem,2rem + 2.5vw,4.5rem);
  color:var(--oro);line-height:1}
.cifras span{font-size:var(--t-small);letter-spacing:.08em;text-transform:uppercase;color:#C4BCAD}

/* ══════ CRONOLOGÍA ══════ */
.crono{position:relative;padding-left:var(--e-6);display:flex;flex-direction:column;gap:var(--e-6)}
.crono::before{content:"";position:absolute;left:0;top:.6rem;bottom:.6rem;width:3px;background:var(--oro)}
.crono-i{position:relative}
.crono-i::before{content:"";position:absolute;left:calc(-1 * var(--e-6) - 5px);top:.4rem;
  width:13px;height:13px;border-radius:50%;background:var(--fiesta);border:3px solid var(--marfil)}
.crono-i .a{font-family:var(--grito);font-size:2.6rem;color:var(--fiesta-tinta);line-height:1;margin-bottom:var(--e-2)}
.crono-i h3{font-family:var(--grito);font-size:var(--t-h3);text-transform:uppercase;margin:0 0 var(--e-2)}
.crono-i p{font-size:var(--t-small)}

/* ══════ POLAROID / RANURA DE FOTO ══════ */
.pola{background:var(--blanco);border:1px solid var(--borde);padding:.7rem .7rem 2.6rem;
  box-shadow:0 10px 26px rgba(0,0,0,.28);transform:rotate(-2.2deg);transition:var(--transicion);position:relative}
.pola:nth-child(2n){transform:rotate(1.8deg)}
.pola:nth-child(3n){transform:rotate(-1deg)}
.pola:hover{transform:rotate(0) scale(1.03);z-index:3}
.pola .marco{aspect-ratio:1/1;background:repeating-linear-gradient(45deg,var(--marfil-2) 0 12px,#E2D8C2 12px 24px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;
  text-align:center;padding:var(--e-4);color:var(--carbon)}
.pola .marco b{font-family:var(--grito);text-transform:uppercase;font-size:.95rem;letter-spacing:.05em}
.pola .marco span{font-size:var(--t-micro);max-width:22ch}
.pola figcaption{position:absolute;bottom:.55rem;left:0;right:0;text-align:center;
  font-family:var(--pluma);font-style:italic;font-size:.85rem;color:var(--carbon)}

/* ══════ MEDIOS DE TRANSPORTE ══════ */
.medio{border-top:3px solid var(--negro);padding-block:var(--e-5);display:grid;gap:var(--e-3)}
@media(min-width:48rem){.medio{grid-template-columns:15rem 1fr;gap:var(--e-6)}}
.medio h3{font-family:var(--grito);font-size:var(--t-h3);text-transform:uppercase;margin:0}
.medio p{font-size:var(--t-small)}

.hotel{background:var(--blanco);color:var(--negro);border:3px solid var(--negro);
  box-shadow:5px 5px 0 var(--borde-fuerte);padding:var(--e-5);display:grid;gap:var(--e-2)}
.hotel b{font-family:var(--grito);font-size:1.1rem;text-transform:uppercase;letter-spacing:.02em}
.hotel p{font-size:var(--t-small);color:var(--carbon)}

/* ══════ GRAN CIERRE ══════ */
.gran{position:relative;text-align:center;overflow:hidden}
.gran .grito{font-size:var(--t-h1)}
.gran .pluma{font-size:clamp(1.2rem,1rem + 1.4vw,1.9rem);color:#E8DFCE;display:block;margin-top:var(--e-4)}
.lema{font-family:var(--grito);font-size:1rem;letter-spacing:.32em;text-transform:uppercase;
  color:var(--oro);margin-top:var(--e-6)}

/* ══════ TAPA DE PÁGINA ══════ */
.tapa{background:var(--negro);position:relative;overflow:hidden;
  padding-block:clamp(3rem,1.8rem + 5vw,5.5rem)}
.tapa::before{content:"";position:absolute;inset:0;opacity:.07;pointer-events:none;
  background-image:radial-gradient(var(--oro) 1px,transparent 1px);background-size:26px 26px}
.tapa .env{position:relative;z-index:2}
.tapa h1{font-size:var(--t-h1);color:var(--marfil);max-width:24ch}
.tapa h1 em{font-style:normal;color:var(--oro)}
.tapa .lead{max-width:48ch;color:#CFC8BA;margin-top:var(--e-4)}
.tapa .fila{display:flex;flex-wrap:wrap;gap:var(--e-3);align-items:center;margin-top:var(--e-5)}

/* ══════ PIE ══════ */
.pie{background:var(--negro);border-top:3px solid var(--oro);padding-block:var(--e-8) var(--e-6);font-size:var(--t-small);color:#C4BCAD}
.pie .mega-pie{font-family:var(--grito);font-size:clamp(2.4rem,1.5rem + 5vw,5.5rem);
  text-transform:uppercase;line-height:.95;color:transparent;-webkit-text-stroke:1.5px var(--oro);
  margin-bottom:var(--e-7);text-align:center}
.pie-rej{display:grid;gap:var(--e-6);margin-bottom:var(--e-7)}
@media(min-width:48rem){.pie-rej{grid-template-columns:1.5fr 1fr 1fr}}
.pie h4{font-family:var(--grito);font-size:1rem;letter-spacing:.14em;text-transform:uppercase;color:var(--oro-claro);margin:0 0 var(--e-4)}
.pie a{color:#C4BCAD;text-decoration:none;display:block;padding-block:.34rem}
.pie a:hover{color:var(--oro-claro)}
.pie-baja{border-top:1px solid rgba(196,157,87,.3);padding-top:var(--e-5);
  display:flex;flex-wrap:wrap;gap:var(--e-4);justify-content:space-between;font-size:var(--t-micro)}

/* ══════ RUTEO ══════ */
.pag{display:none}
.pag.activa{display:block;animation:entra .35s ease both}
@keyframes entra{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}

.nota-proto{background:var(--negro-2);color:var(--oro-claro);font-size:var(--t-micro);
  padding:.6rem var(--e-5);text-align:center;border-bottom:1px solid var(--oro)}

/* Adaptación WordPress: conserva la composición exacta sin la nota ni el ruteo del prototipo. */
.admin-bar .cab{top:32px}
.wp-site-blocks{padding:0}
.wp-site-blocks > *{margin-block-start:0}
.wp-block-post-content{margin:0}
@media(max-width:782px){.admin-bar .cab{top:46px}}
@media(max-width:600px){.admin-bar .cab{top:0}}
/* Formularios públicos · Forminator */
.forminator-ui.forminator-custom-form {
  max-width: 100%;
  color: var(--negro);
}

.forminator-ui .forminator-title {
  color: var(--negro) !important;
  font-family: var(--fuente-impacto) !important;
  font-size: clamp(1.9rem, 7vw, 2.8rem) !important;
  line-height: .95 !important;
  letter-spacing: .01em !important;
  overflow-wrap: anywhere;
}

.forminator-ui .forminator-label,
.forminator-ui .forminator-description,
.forminator-ui .forminator-checkbox__label p {
  color: var(--negro) !important;
}

.forminator-ui input,
.forminator-ui textarea,
.forminator-ui select {
  max-width: 100%;
}

@media (max-width: 520px) {
  .forminator-ui .forminator-title {
    font-size: 2rem !important;
    line-height: 1 !important;
  }
}
