 body {
      font-family: 'Montserrat', sans-serif;
      color: #1f2d3d;
      text-align: center;
      /*padding: 8vw 5vw;*/
      overflow-x: hidden;
    }

    .container {
      max-width: 450px;
      margin: 0 auto;
      background: #fff;
      padding: 4vw;
      border-radius: 20px;
      box-shadow: 0 10px 30px rgba(0,0,0,0.1);
      opacity: 0;
      transform: translateY(40px);
      animation: fadeInUp 1s ease-out forwards;
    }

    h1 {
       font-family: "DM Serif Display", serif;
        font-size: clamp(2rem, 5vw, 7rem);
        color: #1f2d3d;
        margin-bottom: 1rem;
        text-transform: uppercase;
    }

    h2 {
      font-family: "DM Serif Display", serif;
      font-size: clamp(1.5rem, 3vw, 5rem);
      color: #1f2d3d;
      margin-bottom: 1rem;
      text-transform: uppercase;
  }

    p {
        font-size: clamp(1rem, 1.5vw, 2.5vw);
        color: #1f2d3d;
        margin-bottom: 2vw;
    }
    
    a.button {
      display: inline-block;
      background-color: #1f2d3d;
      color: #fff;
      padding: 0.8rem 1.8rem;
      font-size: 1rem;
      text-decoration: none;
      border-radius: 8px;
      transition: all 0.3s ease;
      cursor: pointer;
    }
    a.button:hover {
      background-color: #46607e;
      transform: scale(1.05);
    }

    .logo {
      max-width: 140px;
      margin: 0 auto 30px;
      display: block;
      animation: fadeIn 1.5s ease forwards;
    }
    
    @keyframes fadeInUp {
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }
    @keyframes fadeIn {
      from { opacity: 0; transform: scale(0.95); }
      to { opacity: 1; transform: scale(1); }
    }
   
    .emoji {
      display: inline-block;
      animation: float 2s ease-in-out infinite;
    }
    @keyframes float {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-6px); }
    }
    
    .highlight {
      /*font-weight: bold;*/
      color: #f34723;
    }
    .btn {
      display: inline-block;
      background-color: #1f2d3d;
      color: #fff;
      padding: 0.8rem 1.8rem;
      font-size: 1rem;
      text-decoration: none;
      border-radius: 8px;
      transition: all 0.3s ease;
      cursor: pointer;
    }
    .btn:hover {
      background-color: #46607e;
      transform: scale(1.05);
    }

    .cta-button {
      padding: 2vw 6vw;
      font-size: clamp(1rem, 1.5vw, 2.25rem);
      background-color: #1f2d3d;
      color: #F6EFE5;
      border: none;
      border-radius: 6px;
      text-decoration: none;
      display: inline-block;
      text-transform: uppercase;
      cursor: pointer;
  }

  .cta-button:hover {
      background-color: #46607e;
  }

  .error {
      color: #8b0000;
      font-size: 1.2rem;
      margin-top: 2vw;
  }

  .resend-form {
    margin-top: 2vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.resend-form input[type="email"] {
    padding: 0.75rem 1rem;
    font-size: 1rem;
    border: 1px solid #ccc;
    border-radius: 8px;
    width: 100%;
    max-width: 400px;
    box-sizing: border-box;
}

.resend-form button {
    padding: 0.75rem 2rem;
    font-size: 1rem;
    background-color: #1f2d3d;
    color: #F6EFE5;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.resend-form button:hover {
    background-color: #46607e;
}