/* Centraal uitlijnen */
#container {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    background: linear-gradient(var(--color-gray-0), var(--color-gray-100));
}

/* Sign up box with flexbox for form and social links */
#signupBox {
    display: flex;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    background: var(--color-gray-0);
    border-radius: var(--radius-3);
    box-shadow: 0 1.5rem 0 var(--color-gray-100);
    overflow: hidden;
    transition: var(--transition);
}

#signupBox:hover {
    box-shadow: none;
}

/* Form section */
#formSection {
    width: 60%;
    padding: 2rem;
    background: var(--color-gray-0);
}

/* Styling for the Dation form */
#dationSignUpForm {
    height: 100%;
}

#dationSignUpForm input, 
#dationSignUpForm select, 
#dationSignUpForm textarea {
    border: 1px solid var(--color-gray-100) !important;
    border-radius: var(--radius-1) !important;
    padding: 0.8rem !important;
    font-family: "Montserrat", sans-serif !important;
    margin-bottom: 1rem !important;
}

#dationSignUpForm button {
    background: var(--color-primary) !important;
    color: var(--color-gray-900) !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    border-radius: var(--radius-3) !important;
    box-shadow: 0 0.7rem 0 var(--color-gray-100) !important;
    padding: 1rem 2rem !important;
    font-family: "Montserrat", sans-serif !important;
    transition: var(--transition) !important;
}

#dationSignUpForm button:hover {
    background: var(--color-gray-900) !important;
    color: var(--color-gray-0) !important;
    box-shadow: none !important;
}

#dationSignUpForm label {
    font-weight: 600 !important;
    color: var(--color-gray-600) !important;
    font-family: "Montserrat", sans-serif !important;
    margin-bottom: 0.5rem !important;
}

/* Social section */
#socialSection {
    width: 40%;
    background: var(--color-primary);
    color: var(--color-gray-800);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    text-align: center;
}

#socialSection img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    margin-bottom: 2rem;
    object-fit: cover;
    box-shadow: 0 0.5rem 0 var(--color-gray-200);
    transition: var(--transition);
}

#socialSection img:hover {
    box-shadow: none;
}

#socialSection h4, 
#socialSection h5, 
#socialSection h6 {
    margin: 0.5rem 0;
}

.footer__socials {
    display: flex;
    gap: 1rem;
    margin: 1rem 0;
}

.footer__socials a {
    display: grid;
    place-items: center;
    background: var(--color-gray-0);
    color: var(--color-gray-900);
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1.2rem;
    border-radius: 50%;
    transition: var(--transition);
}


/* ==================== CONTACT PAGE RESPONSIVE ==================== */

/* Tablet schermen (max 1024px) */
@media screen and (max-width: 1024px) {
    #signupBox {
      flex-direction: column;
      max-width: 90%;
    }
  
    #formSection,
    #socialSection {
      width: 100%;
      padding: 2rem;
    }
  
    #socialSection {
      flex-direction: row;
      flex-wrap: wrap;
      gap: 2rem;
      justify-content: center;
    }
  
    #socialSection img {
      width: 120px;
      height: 120px;
    }
  }
  
  /* Smartphones (max 768px) */
  @media screen and (max-width: 768px) {
    #signupBox {
      box-shadow: none;
    }
  
    #formSection {
      padding: 1.5rem;
    }
  
    #dationSignUpForm input,
    #dationSignUpForm select,
    #dationSignUpForm textarea {
      font-size: 0.95rem;
    }
  
    #dationSignUpForm label {
      font-size: 0.95rem;
    }
  
    #dationSignUpForm button {
      width: 100%;
      padding: 1rem;
    }
  
    #socialSection {
      padding: 2rem 1rem;
      flex-direction: column;
      text-align: center;
    }
  
    #socialSection img {
      width: 100px;
      height: 100px;
    }
  
    .footer__socials {
      justify-content: center;
      flex-wrap: wrap;
      gap: 0.8rem;
    }
  }
  
  /* Extra kleine schermen (max 480px) */
  @media screen and (max-width: 480px) {
    #dationSignUpForm input,
    #dationSignUpForm select,
    #dationSignUpForm textarea {
      font-size: 0.9rem;
      padding: 0.6rem !important;
    }
  
    #dationSignUpForm label {
      font-size: 0.9rem;
    }
  
    #dationSignUpForm button {
      font-size: 0.9rem;
      padding: 0.8rem 1.5rem;
    }
  
    #socialSection h4,
    #socialSection h5,
    #socialSection h6 {
      font-size: 1rem;
    }
  
    #socialSection img {
      width: 80px;
      height: 80px;
    }
  }


  /* ==================== CONTACT PAGE RESPONSIVE ==================== */

/* Tablet schermen (max 1024px) */
@media screen and (max-width: 1024px) {
    #signupBox {
      flex-direction: column;
      max-width: 90%;
    }
  
    #formSection,
    #socialSection {
      width: 100%;
      padding: 2rem;
    }
  
    #socialSection {
      flex-direction: row;
      flex-wrap: wrap;
      gap: 2rem;
      justify-content: center;
    }
  
    #socialSection img {
      width: 120px;
      height: 120px;
    }
  }
  
  /* Smartphones (max 768px) */
  @media screen and (max-width: 768px) {
    #signupBox {
      box-shadow: none;
    }
  
    #formSection {
      padding: 1.5rem;
    }
  
    #dationSignUpForm input,
    #dationSignUpForm select,
    #dationSignUpForm textarea {
      font-size: 0.95rem;
    }
  
    #dationSignUpForm label {
      font-size: 0.95rem;
    }
  
    #dationSignUpForm button {
      width: 100%;
      padding: 1rem;
    }
  
    #socialSection {
      padding: 2rem 1rem;
      flex-direction: column;
      text-align: center;
    }
  
    #socialSection img {
      width: 100px;
      height: 100px;
    }
  
    .footer__socials {
      justify-content: center;
      flex-wrap: wrap;
      gap: 0.8rem;
    }
  }
  
  /* Extra kleine schermen (max 480px) */
  @media screen and (max-width: 480px) {
    #dationSignUpForm input,
    #dationSignUpForm select,
    #dationSignUpForm textarea {
      font-size: 0.9rem;
      padding: 0.6rem !important;
    }
  
    #dationSignUpForm label {
      font-size: 0.9rem;
    }
  
    #dationSignUpForm button {
      font-size: 0.9rem;
      padding: 0.8rem 1.5rem;
    }
  
    #socialSection h4,
    #socialSection h5,
    #socialSection h6 {
      font-size: 1rem;
    }
  
    #socialSection img {
      width: 80px;
      height: 80px;
    }
  }

  #container {
    padding-top: 6rem; /* geeft ademruimte onder de navbar */
  }
  


/* Verberg close-knop standaard */
.nav__menu-close {
    display: none;
}

/* Mobile menu basisinstellingen */
.nav__menu {
    position: fixed;
    top: 4rem;
    right: 0;
    height: 100vh;
    width: 70%;
    max-width: 300px;
    background: var(--color-primary);
    flex-direction: column;
    align-items: flex-start;
    padding: 2rem;
    gap: 2rem;
    box-shadow: -0.5rem 0 1rem rgba(0, 0, 0, 0.1);
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
    z-index: 100;
}

.nav__menu.show {
    transform: translateX(0%);
}

@media screen and (max-width: 768px) {
    .nav__menu {
        display: flex;
        top: 7.35rem;
    }

    .nav__menu-open,
    .nav__menu-close {
        display: block;
        font-size: 2rem;
        background: none;
        color: var(--color-gray-900);
        cursor: pointer;
        z-index: 101;
    }
}
