/* Infoconectados Core - Home / Hero Video */
:root{
  --infc-bg:#0b0f19;
  --infc-fg:#ffffff;
  --infc-muted:rgba(255,255,255,.86);
  --infc-muted2:rgba(255,255,255,.76);
  --infc-card:rgba(255,255,255,.06);
  --infc-border:rgba(255,255,255,.12);
  --infc-shadow:0 18px 60px rgba(0,0,0,.26);
  --infc-radius:18px;
}

.infc-hero{
  position:relative;
  min-height:100vh;
  width:100%;
  overflow:hidden;
  background: var(--infc-bg);
}

.infc-hero__media{ position:absolute; inset:0; }
.infc-hero__video{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  transform:scale(1.03);
  filter:saturate(1.05) contrast(1.02);
}

.infc-hero__overlay{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(10,10,10,.55) 0%, rgba(10,10,10,.45) 40%, rgba(10,10,10,.70) 100%);
}

.infc-hero__grain{
  position:absolute; inset:0;
  opacity:.12; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
}

.infc-hero__content{ position:relative; z-index:2; min-height:100vh; display:flex; align-items:center; }
.infc-hero__container{ width:min(1120px, 92vw); margin:0 auto; padding:96px 0 64px; }

.infc-hero__kicker{
  display:inline-block;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.85rem;
  color:rgba(255,255,255,.82);
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  backdrop-filter: blur(8px);
  background:rgba(0,0,0,.18);
}

.infc-hero__title{
  margin:18px 0 10px;
  font-size:clamp(2.4rem, 5vw, 4.2rem);
  line-height:1.05;
  color:#fff;
  letter-spacing:-.02em;
}

.infc-hero__subtitle{
  margin:0 0 22px;
  max-width:62ch;
  font-size:clamp(1.05rem, 1.6vw, 1.25rem);
  line-height:1.45;
  color:var(--infc-muted);
}

.infc-hero__cta{ display:flex; gap:12px; flex-wrap:wrap; margin:18px 0 10px; }

.infc-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px; border-radius:14px;
  font-weight:700; text-decoration:none !important;
  transition:transform .15s ease, opacity .15s ease, background .15s ease, border-color .15s ease;
}
.infc-btn:active{ transform:translateY(1px); }

.infc-btn--primary{ color:#0a0a0a; background:#ffffff; border:1px solid rgba(255,255,255,.25); }
.infc-btn--primary:hover{ opacity:.92; }

.infc-btn--ghost{
  color:#ffffff; background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
}
.infc-btn--ghost:hover{ background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.28); }

.infc-hero__meta{ margin-top:14px; font-size:.95rem; color:rgba(255,255,255,.72); }

.infc-hero__scroll{
  position:absolute; left:50%; bottom:18px; transform:translateX(-50%);
  z-index:3; width:44px; height:44px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(0,0,0,.18);
  backdrop-filter: blur(8px);
  display:grid; place-items:center;
  text-decoration:none !important;
}
.infc-hero__scroll span{
  width:10px; height:10px;
  border-right:2px solid rgba(255,255,255,.85);
  border-bottom:2px solid rgba(255,255,255,.85);
  transform:rotate(45deg);
  margin-top:-2px;
}

/* Sección y cards */
.infc-section{ padding:72px 0; background: var(--infc-bg); }
.infc-wrap{ width:min(1120px, 92vw); margin:0 auto; }
.infc-h2{ color:#fff; font-size:clamp(1.6rem, 2.4vw, 2.1rem); margin:0 0 18px; }

.infc-grid{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:14px; }
.infc-card{
  border-radius:18px;
  padding:18px 16px;
  background:var(--infc-card);
  border:1px solid var(--infc-border);
  color:rgba(255,255,255,.86);
  box-shadow:var(--infc-shadow);
}
.infc-card h3{ margin:0 0 8px; color:#fff; font-size:1.12rem; }
.infc-card p{ margin:0 0 12px; color:var(--infc-muted2); line-height:1.45; }

.infc-link{
  color:#fff !important;
  font-weight:700;
  text-decoration:none !important;
  border-bottom:1px solid rgba(255,255,255,.30);
}
.infc-link:hover{ opacity:.9; }

/* Responsive */
@media (max-width: 980px){
  .infc-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .infc-hero__container{ padding:92px 0 56px; }
}
@media (max-width: 640px){
  .infc-grid{ grid-template-columns:1fr; }
  .infc-hero__container{ padding:84px 0 52px; }
}

/* Mobile: apaga el video si el usuario tiene reducción de movimiento o pantalla chica */
@media (prefers-reduced-motion: reduce), (max-width: 768px){
  .infc-hero__video{ display:none; }
  .infc-hero__media{
    background:linear-gradient(180deg, rgba(10,10,10,.55) 0%, rgba(10,10,10,.70) 100%);
  }
}
