/* Portada (app/views/home/home.php). Se carga solo en la home desde pages/index.php. */

/* Cards de la portada. Toda la card es el enlace (en móvil no hay hover que "gire" la card).
   Las columnas son d-flex, así que las cards de una misma fila tienen la misma altura. */
.home-card { position: relative; display: flex; flex-direction: column; justify-content: flex-end; width: 100%; min-height: 240px; overflow: hidden; background: #fff; box-shadow: 0 0 44px -10px rgba(0, 0, 0, 0.15); color: inherit; transition: transform 0.3s ease, box-shadow 0.3s ease; }
a.home-card:hover, a.home-card:focus-visible { text-decoration: none; transform: translateY(-4px); box-shadow: 0 14px 40px -10px rgba(0, 0, 0, 0.35); }
.home-card-bg { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-size: cover; background-position: center; transition: transform 0.6s ease, opacity 0.4s ease; }
a.home-card:hover .home-card-bg, a.home-card:focus-visible .home-card-bg { transform: scale(1.07); }
.home-card-body { position: relative; margin: 0 20px 20px; padding: 14px 16px; background: #fff; text-align: center; transition: transform 0.3s ease; }
a.home-card:hover .home-card-body, a.home-card:focus-visible .home-card-body { transform: translateY(-6px); }
.home-card-title { display: block; margin: 0; font-size: 1.75rem; font-weight: 800; line-height: 1.15; color: #212529; letter-spacing: -0.02em; }
.home-card-label { display: block; font-weight: 600; color: #212529; }
.home-card-text { display: block; margin: 4px 0 0; font-size: 0.9rem; font-weight: 600; line-height: 1.4; color: #777; }

/* Card de logo (Centratec, Red PIDI) */
.home-card-logo { justify-content: center; align-items: center; padding: 24px; text-align: center; }
.home-card-logo img { max-width: 75%; max-height: 110px; width: auto; height: auto; }
.home-card-logo .home-card-text { margin-top: 12px; }
.home-card-logo .btn { margin: 12px 4px 0; }

/* Cards de laboratorios: icono y texto; al pasar el ratón aparece la foto */
.home-card-lab { justify-content: center; padding: 30px 24px; text-align: center; }
.home-card-lab .home-card-bg { opacity: 0; }
.home-card-lab .home-card-bg::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0, 0, 0, 0.55); }
.home-card-lab:hover .home-card-bg, .home-card-lab:focus-visible .home-card-bg { opacity: 1; }
.home-card-lab .home-card-content { position: relative; }
.home-card-lab .home-card-content i, .home-card-lab .home-card-content p { color: #212529; transition: color 0.3s ease; }
.home-card-lab h3 { margin: 16px 0 8px; font-size: 1rem; font-weight: 700; transition: color 0.3s ease; }
.home-card-lab:hover .home-card-content .text-color-primary, .home-card-lab:hover .home-card-content i, .home-card-lab:hover .home-card-content p,
.home-card-lab:focus-visible .home-card-content .text-color-primary, .home-card-lab:focus-visible .home-card-content i, .home-card-lab:focus-visible .home-card-content p { color: #fff !important; }
/* I+D+i: al pasar el ratón la imagen hace zoom y el título se queda fijo y visible */
.home-idi .thumb-info .thumb-info-title,
.home-idi .thumb-info .thumb-info-slide-info-hover-1 { opacity: 1 !important; transform: none !important; }
/* Imagen algo oscurecida y sombra en el texto para que el título blanco se lea en fotos claras */
.home-idi .thumb-info .thumb-info-wrapper img { transition: transform 0.6s ease; filter: brightness(0.65); }
.home-idi .thumb-info .thumb-info-title { z-index: 2; }
.home-idi .thumb-info .thumb-info-title h3 { text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6), 0 0 12px rgba(0, 0, 0, 0.35); }
.home-idi a:hover .thumb-info .thumb-info-wrapper img,
.home-idi a:focus-visible .thumb-info .thumb-info-wrapper img { transform: scale(1.08); }

/* Banner de evento destacado sobre la sección intro. Todo el banner es el enlace. */
.home-banner { position: relative; display: block; overflow: hidden; border-radius: 10px; background: #030a1e url('../img/home/banner-foro-aeroespacial.jpg') center / cover no-repeat; color: #fff; box-shadow: 0 14px 40px -14px rgba(0, 0, 0, 0.45); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.home-banner::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: linear-gradient(90deg, rgba(3, 10, 30, 0.88) 0%, rgba(3, 10, 30, 0.55) 50%, rgba(3, 10, 30, 0.05) 100%); }
a.home-banner:hover, a.home-banner:focus-visible { color: #fff; text-decoration: none; transform: translateY(-4px); box-shadow: 0 20px 44px -14px rgba(0, 0, 0, 0.55); }
.home-banner-content { position: relative; max-width: 720px; padding: 36px 48px; }
.home-banner-date { display: inline-block; padding: 6px 18px; border-radius: 17px; background: #fff; color: #0b4a9e; font-size: 0.95rem; font-weight: 700; letter-spacing: 0.1em; }
.home-banner-kicker { display: block; margin-top: 18px; color: #9fdcff; font-size: 1.25rem; font-weight: 600; letter-spacing: 0.2em; }
.home-banner-title { margin: 6px 0 14px; color: #fff; font-size: 3.2rem; font-weight: 800; line-height: 1.1; letter-spacing: -0.02em; }
.home-banner-info { display: block; font-size: 1.1rem; line-height: 1.7; }
.home-banner-info i { width: 1.4em; color: #9fdcff; }
.home-banner-btn { display: inline-block; margin-top: 18px; padding: 10px 28px; border-radius: 23px; background: #fff; color: #0b4a9e; font-size: 1.1rem; font-weight: 700; transition: background 0.3s ease, color 0.3s ease; }
a.home-banner:hover .home-banner-btn, a.home-banner:focus-visible .home-banner-btn { background: #0b4a9e; color: #fff; }
@media (max-width: 767px) {
    .home-banner::before { background: rgba(3, 10, 30, 0.75); }
    .home-banner-content { padding: 24px 20px; }
    .home-banner-kicker { font-size: 0.95rem; letter-spacing: 0.12em; }
    .home-banner-title { font-size: 2rem; }
    .home-banner-info { font-size: 0.95rem; }
}

@media (prefers-reduced-motion: reduce) {
    .home-banner, a.home-banner:hover { transition: none; transform: none; }
    .home-card, .home-card-bg, .home-card-body { transition: none; }
    a.home-card:hover, a.home-card:hover .home-card-bg, a.home-card:hover .home-card-body { transform: none; }
    .home-idi a:hover .thumb-info .thumb-info-wrapper img { transform: none; }
}
