@media (width > 767px) {
.enquiry-message {
  display: flex;
  flex-direction: column;
  gap: min(12px, 0.833333vw);
  align-items: flex-start;
  align-self: stretch;
  z-index: 2;
  width: 66.9444vw;
  max-width: 964.0px;
  height: auto;
  position: relative;
  text-align: left;
  font-family: "Archivo";
  font-weight: 400;
  letter-spacing: 0rem;
}

.enquiry-message__control {
  color: #16181B;
  border-radius: min(5px, 0.347222vw);
  align-self: stretch;
  flex-shrink: 0;
  z-index: 1;
  width: 66.9444vw;
  max-width: 964.0px;
  height: auto;
  position: relative;
  background-color: #EDF0F2;
  font-size: 1rem;
  line-height: 1.1;
  min-height: min(160px, 11.1111vw);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
}

  .contact-page {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    max-width: none;
    height: auto;
    background-color: #F5E7CD;
  }

  .contact-header {
    flex-shrink: 0;
    z-index: 0;
    width: 100%;
    max-width: none;
    height: auto;
    position: relative;
  }

  .contact-section {
    align-self: stretch;
    flex-shrink: 0;
    z-index: 1;
    width: 100%;
    max-width: none;
    height: auto;
    position: relative;
    background-color: #F5E7CD;
  }

  .contact-section__inner {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 1440.0px;
    display: flex;
    flex-direction: column;
    gap: min(44px, 3.05556vw);
    align-items: center;
    padding-left: min(80px, 5.55556vw);
    padding-right: min(80px, 5.55556vw);
    padding-top: min(56px, 3.88889vw);
    padding-bottom: min(120px, 8.33333vw);
    height: auto;
  }

  .contact-intro {
    display: flex;
    flex-direction: column;
    gap: min(32px, 2.22222vw);
    align-items: center;
    z-index: 0;
    width: 81.3889vw;
    max-width: 1172.0px;
    height: auto;
    position: relative;
    text-align: center;
    letter-spacing: 0rem;
  }

  .contact-intro__title {
    color: #16181B;
    display: block;
    align-self: stretch;
    z-index: 0;
    width: 81.3889vw;
    max-width: 1172.0px;
    height: auto;
    position: relative;
    font-family: "txc-pearl";
    font-weight: 400;
    font-size: 3.875rem;
    text-transform: uppercase;
    line-height: 1.1;
  }

  .contact-intro__description {
    display: block;
    align-self: stretch;
    z-index: 1;
    width: 81.3889vw;
    max-width: 1172.0px;
    height: auto;
    position: relative;
    color: #0B889B;
    font-family: "Archivo";
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.2;
  }

  .enquiry-card {
    border-radius: 24.0px;
    display: flex;
    flex-direction: column;
    gap: min(32px, 2.22222vw);
    align-items: flex-start;
    padding-left: min(48px, 3.33333vw);
    padding-right: min(48px, 3.33333vw);
    padding-top: min(48px, 3.33333vw);
    padding-bottom: min(48px, 3.33333vw);
    flex-shrink: 0;
    z-index: 1;
    width: 73.6111vw;
    max-width: 1060.0px;
    height: auto;
    position: relative;
    background-color: #FFFFFF;
    min-height: min(615px, 42.7083vw);
  }

  .enquiry-form {
    display: flex;
    flex-direction: column;
    gap: min(24px, 1.66667vw);
    align-items: flex-start;
    align-self: stretch;
    z-index: 0;
    width: 66.9444vw;
    max-width: 964.0px;
    height: auto;
    position: relative;
  }

  .enquiry-form__identity {
    display: flex;
    flex-direction: row;
    gap: min(24px, 1.66667vw);
    align-items: flex-start;
    align-self: stretch;
    z-index: 0;
    width: 66.9444vw;
    max-width: 964.0px;
    height: auto;
    position: relative;
    text-align: left;
    font-family: "Archivo";
    font-weight: 400;
    letter-spacing: 0rem;
  }

  .enquiry-first-name {
    display: flex;
    flex-direction: column;
    gap: min(12px, 0.833333vw);
    align-items: flex-start;
    flex-grow: 1;
    z-index: 0;
    width: 21.2037vw;
    max-width: 305.3333435058594px;
    height: auto;
    position: relative;
  }

  .enquiry-first-name__label {
    display: block;
    flex-shrink: 0;
    z-index: 0;
    width: max-content;
    height: auto;
    position: relative;
    color: #16181B;
    line-height: 1.4;
    font-size: min(1.25rem, 1.38889vw);
  }

  .enquiry-first-name__control {
    color: #16181B;
    border-radius: min(5px, 0.347222vw);
    align-self: stretch;
    flex-shrink: 0;
    z-index: 1;
    width: 21.2037vw;
    max-width: 305.3333435058594px;
    height: auto;
    position: relative;
    background-color: #EDF0F2;
    font-size: 1rem;
    line-height: 1.1;
    min-height: min(56px, 3.88889vw);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
  }

  .enquiry-last-name {
    display: flex;
    flex-direction: column;
    gap: min(12px, 0.833333vw);
    align-items: flex-start;
    flex-grow: 1;
    z-index: 1;
    width: 21.2037vw;
    max-width: 305.33331298828125px;
    height: auto;
    position: relative;
  }

  .enquiry-last-name__label {
    display: block;
    flex-shrink: 0;
    z-index: 0;
    width: max-content;
    height: auto;
    position: relative;
    color: #16181B;
    line-height: 1.4;
    font-size: min(1.25rem, 1.38889vw);
  }

  .enquiry-last-name__control {
    color: #16181B;
    border-radius: min(5px, 0.347222vw);
    align-self: stretch;
    flex-shrink: 0;
    z-index: 1;
    width: 21.2037vw;
    max-width: 305.33331298828125px;
    height: auto;
    position: relative;
    background-color: #EDF0F2;
    font-size: 1rem;
    line-height: 1.1;
    min-height: min(56px, 3.88889vw);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
  }

  .enquiry-company {
    display: flex;
    flex-direction: column;
    gap: min(12px, 0.833333vw);
    align-items: flex-start;
    flex-grow: 1;
    z-index: 2;
    width: 21.2037vw;
    max-width: 305.33331298828125px;
    height: auto;
    position: relative;
  }

  .enquiry-company__label {
    display: block;
    flex-shrink: 0;
    z-index: 0;
    width: max-content;
    height: auto;
    position: relative;
    color: #16181B;
    line-height: 1.4;
    font-size: min(1.25rem, 1.38889vw);
  }

  .enquiry-company__control {
    color: #16181B;
    border-radius: min(5px, 0.347222vw);
    align-self: stretch;
    flex-shrink: 0;
    z-index: 1;
    width: 21.2037vw;
    max-width: 305.33331298828125px;
    height: auto;
    position: relative;
    background-color: #EDF0F2;
    font-size: 1rem;
    line-height: 1.1;
    min-height: min(56px, 3.88889vw);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
  }

  .enquiry-form__contact {
    display: flex;
    flex-direction: row;
    gap: min(24px, 1.66667vw);
    align-items: flex-start;
    align-self: stretch;
    z-index: 1;
    width: 66.9444vw;
    max-width: 964.0px;
    height: auto;
    position: relative;
    text-align: left;
    font-family: "Archivo";
    font-weight: 400;
    letter-spacing: 0rem;
  }

  .enquiry-email {
    display: flex;
    flex-direction: column;
    gap: min(12px, 0.833333vw);
    align-items: flex-start;
    flex-grow: 1;
    z-index: 0;
    width: 32.6389vw;
    max-width: 470.0px;
    height: auto;
    position: relative;
  }

  .enquiry-email__label {
    display: block;
    flex-shrink: 0;
    z-index: 0;
    width: max-content;
    height: auto;
    position: relative;
    color: #16181B;
    line-height: 1.4;
    font-size: min(1.25rem, 1.38889vw);
  }

  .enquiry-email__control {
    color: #16181B;
    border-radius: min(5px, 0.347222vw);
    align-self: stretch;
    flex-shrink: 0;
    z-index: 1;
    width: 32.6389vw;
    max-width: 470.0px;
    height: auto;
    position: relative;
    background-color: #EDF0F2;
    font-size: 1rem;
    line-height: 1.1;
    min-height: min(56px, 3.88889vw);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
  }

  .enquiry-telephone {
    display: flex;
    flex-direction: column;
    gap: min(12px, 0.833333vw);
    align-items: flex-start;
    flex-grow: 1;
    z-index: 1;
    width: 32.6389vw;
    max-width: 470.0px;
    height: auto;
    position: relative;
  }

  .enquiry-telephone__label {
    display: block;
    flex-shrink: 0;
    z-index: 0;
    width: max-content;
    height: auto;
    position: relative;
    color: #16181B;
    line-height: 1.4;
    font-size: min(1.25rem, 1.38889vw);
  }

  .enquiry-telephone__control {
    color: #16181B;
    border-radius: min(5px, 0.347222vw);
    align-self: stretch;
    flex-shrink: 0;
    z-index: 1;
    width: 32.6389vw;
    max-width: 470.0px;
    height: auto;
    position: relative;
    background-color: #EDF0F2;
    font-size: 1rem;
    line-height: 1.1;
    min-height: min(56px, 3.88889vw);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
  }

  .enquiry-message__label {
    display: block;
    flex-shrink: 0;
    z-index: 0;
    width: max-content;
    height: auto;
    position: relative;
    color: #16181B;
    line-height: 1.4;
    font-size: min(1.25rem, 1.38889vw);
  }

  .enquiry-form__submit {
    border-radius: 56.0px;
    display: flex;
    flex-direction: row;
    gap: min(12px, 0.833333vw);
    align-items: flex-start;
    padding-top: min(8px, 0.555556vw);
    padding-bottom: min(8px, 0.555556vw);
    flex-grow: 1;
    z-index: 0;
    width: 66.9444vw;
    max-width: 964.0px;
    height: auto;
    position: relative;
  }


/* Native controls retain the exported field frames and responsive row sizing. */
.enquiry-form__control {
  display: block;
  width: 100%;
  min-width: 0;
  padding: 1rem 1.25rem;
  box-sizing: border-box;
  font-family: inherit;
}
input.enquiry-form__control { height: max(3.1rem, min(56px, 3.88889vw)); }
textarea.enquiry-form__control { resize: vertical; }
.enquiry-form__control::placeholder { color: inherit; opacity: 1; }
.enquiry-form__control:focus-visible, .enquiry-card button:focus-visible {
  outline: 3px solid #0B889B;
  outline-offset: 3px;
}

}

@media (max-width: 767px) {
.contact-page {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100vh;
  background: var(--color-cream);
}

.form-field__label {
  color: var(--color-dark);
  font-size: 1.66667rem;
  line-height: 1.4;
}

.form-field__control {
  font-family: "Archivo";
  font-size: 1.33333rem;
  line-height: 1.0625;
}

  .contact-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: max-content;
    gap: 7.7vw;
    padding: 10.25vw 6.4vw 15.4vw;
  }

  .contact-section__intro {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4.1vw;
    width: 87vw;
    max-width: 35em;
    text-align: left;
  }

  .contact-section__heading {
    color: var(--color-dark);
    font-family: "txc-pearl";
    font-weight: 400;
    line-height: 1.1;
    text-transform: uppercase;
    font-size: clamp(2rem, calc(1.25rem + 3.85vw), 3rem);
  }

  .contact-section__subheading {
    color: var(--color-teal);
    font-family: "Archivo";
    font-weight: 500;
    line-height: 1.45;
    font-size: 1.25rem;
  }

  .contact-form {
    display: flex;
    flex-direction: column;
    height: max-content;
    background: var(--color-white);
    gap: 6.15vw;
    width: 87vw;
    max-width: none;
    min-height: 145vw;
    padding: 9.2vw 6.15vw;
    border-radius: 4.1vw;
  }

  .contact-form__grid {
    display: flex;
    flex-direction: column;
    gap: 5.1vw;
  }

  .contact-form__row {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 5.1vw;
  }

  .form-field {
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    min-width: 0;
    font-family: "Archivo";
    width: 100%;
    gap: 3.05vw;
  }

  .form-field__label,
  .form-field__control {
    font-size: 1.25rem;
  }

  .form-field__control {
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: #edf0f2;
    color: var(--color-dark);
    width: 100%;
    min-height: 14.35vw;
    padding: 4.1vw 5.1vw;
    border-radius: 1.25vw;
  }

  .form-field__control--textarea {
    resize: vertical;
    min-height: 30.75vw;
  }

  .contact-form__submit {
    align-self: stretch;
    width: 100%;
    max-width: none;
  }


}

/* Keep delivery feedback beside the CTA, wrapping only on narrow screens. */
.enquiry-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  width: 100%;
}
.enquiry-actions > button { flex: none; }
.enquiry-status {
  flex: 1 1 12rem;
  margin: 0;
  font: 400 1rem/1.45 "Archivo", sans-serif;
  color: #343543;
}
.enquiry-status:empty { display: none; }
.enquiry-status[data-state="success"] { color: #17633d; }
.enquiry-status[data-state="error"] { color: #a32626; }
.enquiry-actions > button:disabled { opacity: .6; cursor: wait; }
@media (max-width: 767px) {
  .enquiry-actions > .contact-form__submit {
    flex: 1 1 100%;
    gap: 4.1vw;
    width: 100%;
    max-width: 100%;
  }
  .contact-form__submit-icon {
    width: 6.15vw;
    height: 6.15vw;
  }
}
