/* Custom Styles for PT. Mega Karya Surveyor */

:root {
  --primary-navy: #0b2545;
  --secondary-blue: #0077b6;
  --accent-cyan: #00b4d8;
  --wa-green: #25d366;
  --wa-green-hover: #1ebd5a;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  color: #1e293b;
  background-color: #f8fafc;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 10px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #0284c7;
  border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
  background: #0369a1;
}

/* Maritime Wave Decoration */
.ocean-gradient {
  background: linear-gradient(135deg, #0a192f 0%, #0d3b66 50%, #0077b6 100%);
}

.hero-overlay {
  background: linear-gradient(
    90deg,
    rgba(10, 25, 47, 0.92) 0%,
    rgba(13, 59, 102, 0.85) 50%,
    rgba(0, 119, 182, 0.6) 100%
  );
}

.card-hover {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.card-hover:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 25px -5px rgba(2, 132, 199, 0.15), 0 8px 10px -6px rgba(2, 132, 199, 0.1);
}

/* Pulse animation for WhatsApp button */
@keyframes wa-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.6);
  }
  70% {
    box-shadow: 0 0 0 16px rgba(37, 211, 102, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
  }
}

.wa-pulse-effect {
  animation: wa-pulse 2s infinite;
}

/* Floating WhatsApp Popup Animations */
.chat-popup {
  transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.3s;
}

.chat-popup.hidden-popup {
  opacity: 0;
  transform: translateY(20px) scale(0.95);
  pointer-events: none;
  visibility: hidden;
}

.chat-popup.active-popup {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
  visibility: visible;
}

/* Glassmorphism accents */
.glass-nav {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.glass-dark {
  background: rgba(10, 25, 47, 0.75);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* Pattern background */
.pattern-grid {
  background-image: radial-gradient(rgba(2, 132, 199, 0.12) 1px, transparent 1px);
  background-size: 24px 24px;
}

/* Language Switcher Button Styling */
.lang-switch-btn {
  user-select: none;
  cursor: pointer;
  transition: all 0.2s ease-in-out;
}
.lang-switch-btn:active {
  transform: scale(0.95);
}

