:root {
  --primary-deep: #064E3B;
  --accent-gold: #e8c245;
  --text-light: #ffffff;
  --text-dark: #1e1e1e;
  --bg-mobile: #f9fafb;
  --shadow-color: rgba(0, 0, 0, 0.08);
}

.bg-primary-deep {
  background-color: var(--primary-deep);
}

.text-primary-deep {
  color: var(--primary-deep);
}

.border-primary-deep {
  border-color: var(--primary-deep);
}

.bg-accent-gold {
  background-color: var(--accent-gold);
}

.text-accent-gold {
  color: var(--accent-gold);
}

.border-accent-gold {
  border-color: var(--accent-gold);
}

.hover\:bg-accent-gold:hover {
  background-color: var(--accent-gold);
}

.hover\:text-accent-gold:hover {
  color: var(--accent-gold);
}



/* fonts */

.bebas-neue-regular {
  font-family: "Bebas Neue", sans-serif;

}

.sen {
  font-family: "Sen", sans-serif;

}
html{
  scroll-behavior: smooth;
}
body{
  font-family: "Sen", sans-serif;
  background: #f7f6f0;
}

/* Custom Scrollbar */
/* For Webkit browsers (Chrome, Safari, Edge) */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 10px;
}

::-webkit-scrollbar-thumb {
  background: #064E3B;
  border-radius: 10px;
  border: 2px solid #f1f1f1;
}

::-webkit-scrollbar-thumb:hover {
  background: #007055;
}

/* For Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: #064E3B #f1f1f1;
}


/* Navbar */
/* Smooth transitions for mobile menu */
    .mobile-menu {
      transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
      transform: translateX(100%);
      opacity: 0;
      pointer-events: none;
    }
    .mobile-menu.open {
      transform: translateX(0);
      opacity: 1;
      pointer-events: auto;
    }
    
    /* Nav link hover effect */
    .nav-link {
      position: relative;
      transition: color 0.2s;
    }
    .nav-link::after {
      content: '';
      position: absolute;
      bottom: -4px;
      left: 0;
      width: 0%;
      height: 2px;
      background-color: var(--accent-gold);
      transition: width 0.25s ease;
    }
    .nav-link:hover::after {
      width: 100%;
    }
    
    /* Button styling */
    .btn-trial {
      background-color: var(--accent-gold);
      color: var(--primary-deep);
      font-weight: 600;
      transition: all 0.25s;
      border: 2px solid var(--accent-gold);
      letter-spacing: 0.3px;
    }
    
    
    
    /* Override for mobile button to match style */
    @media (max-width: 1023px) {
      .btn-trial-mobile {
        background-color: var(--accent-gold);
        color: var(--primary-deep);
        border: 2px solid var(--accent-gold);
        font-weight: 600;
      }
    }
    
    /* Ensure body doesn't scroll when mobile menu open */
    body.menu-open {
      overflow: hidden;
    }

    /* fees */
     .country-btn.active {
    box-shadow: 0 4px 12px rgba(6, 78, 59, 0.3);
}


    /* Marquee */
    .marquee-fade {
      overflow: hidden;
      -webkit-mask-image: linear-gradient(to right, transparent, black 8%, black 92%, transparent);
      mask-image: linear-gradient(to right, transparent, black 8%, black 92%, transparent);
    }
    .marquee-track {
      display: flex;
      gap: 1.25rem;
      width: max-content;
    }
    .marquee-left {
      animation: marquee-left-scroll 48s linear infinite;
    }
    .marquee-right {
      animation: marquee-right-scroll 48s linear infinite;
    }
    .marquee-fade:hover .marquee-track {
      animation-play-state: paused;
    }
    @keyframes marquee-left-scroll {
      from { transform: translateX(0); }
      to { transform: translateX(-50%); }
    }
    @keyframes marquee-right-scroll {
      from { transform: translateX(-50%); }
      to { transform: translateX(0); }
    }
    @media (prefers-reduced-motion: reduce) {
      .marquee-track { animation: none !important; }
    }

    /* FAQ list (namespaced classes so they can't collide with anything else on the page) */
    .qm-faq-answer {
      display: grid;
      grid-template-rows: 0fr;
      transition: grid-template-rows 0.35s ease;
    }
    .qm-faq-answer > div {
      overflow: hidden;
    }
    .qm-faq-item.open .qm-faq-answer {
      grid-template-rows: 1fr;
    }
    .qm-faq-item.open .qm-faq-question {
      color: var(--accent-gold);
    }
    .qm-faq-item.open .qm-faq-ring {
      background-color: var(--accent-gold);
      border-color: var(--accent-gold);
    }
    .qm-faq-item.open .qm-faq-ring i {
      color: var(--primary-deep);
    }