/* Reset */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  html, body {
    height: 100%;
  }
  
  body {
    font-family: 'DM Sans', sans-serif;
  }
  
  .hero {
    position: relative;
    background: url('../images/splash.jpg') no-repeat center center / cover;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.6);
  }
  
  .hero-content {
    position: relative;
    text-align: center;
    color: #fff;
    padding: 2rem;
    max-width: 90%;
    width: 600px;
  }
  
  .logo {
    max-width: 100%;
    margin-bottom: 1rem;
  }
  
  h1 {
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
  }

  a { 
    color: #4BB078;
  }
  
  p {
    font-size: 1.125rem;
    margin-bottom: 1.5rem;
  }
  
  form {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  
  input[type="email"] {
    flex: 1;
    padding: 0.75rem 1rem;
    border: none;
    border-radius: 4px 0 0 4px;
    font-size: 1rem;
    min-width: 200px;
  }
  
  button[type="submit"] {
    padding: 0.75rem 1.5rem;
    border: none;
    background: #8a2be2;
    color: #fff;
    font-size: 1rem;
    border-radius: 0 4px 4px 0;
    cursor: pointer;
  }
  
  button[type="submit"]:hover {
    background: #6f23b3;
  }
  
  @media (max-width: 400px) {
    input[type="email"], button[type="submit"] {
      width: 100%;
      border-radius: 4px;
      margin: 0.25rem 0;
    }
  }