@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700;800&display=swap');

:root{
  --inca-primary:#113f83;
  --accent:#fd7e14;
  --footer:#0e3c82;
  --soft-bg:#f5f8ff;
}
html{ scroll-behavior:smooth; }
body{
  font-family:"Poppins", sans-serif;
  background:var(--soft-bg);
  color:#0f172a;
  position: relative;
  font-size:1.10rem;
}
.navbar-brand h1{ color:var(--inca-primary); font-size:1.3rem; margin:0; line-height:1.1; }
.brand-wrap img{ width:100px; height:100px; object-fit:contain; }

header.sticky-top{
  backdrop-filter:saturate(180%) blur(10px);
  background:rgba(255,255,255,.92);
  border-bottom:1px solid var(--accent);
  box-shadow:0 2px 10px rgba(253,126,20,.15);
}
/* Menu hover color */
.navbar .nav-link:hover, .navbar .nav-link:focus{ color: var(--accent) !important; }

.hero-title{ font-weight:800; line-height:1.25; font-size:1.9rem; }
@media (min-width:768px){ .hero-title{ font-size:2.2rem; } }
@media (min-width:1200px){ .hero-title{ font-size:2.4rem; } }

.banner-img, .afiche-img{ border-radius:1rem; box-shadow:0 8px 24px rgba(0,0,0,.08); cursor:zoom-in; background:#fff; }

/* H2 Date & Place pills */
.dateplace{ font-weight:800; font-size:1.4rem; }
.dateplace .pill{
  background:#e9efff; color:var(--inca-primary); border-radius:999px; padding:.45rem .9rem; display:inline-flex; align-items:center; gap:.5rem; margin:.25rem .35rem;
  font-size:1.1rem; font-weight:700;
}
.dateplace .pill i{ font-size:1.1rem; }

/* Countdown */
.countdown{ display:grid; grid-template-columns: repeat(4, minmax(72px,1fr)); gap:12px; }
.time-box{ background:linear-gradient(135deg, var(--inca-primary), #0a2a5c); color:#fff;
  border-radius:1rem; padding:16px 10px; text-align:center;
  box-shadow:0 10px 20px rgba(17,63,131,.25); transition: transform .25s ease, box-shadow .25s ease; }
.time-box:hover{ transform: translateY(-4px); box-shadow: 0 18px 30px rgba(17,63,131,.35); }
.time-box .value{ font-size:1.9rem; font-weight:800; letter-spacing:.5px; }
.time-box .label{ font-size:1rem; opacity:.9; margin-top:4px; }

.section-title{ font-weight:800; letter-spacing:.2px; font-size:1.85rem; }
@media (min-width:992px){ .section-title{ font-size:2.3rem; } }
.hr-title{ display:none !important; }

.badge-date{ background:#e9efff; color:var(--inca-primary); font-weight:700; border-radius:.75rem; padding:.6rem .85rem; margin-right:.5rem; }

/* Ejes */
.eje-card{ border:1px solid #e5e7eb; border-radius:1rem; background:#fff; padding:16px; height:100%;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.eje-card:hover{ transform: translateY(-6px); box-shadow:0 10px 24px rgba(0,0,0,.08); border-color:var(--inca-primary); }
.eje-card img{ width:150px;height:150px; object-fit:cover; border-radius:.75rem; }
.eje-card h5{ font-size:1.5rem; }
.eje-card p{ font-size:1.12rem; }

/* Agenda table */
.table.agenda-table tr{ transition: background-color .15s ease, transform .15s ease; }
.table.agenda-table tr:hover{ background:#eef4ff; transform:scale(1.005); }

/* CTA cards bigger + paragraph spacing */
.cta-card{ border:1px solid #e5e7eb; border-radius:1.25rem; padding:32px; background:#fff; box-shadow:0 6px 20px rgba(0,0,0,.06); }
.cta-card p{ margin-bottom:1rem; }
.cta-card .important{ background:#fff6eb; border-left:4px solid var(--accent); border-radius:.75rem; padding:14px 16px; font-size:1.05rem; }
.btn-inca{ background:#113f83; color:#fff; border:none; padding:1rem 1.5rem; border-radius:1rem; font-weight:700; transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.btn-inca:hover{ filter:brightness(.95); color:#fff; transform: translateY(-1px); }
.btn-inca:active, .btn-inca:focus{ background: var(--accent) !important; color:#fff !important; box-shadow:0 0 0 .25rem rgba(253,126,20,.25); }

/* Social icons size in menu */
.navbar .social-item .nav-link{ padding-left:.5rem; padding-right:.5rem; }

/* Highlight box */
.highlight-box{ background:#f3f7ff; border-left:4px solid var(--inca-primary); border-radius:.75rem; padding:1rem 1.25rem; }

/* Universities */
.uni-table th, .uni-table td{ font-size:1.18rem; }
@media (min-width:992px){ .uni-table th, .uni-table td{ font-size:1.22rem; } }
.uni-table img.logo-inca{ width:26px; height:26px; object-fit:contain; margin-right:.4rem; vertical-align:middle; }

/* Footer */
.footer{ border-top:1px solid rgba(255,255,255,.15); background:var(--footer); color:#fff; }
.footer a{ color:#fff; }
.footer a:hover{ opacity:.85; }

/* Back to top */
#backToTop{ position:fixed; right:16px; bottom:20px; z-index:999; width:56px; height:56px; border-radius:50%;
  opacity:0; pointer-events:none; transition: opacity .2s ease, transform .2s ease, box-shadow .2s ease;
  background: linear-gradient(135deg, var(--inca-primary), #0a2a5c); color:#fff; border:none; box-shadow: 0 8px 20px rgba(17,63,131,.25); }
#backToTop.show{ opacity:1; pointer-events:auto; }
#backToTop:hover{ transform: translateY(-3px) scale(1.04); box-shadow: 0 12px 24px rgba(17,63,131,.35); }

/* Reveal */
.revealable{ opacity:0; transform: translateY(18px) scale(0.98); transition: opacity .6s ease, transform .6s ease, filter .6s ease; will-change: opacity, transform; filter: blur(2px); }
.reveal{ opacity:1 !important; transform: translateY(0) scale(1); filter: blur(0); }

/* Accent text */
.accent-orange{ color:#fd7e14 !important; font-weight:700; }

/* Contact GIF */
.contact-gif{ width:45%; display:block; margin: 10px auto 0 auto; }

/* Inscripción: imagen sin sombra */
.inscripcion-hero-img{
  box-shadow: none !important;
}


/* Navbar compacta */
.navbar{ padding-top: .25rem; padding-bottom: .25rem; }
.brand-wrap img{ height:72px; width:auto; }
@media (min-width:992px){
  .brand-wrap{ gap:.25rem; }
}

/* Asegurar sin sombra para la imagen de inscripción */
.inscripcion-hero-img{ box-shadow:none !important; }


/* Navbar más compacta v2 */
.navbar{ padding-top:.15rem; padding-bottom:.15rem; }
.brand-wrap img{ height:64px; width:auto; }
.brand-wrap h1{ margin:0; line-height:1; font-size:clamp(1.05rem,2.1vw,1.35rem); }


/* Navbar ultra compacta */
.navbar{ padding-top:.08rem; padding-bottom:.08rem; }
.brand-wrap img{ height:56px; width:auto; }

/* Ejes temáticos: asegurar forma circular y tamaño consistente */
.eje-card img{
  width: 180px !important;
  height: 180px !important;
  object-fit: cover;
  border-radius: 50% !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.12);
  display:block;
  margin: 0 auto;
}

/* Ampliar visualmente la tarjeta de inscripción */
.cta-card-wrapper{ max-width: 1200px; margin-left:auto; margin-right:auto; }
.cta-card{ padding: 2rem 2.25rem; }
@media (min-width: 992px){
  .cta-card{ padding: 2.25rem 2.5rem; }
}


/* Ejes temáticos: títulos en negrita */
.eje-card h5{ font-weight: 700; }

/* Agenda más ancha y con efecto hover*/
#agenda.container{ max-width: 1200px; }
#agenda .table tbody tr:hover{
  background-color: rgba(17,63,131,0.06);
  transition: background-color .2s ease;
}
#agenda .nav-pills .nav-link:hover{
  filter: brightness(0.95);
  transform: translateY(-1px);
  transition: .2s ease;
}

/* Inscripción: igual ancho que Agenda */
.cta-card-wrapper{ max-width: 1200px; margin-left:auto; margin-right:auto; }

/* Tarjeta para el mapa */
.map-card iframe{ width:100%; height:420px; border:0; border-radius: .75rem; }


/* Agenda: efecto de movimiento por fila */
#agenda .table tbody tr{
  transition: transform .18s ease, background-color .18s ease;
}
#agenda .table tbody tr:hover{
  transform: translateX(6px);
  background-color: rgba(17,63,131,0.06);
}
/* Centrar título de Universidades por si el HTML no aplica */
#universidades h2{ text-align:center; }


/* Inscripción: separar párrafos y normalizar utilidades Bootstrap */
#ponencias p{ margin-bottom:.9rem; }
#ponencias p.mb-1{ margin-bottom:.9rem !important; }
#ponencias p.mb-0{ margin-bottom:.65rem !important; }
#ponencias .important{ line-height:1.65; margin-bottom: 1rem !important; }
