/* Shared post-event conversion and photo gallery. */
.recap-panel { color: #fff; background: #16394c; padding: 1.4rem; border: 1px solid #ffffff30; border-radius: 16px; display: flex; flex-direction: column; gap: 1rem; }
.recap-panel img { display: block; width: 100%; height: auto; border-radius: 9px; }
.recap-panel h2 { color: #fff; font-size: clamp(1.45rem, 2.5vw, 2rem); line-height: 1.15; margin: 0; }
.recap-panel p { color: #e1edf0; margin: 0; }
.recap-panel .btn { white-space: normal; }
.virtual-hero .recap-panel { max-width: 640px; margin: 2rem auto 0; }
#inicio.hero { background: linear-gradient(100deg, rgba(12,35,49,.94), rgba(12,58,62,.72)), url('fotos-2026/322026.jpeg') center/cover; }
.thanks-section { background: #f5f8f4; }
.thanks-copy { max-width: 880px; margin: 0 auto 3rem; }
.thanks-copy h2 { font-size: clamp(2rem, 4vw, 3.4rem); letter-spacing: -.035em; }
.thanks-copy p { font-size: 1.12rem; line-height: 1.8; }
.congress-gallery { scroll-margin-top: 110px; }
.gallery-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin-top: 1.5rem; }
.gallery-grid figure { margin: 0; overflow: hidden; border-radius: 14px; background: white; box-shadow: 0 8px 30px #10263f0c; }
.gallery-grid figure:first-child { grid-column: 1 / -1; }
.gallery-grid a { display: block; }
.gallery-grid a:focus-visible { outline: 4px solid #0f8f89; outline-offset: 4px; }
.gallery-grid img { display: block; width: 100%; height: auto; }
.gallery-grid figcaption { padding: 1rem 1.25rem; color: #16394c; }
a[href="congreso-2026-ondemand.html"] { white-space: normal; text-align: center; line-height: 1.35; }
.navbar a[href="congreso-2026-ondemand.html"], .site-header a[href="congreso-2026-ondemand.html"] { max-width: 260px; }
.trust-strip a[href="congreso-2026-ondemand.html"] { max-width: 270px; }
@media (max-width: 767px) {
  .gallery-grid { grid-template-columns: 1fr; }
  .mobile-cta .btn { white-space: normal; font-size: .95rem; }
  body { padding-bottom: 100px; }
  #wa-float { bottom: 110px; }
  .site-header .header-inner { flex-wrap: wrap; }
}
