:root{
  --sitcope-green:#0f6b3a;
  --sitcope-green-2:#0b5a31;
  --sitcope-red:#c2181b;

  --ink:#101828;
  --muted:rgba(16,24,40,.62);
  --border:rgba(16,24,40,.10);
  --soft:rgba(16,24,40,.03);
}

body{
  color:var(--ink);
  background:
    radial-gradient(800px 400px at 15% -10%, rgba(15,107,58,.14), transparent 60%),
    radial-gradient(700px 380px at 85% 0%, rgba(194,24,27,.10), transparent 55%),
    #f7f8fa;
}

/* Header */
.site-header{ background:#fff; border-bottom:1px solid var(--border); }
.brand-logo{ height:34px;width:auto;display:block; }
.brand-name{ font-weight:900; letter-spacing:.2px; color:var(--ink); }
.top-link{ text-decoration:none; color:var(--ink); opacity:.85; font-weight:600; }
.top-link:hover{ opacity:1; }

/* Hero */
.hero{
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  position:relative;
  overflow:hidden;
}
.hero:before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg,var(--sitcope-green),var(--sitcope-red));
}
.hero-title{
  font-size:clamp(28px,4vw,46px);
  font-weight:900;
  letter-spacing:-.02em;
}
.hero-subtitle{ color:var(--muted); max-width:56ch; }

/* Badges */
.badge-operativo{
  background:rgba(15,107,58,.10);
  color:var(--sitcope-green);
  border:1px solid rgba(15,107,58,.22);
  font-weight:900;
  padding:.45rem .7rem;
  border-radius:999px;
}
.badge-formacion{
  background:rgba(194,24,27,.10);
  color:var(--sitcope-red);
  border:1px solid rgba(194,24,27,.20);
  font-weight:900;
  padding:.45rem .7rem;
  border-radius:999px;
}

/* CTA */
.hero-cta{
  border:1px solid var(--border);
  border-radius:16px;
  padding:16px;
  background:linear-gradient(180deg, rgba(15,107,58,.04), rgba(16,24,40,.01));
}
.hero-cta-muted{ background:rgba(16,24,40,.02); }
.hero-note{ color:var(--muted); }

/* Buttons */
.btn-sitcope{
  background:var(--sitcope-green);
  border:1px solid var(--sitcope-green);
  color:#fff;
  font-weight:900;
}
.btn-sitcope:hover{
  background:var(--sitcope-green-2);
  border-color:var(--sitcope-green-2);
  color:#fff;
}
.btn-outline-sitcope{
  border:1px solid rgba(15,107,58,.35);
  color:var(--sitcope-green);
  font-weight:800;
}
.btn-outline-sitcope:hover{
  background:rgba(15,107,58,.08);
  color:var(--sitcope-green);
  border-color:rgba(15,107,58,.45);
}

/* Cards */
.sit-card{
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
}
.kicker{
  font-size:.75rem;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:rgba(16,24,40,.55);
  margin-bottom:.35rem;
  font-weight:900;
}
.sit-hover{ transition:transform .12s ease, box-shadow .12s ease; }
.sit-hover:hover{ transform:translateY(-2px); box-shadow:0 14px 34px rgba(16,24,40,.10); }

/* Panel institucional */
.sit-panel{
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
}
.grid-mini{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
}
@media (max-width: 575.98px){
  .grid-mini{ grid-template-columns:1fr; }
}
.mini{
  border:1px solid var(--border);
  border-radius:16px;
  background:rgba(16,24,40,.02);
  padding:12px 14px;
}
.quote{
  border-left:4px solid rgba(15,107,58,.35);
  background:rgba(16,24,40,.02);
  border-radius:14px;
  padding:12px 14px;
}

/* Section heads */
.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.subhead{
  color:var(--muted);
  font-size:.95rem;
  margin-top:4px;
}
.muted{ color:var(--muted); }

/* Covers */
.cover-wrap{
  overflow:hidden;
  border-top-left-radius:18px;
  border-top-right-radius:18px;
  background:var(--soft);
}
.cover-img {
  width: 100%;
  height: auto;        /* Permite que la altura crezca según la imagen */
  aspect-ratio: 16/9;  /* Mantiene una proporción rectangular ideal para noticias */
  object-fit: cover;   /* Cubre el espacio sin deformar */
  display: block;
}

/* Avatars */
.avatar{
  width:46px;
  height:46px;
  border-radius:999px;
  background:var(--soft);
  border:1px solid var(--border);
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.avatar img{ width:100%; height:100%; object-fit:cover; }
.avatar span{ font-weight:900; color:rgba(16,24,40,.55); }

/* Nice list */
.list-check{ padding-left:1.1rem; }
.list-check li{ margin-bottom:.45rem; }

/* Empty blocks */
.empty-block{
  border:1px dashed rgba(16,24,40,.22);
  border-radius:18px;
  background:rgba(255,255,255,.78);
  padding:18px;
}
.empty-title{ font-weight:900; margin-bottom:4px; }
.empty-text{ color:var(--muted); }

/* Footer */
.final-cta{
  border:1px solid var(--border);
  background:#fff;
  border-radius:18px;
}
.site-footer{
  border-top:1px solid var(--border);
  background:#fff;
}
