/* Global Variables */
:root {
  --background-color: #ffffff;
  --default-color: #3d4348;
  --heading-color: #3e5055;
  --accent-color: #0E4F63;
  --surface-color: #ffffff;
  --contrast-color: #ffffff;
  --primary-color: #e0bb6c;

  /* Correct Font Variables */
  --font-playfair-display: "Playfair Display", serif;
  --default-font: "Poppins", sans-serif;
  --font-helvetica-now-text: "Helvetica Now Text", sans-serif;
  --font-alverica: "Alverica", sans-serif;
  --heading-font: var(--font-playfair-display);

  /* Navigation Menu */
  --nav-color: #313336;
  --nav-hover-color: #e0bb6c;
  --nav-mobile-background-color: #ffffff;
  --nav-dropdown-background-color: #ffffff;
  --nav-dropdown-color: #313336;
  --nav-dropdown-hover-color: #1b6293;

  /* Smooth scroll */
  scroll-behavior: smooth;
}

/* Light Mode */
.light-background {
  --background-color: #f8fbfc;
  --surface-color: #ffffff;
}

/* Dark Mode */
.dark-background {
  --background-color: #060606;
  --default-color: #ffffff;
  --heading-color: #ffffff;
  --surface-color: #252525;
  --contrast-color: #ffffff;
}

/* General Styling */
body {
  color: var(--default-color);
  background-color: var(--background-color);
  font-family: var(--default-font)!important;
  font-weight: 500;
}

a {
  color: var(--accent-color);
  text-decoration: none;
  transition: 0.3s;
}

a:hover {
  color: color-mix(in srgb, var(--accent-color) 80%, transparent 20%);
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--heading-color);
  font-family: var(--heading-font);
}

/* Scroll Top Button */
.scroll-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 15px;
  bottom: -15px;
  z-index: 99999;
  background-color: var(--primary-color);
  width: 44px;
  height: 44px;
  border-radius: 50px;
  transition: all 0.4s;
}

.scroll-top i {
  font-size: 24px;
  color: var(--contrast-color);
  line-height: 0;
}

.scroll-top:hover {
  background-color: color-mix(in srgb, var(--accent-color) 80%, transparent 20%);
  color: var(--contrast-color);
}

.scroll-top.active {
  visibility: visible;
  opacity: 1;
  bottom: 15px;
}

/* Media Query for Mobile */
@media screen and (max-width: 768px) {
  [data-aos-delay] {
    transition-delay: 0 !important;
  }
}

.form-control:focus{
    color: #fff;
    background-color: transparent;
    border-color: #fff;
    outline: 0;
    box-shadow: none;    
}

optgroup, option{
    color:#2b2b2b;
}
