/* ===== Consorcio A&E - MARONS (Light, fixed) ===== */
:root{
  --brand:#0A2A66;   /* azul marino */
  --brand2:#009FCB;  /* celeste */
  --bg:#f7f9fc;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --shadow:0 10px 30px rgba(2,6,23,.06);
}
html,body{height:100%}
body{background:var(--bg); color:var(--text);}
a{color:var(--brand2);}
/* Header */
.navbar-ae{
  background:#fff;
  border-bottom:1px solid rgba(2,6,23,.06);
  box-shadow: var(--shadow);
}
.navbar-ae .brand-title{
  font-weight:800; letter-spacing:.2px; color:var(--brand);
}
/* Cards & grid */
.grid-links{display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:22px;}
.card-link{
  border:1px solid rgba(2,6,23,.06);
  background:linear-gradient(180deg, #fff, #fafafa);
  border-radius:1rem; overflow:hidden; box-shadow:var(--shadow);
  transition:.16s transform cubic-bezier(.2,.8,.2,1), .16s box-shadow;
}
.card-link:hover{ transform: translateY(-3px); box-shadow:0 28px 60px -20px rgba(2,6,23,.18) }
.card-img-top{object-fit:cover; width:100%; height:160px; display:block}
.card-title{font-weight:800; color:var(--brand)}
.card-text{color:var(--muted)}
/* Buttons */
.btn-brand{background:var(--brand); color:#fff; border:0}
.btn-brand:hover{filter:brightness(1.05)}
.btn-accent{background:var(--brand2); color:#fff; border:0}
.btn-accent:hover{filter:brightness(1.05)}
/* Helpers */
.container-narrow{max-width:1180px}
.rounded-2xl{border-radius:1.25rem}
.footer-muted{color:#64748b; font-size:.9rem}

/* ===== Modern refresh v2 ===== */
:root{
  --radius: 1.1rem;
}
/* Typography */
body, .navbar-ae .brand-title, .card-title, .btn, .badge, .nav-link {
  font-family: 'Poppins', 'Segoe UI', Roboto, Arial, sans-serif;
}
.display-welcome{
  font-weight: 800;
  font-size: clamp(2.2rem, 3.8vw, 3.4rem);
  letter-spacing: .4px;
  color: #0d1b2a;
}

/* Hero banner */
.hero-modern{
  border-radius: var(--radius);
  padding: 3rem 2rem;
  background: linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.01));
  border: 1px solid rgba(15, 23, 42, .06);
  box-shadow: 0 20px 60px rgba(2,6,23,.08);
}

/* Polished cards */
.card-soft{
  border: 1px solid rgba(2,6,23,.06);
  border-radius: var(--radius);
  box-shadow: 0 10px 30px rgba(2,6,23,.06);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
  background: #fff;
}
.card-soft:hover{
  transform: translateY(-4px);
  box-shadow: 0 24px 60px rgba(2,6,23,.12);
  border-color: rgba(2,6,23,.12);
}

/* Admin tables */
.table-modern thead th{
  background: #f3f6fb;
  border-bottom: 2px solid #e6ecf5;
  font-weight: 600;
}
.table-modern tbody tr:hover{
  background: #fafcff;
}


/* --- smooth hover animation for links/cards --- */
.card-link, .card-soft {
  will-change: transform, box-shadow;
}
.card-link:hover, .card-soft:hover {
  transform: translateY(-6px) scale(1.01);
  transition: transform .22s cubic-bezier(.22,.8,.22,1), box-shadow .22s ease;
}
a.card-link { text-decoration: none; }
