*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
      font-family: "Montserrat", sans-serif;
}

.mont{
      font-family: "Montserrat", sans-serif;
}

.marquee {
  display: flex;
  width: max-content;
  animation: marquee 15s linear infinite;
}


/* Hide scrollbar */
.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

.hide-scrollbar {
  -ms-overflow-style: none;  /* IE & Edge */
  scrollbar-width: none;     /* Firefox */
}

@keyframes marquee {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-50%);
  }
}

/* Red border text */
.stroke-text {
  -webkit-text-stroke: 2px #E41B38;
}

/* FAQ accordion */
.faqItem .faqAnswer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}
.faqItem.open .faqAnswer {
  max-height: 200px;
}

/* ── Sticky header optimization ── */
#header {
  will-change: background-color, backdrop-filter, padding;
}

/* ── Nav link hover underline ── */
.headerMenu a {
  position: relative;
  transition: color 0.25s ease;
}
.headerMenu a::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 2px;
  background: #1148A9;
  transition: width 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.headerMenu a:hover::after {
  width: 100%;
}

/* ── Card hover micro-interactions ── */
.section2Card,
.howItWorksCard,
.whyChooseCard,
.reviewCard,
.galleryCard,
.section4clouds {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
}
.section2Card:hover,
.howItWorksCard:hover,
.whyChooseCard:hover,
.galleryCard:hover,
.section4clouds:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 40px rgba(17, 72, 169, 0.15);
}

/* ── Smooth scroll ── */
html {
  scroll-behavior: smooth;
}

/* Mobile sticky CTA bottom padding */
@media (max-width: 639px) {
  body {
    padding-bottom: 60px;
  }
}