/* ==== Mobile-First Styles ==== */
.site-nav ul {
  flex-direction: column;
  gap: 0.75em;
}
.nav-toggle {
  display: block;
}

/* Toggle nav visibility */
.site-nav.collapsed {
  display: none;
}

/* Hero text on smaller screens */
@media (max-width: 768px) {
  .hero h1 {
    font-size: 2em;
  }
  .grid {
    flex-direction: column;
  }
  .btn {
    width: 100%;
    text-align: center;
  }
}

/* ==== Desktop and Above ==== */
@media (min-width: 768px) {
  .site-nav {
    display: block !important;
  }
  .nav-toggle {
    display: none;
  }
  .site-nav ul {
    flex-direction: row;
  }
}
