/* CONTACT PAGE RESET */
body.contact {
  margin: 0;
}

/* =========================
   CONTACT PAGE STYLES
========================= */    

.contact a {
  color: inherit;
  text-decoration: none;
}

.contact textarea,
.contact button {
  font-family: inherit;
  font-size: inherit;
  border-radius: 0;
  appearance: none;
  -webkit-appearance: none;
}

.contact-container {
  flex: 1;
  padding: 10px 20px 20px;
  display: flex;
  flex-direction: column;
}

.page-divider {
  width: 100%;
  height: 1px;
  background: #000;
  margin: 20px 0 0;

}

.page-divider-2 {
  width: 100%;
  height: 1px;
  background: #000;
  margin: 400px 0 0;
}


.page-container {
  min-height: 100svh;
  display: flex;
  flex-direction: column;
}


.contact-info {
  max-width: 1000px;
}

.contact-title {
  margin-bottom: 40px;
  text-decoration: underline;
}

.contact-details h1 {
  font-size: clamp(20px, 6vw, 48px);
  line-height: 1;
  margin: 0;
}

.contact-details a {
  text-decoration: none;
}

.contact-details a:hover {
  text-decoration: underline; 
}

.contact-label {
  margin-bottom: 6px;
}



.contact-form {
  margin-top: auto;
  display: flex;
  flex-direction: column;
}

.contact-form textarea {
  width: 100%;
  min-height: 160px;
  background: transparent;
  border: 1px solid black;
  padding: 1rem;
  resize: none;
  outline: none;
}

.contact-form textarea:disabled {
  cursor: default;
  color: #000;
  font-style: italic;
  text-align: left;
  font-size: 12px;
}



.contact-form form {
  position: relative;
}


.contact-form button {
  position: absolute;
  top: -36px;
  right: 0;

  padding: 6px 10px;

  font-size: 12px;
  line-height: 1;
  white-space: nowrap;

  color: #dedede;
  background: #000;

  border: 1px solid #000;
} 

.contact-form button:hover {
  background: transparent;
  color: #000;
  border-color: #000;
}


/* =========================
   CONTACT – MOBILE
========================= */

@media (max-width: 768px) {

  .contact-container {
    padding: 10px 20px 20px;
  }

.page-container { 
  min-height: 120svh; 
}

  .contact-title {
    margin-bottom: 24px;
  }

  .page-divider {
    margin-top: 20px;
  }

  .page-divider-2 {
    margin: 100px 0 0;
  }

  /* let content flow naturally */
  .contact-form {
    margin-top: 32px;
  }

  /* better typing experience */
  .contact-form textarea {
    min-height: 200px;
    font-size: 16px; /* prevents iOS zoom */
  }

  /* stack button instead of absolute positioning */
  .contact-form form {
    position: static;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .contact-form button {
    position: static;
    align-self: flex-end;
    font-size: 14px;
    margin-top: 32px;
  }

  .contact-form textarea:disabled {
    font-size: 14px;
  }




}



