:root {
  --brand-primary: #1a3c6e;
  --brand-accent: #22c55e;
}

html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, -apple-system, sans-serif; color: #1f2937; }

.bg-brand { background-color: #1a3c6e; }
.text-brand { color: #1a3c6e; }
.border-brand { border-color: #1a3c6e; }
.bg-accent { background-color: #22c55e; }
.text-accent { color: #22c55e; }
.hover\:bg-brand-dark:hover { background-color: #14305a; }
.hover\:bg-accent-dark:hover { background-color: #16a34a; }

/* Fade-in-up animation */
.fade-in { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease-out, transform 0.6s ease-out; }
.fade-in.visible { opacity: 1; transform: translateY(0); }

/* Pulse for emergency CTA */
@keyframes pulse-emergency {
  0%, 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); }
  50% { box-shadow: 0 0 0 12px rgba(239, 68, 68, 0); }
}
.pulse-emergency { animation: pulse-emergency 2s infinite; }

/* Sticky header shadow */
.header-scrolled { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); }

/* Floating WhatsApp button — mobile only */
.floating-cta {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 50;
  background-color: #25d366;
  color: white;
  width: 56px;
  height: 56px;
  border-radius: 9999px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}
@media (min-width: 768px) { .floating-cta { display: none; } }

/* Card hover */
.service-card { transition: transform 0.2s, box-shadow 0.2s; }
.service-card:hover { transform: translateY(-4px); box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08); }

/* Print */
@media print {
  header, footer, nav, .floating-cta, .no-print { display: none !important; }
  body { color: #000; background: #fff; }
}
