#galeria-expo .gallery-slider {
  overflow: hidden;
  padding: 10px 0 30px;
}

#galeria-expo .swiper-slide {
  transition: transform .5s ease, opacity .5s ease, filter .5s ease;
  opacity: .45;
  filter: blur(1px);
  transform: scale(.9);
}

#galeria-expo .swiper-slide-active {
  opacity: 1;
  filter: blur(0);
  transform: scale(1);
}

#galeria-expo .swiper-slide img {
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(0,0,0,.22);
}


/*****************/
/************************************/
:root{
  --brand-green: rgb(30, 104, 54);
  --brand-menu: rgba(6, 12, 34, 0.98);
  --ink-soft: #5f6b85;
  --card-border: rgba(6, 12, 34, 0.10);
  --card-shadow: 0 10px 28px rgba(6, 12, 34, 0.08);
}

#galeria-expo{
  padding: 56px 0 !important;
}

#galeria-expo .section-header h2{
  color: var(--brand-menu);
  font-weight: 800;
  letter-spacing: .02em;
  margin-bottom: 8px;
}

#galeria-expo .section-header p{
  color: var(--ink-soft);
  font-size: .95rem;
  margin-bottom: 24px;
}

/* Grupo por año */
.year-group{
  position: relative;
  margin: 26px auto;
  padding: 18px 18px 22px;
  border: 1px solid var(--card-border);
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--card-shadow);
  overflow: hidden;
}

.year-group::before{
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--brand-green), var(--brand-menu));
}

/* Etiqueta formal integrada */
.year-tag-formal{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 2px 0 14px;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--brand-menu);
  color: #fff;
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  border: 1px solid rgba(255,255,255,.20);
}

.year-tag-formal::before{
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--brand-green);
  box-shadow: 0 0 0 3px rgba(30,104,54,.20);
}

/* Slider */
.year-group .gallery-slider{
  padding-bottom: 18px;
}

.year-group .swiper-slide{
  opacity: .45;
  transform: scale(.92);
  transition: all .35s ease;
}

.year-group .swiper-slide-active{
  opacity: 1;
  transform: scale(1);
}

.year-group .swiper-slide img{
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: 12px;
  border: 1px solid rgba(6,12,34,.08);
  box-shadow: 0 8px 18px rgba(6,12,34,.12);
}

/* Dots */
.year-group .swiper-pagination-bullet{
  width: 7px;
  height: 7px;
  background: rgba(6,12,34,.25);
  opacity: 1;
}

.year-group .swiper-pagination-bullet-active{
  background: var(--brand-green);
  transform: scale(1.15);
}

/* Responsive */
@media (max-width: 768px){
  .year-group{
    padding: 14px 12px 18px;
    border-radius: 14px;
  }

  .year-tag-formal{
    font-size: .75rem;
    letter-spacing: .06em;
    padding: 7px 12px;
  }
}


/* Small (sm) → ≥576px */
@media (min-width: 576px) {
  /* estilos sm */
}

/* Medium (md) → 768px – 991.98px */
@media (min-width: 768px) and (max-width: 991.98px) {
  #speakers > .container > .row > .col-sm-6 {
      margin-top:20px;
  }
}

/* Large (lg) → 992px – 1199.98px */
@media (min-width: 992px) and (max-width: 1199.98px) {
  #speakers > .container > .row > .col-sm-6 {
      margin-top:20px;
  }
}

/* Extra large (xl) → 1200px – 1399.98px */
@media (min-width: 1200px) and (max-width: 1399.98px) {
  /* estilos xl */
}

/* Extra extra large (xxl) → ≥1400px */
@media (min-width: 1400px) {
  /* estilos xxl */
}
