/* Ajustes finales — CONFERENCIAS VÉRTICE / Plesk */
html, body, #root { width: 100%; min-height: 100%; }
body { overflow-x: hidden; }

/* PORTADA
   Mantiene la composición aprobada: texto + VÉRTICE geométrico animado.
   La fotografía de Alberto NO se usa en la portada. */
#inicio {
  isolation: isolate;
  height: 100svh !important;
  min-height: 100svh !important;
  padding-top: 5rem !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
}

/* Anula cualquier capa fotográfica añadida anteriormente al hero. */
#inicio::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

/* El VÉRTICE geométrico animado conserva protagonismo visual. */
#inicio > div.mx-auto.grid {
  position: relative;
  z-index: 1;
}
#inicio > div.mx-auto.grid > div:last-child {
  opacity: 1 !important;
  filter: drop-shadow(0 0 28px rgba(201,162,78,.18));
}
#inicio > div.mx-auto.grid > div:last-child svg {
  max-height: calc(100svh - 9rem);
}

/* Logotipo oficial */
header img[data-testid="img-logo"] {
  object-fit: contain;
}

/* Fotografía real de Alberto: exclusivamente en su sección correspondiente. */
img[data-testid="img-alberto"] {
  object-position: center top;
}

@media (min-width: 1024px) {
  #inicio > div.mx-auto.grid {
    min-height: calc(100svh - 5rem);
  }
}

/* Portátiles con poca altura: evita cortes en la primera pantalla. */
@media (min-width: 1024px) and (max-height: 780px) {
  #inicio h1 { font-size: clamp(3rem, 5.4vw, 4.6rem) !important; }
  #inicio p { margin-top: 1.25rem !important; }
  #inicio .mt-10 { margin-top: 1.5rem !important; }
  #inicio > div.mx-auto.grid > div:last-child {
    height: min(64vh, 470px) !important;
  }
}

/* Móvil: portada a pantalla completa y geometría como elemento visual de fondo. */
@media (max-width: 1023px) {
  #inicio {
    height: auto !important;
    min-height: 100svh !important;
    padding-top: 5.25rem !important;
    padding-bottom: 3rem !important;
  }
  #inicio > div.mx-auto.grid {
    position: relative;
    display: block;
  }
  #inicio > div.mx-auto.grid > div:first-child {
    position: relative;
    z-index: 2;
  }
  #inicio > div.mx-auto.grid > div:last-child {
    position: absolute;
    z-index: 1;
    right: -18%;
    bottom: -12%;
    width: 70%;
    height: auto !important;
    opacity: .28 !important;
    pointer-events: none;
  }
}

@media (max-width: 520px) {
  #inicio h1 { font-size: clamp(2.45rem, 12vw, 3.25rem) !important; }
  #inicio p { max-width: 95%; }
  header img[data-testid="img-logo"] { height: 2rem !important; }
}


/* Enlaces directos a las landings individuales de cada conferencia. */
.catalog-main-link {
  border: 1px solid rgba(201,162,78,.7);
  color: #070b16;
  background: linear-gradient(135deg,#f0d88d,#c9a24e);
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.catalog-main-link:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(201,162,78,.18);
  filter: brightness(1.04);
}
.catalog-soon {
  border: 1px solid rgba(201,162,78,.28);
  color: #8e98aa;
  background: rgba(201,162,78,.035);
}
