/* ── Elevation v4 : Card Grid (3 + 2) ── */
.elv-cards-wrap   { max-width:1200px; margin:0 auto; padding:0 48px; }
.elv-cards-header { text-align:center; margin-bottom:64px; }

.elv-cards-grid {
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  gap:28px;
}

/* First row: 3 cards each span 2 cols */
.elv-cards-grid .elv-card:nth-child(1) { grid-column: 1 / 3; }
.elv-cards-grid .elv-card:nth-child(2) { grid-column: 3 / 5; }
.elv-cards-grid .elv-card:nth-child(3) { grid-column: 5 / 7; }

/* Second row: 2 cards centered — offset by 1 col */
.elv-cards-grid .elv-card:nth-child(4) { grid-column: 2 / 4; }
.elv-cards-grid .elv-card:nth-child(5) { grid-column: 4 / 6; }

.elv-card {
  background:rgba(255,255,255,0.75);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,0.8);
  border-radius:24px;
  padding:36px 32px;
  display:flex;
  flex-direction:column;
  transition:transform .35s ease, box-shadow .35s ease;
}
.elv-card:hover {
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(18,47,81,0.08);
}

.elv-card-num {
  font-family:'Playfair Display',serif;
  font-style:italic; font-weight:700;
  font-size:2.8rem; line-height:1;
  color:#dde3ee;
  margin-bottom:16px;
  user-select:none;
}

.elv-card-tag {
  font-family:'Questrial',sans-serif;
  font-size:9.5px; letter-spacing:.18em; text-transform:uppercase;
  color:#2a5a94; background:#f0f7ff;
  border:1px solid #bfdbfe;
  padding:3px 12px; border-radius:100px;
  display:inline-block; margin-bottom:14px;
  width:fit-content;
}

.elv-card-title {
  font-family:'Playfair Display',serif;
  font-size:1.45rem; font-weight:600;
  color:#0f172a; letter-spacing:-.02em; line-height:1.25;
  margin:0 0 12px;
}

.elv-card-desc {
  font-family:'DM Sans',sans-serif;
  font-size:14px; line-height:1.8; color:#64748b;
  flex:1;
  margin-bottom:24px;
}

.elv-card-cta {
  display:inline-flex; align-items:center; gap:8px;
  font-family:'Questrial',sans-serif;
  font-size:10.5px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--navy-light);
  border:1px solid rgba(18,47,81,0.2);
  padding:9px 22px; border-radius:100px;
  text-decoration:none; width:fit-content;
  cursor:pointer;
  transition:background .2s, box-shadow .2s, border-color .2s, gap .2s, color .2s;
}
.elv-card-cta:hover {
  background:var(--navy-pale);
  border-color:var(--navy-light);
  box-shadow:0 0 18px rgba(18,47,81,0.1);
  color:var(--navy);
  gap:14px;
}

/* ── Tablet: 2 per row ── */
@media (max-width:960px) {
  .elv-cards-wrap { padding:0 24px; }
  .elv-cards-grid {
    grid-template-columns:repeat(2, 1fr);
    gap:20px;
  }
  .elv-cards-grid .elv-card:nth-child(1),
  .elv-cards-grid .elv-card:nth-child(2),
  .elv-cards-grid .elv-card:nth-child(3),
  .elv-cards-grid .elv-card:nth-child(4),
  .elv-cards-grid .elv-card:nth-child(5) { grid-column:auto; }
  /* let the 5th card span centered */
  .elv-cards-grid .elv-card:nth-child(5) {
    grid-column: 1 / -1;
    max-width:50%;
    justify-self:center;
  }
}

/* ── Mobile: 1 per row ── */
@media (max-width:600px) {
  .elv-cards-grid {
    grid-template-columns:1fr;
    gap:16px;
  }
  .elv-cards-grid .elv-card:nth-child(1),
  .elv-cards-grid .elv-card:nth-child(2),
  .elv-cards-grid .elv-card:nth-child(3),
  .elv-cards-grid .elv-card:nth-child(4),
  .elv-cards-grid .elv-card:nth-child(5) {
    grid-column:auto;
    max-width:100%;
    justify-self:auto;
  }
  .elv-card { padding:28px 24px; }
  .elv-card-num { font-size:2.2rem; }
  .elv-card-title { font-size:1.25rem; }
}
