/* ─── TOKENS ─────────────────────────────────────────────── */
:root{
  --bridge-blue:    #1B4F8A;
  --bridge-sky:     #5BAADC;
  --bridge-sky-lt:  #A8D4EF;
  --bridge-sky-pale:#EAF4FB;
  --chile-red:      #D52B1E;
  --de-gold:        #E8B800;
  --de-gold-hover:  #F5C800;
  --de-dark:        #1A1A1A;
  --ink:            #2A2A2A;
  --ink-mid:        #333333;
  --slate:          #4A6480;
  --mist:           #F4F3F0;
  --cream:          #FAF8F3;
  --light-gray:     #F7F7F5;
  --white:          #FFFFFF;
  --border:         rgba(42,42,42,.13);
  --border-strong:  rgba(42,42,42,.22);
  --ff-display: 'DM Serif Display', Georgia, serif;
  --ff-body:    'DM Sans', system-ui, sans-serif;
}

/* ─── RESET ──────────────────────────────────────────────── */
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--ff-body);background:var(--white);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
img,svg{max-width:100%;display:block;}
button{font-family:inherit;}

/* ─── ICONS ──────────────────────────────────────────────── */
.icon{width:1em;height:1em;display:inline-block;vertical-align:-0.15em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;}

/* ─── UTILITY ────────────────────────────────────────────── */
.container{max-width:1100px;margin:0 auto;padding:0 1.5rem;}
@media(min-width:640px){.container{padding:0 2rem;}}

/* ─── UNIFIED CTA — gold ─────────────────────────────────── */
.cta-gold{
  background:var(--de-gold);color:#1A1A1A;
  border:2px solid var(--de-gold);
  padding:13px 28px;border-radius:8px;
  font-size:14px;font-weight:700;cursor:pointer;
  letter-spacing:.02em;transition:all .2s;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  text-decoration:none;line-height:1.2;
}
.cta-gold:hover{background:var(--de-gold-hover);border-color:var(--de-gold-hover);transform:translateY(-1px);box-shadow:0 6px 20px rgba(232,184,0,.35);}

/* ─── NAV (LIGHT) ────────────────────────────────────────── */
.nav{
  position:sticky;top:0;z-index:200;
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(16px);
  border-bottom:2px solid var(--de-gold);
  padding:0 1.25rem;min-height:60px;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
}
@media(min-width:640px){.nav{padding:0 2rem;}}
.nav-logo{display:flex;align-items:center;gap:12px;min-width:0;}
.nav-logo-badge{
  width:36px;height:36px;border-radius:50%;
  background:var(--white);border:2px solid var(--bridge-sky);
  display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;
}
.nav-logo-badge img{width:30px;height:30px;object-fit:contain;}
.nav-brand{line-height:1.25;min-width:0;}
.nav-brand strong{color:var(--ink);font-size:15px;font-weight:600;display:block;}
.nav-brand span{color:var(--slate);font-size:10px;font-weight:400;letter-spacing:.04em;display:block;}
.nav-links{display:flex;gap:1.4rem;}
.nav-links a{color:var(--slate);font-size:13px;font-weight:500;transition:color .2s;white-space:nowrap;}
.nav-links a:hover{color:var(--chile-red);}
.nav-right{display:flex;align-items:center;gap:.6rem;}
.nav-cta{
  background:var(--de-gold);color:#1A1A1A;
  border:2px solid var(--de-gold);
  padding:8px 16px;border-radius:6px;
  font-size:12px;font-weight:700;cursor:pointer;
  letter-spacing:.02em;transition:all .2s;
}
.nav-cta:hover{background:var(--de-gold-hover);border-color:var(--de-gold-hover);}

/* Lang switcher (light) */
.lang-switch{
  display:inline-flex;background:var(--white);
  border:1px solid var(--border-strong);border-radius:6px;overflow:hidden;
}
.lang-switch button, .lang-switch a{
  background:transparent;color:var(--slate);
  border:none;padding:6px 10px;font-size:11px;font-weight:700;
  letter-spacing:.04em;cursor:pointer;transition:all .15s;
  display:inline-flex;align-items:center;gap:6px;text-decoration:none;
}
.lang-switch button:hover, .lang-switch a:hover{color:var(--ink);background:var(--mist);}
.lang-switch button.on, .lang-switch a.on{background:var(--bridge-sky);color:#fff;}
.lang-switch .ls-flag{width:18px;height:12px;border-radius:2px;object-fit:cover;display:block;box-shadow:0 0 0 1px rgba(0,0,0,.08);}
.lang-switch .ls-code{font-size:11px;font-weight:700;}
.lang-switch .ls-cur{font-size:10px;font-weight:600;opacity:.65;letter-spacing:.02em;}
.lang-switch a.on .ls-cur{opacity:.95;}
.lang-switch a + a{border-left:1px solid var(--border);}

/* Mobile menu */
.nav-burger{
  display:none;background:transparent;border:1px solid var(--border-strong);
  color:var(--ink);width:36px;height:36px;border-radius:6px;cursor:pointer;
  align-items:center;justify-content:center;
  /* padding/min-width explícitos: el tema (Astra) aplica padding a <button> y colapsa el contenido, ocultando el icono. */
  padding:0;min-width:0;flex:0 0 auto;
}
/* Trazo explícito: evita que el tema (Astra/child, cargados después) deje el icono en blanco vía currentColor. */
.nav-burger .icon{stroke:var(--ink);width:20px;height:20px;}
@media(max-width:980px){
  .nav-links{
    display:none;position:absolute;top:100%;left:0;right:0;
    flex-direction:column;gap:0;background:rgba(255,255,255,.98);
    padding:.5rem 1.25rem 1rem;border-bottom:2px solid var(--de-gold);
    box-shadow:0 10px 24px rgba(0,0,0,.06);
  }
  .nav-links.open{display:flex;}
  .nav-links a{padding:.7rem 0;border-bottom:1px solid var(--border);font-size:14px;}
  .nav-links a:last-child{border-bottom:none;}
  .nav-burger{display:inline-flex;}
}
@media(max-width:640px){
  .nav{
    display:grid;
    grid-template-columns:1fr;
    grid-template-areas:"logo" "actions" "links";
    align-items:center;
    padding:.7rem 1rem;gap:.6rem;
    min-height:0;position:relative;
  }
  .nav-logo{grid-area:logo;justify-self:start;}
  .nav-right{grid-area:actions;justify-self:stretch;justify-content:space-between;gap:.5rem;}
  .nav-links{grid-area:links;top:auto;position:static;padding:0;border:none;background:transparent;box-shadow:none;}
  .nav-brand strong{font-size:14px;}
  .nav-brand span{font-size:10px;}
  .nav-cta{padding:8px 14px;font-size:12px;flex:1;}
  .lang-switch button{padding:6px 10px;font-size:11px;}
}

/* ─── HERO (LIGHT, CENTERED) ─────────────────────────────── */
.hero{
  min-height:100vh;
  background:var(--cream);
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:center;
}
.hero::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(0,0,0,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.05) 1px, transparent 1px);
  background-size:60px 60px;
}
.hero-flag-bar{
  position:absolute;top:0;left:0;right:0;height:8px;
  background:linear-gradient(90deg,
    var(--chile-red) 0%, var(--chile-red) 33%,
    var(--de-dark) 33%, var(--de-dark) 66%,
    var(--de-gold) 66%, var(--de-gold) 100%);
  z-index:3;
}
.hero-wordmark{
  position:absolute;bottom:-40px;right:-60px;
  font-family:var(--ff-display);font-size:clamp(120px,20vw,220px);font-weight:400;
  color:rgba(0,0,0,.04);line-height:1;
  pointer-events:none;user-select:none;white-space:nowrap;
}
.hero-orb{
  position:absolute;top:-80px;right:-120px;
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle, rgba(213,43,30,.06) 0%, transparent 70%);
  pointer-events:none;
}
.hero-orb2{
  position:absolute;bottom:-100px;left:-100px;
  width:400px;height:400px;border-radius:50%;
  background:radial-gradient(circle, rgba(232,184,0,.10) 0%, transparent 70%);
  pointer-events:none;
}
.hero-inner{
  position:relative;z-index:2;
  max-width:1100px;margin:0 auto;width:100%;
  padding:6rem 1.5rem 4rem;
  text-align:center;
  display:flex;flex-direction:column;align-items:center;
}
@media(min-width:640px){.hero-inner{padding:7rem 2rem 5rem;}}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:1.8rem;
  justify-content:center;
}
.hero-eyebrow-line{width:40px;height:2px;background:var(--bridge-sky);}
.hero-eyebrow span{
  font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--bridge-sky);
}
.hero h1{
  font-family:var(--ff-display);
  font-size:clamp(38px,7vw,80px);
  color:var(--bridge-blue);
  line-height:1.08;
  margin-bottom:1rem;
  max-width:820px;
}
.hero h1 em{font-style:italic;color:var(--bridge-sky);}
.hero-edition-pill{
  display:inline-block;background:var(--bridge-sky);color:#fff;
  font-size:12px;font-weight:700;padding:5px 16px;border-radius:20px;
  margin-bottom:1.5rem;letter-spacing:.06em;
}
.hero-sub{
  font-size:clamp(16px,1.6vw,19px);color:var(--slate);
  line-height:1.7;max-width:580px;margin:0 auto 2.5rem;
  font-weight:300;
}
.hero-actions{
  display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;
  justify-content:center;
}
.btn-ghost{
  background:transparent;color:var(--ink);
  border:1.5px solid var(--border-strong);
  padding:13px 28px;border-radius:8px;
  font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  text-decoration:none;line-height:1.2;
}
.btn-ghost:hover{border-color:var(--chile-red);color:var(--chile-red);background:rgba(213,43,30,.04);}

/* Hero stats */
.hero-stats{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:0;width:100%;max-width:760px;
  border:1.5px solid var(--border-strong);
  border-radius:10px;overflow:hidden;background:var(--white);
}
.hero-stat{
  padding:1rem .9rem;
  border-right:1px solid var(--border);
  text-align:center;
}
.hero-stat:last-child{border-right:none;}
.hero-stat-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--slate);display:block;margin-bottom:4px;}
.hero-stat-val{font-size:14px;font-weight:600;color:var(--ink);}
.hero-stat-val em{font-style:normal;color:var(--bridge-sky);}
@media(max-width:680px){
  .hero-stats{grid-template-columns:1fr 1fr;}
  .hero-stat{border-right:1px solid var(--border);border-bottom:1px solid var(--border);}
  .hero-stat:nth-child(2){border-right:none;}
  .hero-stat:nth-child(3),.hero-stat:nth-child(4){border-bottom:none;}
  .hero-stat:nth-child(4){border-right:none;}
}

/* Partners ribbon */
.hero-partners{
  position:relative;z-index:2;
  border-top:2px solid var(--de-gold);
  background:var(--white);
  padding:1.4rem 1.5rem;
  display:flex;align-items:center;gap:1.2rem;justify-content:center;
  max-width:1100px;margin:0 auto;flex-wrap:wrap;
}
.hero-partners-lbl{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--slate);white-space:nowrap;}
.partner-chips{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;}
.partner-chip{
  font-size:12px;font-weight:600;color:var(--ink);
  background:var(--light-gray);
  border:1px solid var(--border);
  padding:5px 12px;border-radius:20px;letter-spacing:.03em;
}

/* ─── SECTION BASE ───────────────────────────────────────── */
.sec{padding:4.5rem 0;}
@media(min-width:768px){.sec{padding:6rem 0;}}
.sec-mist{background:var(--mist);}
.sec-light{background:var(--light-gray);}
.sec-label{
  font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bridge-blue);margin-bottom:.6rem;
  display:flex;align-items:center;gap:8px;
}
.sec-label::before{content:'';width:40px;height:4px;background:var(--de-gold);border-radius:2px;}
.sec-h{font-family:var(--ff-display);font-size:clamp(28px,4vw,44px);color:var(--ink);line-height:1.15;margin-bottom:.8rem;}
.sec-d{font-size:clamp(15px,1.4vw,17px);color:var(--slate);line-height:1.75;max-width:580px;font-weight:300;}

/* ─── VIDEO (LIGHT) ──────────────────────────────────────── */
.video-section{padding:4.5rem 0;background:var(--light-gray);}
@media(min-width:768px){.video-section{padding:5rem 0;}}
.video-header{margin-bottom:2rem;}
.video-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:2rem;align-items:start;}
@media(max-width:860px){.video-layout{grid-template-columns:1fr;}}
.video-embed-wrap{
  position:relative;width:100%;padding-bottom:56.25%;
  border-radius:12px;overflow:hidden;
  border:3px solid var(--de-gold);background:#000;
}
.video-embed-wrap iframe{
  position:absolute;top:0;left:0;width:100%;height:100%;border:none;
}
.video-caption{
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
  margin-top:.8rem;font-size:13px;color:var(--slate);
}
.video-live-badge{
  background:var(--chile-red);color:var(--white);
  font-size:11px;font-weight:700;padding:4px 10px;
  border-radius:4px;white-space:nowrap;letter-spacing:.03em;
  display:inline-flex;align-items:center;gap:5px;
}
.video-sidebar{display:flex;flex-direction:column;gap:.7rem;}
.video-ed-label{
  font-size:10px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink);
  display:flex;align-items:center;gap:10px;
}
.video-ed-label::before{content:'';width:24px;height:3px;background:var(--de-gold);border-radius:2px;}
.video-ed-card{
  display:flex;gap:.8rem;align-items:center;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:10px;padding:.8rem;
  text-decoration:none;transition:border-color .2s,background .2s;
}
.video-ed-card:hover{border-color:var(--de-gold);background:var(--cream);}
.video-ed-thumb{
  width:60px;height:46px;border-radius:7px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;
}
.video-ed-info strong{display:block;font-size:13px;font-weight:700;color:var(--ink);}
.video-ed-info span{font-size:11px;color:var(--slate);}
.video-yt-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:var(--chile-red);color:var(--white);
  border-radius:8px;padding:11px;font-size:13px;font-weight:700;
  text-decoration:none;transition:all .2s;margin-top:.3rem;
}
.video-yt-btn:hover{background:#B8231A;}

/* ─── ABOUT ──────────────────────────────────────────────── */
.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start;}
@media(max-width:900px){.about-layout{grid-template-columns:1fr;gap:2.5rem;}}
.about-text .sec-h{margin-bottom:1.2rem;}
.about-text p{font-size:clamp(15px,1.4vw,17px);color:var(--slate);line-height:1.8;margin-bottom:1rem;font-weight:300;}
.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
@media(max-width:520px){.about-cards{grid-template-columns:1fr;}.about-cards .acard{grid-column:auto!important;}}
.acard{
  background:var(--white);border:1px solid var(--border);
  border-radius:14px;padding:1.4rem;
  transition:border-color .2s, transform .2s;
}
.acard:hover{border-color:var(--bridge-sky);transform:translateY(-2px);}
.acard-icon{
  width:42px;height:42px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:.9rem;color:var(--bridge-blue);
}
.acard-icon .icon{width:22px;height:22px;}
.acard h3{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:.35rem;}
.acard p{font-size:14px;color:var(--slate);line-height:1.55;}

/* Divider */
.divider-bridge{
  height:4px;
  background:linear-gradient(90deg, var(--chile-red), var(--de-gold) 60%, transparent);
}
.section-accent{height:8px;background:linear-gradient(90deg, var(--chile-red), var(--de-gold) 60%, transparent);}
.country-bar{display:flex;height:3px;}
.country-bar-cl{flex:1;background:var(--chile-red);}
.country-bar-mid{width:3px;background:var(--white);}
.country-bar-de1{flex:.5;background:var(--de-dark);}
.country-bar-de2{flex:.5;background:#CC0000;}
.country-bar-de3{flex:.5;background:var(--de-gold);}

/* ─── TIMELINE ───────────────────────────────────────────── */
.timeline-wrap{max-width:680px;margin:0 auto;}
.tl-item{
  display:grid;grid-template-columns:110px 1px 1fr;
  gap:0 1.2rem;align-items:start;
  padding-bottom:2rem;position:relative;
}
.tl-item:last-child{padding-bottom:0;}
.tl-date{
  text-align:right;font-size:14px;font-weight:600;
  color:var(--chile-red);padding-top:2px;line-height:1.4;
}
.tl-date small{display:block;font-size:10px;font-weight:400;color:var(--slate);}
.tl-line{position:relative;background:var(--border-strong);align-self:stretch;}
.tl-line::before{
  content:'';position:absolute;top:4px;left:50%;transform:translateX(-50%);
  width:10px;height:10px;border-radius:50%;
  background:var(--chile-red);border:2px solid var(--white);
  box-shadow:0 0 0 2px var(--chile-red);
}
.tl-item.event .tl-line::before{
  width:14px;height:14px;background:var(--de-gold);
  box-shadow:0 0 0 3px rgba(232,184,0,.35);top:2px;
}
.tl-content-title{font-size:15px;font-weight:600;color:var(--ink);margin-bottom:.2rem;}
.tl-content-meta{font-size:13px;color:var(--slate);}
.tl-badge{
  display:inline-block;font-size:9px;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  padding:2px 9px;border-radius:10px;margin-left:8px;vertical-align:middle;
}
.tl-badge.reg{background:var(--bridge-sky-pale);color:var(--bridge-blue);}
.tl-badge.abs{background:#FFF7E0;color:#8A6200;}
.tl-badge.ev{background:#E6F8F1;color:#1A6B4A;}
@media(max-width:560px){
  .tl-item{grid-template-columns:80px 1px 1fr;gap:0 .8rem;}
  .tl-date{font-size:12px;}
}

/* ─── SCOPE ──────────────────────────────────────────────── */
.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
@media(max-width:760px){.scope-grid{grid-template-columns:1fr;}}
.scope-item{display:flex;gap:1rem;align-items:flex-start;background:var(--white);border:1px solid var(--border);border-radius:10px;padding:1.2rem;}
.scope-num{font-family:var(--ff-display);font-size:28px;font-weight:400;color:var(--de-gold);line-height:1;min-width:40px;}
.scope-body strong{display:block;font-size:14px;font-weight:700;color:var(--ink);margin-bottom:.3rem;}
.scope-body span{font-size:13px;color:var(--slate);line-height:1.6;}

/* ─── PROGRAMA (LIGHT) ───────────────────────────────────── */
.prog-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:2.5rem;gap:1rem;flex-wrap:wrap;}
.prog-tabs{display:flex;gap:.5rem;flex-wrap:wrap;}
.ptab{
  background:var(--white);color:var(--slate);
  border:1px solid var(--border-strong);
  padding:9px 18px;border-radius:7px;font-size:12px;font-weight:600;
  cursor:pointer;transition:all .2s;
}
.ptab:hover{border-color:var(--bridge-sky);color:var(--bridge-blue);}
.ptab.on{background:var(--de-gold);color:#1A1A1A;border-color:var(--de-gold);}
.pday{display:none;}
.pday.on{display:block;}

.session{border:1px solid var(--border);border-radius:14px;overflow:hidden;margin-bottom:1rem;background:var(--white);}
.session-hd{
  background:var(--ink);
  padding:.9rem 1.2rem;
  display:flex;align-items:center;justify-content:space-between;
  gap:.8rem;flex-wrap:wrap;
}
.session-hd-name{font-size:13px;font-weight:700;color:var(--white);}
.session-hd-time{font-size:12px;font-weight:600;color:#0E1C2F;background:var(--bridge-sky);padding:3px 10px;border-radius:8px;white-space:nowrap;}
.session-row{
  display:flex;gap:1rem;padding:.7rem 1.2rem;
  border-bottom:1px solid var(--border);align-items:flex-start;
}
.session-row:last-child{border-bottom:none;}
.session-time{font-size:11px;font-weight:700;color:var(--bridge-blue);min-width:42px;padding-top:2px;}
.session-talk{font-size:13px;color:var(--ink);line-height:1.45;}
.session-talk small{display:block;font-size:11px;color:var(--slate);margin-top:1px;}
.session-break{
  background:var(--mist);
  display:flex;align-items:center;gap:.8rem;
  padding:.55rem 1.2rem;border-bottom:1px solid var(--border);
}
.session-break:last-child{border-bottom:none;}
.session-break-t{font-size:11px;color:var(--slate);min-width:42px;}
.session-break-l{font-size:12px;color:var(--slate);font-style:italic;display:inline-flex;align-items:center;gap:6px;}
.embassy-note{
  background:var(--bridge-sky-pale);border:1px solid rgba(91,170,220,.32);
  border-radius:10px;padding:1rem 1.2rem;margin-top:.8rem;
}
.embassy-note strong{font-size:13px;color:var(--bridge-blue);display:block;margin-bottom:2px;}
.embassy-note span{font-size:12px;color:var(--slate);}

/* ─── KEYNOTES ───────────────────────────────────────────── */
.keynote-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;}
@media(max-width:860px){.keynote-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.keynote-grid{grid-template-columns:1fr;}}
.keynote-card{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.5rem;text-align:center;transition:box-shadow .2s;}
.keynote-card:hover{box-shadow:0 8px 30px rgba(0,0,0,.08);}
.keynote-card.pending{border-style:dashed;border-color:rgba(232,184,0,.6);background:#FDFBF0;}
.keynote-avatar{width:160px;aspect-ratio:4/5;border-radius:12px;background:linear-gradient(135deg,#e0e0e0,#cccccc);margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;font-size:32px;color:#888;font-weight:700;overflow:hidden;}
.keynote-avatar img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}
.keynote-name{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:.3rem;}
.keynote-inst{font-size:12px;color:var(--slate);margin-bottom:.4rem;}
.keynote-topic{font-size:11px;color:var(--bridge-sky);font-style:italic;}

/* ─── AUTORES (ABSTRACTS) ────────────────────────────────── */
.autores-layout{display:grid;grid-template-columns:1fr;gap:2.5rem;align-items:start;max-width:780px;}
.autores-block{margin-bottom:1.8rem;}
.autores-block-title{font-size:13px;font-weight:700;color:var(--ink);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.9rem;padding-bottom:.5rem;border-bottom:2px solid var(--de-gold);}
.autores-date-row{display:flex;align-items:center;gap:.8rem;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:13px;color:var(--slate);}
.autores-date-row:last-child{border-bottom:none;}
.autores-date-badge{background:var(--chile-red);color:white;font-size:10px;font-weight:700;padding:3px 9px;border-radius:6px;white-space:nowrap;}
.autores-list{list-style:none;margin:0;padding:0;}
.autores-list li{font-size:13px;color:var(--slate);padding:.4rem 0;padding-left:1.2rem;position:relative;border-bottom:1px solid var(--border);line-height:1.5;}
.autores-list li:last-child{border-bottom:none;}
.autores-list li::before{content:'→';position:absolute;left:0;color:var(--chile-red);font-weight:700;}
.template-box{display:flex;align-items:center;gap:1rem;background:var(--white);border:1px solid var(--border);border-radius:8px;padding:1rem;}
.template-box strong{display:block;font-size:13px;font-weight:700;color:var(--ink);}
.template-box span{font-size:11px;color:var(--slate);}
.template-btn{background:#e0e0e0;color:#888;border:none;padding:6px 14px;border-radius:6px;font-size:11px;font-weight:600;cursor:not-allowed;}

.abstract-form-block{background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.06);}
.abstract-form-header{background:var(--chile-red);padding:1rem 1.4rem;display:flex;align-items:center;gap:.7rem;font-size:14px;font-weight:700;color:white;}
.abstract-form-body{padding:1.4rem;}
.form-field-mock{margin-bottom:1rem;}
.form-field-mock label{display:block;font-size:12px;font-weight:600;color:var(--ink);margin-bottom:.4rem;}
.field-mock-input{height:36px;background:#f8f8f8;border:1px solid #ddd;border-radius:6px;}
.field-mock-select{height:36px;background:#f8f8f8;border:1px solid #ddd;border-radius:6px;padding:0 .8rem;display:flex;align-items:center;font-size:12px;color:#aaa;}
.field-mock-textarea{height:80px;background:#f8f8f8;border:1px solid #ddd;border-radius:6px;}
.form-radios{display:flex;gap:1.5rem;}
.radio-mock{font-size:12px;color:var(--slate);}
.abstract-submit-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:var(--chile-red);color:white;
  padding:12px;border-radius:8px;font-size:13px;font-weight:700;
  text-decoration:none;margin-top:.5rem;transition:opacity .2s;
}
.abstract-submit-btn:hover{opacity:.88;}
.form-note{font-size:11px;color:#aaa;text-align:center;margin-top:.6rem;font-style:italic;}

/* ─── COMITÉ ─────────────────────────────────────────────── */
.comite-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;}
@media(max-width:760px){.comite-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.comite-grid{grid-template-columns:1fr;}}
.comite-card{display:flex;align-items:center;gap:1rem;background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1.1rem;transition:box-shadow .2s;}
.comite-card:hover{box-shadow:0 6px 20px rgba(0,0,0,.07);}
.comite-avatar{width:64px;height:64px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:white;overflow:hidden;}
.comite-avatar img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}
.comite-info strong{display:block;font-size:13px;font-weight:700;color:var(--ink);}
.comite-info span{font-size:11px;color:var(--slate);}

/* ─── INSCRIPCION ────────────────────────────────────────── */
.reg-intro{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start;margin-bottom:3rem;}
@media(max-width:860px){.reg-intro{grid-template-columns:1fr;gap:2rem;}}
.reg-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:2rem;}
@media(max-width:760px){.reg-cards{grid-template-columns:1fr;}}
.rcard{
  background:var(--white);border:1.5px solid var(--border);
  border-radius:16px;padding:1.6rem;position:relative;
  transition:all .25s;display:flex;flex-direction:column;
}
.rcard:hover{border-color:var(--bridge-sky);transform:translateY(-3px);box-shadow:0 12px 40px rgba(27,79,138,.12);}
.rcard.featured{border-color:var(--chile-red);box-shadow:0 0 0 4px rgba(213,43,30,.08);}
.rcard.gold{border-color:var(--de-gold);box-shadow:0 0 0 4px rgba(232,184,0,.1);}
.rfeat-pill{
  position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:var(--chile-red);color:var(--white);
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 14px;border-radius:20px;white-space:nowrap;
  display:inline-flex;align-items:center;gap:6px;
}
.rfeat-pill.gold{background:var(--de-gold);color:#1A1A1A;}
.rcat{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate);margin:.4rem 0 .5rem;}
.rprice{font-family:var(--ff-display);font-size:32px;color:var(--ink);line-height:1;margin-bottom:.2rem;}
.rprice.gold-text{color:#9B7800;}
.rprice sub{font-family:var(--ff-body);font-size:13px;font-weight:400;color:var(--slate);vertical-align:middle;}
.rdesc{font-size:13px;color:var(--slate);margin:.5rem 0 1rem;line-height:1.55;}
.rinc{list-style:none;margin:0 0 1.2rem;padding:0;flex:1;}
.rinc li{
  font-size:13px;color:var(--ink);
  padding:5px 0;display:flex;align-items:center;gap:8px;
  border-bottom:1px solid var(--border);
}
.rinc li:last-child{border-bottom:none;}
.rinc li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--bridge-sky);flex-shrink:0;}
.pay-tag{
  border-radius:8px;padding:.7rem;font-size:12px;color:var(--ink-mid);
  margin-bottom:1rem;display:flex;align-items:center;gap:8px;line-height:1.4;
}
.pay-tag.red{background:rgba(213,43,30,.08);border:1px solid rgba(213,43,30,.22);}
.pay-tag.gold{background:rgba(232,184,0,.1);border:1px solid rgba(232,184,0,.3);}

.pay-box{
  background:var(--mist);border:1px solid var(--border);
  border-radius:14px;padding:1.6rem;
}
.pay-box-title{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:1.2rem;}
.pay-methods{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.2rem;}
.pay-method{
  display:flex;align-items:center;gap:8px;
  background:var(--white);border:1px solid var(--border);
  border-radius:8px;padding:8px 14px;font-size:12px;color:var(--ink);font-weight:500;
}
.pay-dot{width:10px;height:10px;border-radius:50%;}
.pay-note{
  font-size:14px;color:var(--ink-mid);line-height:1.7;
  padding:1rem 1.2rem;background:var(--white);
  border-radius:9px;border-left:4px solid var(--de-gold);
}

/* ─── VENUE ──────────────────────────────────────────────── */
.venue-layout{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start;}
@media(max-width:860px){.venue-layout{grid-template-columns:1fr;}}
.vmap-block{
  background:linear-gradient(180deg,rgba(10,30,55,.35),rgba(10,30,55,.7)),url('/venue/salon-detigny.webp?v=2') center/cover no-repeat;
  border:1px solid rgba(91,170,220,.3);
  border-radius:16px;min-height:280px;display:flex;flex-direction:column;
  align-items:center;justify-content:flex-end;gap:8px;padding:1.5rem;
  position:relative;overflow:hidden;text-align:center;color:#fff;
}
.vmap-pin{position:relative;z-index:1;color:#fff;}
.vmap-pin .icon{width:36px;height:36px;stroke-width:2;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4));}
.vmap-name{font-size:15px;font-weight:700;color:#fff;position:relative;z-index:1;text-shadow:0 1px 4px rgba(0,0,0,.5);}
.vmap-addr{font-size:12px;color:rgba(255,255,255,.92);position:relative;z-index:1;text-shadow:0 1px 3px rgba(0,0,0,.5);}
.vmap-link{font-size:12px;color:#fff;font-weight:700;position:relative;z-index:1;cursor:pointer;text-decoration:underline;text-shadow:0 1px 3px rgba(0,0,0,.5);}

.venue-info{display:flex;flex-direction:column;gap:1rem;}
.vrow{display:flex;gap:1rem;align-items:flex-start;}
.v-ico{
  width:42px;height:42px;border-radius:10px;
  background:var(--bridge-sky-pale);border:1px solid rgba(91,170,220,.3);
  display:flex;align-items:center;justify-content:center;
  color:var(--bridge-blue);flex-shrink:0;
}
.v-ico .icon{width:20px;height:20px;}
.v-text strong{font-size:15px;font-weight:700;color:var(--ink);display:block;}
.v-text span{font-size:13px;color:var(--slate);}

.places-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;margin-top:2rem;}
@media(max-width:900px){.places-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:520px){.places-grid{grid-template-columns:repeat(2,1fr);}}
.place-card{border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--white);}
.place-img{height:80px;display:flex;align-items:center;justify-content:center;color:#fff;}
.place-img .icon{width:28px;height:28px;}
.place-body{padding:.7rem;}
.place-name{font-size:12px;font-weight:700;color:var(--ink);}
.place-cat{font-size:10px;color:var(--slate);margin-top:2px;}

/* ─── NETWORKING (LIGHT) ─────────────────────────────────── */
.nw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}
@media(max-width:800px){.nw-grid{grid-template-columns:1fr;}}
.nw-card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:14px;padding:1.6rem;
  transition:border-color .2s;
}
.nw-card:hover{border-color:var(--bridge-sky);}
.nw-ico{
  width:44px;height:44px;border-radius:10px;
  background:var(--bridge-sky-pale);color:var(--bridge-blue);
  display:flex;align-items:center;justify-content:center;margin-bottom:.9rem;
}
.nw-ico .icon{width:22px;height:22px;}
.nw-card h3{font-size:16px;font-weight:700;color:var(--ink);margin-bottom:.4rem;}
.nw-card p{font-size:14px;color:var(--slate);line-height:1.6;}
.nw-cta{text-align:center;margin-top:2.5rem;}

/* ─── FOOTER ─────────────────────────────────────────────── */
.footer{background:var(--ink);padding:3.5rem 0 2rem;}
.footer-inner{
  display:grid;grid-template-columns:1.4fr 1fr 1fr;
  gap:2.5rem;margin-bottom:2.5rem;
}
@media(max-width:760px){.footer-inner{grid-template-columns:1fr;gap:2rem;}}
.footer-brand strong{font-family:var(--ff-display);font-size:22px;color:var(--white);display:block;margin-bottom:.5rem;}
.footer-brand p{font-size:14px;color:rgba(255,255,255,.5);line-height:1.7;}
.footer-col h4{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--de-gold);margin-bottom:1rem;}
.footer-col ul{list-style:none;margin:0;padding:0;}
.footer-col ul li{font-size:14px;color:rgba(255,255,255,.55);padding:3px 0;}
.footer-col ul li a{color:inherit;text-decoration:none;transition:color .15s;}
.footer-col ul li a:hover{color:#fff;text-decoration:underline;}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:1.5rem;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:1rem;
}
.footer-partners{display:flex;flex-wrap:wrap;gap:.4rem;}
.fp{
  font-size:10px;color:rgba(255,255,255,.55);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  padding:3px 10px;border-radius:12px;
}
.footer-credit{font-size:11px;color:rgba(255,255,255,.45);}
.footer-credit strong{color:rgba(255,255,255,.7);}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
.hero-inner>*{animation:fadeUp .7s ease both;}
.hero-inner>*:nth-child(1){animation-delay:.1s;}
.hero-inner>*:nth-child(2){animation-delay:.2s;}
.hero-inner>*:nth-child(3){animation-delay:.3s;}
.hero-inner>*:nth-child(4){animation-delay:.4s;}
.hero-inner>*:nth-child(5){animation-delay:.5s;}
.hero-inner>*:nth-child(6){animation-delay:.6s;}

/* Flag pills */
.flag{
  display:inline-flex;width:18px;height:13px;border-radius:2px;overflow:hidden;
  border:1px solid rgba(0,0,0,.15);vertical-align:middle;
}
.flag-cl{background:linear-gradient(to bottom, #fff 0 50%, #D52B1E 50% 100%);position:relative;}
.flag-cl::before{content:'';position:absolute;top:0;left:0;width:35%;height:50%;background:#0039A6;}
.flag-globe{background:#1B4F8A;}
