:root {
    --background-color: #fff7ef;
    --primary-color: #171717;
    --secondary-color: #f2572b;
    --tertiary-color: #075056;
    --text-color: #333333;
    --light-text-color: #fff7ef;
    --navbar-height: 60px;
    --footer-height: 300px;
    --page-width: 1440px;
    color: var(--text-color);
    background-color: var(--background-color);
  }

  @font-face {
    font-family: "Zuume";
    src: url("../fonts/Zuume-Regular.otf") format("truetype");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
  }

  @font-face {
    font-family: "Zuume";
    src: url("../fonts/Zuume-Bold.otf") format("truetype");
    font-weight: 700;
    font-style: bold;
    font-display: swap;
  }

  @font-face {
    font-family: "ZillaSlab";
    src: url("../fonts/ZillaSlab-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
  }

  @font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Light.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }

  html, body {
    margin: 0;
    padding: 0;
    font-family: "Gilroy", sans-serif;
    scroll-behavior: smooth;
  }

  body {
    display: grid;
    grid-template-rows: auto 1fr auto;
    min-height: 100vh;
  }

  h2 {
    line-height: .9;
  }

  ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  a {
    text-decoration: none;
    color: var(--text-color);
  }

  button {
    border: none;
    background: none;
    cursor: pointer;
    appearance: none;
    outline: none;
  }

  /* Sections start hidden until IntersectionObserver adds fade-in class */
  .about,
  .solutions,
  .approach,
  .stats,
  .leadership {
    opacity: 0;
  }

  /* Stats section should be visible on mobile - no animation */
  @media (width < 768px) {
    .stats {
      opacity: 1 !important;
      animation: none !important;
    }
  }

  .fade-in {
    opacity: 1;
    animation-name: fadeInOpacity;
    animation-iteration-count: 1;
    animation-timing-function: ease-in;
    animation-duration: .5s;
  }
  
  @keyframes fadeInOpacity {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }