@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap');

/* Blue Theme Variables */
:root {
  --primary-blue: #1e40af; /* Tailwind blue-800 */
  --primary-blue-dark: #1e3a8a; /* blue-900 */
  --primary-blue-light: #dbeafe; /* blue-100 */
  --accent-blue: #3b82f6; /* blue-500 */
  --muted-blue: #bfdbfe; /* blue-200 */
  --text-dark: #1e293b; /* slate-800 */
  --text-light: #f0fdf4; /* emerald-50 */
  --border-blue: #1e40af;
  --bg-blue: #eff6ff;
}

body {
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    scroll-behavior: smooth;
    background-color: var(--bg-blue);
    color: var(--text-dark);
}

.hero-overlay {
    background: linear-gradient(to right, rgba(34, 197, 94, 0.85), rgba(16, 185, 129, 0.7)); /* #22c55e, #10b981 */
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(34, 197, 94, 0.10); /* green shadow */
}

.timeline-item:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 24px;
    top: 32px;
    height: calc(100% - 32px);
    width: 2px;
    background-color: var(--primary-blue-dark);
}

.certification-logo:hover {
    transform: scale(1.05);
    box-shadow: 0 2px 8px 0 rgba(34, 197, 94, 0.15);
}

.testimonial-card {
    box-shadow: 0 5px 15px rgba(37, 99, 235, 0.08);
}

.sticky-nav {
    transition: all 0.3s ease;
}

.sticky-nav.sticky {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
    box-shadow: 0 2px 10px rgba(37, 99, 235, 0.12);
    background-color: rgba(255, 255, 255, 0.98);
}

.text-blue {
  color: var(--primary-blue) !important;
}
.bg-blue {
  background-color: var(--primary-blue) !important;
}
.bg-blue-light {
  background-color: var(--primary-blue-light) !important;
}
.bg-blue-dark {
  background-color: var(--primary-blue-dark) !important;
}
.border-blue {
  border-color: var(--border-blue) !important;
}
.text-blue-700 {
  color: #1d4ed8 !important;
}
.bg-blue-100 {
  background-color: #dbeafe !important;
}
.bg-blue-700 {
  background-color: #1d4ed8 !important;
}
.hover\:bg-blue-100:hover {
  background-color: #dbeafe !important;
}
.hover\:text-blue-700:hover {
  color: #1d4ed8 !important;
}

.nav-menu {
  display: flex;
  align-items: stretch;
  height: 100px;
  gap: 1.2rem;
}

.sticky-nav .nav-link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-width: unset;
  padding: 0 10px;
  background: transparent;
  color: var(--primary-blue) !important;
  border-radius: 0;
  transition: background 0.2s, color 0.2s;
  font-size: 0.98rem;
  position: relative;
  z-index: 1;
  margin: 0;
  border: none;
  font-weight: 500;
  text-transform: uppercase;
  font-family: 'Montserrat', Arial, Helvetica, sans-serif;
}
.sticky-nav .nav-link + .nav-link {
  margin-left: 0;
}
.sticky-nav .nav-link:hover,
.sticky-nav .nav-link.active {
  background: var(--primary-blue);
  color: #fff !important;
  border-radius: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', Arial, Helvetica, sans-serif;
  font-weight: 700;
}

.shadow-custom {
  box-shadow: 0 10px 25px rgba(59, 130, 246, 0.10); /* blue shadow */
}

.btn-primary {
  background-color: var(--primary-blue-dark);
  color: #fff;
}