:root {
    --gray: #808080;
    --dark: #212121;
    --white: #FFFFFF;
}

@import url('https://fonts.googleapis.com/css2?family=Figtree:ital,wght@0,300..900;1,300..900&display=swap');

.figtree-light {
    font-family: "Figtree", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300 !important;
    font-style: normal;
}

.figtree-regular {
    font-family: "Figtree", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400 !important;
    font-style: normal;
}

.figtree-medium {
    font-family: "Figtree", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500 !important;
    font-style: normal;
}

.figtree-semibold {
    font-family: "Figtree", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600 !important;
    font-style: normal;
}

.figtree-bold {
    font-family: "Figtree", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700 !important;
    font-style: normal;
}

.font-garamond {
    font-family: 'Cormorant Garamond', serif !important;
}

body {
    font-family: 'Figtree', sans-serif;
    color: var(--dark);
    background-color: var(--white);
    scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Cormorant Garamond', serif;
    color: var(--dark);
}

html {
  scroll-behavior: smooth;
}

/* Navbar */
.navbar-logo {
  height: 22px;         
  width: auto;          
  object-fit: contain; 
}

/* Responsive logo for mobile */
@media (max-width: 768px) {
  .navbar-logo {
    height: 12px;
  }
}

.nav-icon {
  font-size: 1.5rem;
  transition: transform 0.2s ease;
}

.nav-icon:hover {
  transform: scale(1.1);
}

.navbar {
  transition: background-color 0.4s, box-shadow 0.3s;
  background-color: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(10px);
  padding: 1.5rem 0 !important;
}

.navbar.scrolled {
  background-color: rgba(255, 255, 255, 1);
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.navbar-nav .nav-link {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 38px !important;
  font-weight: 500 !important;
  letter-spacing: 0.5px !important;
}

/* Footer */
footer {
  background: var(--dark);
  color: var(--white);
  padding: 3rem 1rem;
}

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

footer a:hover {
  color: #4a4a4a;
  text-decoration: none;
}

footer .footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.2);
  margin-top: 2rem;
  padding-top: 1rem;
  font-size: 0.9rem;
  text-align: center;
}

.footer-logo {
    width: 300px;
}

.partner-card {
  cursor: pointer;
}

.partner-img-wrapper:hover {
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}