.contact-us-page {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  background-color: #ffffff;
}

.contact-us-page .logo {
  position: relative;
  width: 222.32px;
  height: 26.74px;
}

.contact-us-page .material-symbols {
  position: relative;
  width: 50px;
  height: 50px;
}

.contact-us-page .main-nav {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  flex: 0 0 auto;
  margin-top: -8.63px;
  margin-bottom: -8.63px;
}

.contact-us-page .div {
  display: flex;
  align-items: center;
  gap: 40px;
  padding: 10px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.contact-us-page .text-wrapper {
  position: relative;
  width: fit-content;
  font-family: var(--text-small-font-family);
  font-weight: var(--text-small-font-weight);
  color: #000000;
  font-size: var(--text-small-font-size);
  letter-spacing: var(--text-small-letter-spacing);
  line-height: var(--text-small-line-height);
  white-space: nowrap;
  font-style: var(--text-small-font-style);
}

.contact-us-page .text-wrapper-2 {
  position: relative;
  width: fit-content;
  margin-top: -1px;
  font-family: "Inter", Helvetica;
  font-weight: 400;
  color: #000000;
  font-size: 20px;
  letter-spacing: 0;
  line-height: normal;
  white-space: nowrap;
}

.contact-us-page .login-sign-up-btn {
  display: inline-flex;
  align-items: center;
  gap: 40px;
  position: relative;
  flex: 0 0 auto;
}

.contact-us-page .text-wrapper-3 {
  position: relative;
  width: fit-content;
  margin-top: -1px;
  font-family: var(--text-small-font-family);
  font-weight: var(--text-small-font-weight);
  color: #000000;
  font-size: var(--text-small-font-size);
  letter-spacing: var(--text-small-letter-spacing);
  line-height: var(--text-small-line-height);
  white-space: nowrap;
  font-style: var(--text-small-font-style);
}

.contact-us-page .full-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  z-index: 0;
}

.contact-us-page .banner {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 200px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background:
    linear-gradient(0deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.6) 100%),
    url(assets/uploaded-asset-1784277812193-0.png)
      50% 50% / cover;
}

.contact-us-page .text-wrapper-4 {
  position: relative;
  flex: 1;
  margin-top: -1px;
  font-family: var(--h2-font-family);
  font-weight: var(--h2-font-weight);
  color: #ffffff;
  font-size: var(--h2-font-size);
  text-align: center;
  letter-spacing: var(--h2-letter-spacing);
  line-height: var(--h2-line-height);
  font-style: var(--h2-font-style);
}

.contact-us-page .content-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 50px 100px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.contact-us-page .email-telephone {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.contact-us-page .div-2 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  position: relative;
  flex: 1;
  flex-grow: 1;
}

.contact-us-page .text-wrapper-5 {
  position: relative;
  align-self: stretch;
  margin-top: -1px;
  font-family: var(--text-small-bold-font-family);
  font-weight: var(--text-small-bold-font-weight);
  color: #000000;
  font-size: var(--text-small-bold-font-size);
  letter-spacing: var(--text-small-bold-letter-spacing);
  line-height: var(--text-small-bold-line-height);
  font-style: var(--text-small-bold-font-style);
}

.contact-us-page .p {
  position: relative;
  align-self: stretch;
  font-family: "Helvetica Neue-Regular", Helvetica;
  font-weight: 400;
  color: transparent;
  font-size: 20px;
  letter-spacing: 0;
  line-height: 20px;
}

.contact-us-page .span {
  color: #000000;
}

.contact-us-page .text-wrapper-6 {
  color: #dc1e37;
  text-decoration: underline;
  font-family: var(--text-small-font-family);
  font-style: var(--text-small-font-style);
  font-weight: var(--text-small-font-weight);
  letter-spacing: var(--text-small-letter-spacing);
  line-height: var(--text-small-line-height);
  font-size: var(--text-small-font-size);
}

.contact-us-page .text-wrapper-7 {
  color: #dc1e37;
  line-height: 0.1px;
}

.contact-us-page .text-wrapper-8 {
  position: relative;
  align-self: stretch;
  font-family: var(--text-small-font-family);
  font-weight: var(--text-small-font-weight);
  color: #000000;
  font-size: var(--text-small-font-size);
  letter-spacing: var(--text-small-letter-spacing);
  line-height: var(--text-small-line-height);
  font-style: var(--text-small-font-style);
}

.contact-us-page .location {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.contact-us-page .image {
  position: relative;
  align-self: stretch;
  width: 100%;
  height: 435.84px;
  object-fit: cover;
}

.contact-us-page .footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 40px;
  padding: 50px 0px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
  background-color: #2e2e2e;
}

.contact-us-page .footer-enquiry {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 20px 20px;
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.contact-us-page .text-wrapper-9 {
  position: relative;
  width: fit-content;
  margin-top: -1px;
  font-family: var(--text-small-font-family);
  font-weight: var(--text-small-font-weight);
  color: #ffffff;
  font-size: var(--text-small-font-size);
  letter-spacing: var(--text-small-letter-spacing);
  line-height: var(--text-small-line-height);
  white-space: nowrap;
  font-style: var(--text-small-font-style);
}

.contact-us-page .icons {
  position: relative;
  align-self: stretch;
  width: 100%;
  flex: 0 0 auto;
}

.contact-us-page .site-menu-toggle,
.contact-us-page .site-mobile-menu {
  display: none;
}

/* Mobile + Tablet navigation */
@media (max-width: 1279px) {
  .contact-us-page .main-nav,
  .contact-us-page .login-sign-up-btn {
    display: none;
  }

  .contact-us-page .site-menu-toggle {
    display: inline-flex;
  }

  .contact-us-page .site-mobile-menu {
    display: flex;
  }
}

/* Mobile styles inspired by Figma reference */
@media (max-width: 767px) {
  .contact-us-page .logo {
    width: 150px;
    height: 18.04px;
  }

  .contact-us-page .banner {
    padding: 90px 0px;
  }

  .contact-us-page .text-wrapper-4 {
    font-size: 24px;
    line-height: 1.2;
  }

  .contact-us-page .content-container {
    gap: 8px;
    padding: 20px 16px;
  }

  .contact-us-page .email-telephone {
    flex-direction: column;
    gap: 8px;
  }

  .contact-us-page .div-2 {
    gap: 8px;
  }

  .contact-us-page .text-wrapper-5,
  .contact-us-page .text-wrapper-6,
  .contact-us-page .text-wrapper-8 {
    font-size: 16px;
  }

  .contact-us-page .p {
    font-size: 16px;
    line-height: 16px;
  }

  .contact-us-page .location {
    gap: 8px;
  }

  .contact-us-page .image {
    height: 138.42px;
  }

  .contact-us-page .footer {
    gap: 20px;
  }

  .contact-us-page .footer-enquiry {
    gap: 8px 8px;
  }

  .contact-us-page .text-wrapper-9 {
    font-size: 20px;
  }
}

/* Tablet styles inspired by Figma reference */
@media (min-width: 768px) and (max-width: 1024px) {
  .contact-us-page .banner {
    padding: 130px 0px;
  }

  .contact-us-page .text-wrapper-4 {
    font-size: 30px;
    line-height: 1.2;
  }

  .contact-us-page .content-container {
    gap: 10px;
    padding: 50px 24px;
  }

  .contact-us-page .email-telephone {
    gap: 10px;
  }

  .contact-us-page .div-2 {
    gap: 10px;
  }

  .contact-us-page .text-wrapper-5,
  .contact-us-page .text-wrapper-6,
  .contact-us-page .text-wrapper-8,
  .contact-us-page .text-wrapper-9 {
    font-size: 16px;
  }

  .contact-us-page .p {
    font-size: 16px;
    line-height: 16px;
  }

  .contact-us-page .location {
    gap: 10px;
  }

  .contact-us-page .image {
    height: 290.56px;
  }

  .contact-us-page .footer {
    gap: 30px;
  }

  .contact-us-page .footer-enquiry {
    gap: 10px 10px;
  }
}
