@font-face {
  font-family: "Karla";
  src: url(../assets/fonts/Karla-VariableFont_wght.ttf);
}
.heading-bold {
  font-size: 2rem;
  font-weight: 700;
  line-height: 100%;
  letter-spacing: -0.0625rem;
}

.body-md-bold {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0px;
}

.body-md-regular {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0px;
}

.body-sm-regular {
  font-size: 1rem;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0px;
}

/* General body styling */
body {
  position: relative; /* Ensures the body is positioned relative to its normal flow */
  display: flex; /* Enables flexbox layout */
  justify-content: center; /* Centers content horizontally */
  min-height: 100vh; /* Ensures the body takes up at least the full viewport height */
  font-family: "Karla";
  font-style: normal;
  line-height: normal;
  background: #e0f1e8;
  font-feature-settings: "liga" off, "clig" off;
}

/* Media query for screens with a width of up to 375px */
@media screen and (max-width: 375px) {
  body {
    min-height: 100%; /* Ensures the body takes up at least the full height of its parent container */
  }
}
.d-none {
  display: none;
}

input[type=text],
input[type=email],
textarea {
  border-radius: 8px;
  border: 1px solid #86a2a5;
  display: block;
  padding: 0.75rem 1.5rem;
}

textarea {
  height: 15rem;
  margin-top: 0.5rem;
  width: 100%;
}
textarea.error {
  border-color: #d73c3c;
}

input[type=text],
input[type=email] {
  height: 3.1875rem;
  margin-top: 0.5rem;
  width: 100%;
}
input[type=text]:hover, input[type=text]:focus, input[type=text]:focus-visible, input[type=text]:active,
input[type=email]:hover,
input[type=email]:focus,
input[type=email]:focus-visible,
input[type=email]:active {
  cursor: pointer;
  border-color: #0c7d69;
}

input[type=checkbox]:hover, input[type=checkbox]:focus, input[type=checkbox]:active {
  cursor: pointer;
}

input[type=radio]:hover, input[type=radio]:focus, input[type=radio]:active {
  cursor: pointer;
}

input[type=radio],
input[type=checkbox] {
  border-color: #86a2a5;
  width: 1.5rem;
  height: 1.5rem;
  accent-color: #0c7d69;
}

button {
  border-style: none;
  border-radius: 8px;
  background: #0c7d69;
  color: white;
  padding: 1rem 2.5rem;
}
button:hover {
  cursor: pointer;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), #0c7d69;
}

.asterisk {
  color: #0c7d69;
  margin-left: 0.5rem;
}

label {
  color: #2a4144;
}
label:hover, label:focus, label:active {
  cursor: pointer;
}

.error-msg {
  color: #d73c3c;
  margin-top: 0.5rem;
  transition: opacity 0.3s ease, transform 0.3s ease; /* Smooth animation */
}

main.container {
  position: relative;
  padding: 2rem 1rem;
}
main.container .toast {
  position: absolute;
  top: 5rem;
  transform: translate(-50%, -50%);
  width: 327px;
  left: 50%;
  border-radius: 0.75rem;
  background-color: #2a4144;
  padding: 1.5rem;
}
main.container .toast div {
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
}
main.container .toast div img {
  width: 24px;
  height: 24px;
}
main.container .toast div p {
  color: white;
}
main.container .toast .success {
  color: #e0f1e8;
  margin-top: 0.5rem;
}
main.container form {
  background-color: white;
  border-radius: 1rem;
  display: flex;
  flex-direction: column;
  padding: 1.5rem;
}
main.container form .form_title {
  color: #2a4144;
}
main.container form .name {
  display: flex;
  flex-direction: column;
  row-gap: 1.5rem;
  margin-top: 2rem;
  margin-bottom: 1.5rem;
}
main.container form .name .first_name input.error,
main.container form .name .last_name input.error {
  border-color: #d73c3c;
}
main.container form .email input.error {
  border-color: #d73c3c;
}
main.container form .query_type {
  margin: 1.5rem 0;
}
main.container form .query_type .wrapper {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  margin-top: 1rem;
}
main.container form .query_type .wrapper .general_enq,
main.container form .query_type .wrapper .support_req {
  border-radius: 8px;
  border: 1px solid #86a2a5;
  display: flex;
  flex-direction: row;
  align-items: center;
  column-gap: 0.75rem;
  padding: 0.75rem 1.5rem;
}
main.container form .query_type .wrapper .general_enq:hover,
main.container form .query_type .wrapper .support_req:hover {
  cursor: pointer;
  border-color: #0c7d69;
}
main.container form .query_type .wrapper .general_enq:focus, main.container form .query_type .wrapper .general_enq:active,
main.container form .query_type .wrapper .support_req:focus,
main.container form .query_type .wrapper .support_req:active {
  background-color: #e0f1e8;
}
main.container form .consent {
  margin: 2.5rem 0;
}
main.container form .consent .wrapper {
  display: flex;
  align-items: center;
  column-gap: 1rem;
}
main.container form .consent .wrapper label:hover, main.container form .consent .wrapper label:focus, main.container form .consent .wrapper label:active {
  cursor: pointer;
}

@media screen and (min-width: 756px) {
  textarea {
    height: 8.25rem;
  }
  main.container {
    padding: 0;
    margin: 8rem auto;
  }
  main.container .toast {
    top: -2.9rem;
    width: 28.125rem;
  }
  main.container form {
    padding: 2.5rem;
    width: 43.125rem;
  }
  main.container form .name {
    flex-direction: row;
    column-gap: 1rem;
  }
  main.container form .name .first_name,
  main.container form .name .last_name {
    flex: 1;
  }
  main.container form .query_type .wrapper {
    display: flex;
    flex-direction: row;
    column-gap: 1rem;
  }
  main.container form .query_type .wrapper .general_enq,
  main.container form .query_type .wrapper .support_req {
    flex: 1;
  }
}
@media screen and (min-width: 1440px) {
  textarea {
    height: 6.5625rem;
  }
  main.container {
    padding: 0;
    margin: 8rem auto;
  }
  main.container form {
    padding: 2.5rem;
    width: 46rem;
  }
  main.container form .name {
    flex-direction: row;
    column-gap: 1rem;
  }
  main.container form .name .first_name,
  main.container form .name .last_name {
    flex: 1;
  }
  main.container form .query_type .wrapper {
    display: flex;
    flex-direction: row;
    column-gap: 1rem;
  }
  main.container form .query_type .wrapper .general_enq,
  main.container form .query_type .wrapper .support_req {
    flex: 1;
  }
}

/*# sourceMappingURL=styles.css.map */
