/* =============================================================================
   EVENTOS PFS — /eventos/ (listado) y /eventos/<slug>/ (detalle y reserva), scripts/build-eventos.js.
   Figma "PFS | Entregas" (QP8dpaPwOHvXXXj8b6LV36), Entrega 18:
   3 · Listado 2749:2747 (1360) / 2749:3028 (390);
   4.1 Detalle 2749:3274 (1360) / 2749:3909 (390), 4.2 Confirmación 2749:3590 / 2749:4198.
   Medidas del panel de Propiedades leídas por Bowser (28-oct-2026; la API de Figma daba 429),
   con el nodo al lado. Rótulos en Host Grotesk y azul de marca, no Inter ni #2563EB (mismo
   desvío que el recurso exclusivo). Va después de styles.css.
   ========================================================================== */

.ev-page{ --ev-text:#1e1e1e; --ev-sec:#565656; --ev-muted:#697386; --ev-line:#d1d8e5; --ev-strong:#8ca1ab; --ev-gold:#e5c179; --ev-gold-ink:#866b44; --ev-deep:#031420; --ev-subtle:#f2f2f2;
  background:#f8fafc; color:var(--ev-text); font-family:var(--h26-font,"Host Grotesk",system-ui,sans-serif); }
.ev-page .ev-m{ display:none; }
/* «Próximos eventos» en el home (build-eventos.js, 1-nov-2026): solo los tokens, el resto es del home. */
.ev-home{ --ev-text:#1e1e1e; --ev-sec:#565656; --ev-muted:#697386; --ev-line:#d1d8e5; --ev-gold:#e5c179; --ev-deep:#031420; --ev-subtle:#f2f2f2; }
.ev-home .ev-cards{ margin-top:32px; }

/* ---- hero 2749:3275: 460 alto, contenido abajo (pad-bottom 56), gap 12, imagen + #031420 55%→95% ---- */
.ev-hero{ height:460px; display:flex; align-items:flex-end; padding-bottom:56px; box-sizing:border-box; color:#fff;
  background:linear-gradient(180deg, rgba(3,20,32,.55), rgba(3,20,32,.95)), var(--ev-img) center/cover no-repeat, var(--ev-deep); }
.ev-hero__in{ display:flex; flex-direction:column; gap:12px; }
/* 2749:3326 13/18 600, 8%, mayúsculas, #E5C179 */
.ev-ceja{ align-self:flex-start; font-size:13px; line-height:18px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ev-gold); text-decoration:none; }
.ev-ceja:hover{ text-decoration:underline; }
/* 2749:3327 Display/Large 800 48/52 */
.ev-h1{ margin:0; font-size:48px; line-height:52px; font-weight:800; color:#fff; max-width:1280px; }
/* 2749:3328 Body/Large 16/24 #D1D8E5, 720 */
.ev-hero__p{ margin:0; max-width:720px; font-size:16px; line-height:24px; color:var(--ev-line); }
/* 2749:3329 Label/Default 600 13/18 #E5C179 */
.ev-hero__meta{ margin:0; font-size:13px; line-height:18px; font-weight:600; color:var(--ev-gold); }

/* ---- cuerpo 2749:3330: pad-top 48, gap 48; contenido 832 + registro 400 = 1280 ---- */
.ev-cuerpo{ display:flex; align-items:flex-start; gap:48px; padding:48px 0 64px; }
.ev-contenido{ flex:1 1 832px; min-width:0; display:flex; flex-direction:column; gap:48px; }
.ev-sec{ display:flex; flex-direction:column; gap:16px; }
/* 2749:3333 Heading/H1 700 32/40 #1E1E1E */
.ev-h2{ margin:0; font-size:32px; line-height:40px; font-weight:700; color:var(--ev-text); }
/* 2749:3334 Body/Large 16/24 #565656 */
.ev-p{ margin:0; font-size:16px; line-height:24px; color:var(--ev-sec); }
.ev-link{ display:inline-flex; align-items:center; gap:8px; font-size:13px; line-height:18px; font-weight:600; color:var(--h26-blue,#3b82f6); text-decoration:none; background:none; border:0; padding:0; cursor:pointer; font-family:inherit; }
.ev-link:hover{ color:var(--h26-blue-ink,#2f6fd0); text-decoration:underline; }
.ev-link svg{ width:10px; height:10px; }

/* Agenda 2749:3337: filas 84 (pad 16/0, gap 20), hora 80 ancho 600 13/18 #866B44; título H3 600 18/26; texto 14/22 #565656; filete 1px */
.ev-agenda{ list-style:none; margin:0; padding:0; }
.ev-agenda li{ display:flex; gap:20px; padding:16px 0; border-top:1px solid var(--ev-line); }
.ev-agenda li:first-child{ border-top:0; }
.ev-agenda__h{ flex:0 0 80px; font-size:13px; line-height:18px; font-weight:600; color:var(--ev-gold-ink); padding-top:4px; }
.ev-agenda strong{ display:block; font-size:18px; line-height:26px; font-weight:600; color:var(--ev-text); }
.ev-agenda p{ margin:4px 0 0; font-size:14px; line-height:22px; color:var(--ev-sec); }

/* Presentadores 2749:3366: 404 × 134, r12, borde 1px, pad 20, gap 16; avatar 72 r36 #072031 */
.ev-pres{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:24px; }
.ev-pres__c{ display:flex; gap:16px; padding:20px; background:#fff; border:1px solid var(--ev-line); border-radius:12px; }
.ev-pres__av{ flex:0 0 72px; height:72px; border-radius:36px; background:#072031; color:#fff; display:flex; align-items:center; justify-content:center; font-size:20px; font-weight:700; overflow:hidden; }
.ev-pres__av img{ width:100%; height:100%; object-fit:cover; display:block; }   /* foto opcional del presentador (1-nov-2026) */
.ev-pres__c strong{ display:block; font-size:18px; line-height:26px; font-weight:600; }
.ev-pres__rol{ display:block; font-size:13px; line-height:18px; font-weight:600; color:var(--ev-gold-ink); }
.ev-pres__c p{ margin:4px 0 0; font-size:13px; line-height:20px; color:var(--ev-sec); }

/* Desarrollos 2749:3383: 3 tarjetas (son las de preventa del home, con su propio estilo) */
.ev-des{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px; }
.ev-dcard{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--ev-line); border-radius:12px; overflow:hidden; color:inherit; text-decoration:none; transition:box-shadow .2s; }
.ev-dcard:hover{ box-shadow:0 8px 24px rgba(3,20,32,.10); }
.ev-dcard img{ width:100%; height:140px; object-fit:cover; display:block; }
.ev-dcard__bd{ display:flex; flex-direction:column; gap:4px; padding:14px 16px 16px; }
.ev-dcard__bd strong{ font-size:16px; line-height:24px; font-weight:600; color:var(--ev-text); }
.ev-dcard__bd span{ font-size:13px; line-height:20px; color:var(--ev-sec); }
.ev-dcard__bd b{ font-size:13px; line-height:20px; font-weight:700; color:var(--ev-text); }

/* Ubicación: mapa + texto en una tarjeta */
.ev-ubi{ display:flex; background:#fff; border:1px solid var(--ev-line); border-radius:12px; overflow:hidden; }
.ev-ubi__map{ flex:0 0 50%; min-height:200px; border:0; background:var(--ev-subtle); }
.ev-ubi__tx{ flex:1; padding:24px; display:flex; flex-direction:column; gap:8px; justify-content:center; }
.ev-ubi__tx strong{ font-size:18px; line-height:26px; font-weight:600; }
.ev-ubi__tx p{ margin:0; font-size:14px; line-height:22px; color:var(--ev-sec); }

/* FAQ: acordeón */
.ev-faq details{ border-bottom:1px solid var(--ev-line); }
.ev-faq summary{ list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 0; font-size:16px; line-height:24px; font-weight:600; cursor:pointer; }
.ev-faq summary::-webkit-details-marker{ display:none; }
.ev-faq summary svg{ width:20px; height:20px; flex:none; fill:none; stroke:currentColor; stroke-width:1.6; transition:transform .2s; }
.ev-faq details[open] summary svg{ transform:rotate(180deg); }
.ev-faq details p{ margin:0 0 18px; font-size:14px; line-height:22px; color:var(--ev-sec); }

/* ---- registro (sticky) 2749:3433: 400, r16, borde 1px #D1D8E5, pad 28, gap 16, blanco ---- */
.ev-reg{ position:sticky; top:96px; flex:0 0 400px; box-sizing:border-box; padding:28px; background:#fff; border:1px solid var(--ev-line); border-radius:16px; }
.ev-reg__form, .ev-reg__ok{ display:flex; flex-direction:column; gap:16px; }
.ev-reg__ok{ gap:14px; }                        /* 2749:3749 gap 14 */
.ev-reg--fin{ display:flex; flex-direction:column; gap:16px; }
/* 2749:3434 Heading/H2 700 24/32 */
.ev-reg__h{ margin:0; font-size:24px; line-height:32px; font-weight:700; color:var(--ev-text); outline:0; }
.ev-datos{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.ev-datos li{ display:flex; align-items:flex-start; gap:10px; font-size:14px; line-height:22px; color:var(--ev-text); }
.ev-datos svg, .ev-btn svg, .ev-ok__mail svg, .ev-cal-btn svg{ width:18px; height:18px; flex:none; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.ev-datos svg{ color:var(--ev-gold-ink); margin-top:2px; }
.ev-datos--box{ background:var(--ev-subtle); border-radius:12px; padding:16px; }
/* cupo 2749:3452: r8, pad 10/12, #F2F2F2; texto 600 13/18 #866B44 */
.ev-cupo{ margin:0; padding:10px 12px; border-radius:8px; background:var(--ev-subtle); font-size:13px; line-height:18px; font-weight:600; color:var(--ev-gold-ink); }
/* formulario 2749:3454 gap 14; campo gap 6; rótulo 600 11/16 #565656; input 48, r8, borde #8CA1AB, pad 12/14; placeholder 14/22 #697386 */
.ev-form{ display:flex; flex-direction:column; gap:14px; margin:0; }
.ev-f{ display:flex; flex-direction:column; gap:6px; }
.ev-f > span{ font-size:11px; line-height:16px; font-weight:600; color:var(--ev-sec); }
.ev-f input, .ev-f select{ box-sizing:border-box; width:100%; height:48px; padding:12px 14px; background:#fff; border:1px solid var(--ev-strong); border-radius:8px; color:var(--ev-text); font:400 14px/22px inherit; font-family:inherit; }
.ev-f select{ appearance:none; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%231e1e1e' stroke-width='1.6'/%3E%3C/svg%3E") right 14px center/18px no-repeat; padding-right:40px; }
.ev-f input::placeholder{ color:var(--ev-muted); }
.ev-f input:focus, .ev-f select:focus{ outline:2px solid var(--h26-blue,#3b82f6); outline-offset:1px; }
.ev-f.is-bad input{ border-color:#c0392b; }
.ev-f__err{ font-style:normal; font-size:12px; line-height:16px; color:#c0392b; }
.ev-hp{ position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
/* button/primary 2749:3473: 48 alto, r8, pad 0 20; rótulo 600 13/18 */
.ev-page .ev-btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; width:100%; height:48px; padding:0 20px; border-radius:8px; font-size:13px; line-height:18px; font-weight:600; font-family:inherit; cursor:pointer; text-decoration:none; box-sizing:border-box; }
.ev-page .h26-btn--fill.ev-btn{ border:0; }
.ev-page .ev-btn:disabled{ opacity:.6; cursor:wait; }
.ev-btn--line{ background:#fff; color:var(--ev-text); border:1px solid var(--ev-strong); }
.ev-btn--line:hover{ background:var(--ev-subtle); }
.ev-form__msg{ margin:0; font-size:13px; line-height:20px; color:#c0392b; }
.ev-nota{ margin:0; font-size:13px; line-height:20px; color:var(--ev-sec); }
.ev-cal-btn{ align-self:flex-start; }
.ev-cal-btn svg{ width:18px; height:18px; }
/* Confirmación 2749:3749 */
.ev-ok__ic{ width:60px; height:60px; border-radius:8px; background:var(--ev-gold); display:flex; align-items:center; justify-content:center; }
.ev-ok__ic svg{ width:28px; height:28px; fill:none; stroke:var(--ev-deep); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.ev-ok__k{ margin:0; font-size:13px; line-height:18px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ev-gold-ink); }
.ev-ok__h{ font-size:28px; line-height:36px; }
.ev-ok__p{ margin:0; font-size:14px; line-height:22px; color:var(--ev-sec); }
.ev-ok__mail{ margin:0; display:flex; gap:10px; align-items:flex-start; font-size:13px; line-height:20px; color:var(--ev-sec); word-break:break-word; }
.ev-ok__mail strong{ color:var(--ev-text); font-weight:600; }
.ev-ok__cancel{ margin:0; font-size:13px; line-height:20px; color:var(--ev-sec); }
.ev-ok__cancel a{ color:var(--h26-blue,#3b82f6); }
.ev-reg.is-ok .ev-reg__form{ display:none; }
.ev-reg.is-ok .ev-reg__ok{ display:flex; }
.ev-reg__ok[hidden]{ display:none; }
/* Menú "Agregar al calendario" (nota 3: Google, Apple y Outlook) */
.ev-reg{ --ev-menu-top:auto; }
.ev-calmenu{ position:absolute; left:28px; right:28px; z-index:20; display:flex; flex-direction:column; padding:6px; background:#fff; border:1px solid var(--ev-line); border-radius:12px; box-shadow:0 12px 32px rgba(3,20,32,.14); }
.ev-calmenu[hidden]{ display:none; }
.ev-calmenu a{ padding:12px 14px; border-radius:8px; font-size:14px; line-height:20px; color:var(--ev-text); text-decoration:none; }
.ev-calmenu a:hover, .ev-calmenu a:focus{ background:var(--ev-subtle); outline:0; }

/* ---- Otros eventos 2749:3485: pad-top 48, gap 24 ---- */
.ev-otros{ padding:48px 0 16px; }
.ev-otros .h26-wrap{ display:flex; flex-direction:column; gap:12px; }
.ev-cards{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; margin-top:12px; }
/* Tarjeta de evento 2749:2858: 1px #D1D8E5, r12, blanca; foto 180; cuerpo pad 20, gap 12 */
.ev-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--ev-line); border-radius:12px; overflow:hidden; color:var(--ev-text); text-decoration:none; transition:box-shadow .2s; }
.ev-card:hover{ box-shadow:0 8px 24px rgba(3,20,32,.10); }
.ev-card__img{ display:block; height:180px; background:var(--ev-deep); }
.ev-card__img img{ width:100%; height:100%; object-fit:cover; display:block; }
.ev-card__bd{ display:flex; flex-direction:column; gap:12px; padding:20px; }
/* fecha-y-lugar 2749:2861: gap 12; fecha 2749:2862 #F2F2F2 r8 pad 8/12; día H2 700 24/32; mes 600 11/16 #565656 */
.ev-card__top{ display:flex; gap:12px; align-items:flex-start; }
.ev-card__date{ display:flex; flex-direction:column; align-items:center; min-width:32px; padding:8px 12px; border-radius:8px; background:var(--ev-subtle); font-size:11px; line-height:16px; font-weight:600; color:var(--ev-sec); }
.ev-card__date b{ font-size:24px; line-height:32px; font-weight:700; color:var(--ev-text); }
.ev-card__lugar{ display:flex; flex-direction:column; align-items:flex-start; gap:4px; }
/* 2749:2866 600 13/18 #1E1E1E */
.ev-card__city{ font-size:13px; line-height:18px; font-weight:600; }
/* 2749:2868 H3 600 18/26; 2749:2869 Body/Default 14/22 #565656 */
.ev-card strong{ font-size:18px; line-height:26px; font-weight:600; }
.ev-card__meta{ font-size:14px; line-height:22px; color:var(--ev-sec); }
/* Etiqueta Acento 2749:2819: pad 4/8, r4, #E5C179; 600 11/16, 6%, mayúsculas, #072031 */
.ev-tag{ display:inline-block; padding:4px 8px; border-radius:4px; background:var(--ev-gold); font-size:11px; line-height:16px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:#072031; }
.ev-card.is-past{ display:none; }

/* ======================= LISTADO /eventos/ (2749:2747) ======================= */
/* Medidas re-leídas del JSON de nodos el 31-oct-2026 (el archivo cambió después del 28: filtros 48, destacado 24,
   eventos 64, anteriores en tarjeta). Fotos = las del archivo (assets/eventos/, ver LISTA en build-eventos.js). */
/* hero 2749:2748: la barra 2749:2749 va DENTRO del hero (transparente, 75 alto) y el hero mide 460 desde y=0.
   Al bajar se pone navy (eventos-lista.js). Sin franja de migas en escritorio: el archivo no la dibuja. */
/* Igual en el detalle (2749:3275: la barra también va dentro del hero, y su ruta es la ceja «← Eventos · …»). */
@media (min-width:901px){
  .ev-page .h26-nav--solid{ position:fixed; top:0; left:0; right:0; background:transparent; transition:background-color .2s ease; }
  .ev-page .h26-nav--solid.is-scrolled{ background:var(--h26-deep,#031420); }
}
.ev-page .migas{ display:none; }
@media (min-width:901px) and (prefers-reduced-motion:reduce){ .ev-page .h26-nav--solid{ transition:none; } }
/* Recorte de la foto 2749:2748: imageTransform [[1,0,0],[0,.507,.464]] = franja del 46 % al 97 % del alto → 94 %. */
.ev-page .ev-hero{ background-position:0 0, center 94%; }
/* En móvil la ruta va dentro del hero, encima de la ceja (2749:3062): 13/20 #D1D8E5; la franja del barrido sobra. */
.ev-migas-m{ display:none; }
.ev-migas-m a{ color:inherit; text-decoration:none; }
.ev-migas-m a:hover{ text-decoration:underline; }
/* filtros 2749:2803: pad-top 48, gap 8; chip 36 alto, pad 0 14, r8; activo #072031 / blanco; inactivo blanco + 1px #D1D8E5 */
.ev-filtros{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:48px; }
.ev-chips{ display:flex; gap:8px; flex-wrap:wrap; }
.ev-chip{ display:inline-flex; align-items:center; gap:8px; height:36px; padding:0 14px; border-radius:8px; border:1px solid var(--ev-line); background:#fff; color:#072031; font:600 13px/18px var(--h26-font,"Host Grotesk",system-ui,sans-serif); cursor:pointer; }
.ev-chip span{ font-size:11px; line-height:16px; color:var(--ev-muted); }
.ev-chip.is-on{ background:#072031; border-color:#072031; color:#fff; }
.ev-chip.is-on span{ color:var(--ev-line); }
/* mes 2749:2810: 40 alto, r8, 1px #8CA1AB, pad 10/12/10/14, gap 8 */
.ev-mes{ position:relative; display:inline-flex; align-items:center; gap:4px; height:40px; padding:0 12px 0 14px; border:1px solid var(--ev-strong); border-radius:8px; background:#fff; font-size:13px; line-height:18px; font-weight:600; color:var(--ev-text); }
.ev-mes select{ appearance:none; -webkit-appearance:none; border:0; background:transparent; font:inherit; color:inherit; padding:0 22px 0 0; cursor:pointer; }
.ev-mes svg{ position:absolute; right:12px; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.6; pointer-events:none; }

/* proximo-evento 2749:2814: pad-top 24; destacado 2749:2815 1280 × 442, r16, 1px #D1D8E5; foto 620 × 440; info pad 40, gap 16 */
.ev-dest-wrap{ padding-top:24px; }
.ev-dest{ display:flex; background:#fff; border:1px solid var(--ev-line); border-radius:16px; overflow:hidden; }
.ev-dest__img{ flex:0 0 620px; width:620px; height:440px; object-fit:cover; display:block; }
.ev-dest__info{ flex:1; min-width:0; display:flex; flex-direction:column; gap:16px; padding:40px; }
.ev-tags{ margin:0; display:flex; gap:8px; flex-wrap:wrap; }
/* 2749:2821 H1 700 32/40 */
.ev-dest__h{ margin:0; font-size:32px; line-height:40px; font-weight:700; color:var(--ev-text); }
.ev-dest__h a{ color:inherit; text-decoration:none; }
.ev-dest__h a:hover{ text-decoration:underline; }
/* datos 2749:2822: gap 10; filas 16/24 #1E1E1E, icono 18 */
.ev-datos--lg{ gap:10px; }
.ev-datos--lg li{ font-size:16px; line-height:24px; color:var(--ev-text); }
/* 2749:2847 600 13/18 #866B44 */
.ev-cupo-tx{ margin:0; font-size:13px; line-height:18px; font-weight:600; color:var(--ev-gold-ink); }
/* acciones 2749:2848: gap 12; botón 48 alto, pad 0 28 */
.ev-acciones{ margin:0; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.ev-acciones .ev-btn{ width:auto; padding:0 28px; }
.ev-dest.is-past, .ev-dest.is-off, .ev-card.is-off{ display:none; }

/* eventos 2749:2852: pad-top 64, gap 24; encabezado t gap 8; rejilla 3 × 410.67, gap 24 */
.ev-todos{ display:flex; flex-direction:column; gap:8px; padding-top:64px; }
.ev-todos .ev-cards{ margin-top:16px; }
.ev-vacio[hidden]{ display:none; }

/* aviso 2749:2937: pad-top 48; banda 2749:2938 #072031, r16, pad 28/32, gap 32 */
.ev-aviso-wrap{ padding-top:48px; }
.ev-aviso{ display:flex; align-items:center; gap:32px; padding:28px 32px; border-radius:16px; background:#072031; color:#fff; }
.ev-aviso__t{ flex:1; min-width:0; display:flex; flex-direction:column; gap:6px; }
.ev-aviso__k{ margin:0; font-size:11px; line-height:16px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ev-gold); }
.ev-aviso__h{ margin:0; font-size:24px; line-height:32px; font-weight:700; color:#fff; }
.ev-aviso__p{ margin:0; font-size:14px; line-height:22px; color:var(--ev-line); }
/* form 2749:2943: gap 8; campo 300 × 48 r8 pad 0 16; botón 48, pad 0 20 */
.ev-aviso__f{ position:relative; display:flex; flex-wrap:wrap; gap:8px; flex:none; }
.ev-aviso__f input[name=contacto]{ width:300px; height:48px; box-sizing:border-box; padding:0 16px; border:0; border-radius:8px; background:#fff; font:400 14px/22px var(--h26-font,"Host Grotesk",system-ui,sans-serif); color:var(--ev-text); }
.ev-aviso__f input[name=contacto]::placeholder{ color:var(--ev-muted); }
.ev-aviso__f .ev-btn{ width:auto; padding:0 20px; }
.ev-aviso__msg{ flex-basis:100%; margin:0; font-size:13px; line-height:20px; color:var(--ev-gold); }
/* Mateo 31-oct: la banda en el azul claro, no navy. Mismo trato que los banners de asesor del buscador
   (aprobados 25-oct) y la .gl-cta de academy.css: fondo #dfeafc, título #072031, texto #697386,
   rótulo dorado oscuro #866b44 (el dorado claro no se lee sobre azul claro), botón azul sin cambios.
   El campo blanco lleva filete #b7cdef para no perderse sobre el fondo claro. */
.ev-aviso{ background:#dfeafc; color:#072031; }
.ev-aviso__k{ color:var(--ev-gold-ink); }
.ev-aviso__h{ color:#072031; }
.ev-aviso__p{ color:var(--ev-muted); }
.ev-aviso__f input[name=contacto]{ border:1px solid #b7cdef; }
.ev-aviso__msg{ color:var(--ev-gold-ink); }
.ev-aviso__msg[hidden]{ display:none; }

/* eventos-anteriores 2749:2948: pad-top 64, gap 24; tarjeta 2749:2953 410.67 × 276, r12, blanca, 1px #D1D8E5;
   foto 200; info 2749:2955 pad 16, gap 4 */
.ev-ant{ display:flex; flex-direction:column; gap:8px; padding-top:64px; padding-bottom:16px; }
.ev-ant__row{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; margin-top:16px; }
.ev-ant__c{ background:#fff; border:1px solid var(--ev-line); border-radius:12px; overflow:hidden; }
.ev-ant__c img{ width:100%; height:200px; object-fit:cover; display:block; background:var(--ev-deep); }
.ev-ant__info{ padding:16px; }
.ev-ant__city{ margin:0 0 4px; font-size:13px; line-height:18px; font-weight:600; color:var(--ev-text); }
.ev-ant__tx{ margin:0; font-size:13px; line-height:20px; color:var(--ev-sec); }
.ev-page--lista .h26-sec#recursos{ margin-top:48px; }

/* Barra fija: sólo móvil (2749:4189) */
.ev-barra{ display:none; }

/* ============================ MÓVIL (390) ============================ */
@media (max-width:900px){
  .ev-page .ev-d{ display:none; }
  .ev-page .ev-m{ display:inline; }
  .ev-page .ev-ceja-m.ev-m{ display:block; }
  /* hero 2749:3943: 360, pad 0 16 32, gap 10 */
  .ev-hero{ height:360px; padding-bottom:32px; }
  .ev-hero__in{ gap:10px; }
  /* 2749:3944 "← Eventos" Body/Small 13/20 #D1D8E5, sin mayúsculas */
  .ev-ceja{ font-size:13px; line-height:20px; font-weight:400; letter-spacing:0; text-transform:none; color:var(--ev-line); }
  /* 2749:3945 600 11/16, 8%, mayúsculas, oro */
  .ev-ceja-m{ font-size:11px; line-height:16px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ev-gold); }
  /* 2749:3946 Heading/H1 700 32/40 */
  .ev-h1{ font-size:32px; line-height:40px; font-weight:700; }
  /* 2749:3947 Body/Default 14/22 */
  .ev-hero__p{ font-size:14px; line-height:22px; }

  /* contenido 2749:3949: pad 32/16/48, gap 40; el formulario va 2.º, después de "Sobre el evento" (7d) */
  .ev-cuerpo{ flex-direction:column; align-items:stretch; gap:40px; padding:32px 0 48px; }
  .ev-contenido{ display:contents; }
  .ev-contenido > .ev-sec{ order:2; }
  .ev-contenido > .ev-sec--sobre{ order:0; }
  .ev-reg{ order:1; position:relative; top:auto; flex:none; width:100%; padding:20px; }   /* 2749:3953 pad 20 */
  .ev-h2{ font-size:24px; line-height:32px; }
  .ev-pres, .ev-des, .ev-cards{ grid-template-columns:1fr; }
  .ev-ubi{ flex-direction:column; }
  .ev-ubi__map{ flex:none; height:200px; }
  .ev-ubi__tx{ padding:20px; }
  .ev-agenda__h{ flex-basis:64px; }
  .ev-calmenu{ left:20px; right:20px; }
  /* otros-eventos 2749:4103: pad 8 16 48, gap 16 */
  .ev-otros{ padding:8px 0 48px; }
  .ev-cards{ gap:16px; }

  /* márgenes laterales 16 en los marcos móviles (2749:3028, 2749:3909); .h26-wrap trae margin 40 */
  .ev-hero > .h26-wrap, .ev-page main > .h26-wrap, .ev-otros > .h26-wrap{ margin-left:16px; margin-right:16px; width:auto; max-width:none; }
  .ev-page--lista .ev-ceja{ font-size:11px; line-height:16px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ev-gold); }
  .ev-migas-m{ display:block; margin:0; font-size:13px; line-height:20px; color:var(--ev-line); }
  /* listado móvil 2749:3028: filtros en fila con scroll (pad 24 16, gap 8); destacado en columna 358, foto 200, info pad 20 gap 12; tarjetas 1 col gap 16 */
  .ev-filtros{ flex-direction:column; align-items:stretch; gap:12px; padding-top:24px; }
  .ev-chips{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; margin:0 -16px; padding:0 16px; }
  .ev-chips::-webkit-scrollbar{ display:none; }
  .ev-chip{ flex:none; }
  .ev-mes{ align-self:flex-start; }
  .ev-dest-wrap{ padding-top:16px; }
  .ev-dest{ flex-direction:column; }
  .ev-dest__img{ flex:none; width:100%; height:200px; }
  .ev-dest__info{ padding:20px; gap:12px; }
  .ev-dest__h{ font-size:24px; line-height:32px; }
  .ev-todos{ padding-top:40px; }
  .ev-aviso{ flex-direction:column; align-items:stretch; gap:20px; padding:24px 20px; }
  .ev-aviso__f input[name=contacto]{ width:100%; }
  .ev-aviso__f .ev-btn{ width:100%; }
  .ev-ant{ padding-top:48px; }
  .ev-ant__row{ grid-template-columns:1fr; gap:20px; }
  .ev-page--lista{ padding-bottom:0; }

  /* barra-inferior (fija) 2749:4189: 390 × 85, borde-top 1px, pad 12 16 24, gap 12, sombra 0 -4 16 8% */
  .ev-barra{ position:fixed; left:0; right:0; bottom:0; z-index:60; display:flex; align-items:center; gap:12px; padding:12px 16px 24px; padding-bottom:max(24px, env(safe-area-inset-bottom)); background:#fff; border-top:1px solid var(--ev-line); box-shadow:0 -4px 16px rgba(0,0,0,.08); }
  .ev-page{ padding-bottom:85px; }
  .ev-page .wa-float{ bottom:97px; }
  .ev-barra__tx{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
  .ev-barra__tx strong{ font-size:13px; line-height:18px; font-weight:600; color:var(--ev-text); }
  .ev-barra__tx > span{ font-size:13px; line-height:20px; color:var(--ev-gold-ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  /* button/primary 2749:4193: hug, 48, pad 0 24 */
  .ev-barra .ev-btn{ width:auto; flex:none; padding:0 24px; }
  .ev-barra__ok, .ev-barra__cal{ display:none !important; }
  /* "Lugar reservado" 2749:4481: cuadro oro 28 r6 + texto; botón secundario con borde #8CA1AB, pad 0 16 */
  .ev-page.ev-ok .ev-barra__tx, .ev-page.ev-ok .ev-barra__go{ display:none; }
  .ev-page.ev-ok .ev-barra__ok{ display:flex !important; flex:1; min-width:0; align-items:center; gap:10px; }
  .ev-page.ev-ok .ev-barra__cal{ display:inline-flex !important; padding:0 16px; }
  .ev-barra__ic{ flex:0 0 28px; height:28px; border-radius:6px; background:var(--ev-gold); display:flex; align-items:center; justify-content:center; }
  .ev-barra__ic svg{ width:16px; height:16px; fill:none; stroke:var(--ev-deep); stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
  .ev-barra__ok strong{ display:block; font-size:13px; line-height:18px; font-weight:600; color:var(--ev-text); }
  .ev-barra__ok span span{ font-size:13px; line-height:20px; color:var(--ev-sec); }
}
