
:root { --neon: #00e5ff; --bg: #0a0f14; }
body { background: var(--bg); color: #dbe7ff; }
.neon { color: var(--neon); text-shadow: 0 0 8px rgba(0,229,255,.6); }
.neon-border-bottom { border-bottom: 1px solid rgba(0,229,255,.25); box-shadow: 0 2px 10px rgba(0,229,255,.08); }
.neon-border-top { border-top: 1px solid rgba(0,229,255,.25); box-shadow: 0 -2px 10px rgba(0,229,255,.08); }
.card-dark { background: #0f151c; border: 1px solid rgba(0,229,255,.12); }
.btn-neon { background: var(--neon); color: #001018; border: none; box-shadow: 0 0 12px rgba(0,229,255,.35); }
.btn-neon:hover { filter: brightness(1.05); }
a { color: var(--neon); }
a:hover { color: #7aeaff; }
.partner-logos img { filter: grayscale(.15); transition: filter .2s; }
.partner-logos img:hover { filter: grayscale(0); }
.badge-neon { background: rgba(0,229,255,.15); color: #7be9ff; border: 1px solid rgba(0,229,255,.35); }
.hero {
  background: radial-gradient(1200px 500px at 80% -10%, rgba(0,229,255,.15), transparent),
              linear-gradient(180deg, rgba(0,0,0,.0), rgba(0,0,0,.55)),
              url('/assets/img/hero_ocean.jpg') center/cover no-repeat;
  min-height: 46vh;
  display: grid; place-items: center;
}
.hero h1 { font-size: clamp(2rem, 4vw, 3.2rem); }
.hero p { color: #cde7ee; }
.credencial {
  width: 360px; height: 540px; background: #0f151c;
  border: 1px solid rgba(0,229,255,.25); border-radius: 14px; 
  padding: 18px; color: #dbe7ff;
  box-shadow: 0 0 24px rgba(0,229,255,.15);
}
.credencial .header { display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.credencial .qrcode { width: 170px; height: 170px; background:#000; display:grid; place-items:center; margin: 10px auto; }
@media print {
  nav, footer, .no-print { display: none !important; }
  body { background: #fff; color: #000; }
  .credencial { box-shadow: none; border: 1px solid #000; }
}

/* --- Home v2 --- */
.text-ice { color: #cfefff; }

.hero-v2 {
  background: radial-gradient(1200px 500px at 80% -10%, rgba(0,229,255,.12), transparent),
              linear-gradient(180deg, rgba(0,0,0,.0), rgba(0,0,0,.55)),
              url('/assets/img/hero_ocean.jpg') center/cover no-repeat;
  min-height: 60vh;
  display: grid; align-items: center;
}
.hero-title { font-size: clamp(2.2rem, 4.2vw, 3.4rem); letter-spacing: .3px; }

.glass {
  background: rgba(8,12,18,.55);
  border: 1px solid rgba(0,229,255,.18);
  backdrop-filter: blur(8px);
  border-radius: 16px;
}
.card-spotlight .spotlight-cta { display: grid; gap: 10px; }

.mini-kpis { display:flex; flex-wrap:wrap; gap:24px; margin-top: 10px; }
.kpi { min-width: 90px; }
.kpi-num { font-size: 1.6rem; font-weight: 700; color: var(--neon); text-shadow: 0 0 10px rgba(0,229,255,.35); }
.kpi-label { font-size: .8rem; color:#93c7d4; }

.section-header h3 { font-weight: 700; }
.link-more { color:#7be9ff; text-decoration: none; }
.link-more:hover { color:#b9f5ff; text-decoration: underline; }

.neon-list .list-group-item { transition: background .2s, transform .2s; }
.hover-glow:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(0,229,255,.12); }

/* Timeline eventos */
.timeline { position: relative; padding-left: 18px; }
.timeline::before { content:''; position:absolute; left:6px; top:2px; bottom:2px; width:2px; background: rgba(0,229,255,.25); }
.timeline-item { position: relative; display:flex; gap:12px; padding:15px 0; }
.timeline-item .time { width:100px; color:#a4cadd; font-weight:600; margin-left:15px; }
.timeline-item .dot { position:absolute; left:-15px; top:16px; width:10px; height:10px; border-radius:50%; background: var(--neon); box-shadow: 0 0 10px rgba(0,229,255,.6); }
.timeline-item .title { font-weight:600; }
.timeline-item .content { flex:1; }

/* News scroller */
.news-scroller { overflow: hidden; }
.news-track { display:flex; gap:14px; overflow:auto; scroll-behavior:smooth; padding-bottom: 6px; }
.news-track::-webkit-scrollbar { height: 8px; }
.news-track::-webkit-scrollbar-thumb { background: rgba(0,229,255,.2); border-radius: 10px; }
.news-card {
  width: 300px; flex: 0 0 auto; border:1px solid rgba(0,229,255,.12);
  border-radius:12px; background:#0f151c; text-decoration:none; color:#dbe7ff;
}
.news-card .cover {
  height: 160px; border-top-left-radius:12px; border-top-right-radius:12px; 
  background-size: cover; background-position:center;
}
.news-card .cover.placeholder { background: linear-gradient(135deg, rgba(0,229,255,.15), rgba(0,229,255,.03)); }
.news-card .body { padding:12px; }
.news-card .title { font-weight:700; }
.line-clamp-2 { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient: vertical; overflow:hidden; }

/* Features */
.feature { padding: 18px; border:1px solid rgba(0,229,255,.12); }
.feature-icon { font-size: 1.8rem; margin-bottom: 6px; }
