html, body {
      margin: 0;
      padding: 0;
      height: 100%;
      scroll-behavior: smooth;
      font-family: 'Proxima Nova', 'Montserrat', sans-serif;
    }

    /* Container that holds scroll-snap sections */
    main {
      scroll-snap-type: y mandatory;
      overflow-y: scroll;
      height: 100vh;
      scrollbar-width: none; /* Firefox */
      -ms-overflow-style: none; /* Internet Explorer and Edge */
    }

    main::-webkit-scrollbar {
      display: none; /* Chrome, Safari, Opera */
    }

    section {
      height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      scroll-snap-align: start;
      position: relative;
      opacity: 0;
      transform: translateY(40px);
      transition: opacity 0.8s ease, transform 0.8s ease;
    }

    section.visible {
      opacity: 1;
      transform: translateY(0);
    }

    /* Sticky Navbar */
    .navbar {
      background-color: #ffffff;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
      position: sticky;
      top: 0;
      z-index: 1050;
    }

    .navbar-brand img {
      height: 40px;
    }

    .nav-link {
      color: #000 !important;
      font-weight: 500;
      margin: 0 12px;
      position: relative;
      transition: color 0.3s ease;
    }

    .nav-link.active {
      color: #FED96D !important;
    }

    .nav-link.active::after {
      content: '';
      position: absolute;
      bottom: -4px;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #FED96D;
    }

    /* Collaborate Button */
    .btn-collab {
      background-color: #FED96D;
      color: #000;
      border: none;
      border-radius: 50px;
      padding: 8px 20px;
      font-weight: 600;
      transition: all 0.3s ease;
    }

    .btn-collab:hover {
      background-color: #f5c94f;
      color: #000;
    }

    /* Fullscreen Overlay (Mobile Menu) */
    .overlay {
      height: 0%;
      width: 100%;
      position: fixed;
      top: 0;
      left: 0;
      background-color: rgba(255, 255, 255, 0.97);
      overflow-y: hidden;
      transition: height 0.4s ease;
      z-index: 2000;
    }

    .overlay-content {
      position: relative;
      top: 20%;
      width: 100%;
      text-align: center;
    }

    .overlay-content a {
      display: block;
      margin: 20px 0;
      font-size: 1.5rem;
      color: #000;
      text-decoration: none;
    }

    .overlay .btn-collab {
      font-size: 1.2rem;
    }

    .overlay .closebtn {
      position: absolute;
      top: 20px;
      right: 35px;
      font-size: 45px;
      cursor: pointer;
    }

    @media (min-width: 992px) {
      .navbar-collapse {
        justify-content: center;
      }
      .navbar-toggler {
        display: none;
      }
    }

    /* Example Section Colors */
    #home { background: #f8f9fa; }
    #about { background: #ffffff; }
    #services { background: #f8f9fa; }
    #portfolio { background: #ffffff; }
    #contact { background: #f8f9fa; }

    /* ---------- FOOTER STYLING ---------- */
    footer {
      background-color: #000;
      color: #fff;
      padding: 60px 8%;
    }

    .footer-top {
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
      justify-content: space-between;
      align-items: flex-start;
    }

    .footer-left {
      flex: 0 0 20%;
      min-width: 200px;
    }

    .footer-right {
      flex: 0 0 75%;
      min-width: 250px;
    }

    .footer-nav a {
      display: block;
      color: #fff;
      text-decoration: none;
      margin-bottom: 8px;
      transition: color 0.3s;
    }

    .footer-nav a:hover {
      color: #FED96D;
    }

    .footer-address p {
      margin: 0 0 5px;
      color: #ccc;
    }

    footer hr {
      border-top: 1px solid #333;
      margin: 40px 0 20px;
    }

    .footer-bottom {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      color: #aaa;
      font-size: 0.9rem;
    }

    .social-icons a {
      color: #fff;
      margin-left: 15px;
      font-size: 1.2rem;
      transition: color 0.3s;
    }

    .social-icons a:hover {
      color: #FED96D;
    }

    @media (max-width: 768px) {
      .footer-top {
        flex-direction: column;
      }
      .footer-left, .footer-right {
        flex: 100%;
      }
      .footer-bottom {
        flex-direction: column;
        text-align: center;
        gap: 10px;
      }
      .social-icons a {
        margin-left: 10px;
      }
    }