html {
  scroll-behavior: smooth;
}

body {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  line-height: 1.6;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Inter", sans-serif;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.2px;
  margin-bottom: 0.5em;
}

p {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 360;
  font-style: normal;
}

div,
span,
a,
li,
ul,
ol,
small,
strong,
em {
  font-family: inherit;
}

















nav.scrolled {
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.1);
}

.section-heading {
  font-size: 3rem;
  font-weight: 800;
  background: linear-gradient(135deg, #67a9ff 0%, #1abc9c 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.section-subtitle {
  color: #1abc9c;
  font-weight: 600;
}

.fixed-bg {
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  position: relative;
}

.fixed-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0);
}

.fixed-bg > * {
  position: relative;
  z-index: 10;
}

.service-card {
  transition: all 0.3s ease;
}

.service-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 40px rgba(26, 188, 156, 0.2);
}

.testimonial-card {
  border-left: 5px solid #1abc9c;
}

.gradient-text {
  background: linear-gradient(135deg, #1e4d8b 0%, #1abc9c 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Mobile Menu Toggle Animation */
#mobile-menu-btn.active .hamburger-line:nth-child(1) {
  transform: rotate(45deg) translate(10px, 10px);
}

#mobile-menu-btn.active .hamburger-line:nth-child(2) {
  opacity: 0;
}

#mobile-menu-btn.active .hamburger-line:nth-child(3) {
  transform: rotate(-45deg) translate(10px, -10px);
}
