:root {
  --brand: #0284c7;
  --mint: #059669;
}
.logo-yatay { max-width: min(220px, 58vw); }
.logo-dikey { max-width: min(200px, 55vw); }
body { font-family: 'Source Sans 3', system-ui, sans-serif; }
.font-display { font-family: 'DM Sans', system-ui, sans-serif; }
.hero-overlay {
  background:
    linear-gradient(120deg, rgba(7, 89, 133, 0.88) 0%, rgba(2, 132, 199, 0.55) 45%, rgba(16, 185, 129, 0.35) 100%),
    linear-gradient(to top, rgba(15, 23, 42, 0.55), transparent 50%);
}
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.reveal.visible { opacity: 1; transform: none; }
@keyframes float-y {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}
.float-soft { animation: float-y 4s ease-in-out infinite; }
.ba-media { isolation: isolate; }
.ba-caption {
  background: linear-gradient(to top, rgba(15, 23, 42, 0.78) 0%, rgba(15, 23, 42, 0.25) 55%, transparent 100%);
}
.ba-figure img,
.ba-media img {
  transition: transform .55s ease;
}
.ba-figure:hover img,
.ba-media:hover img {
  transform: scale(1.03);
}
.area-result:hover { background: #e0f2fe; }
.toast {
  pointer-events: auto;
  min-width: 260px;
  max-width: 360px;
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  color: #fff;
  font-size: 0.9rem;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.2);
  animation: toast-in .35s ease;
}
.toast-success { background: #059669; }
.toast-error { background: #e11d48; }
.toast-warning { background: #d97706; }
.toast-info { background: #0284c7; }
@keyframes toast-in {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: none; }
}
