/* Card hover lift (Programs + News cards) */
.ewl-card {
  transition: transform .3s ease, box-shadow .3s ease;
}
.ewl-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(15,23,42,.08);
}

/* Hero floating cards (place these classes on the two small containers) */
.ewl-float-card {
  position: absolute;
  background: #fff;
  border-radius: 16px;
  padding: 14px 18px;
  box-shadow: 0 12px 32px rgba(0,0,0,.18);
  display: flex;
  align-items: center;
  gap: 12px;
}
.ewl-float-card.blue { background: #2563eb; color: #fff; }
.ewl-float-bottom { bottom: -20px; left: 12px; }
.ewl-float-top { top: -16px; right: 12px; }

/* Anchor offset so sticky header doesn't cover section titles */
.ewl-section { scroll-margin-top: 90px; }

/* Reveal animation fallback (Elementor has its own; this is only if you skip motion effects) */
.ewl-reveal { /* optional */ }

/* Focus visible for keyboard users */
a:focus-visible, button:focus-visible {
  outline: 3px solid #0063CD;
  outline-offset: 2px;
}

/* Mobile: shrink floating cards so they never overflow the screen */
@media (max-width: 767px) {
  .ewl-float-card { padding: 10px 12px; border-radius: 14px; }
  .ewl-float-bottom { left: 6px; bottom: -16px; }
  .ewl-float-top { right: 6px; top: -14px; }
}