/* =========================================================
   VARIABLES + LAYOUT BASE
   ========================================================= */
:root { --oct-radius: 18px; }

body.page-template-octoberfest-template .oct{
  --oct-primary: #d4a017;
  --oct-blue:    #0b3373;
  --oct-beige:   #e7d6ad;
  --oct-bg:      #f6f1e3;
  --oct-text:    #0f172a;
  color: var(--oct-text);
  background: var(--oct-bg);
}
body.page-template-octoberfest-template .oct-container{
  max-width:1200px; margin:0 auto; padding:0 16px;
}

/* Quitar márgenes del tema en esta plantilla */
body.page-template-octoberfest-template .site,
body.page-template-octoberfest-template .site-content,
body.page-template-octoberfest-template .content,
body.page-template-octoberfest-template .entry-content,
body.page-template-octoberfest-template .site-main{
  padding-top:0; margin-top:0; background:transparent;
}

html{ scroll-behavior:smooth }
/* === HERO centrado y más pequeño === */
body.page-template-octoberfest-template .oct .oct-hero--cover{
  position:relative;
  min-height:96vh;
  overflow:hidden;
  border-bottom:6px solid var(--oct-primary);
}
body.page-template-octoberfest-template .oct .oct-hero__bg{
  position:absolute; inset:0;
  background: var(--oct-hero-img, url('')) center/cover no-repeat;
  transform: scale(1.18);
}
body.page-template-octoberfest-template .oct .oct-hero__overlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.28), rgba(0,0,0,.6));
}

/* Contenido centrado */
body.page-template-octoberfest-template .oct .oct-hero__content{
  position:relative; z-index:2; color:#fff;
  max-width:1100px; margin:0 auto; padding:40px 16px;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-height: min(86vh, 820px);
  text-align:center;
}

/* Logo */
body.page-template-octoberfest-template .oct .oct-badge{
  width:260px; height:auto; margin:0 auto -28px;
  filter: drop-shadow(0 8px 26px rgba(0,0,0,.5));
}
body.page-template-octoberfest-template .oct .oct-badge--lg{ width:260px; }

/* ===== Tipografía y tamaños ===== */

/* FECHA (Poppins 300) – pegadísima al pretítulo y 2px más baja */
body.page-template-octoberfest-template .oct .oct-date{
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 300;
  font-size: clamp(16px, 1.9vw, 21px);
  line-height: 1.00;            /* más compacta */
  margin: 0;                     /* sin hueco */
  display: inline-block;         /* permite translate */
  transform: translateY(2px);    /* baja visualmente la fecha */
  text-shadow:0 3px 14px rgba(0,0,0,.35);
}

/* PRETÍTULO (Great Vibes grande) – sin huecos */
body.page-template-octoberfest-template .oct .oct-pretitle{
  font-family:"Great Vibes", cursive;
  font-weight:400;
  color:#fff;
  margin-left:auto; margin-right:auto; max-width:92vw;
  text-shadow:0 6px 24px rgba(0,0,0,.55);
  font-size: clamp(72px, 11vw, 180px);
  line-height:1.02;
  margin: 0; /* junta fecha ↔ h2 ↔ h1 */
  white-space: normal; text-wrap: balance; word-break: normal;
}

/* TÍTULO (Poppins 300) – pequeño y aún más pegado */
body.page-template-octoberfest-template .oct .oct-headline{
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 300; /* fino como la fecha */
  color:#fff;
  margin-left:auto; margin-right:auto; max-width:92vw;
  text-shadow:0 6px 24px rgba(0,0,0,.55);
  font-size: clamp(18px, 3.2vw, 34px);
  line-height:1.08;
  margin: 1px 0 8px; /* ↓ antes 2px: más pegado al h2 */
  white-space: nowrap; text-wrap: nowrap; word-break: normal;

  /* pin junto al texto */
  display: inline-flex; align-items: center; gap: 4px; /* ↓ antes 6px */
}

/* Pin del h1 */
body.page-template-octoberfest-template .oct .oct-headline .oct-pin{
  line-height: 0;
  display: inline-flex; align-items: center; justify-content: center;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.35));
  font-size: 1.02em;
}

/* Botón */
body.page-template-octoberfest-template .oct .oct-cta-btn{
  display:inline-block; padding:14px 26px;
  background:linear-gradient(180deg, #fff2b3, var(--oct-primary));
  color:#1f2937; font-weight:900; font-size:16px; border-radius:999px;
  text-decoration:none; box-shadow:0 10px 28px rgba(0,0,0,.35);
}
body.page-template-octoberfest-template .oct .oct-cta-btn:hover{
  filter:saturate(112%) brightness(1.03); transform:translateY(-2px);
}

/* ===== Responsive ===== */
@media (max-width: 600px){
  body.page-template-octoberfest-template .oct .oct-badge{ width:200px; margin-bottom:-16px; }

  body.page-template-octoberfest-template .oct .oct-date{
    font-size: clamp(14px, 3.6vw, 17px);
    line-height: 1.02;
    margin: 0;
    transform: translateY(1px);  /* bajada sutil en móvil */
  }
  body.page-template-octoberfest-template .oct .oct-pretitle{
    font-size: clamp(46px, 14vw, 92px);
    margin: 0;
  }
  body.page-template-octoberfest-template .oct .oct-headline{
    font-size: clamp(16px, 4.8vw, 26px);
    line-height: 1.1;
    margin: 1px 0 8px;
    gap: 4px;
  }
  body.page-template-octoberfest-template .oct .oct-headline .oct-pin{
    font-size: 1.08em;
  }
}




/* Barra dorada + altura mínima */
body.page-template-octoberfest-template .oct .oct-gold-bar{ height:8px; background:var(--oct-primary); }
body.page-template-octoberfest-template .oct .oct-hero--cover{ min-height:100vh; }






/* =========================================================
   COMPONENTES GENERALES (cards, poster, mapa)
   ========================================================= */
body.page-template-octoberfest-template .oct .oct-info{ padding:18px 0; }
body.page-template-octoberfest-template .oct .oct-cards{ display:grid; grid-template-columns:1fr; gap:14px; }
@media(min-width:740px){ body.page-template-octoberfest-template .oct .oct-cards{ grid-template-columns:repeat(3,1fr);} }
body.page-template-octoberfest-template .oct .oct-card{
  background:#ffffff; border-radius:var(--oct-radius);
  border:2px solid color-mix(in srgb, var(--oct-beige) 70%, #fff 30%); box-shadow:0 6px 18px rgba(0,0,0,.06);
}
body.page-template-octoberfest-template .oct .oct-card h3{
  margin:0; padding:10px 12px; background:var(--oct-blue); color:#fff; font-weight:800; border-bottom:2px solid var(--oct-beige);
}
body.page-template-octoberfest-template .oct .oct-card p{ margin:12px; }

/* Poster marco */
body.page-template-octoberfest-template .oct .oct-poster__frame{
  border:4px solid var(--oct-blue); outline:6px solid var(--oct-beige);
  border-radius:14px; overflow:hidden; box-shadow:0 10px 26px rgba(0,0,0,.14); background:#fff;
}
body.page-template-octoberfest-template .oct .oct-poster__frame--small{ max-width:360px; margin:0 auto; }
body.page-template-octoberfest-template .oct .oct-poster__frame img{ width:100%; height:auto; display:block; }

/* ===============================
   MAPA – sección destacada
   =============================== */
body.page-template-octoberfest-template .oct .oct-map{
  padding: 36px 0 28px;
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--oct-blue) 78%, #000 22%),
    color-mix(in srgb, var(--oct-blue) 72%, #000 28%));
}
body.page-template-octoberfest-template .oct .oct-map .oct-container{ position: relative; }

body.page-template-octoberfest-template .oct .oct-map .oct-container::before{
  content:""; position:absolute; left:50%; transform:translateX(-50%);
  top: 6px; width: min(980px, 96%); height: 170px; z-index:0;
  background: radial-gradient(ellipse at center,
    rgba(255,255,255,.16) 0%,
    rgba(255,255,255,.06) 45%,
    rgba(255,255,255,0) 70%);
  filter: blur(10px); pointer-events:none;
}

body.page-template-octoberfest-template .oct .oct-map h2{
  color:#fff; text-align:center; font-weight:900;
  margin:0 0 14px; position:relative; padding-bottom:10px; z-index:1;
}
body.page-template-octoberfest-template .oct .oct-map h2::after{
  content:""; position:absolute; left:50%; bottom:0; transform:translateX(-50%);
  width:110px; height:6px; border-radius:999px; background:var(--oct-primary);
}

body.page-template-octoberfest-template .oct #oct-map{
  position: relative; z-index:1;
  height: 380px;
  border-radius: 16px;
  border: 4px solid color-mix(in srgb, var(--oct-primary) 80%, #fff 20%);
  outline: 5px solid rgba(255,255,255,.85);
  box-shadow: 0 16px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.4);
}
@media (min-width: 860px){
  body.page-template-octoberfest-template .oct #oct-map{ height: 460px; }
}


/* CTA inferior (el superior ya no existe) */
body.page-template-octoberfest-template .oct .oct-map__cta{
  display:inline-block; padding:12px 18px; margin:14px auto 0;
  background: linear-gradient(180deg, #fff2b3, var(--oct-primary));
  color:#1f2937; font-weight:900; border-radius:999px; text-decoration:none;
  box-shadow:0 10px 24px rgba(0,0,0,.25);
}
body.page-template-octoberfest-template .oct .oct-map__cta:hover{
  filter:saturate(112%) brightness(1.03); transform:translateY(-2px);
}
body.page-template-octoberfest-template .oct .oct-map__cta-wrap{
  text-align:center; margin-top:12px;
}




/* Utilidades de contenido */
body.page-template-octoberfest-template .oct .oct-block{
  background:#fff; border:2px solid color-mix(in srgb, var(--oct-beige) 70%, #fff 30%); border-radius:var(--oct-radius); padding:18px; box-shadow:0 6px 18px rgba(0,0,0,.06);
}
body.page-template-octoberfest-template .oct .oct-notice{
  margin-top:12px; border-left:6px solid var(--oct-primary);
  background:color-mix(in srgb, var(--oct-beige) 25%, #fff 75%); padding:14px; border-radius:12px; font-weight:600;
}

/* Layout dos columnas adaptable */
body.page-template-octoberfest-template .oct .oct-two{ display:grid; grid-template-columns:1fr; gap:14px; align-items:start; }
@media(min-width:860px){ body.page-template-octoberfest-template .oct .oct-two{ grid-template-columns:1.2fr .8fr; }}

/* ===== QUIÉNES SOMOS – layout 2 columnas ===== */
body.page-template-octoberfest-template .oct .oct-about2{
  padding: 48px 0 16px;
  background: transparent;
}

body.page-template-octoberfest-template .oct .oct-about2__grid{
  display: grid;
  grid-template-columns: 1.15fr .85fr;   /* texto / imagen */
  gap: 28px;
  align-items: center;
}

@media (max-width: 900px){
  body.page-template-octoberfest-template .oct .oct-about2__grid{
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

/* Título y párrafos */
body.page-template-octoberfest-template .oct .oct-about2__text h2{
  color:#fff; font-weight:900; margin:0 0 12px; position:relative; padding-bottom:8px;
}
body.page-template-octoberfest-template .oct .oct-about2__text h2::after{
  content:""; position:absolute; left:0; bottom:0; width:82px; height:5px;
  border-radius:999px; background:var(--oct-primary);
}
body.page-template-octoberfest-template .oct .oct-about2__text p{
  color: rgba(255,255,255,.92); margin:.6rem 0;
}

/* Bullets compactos */
body.page-template-octoberfest-template .oct .oct-about2__bullets{
  margin: 8px 0 0; padding-left: 1.1em; color:#fff;
}
body.page-template-octoberfest-template .oct .oct-about2__bullets li{
  padding: 4px 0; font-weight:700;
}

/* Imagen con marco */
body.page-template-octoberfest-template .oct .oct-about2__media{
  aspect-ratio: 16/9;                         /* alto adaptable */
  background: var(--about-img, none) center/cover no-repeat;
  border-radius: 18px;
  border: 4px solid color-mix(in srgb, var(--oct-beige) 70%, #fff 30%);
  outline: 6px solid rgba(255,255,255,.85);
  box-shadow: 0 14px 28px rgba(0,0,0,.18);
}

@media (max-width: 520px){
  body.page-template-octoberfest-template .oct .oct-about2__media{
    aspect-ratio: 4/3;
    outline-width:4px; border-width:3px;
  }
}

/* ===== INFORMACIÓN + NOVEDADES ===== */

/* Títulos de secciones */
body.page-template-octoberfest-template .oct .oct-infofull h2,
body.page-template-octoberfest-template .oct .oct-merch h3,
body.page-template-octoberfest-template .oct .oct-novedades h3 {
  color:#fff;
  font-weight:900;
  margin:0 0 14px;
  position:relative;
  padding-bottom:8px;
}
body.page-template-octoberfest-template .oct .oct-infofull h2::after,
body.page-template-octoberfest-template .oct .oct-merch h3::after,
body.page-template-octoberfest-template .oct .oct-novedades h3::after {
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:82px;
  height:5px;
  border-radius:999px;
  background:var(--oct-primary);
}

/* Texto info */
.oct-infofull {
  padding:40px 0 20px;
  background:linear-gradient(180deg,
    color-mix(in srgb, var(--oct-blue) 75%, #000 25%),
    color-mix(in srgb, var(--oct-blue) 70%, #000 30%));
}
.oct-infofull__grid {
  display:grid;
  gap:24px;
  grid-template-columns:1.1fr .9fr;
  align-items:center;
}
@media(max-width:860px){
  .oct-infofull__grid { grid-template-columns:1fr; }
}
.oct-infofull__text p { color:rgba(255,255,255,.92); margin:.6rem 0; }

/* Imagen de ambiente */
.oct-infofull__media {
  aspect-ratio:4/3;
  border-radius:18px;
  background:var(--bg) center/cover no-repeat;
  border:5px solid color-mix(in srgb, var(--oct-primary) 92%, #fff 8%);
  box-shadow:0 14px 28px rgba(0,0,0,.25);
}
@media(max-width:860px){
  .oct-infofull__media { aspect-ratio:16/9; }
}

/* ===== MERCHSHOW – sección con espaciado ===== */
body.page-template-octoberfest-template .oct .oct-merchshow{
  padding: 36px 0;               /* espacio arriba y abajo */
}

/* Título + subtítulo */
body.page-template-octoberfest-template .oct .oct-merchshow__title{
  color:#fff; font-weight:900; margin:0 0 12px; position:relative; padding-bottom:8px;
}
body.page-template-octoberfest-template .oct .oct-merchshow__title::after{
  content:""; position:absolute; left:0; bottom:0; width:82px; height:5px; border-radius:999px; background:var(--oct-primary);
}
body.page-template-octoberfest-template .oct .oct-merchshow__lead{
  color:rgba(255,255,255,.92); margin:.5rem 0 1rem;
}

/* Marco del pase (centrado, más pequeño) */
body.page-template-octoberfest-template .oct .oct-merchshow__frame{
  position:relative; overflow:hidden;
  /* ✅ tamaño controlado y centrado */
  width: min(70%, 720px);
  margin: 20px auto 28px;
  aspect-ratio: 16/9;                       /* horizontal y no tan alto */
  border-radius:16px;
  border:4px solid color-mix(in srgb, var(--oct-primary) 85%, #fff 15%);
  outline:5px solid rgba(255,255,255,.85);
  box-shadow:0 12px 26px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.35);
  background:#061433;
}
@media (max-width: 900px){
  body.page-template-octoberfest-template .oct .oct-merchshow__frame{
    width: min(84%, 640px);
  }
}
@media (max-width: 720px){
  body.page-template-octoberfest-template .oct .oct-merchshow__frame{
    width: 92%;
    aspect-ratio: 4/3;                       /* en móvil algo más alta */
  }
}

/* Capas de imagen (crossfade) */
body.page-template-octoberfest-template .oct .oct-merchshow__layer{
  position:absolute; inset:0; opacity:0;
  background:var(--bg) center/cover no-repeat;
  transition:opacity .6s ease;
  will-change:opacity;
}
body.page-template-octoberfest-template .oct .oct-merchshow__layer.is-on{ opacity:1; }

/* Sutil overlay para legibilidad */
body.page-template-octoberfest-template .oct .oct-merchshow__frame::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.18) 85%);
}



/* ===== NOVEDADES ===== */
.oct-novedades__grid { display:grid; gap:14px; }
.oct-nov {
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  background:color-mix(in srgb, var(--oct-blue) 20%, #000 80%);
  border:2px solid color-mix(in srgb, var(--oct-beige) 70%, #fff 30%);
  border-radius:16px;
  padding:14px;
  box-shadow:0 6px 18px rgba(0,0,0,.15);
}
.oct-nov__icon { font-size:26px; }
.oct-nov__body h4 { margin:0 0 6px; color:#fff; font-weight:800; }
.oct-nov__body p { margin:0; color:rgba(255,255,255,.92); }


/* =========================================================
   FORMATOS DE CERVEZA – NUEVO (visual con imagen)
   ========================================================= */
body.page-template-octoberfest-template .oct .oct-drinks{
  padding:34px 0 18px;
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--oct-blue) 78%, #000 22%),
    color-mix(in srgb, var(--oct-blue) 72%, #000 28%));
}
body.page-template-octoberfest-template .oct .oct-drinks__title{
  color:#fff; font-weight:900; margin:0 0 16px; position:relative; padding-bottom:8px;
}
body.page-template-octoberfest-template .oct .oct-drinks__title::after{
  content:""; position:absolute; left:0; bottom:0; width:82px; height:5px; border-radius:999px; background:var(--oct-primary);
}
body.page-template-octoberfest-template .oct .oct-drinks__hint{ color:rgba(255,255,255,.85); margin-top:12px; }

/* grid */
body.page-template-octoberfest-template .oct .oct-drinkcards{
  display:grid; gap:16px; grid-template-columns:1fr;
}
@media (min-width:720px){
  body.page-template-octoberfest-template .oct .oct-drinkcards{ grid-template-columns:repeat(2,1fr); }
}

/* tarjeta con imagen de fondo */
body.page-template-octoberfest-template .oct .oct-drinkcard{
  position:relative; overflow:hidden; border-radius:var(--oct-radius);
  border:3px solid color-mix(in srgb, var(--oct-beige) 55%, #fff 45%);
  box-shadow:0 10px 24px rgba(0,0,0,.18); background:#0b1f44; isolation:isolate;
}
body.page-template-octoberfest-template .oct .oct-drinkcard:hover .oct-drinkcard__media{
  transform:scale(1.04); opacity:1;
}
body.page-template-octoberfest-template .oct .oct-drinkcard__content{
  position:absolute; inset:auto 0 0 0; padding:16px; color:#fff; z-index:2;
}
body.page-template-octoberfest-template .oct .oct-drinkcard__title{
  margin:0 0 6px; font-weight:900; color:#fff; display:inline-block; padding:6px 12px;
  background: color-mix(in srgb, var(--oct-blue) 25%, #000 75%);
  border:2px solid color-mix(in srgb, var(--oct-primary) 85%, #fff 15%);
  border-radius:999px;
  box-shadow:0 6px 14px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.25);
}
body.page-template-octoberfest-template .oct .oct-drinkcard__text{
  margin:0; color:rgba(255,255,255,.92); font-weight:600; text-shadow:0 2px 8px rgba(0,0,0,.45);
}

/* ✅ ÚNICA versión correcta */
body.page-template-octoberfest-template .oct .oct-drinkcard__media{
  aspect-ratio:16/9;
  background:
    /* capa de oscurecido */
    linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.55) 85%),
    /* imagen variable */
    var(--bg) center/cover no-repeat;
  transition: transform .5s ease, opacity .5s ease;
  opacity:.95;
}



/* =========================================================
   ACTUACIONES – tarjetas hero, centradas y dinámicas
   ========================================================= */

/* Título centrado y en blanco */
body.page-template-octoberfest-template .oct .oct-shows h2{
  color:#fff;
  text-align:center;
  font-weight:900;
  margin:8px 0 18px;
  position:relative;
  padding-bottom:10px;
}
body.page-template-octoberfest-template .oct .oct-shows h2::after{
  content:"";
  position:absolute; left:50%; bottom:0;
  transform:translateX(-50%);
  width:110px; height:6px; border-radius:999px;
  background:var(--oct-primary);
}

/* Grid centrado y fluido */
body.page-template-octoberfest-template .oct .oct-showcards{
  display:grid; gap:22px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 520px));
  justify-content:center;
  justify-items:center;
}

/* Tarjeta estilo hero */
body.page-template-octoberfest-template .oct .oct-showcard{
  position:relative;
  width:100%;
  border-radius:var(--oct-radius);
  overflow:hidden;
  border:3px solid color-mix(in srgb, var(--oct-beige) 65%, #fff 35%);
  box-shadow:0 14px 28px rgba(0,0,0,.22);
  background:#0b1f44;
  transform:translateZ(0);
}

/* Media con zoom */
body.page-template-octoberfest-template .oct .oct-showcard__media{
  position:relative;
  aspect-ratio:16/9;
  background:#0b1f44;
}
body.page-template-octoberfest-template .oct .oct-showcard__media img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .6s ease, filter .6s ease;
  filter:saturate(1) contrast(1.02);
}
/* Overlay para legibilidad */
body.page-template-octoberfest-template .oct .oct-showcard__media::after{
  content:""; position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.55) 60%, rgba(0,0,0,.75) 100%);
  pointer-events:none;
}

/* Contenido centrado */
body.page-template-octoberfest-template .oct .oct-showcard__body{
  position:absolute; inset:0;
  padding:18px;
  display:flex; flex-direction:column;
  align-items:center; justify-content:flex-end;
  text-align:center; gap:6px; color:#fff; z-index:2;
}
body.page-template-octoberfest-template .oct .oct-showcard__title{
  margin:0; color:#fff; font-weight:900;
  font-size:clamp(20px, 2.6vw, 28px);
  line-height:1.1;
  text-shadow:0 3px 16px rgba(0,0,0,.6);
}
body.page-template-octoberfest-template .oct .oct-showcard__meta{
  margin:0;
  font-weight:700; letter-spacing:.2px; color:#fff;
  text-shadow:0 2px 10px rgba(0,0,0,.55);
  background:color-mix(in srgb, var(--oct-blue) 25%, #000 75%);
  border:2px solid color-mix(in srgb, var(--oct-primary) 85%, #fff 15%);
  padding:6px 10px; border-radius:999px; display:inline-block;
}

/* Hover */
body.page-template-octoberfest-template .oct .oct-showcard:hover .oct-showcard__media img{
  transform:scale(1.05);
  filter:saturate(1.05) contrast(1.05);
}
body.page-template-octoberfest-template .oct .oct-showcard:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 36px rgba(0,0,0,.26);
}

/* Placeholder cuando no hay imagen */
body.page-template-octoberfest-template .oct .oct-showcard__placeholder{
  width:100%; height:100%; aspect-ratio:16/9;
  background:
    repeating-linear-gradient(-45deg,
      color-mix(in srgb, var(--oct-beige) 45%, #fff 55%) 0 14px,
      color-mix(in srgb, var(--oct-blue) 12%, #fff 88%) 14px 28px);
  position:relative;
}
body.page-template-octoberfest-template .oct .oct-showcard__placeholder::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.5));
}

/* =========================================================
   BANNER “PAPEL” (bienvenida + aviso)
   ========================================================= */
body.page-template-octoberfest-template .oct .oct-banner__paper{
  --paper-base:#e7d6ad;
  --paper-tex:url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'>\
    <filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0.2'/><feComponentTransfer><feFuncA type='table' tableValues='0 0 0 0.06 0.1'/></feComponentTransfer></filter>\
    <rect width='100%' height='100%' filter='url(#n)'/>\
  </svg>");
  background:
    linear-gradient(180deg, rgba(255,255,255,.15), rgba(0,0,0,.04)),
    radial-gradient(1200px 300px at 50% -200px, rgba(255,255,255,.35), transparent 70%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.06) 0 2px, rgba(0,0,0,.03) 2px 4px),
    var(--paper-tex),
    var(--paper-base);
  background-blend-mode: soft-light, soft-light, multiply, multiply, normal;
  border:5px solid var(--oct-blue); outline:8px solid #ffffff; border-radius:18px;
  box-shadow: 0 12px 28px rgba(0,0,0,.18), inset 0 2px 0 rgba(255,255,255,.5), inset 0 -2px 0 rgba(0,0,0,.08);
  padding:24px 22px 10px; max-width:1100px; margin:14px auto 24px;
}
body.page-template-octoberfest-template .oct .oct-banner__title{
  font-family:"IM Fell English SC", serif; font-weight:400;
  font-size:clamp(26px,3vw,36px); line-height:1.15; margin:0 0 10px; color:#1b2340; text-shadow:0 1px 0 rgba(255,255,255,.4);
}
body.page-template-octoberfest-template .oct .oct-banner__lead,
body.page-template-octoberfest-template .oct .oct-banner__text{
  font-family:"IM Fell English", serif; font-size:clamp(15px,1.7vw,18px); line-height:1.55; margin:0 0 8px; color:#182133;
}
body.page-template-octoberfest-template .oct .oct-banner__lead strong{ font-weight:700; }
body.page-template-octoberfest-template .oct .oct-banner__legal{
  margin:12px -16px 0; padding:10px 16px; border-top:2px solid rgba(0,0,0,.08);
  background:color-mix(in srgb, var(--oct-beige) 70%, #fff 30%);
  border-bottom-left-radius:14px; border-bottom-right-radius:14px;
  font-family:"IM Fell English", serif; font-size:clamp(13px,1.5vw,16px); line-height:1.4; color:#1b2340;
}
@media (max-width:480px){
  body.page-template-octoberfest-template .oct .oct-banner__paper{ padding:18px 16px 8px; outline-width:4px; border-width:3px; }
  body.page-template-octoberfest-template .oct .oct-banner__legal{ margin-left:-12px; margin-right:-12px; border-radius:12px; }
}

/* =========================================================
   (OPCIONAL) TIMELINE
   ========================================================= */
body.page-template-octoberfest-template .oct .oct-timeline{ position:relative; padding-left:22px; margin:12px 0 4px; }
body.page-template-octoberfest-template .oct .oct-timeline:before{ content:""; position:absolute; left:8px; top:0; bottom:0; width:2px; background:var(--oct-blue); opacity:.25; }
body.page-template-octoberfest-template .oct .oct-timeline__item{ position:relative; margin:12px 0 16px; }
body.page-template-octoberfest-template .oct .oct-timeline__dot{ position:absolute; left:0; top:.4em; width:16px; height:16px; border-radius:999px; background:var(--oct-primary); box-shadow:0 0 0 4px #fff; border:2px solid color-mix(in srgb, var(--oct-blue) 70%, #fff 30%); }
body.page-template-octoberfest-template .oct .oct-timeline__content{
  background:#fff; border-radius:14px; padding:12px 14px; border:2px solid color-mix(in srgb, var(--oct-beige) 70%, #fff 30%); box-shadow:0 6px 18px rgba(0,0,0,.06);
}
body.page-template-octoberfest-template .oct .oct-timeline__item--soft .oct-timeline__content{ opacity:.9; }
body.page-template-octoberfest-template .oct .oct-note{ margin-top:6px; font-size:.95rem; opacity:.85; }

/* FIX solo FECHA (máxima prioridad) */
body.page-template-octoberfest-template .oct .oct-hero__content > .oct-date{
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
  font-weight: 300 !important;
  font-size: clamp(16px, 1.9vw, 21px) !important;
  line-height: 1 !important;
  margin: 0 !important;              /* elimina margen del <p> del tema */
  display: inline-block !important;  /* permite bajar ópticamente */
  transform: translateY(2px) !important; /* baja la fecha para pegarla al h2 */
  text-shadow: 0 3px 14px rgba(0,0,0,.35) !important;
}

body.page-template-octoberfest-template .oct .oct-pretitle{ margin-top: 0 !important; }


/* ===========================
   ENCUESTA DE SATISFACCIÓN
   =========================== */
body.page-template-octoberfest-template .oct .oct-survey{
  padding: 36px 0 32px;
  text-align: center;
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--oct-blue) 78%, #000 22%),
    color-mix(in srgb, var(--oct-blue) 72%, #000 28%));
}

body.page-template-octoberfest-template .oct .oct-survey__title{
  color:#fff; font-weight:900; margin:0 0 10px; position:relative; padding-bottom:10px;
}
body.page-template-octoberfest-template .oct .oct-survey__title::after{
  content:""; position:absolute; left:50%; bottom:0; transform:translateX(-50%);
  width:120px; height:6px; border-radius:999px; background:var(--oct-primary);
}
body.page-template-octoberfest-template .oct .oct-survey__lead{
  color:rgba(255,255,255,.92); margin:.4rem 0 1.1rem; font-weight:600;
}

body.page-template-octoberfest-template .oct .oct-survey__btn{
  display:inline-block; padding:14px 26px;
  background: linear-gradient(180deg, #fff2b3, var(--oct-primary));
  color:#1f2937; font-weight:900; font-size:16px; border-radius:999px; text-decoration:none;
  box-shadow:0 10px 28px rgba(0,0,0,.35);
}
body.page-template-octoberfest-template .oct .oct-survey__btn:hover{
  filter:saturate(112%) brightness(1.03); transform:translateY(-2px);
}




