/* Contact / Travel Enquiry page only. */
.contact-enquiry-page .contact-page-hero {
  padding-block: clamp(78px, 8vw, 112px);
  background-image: linear-gradient(100deg, rgba(43, 25, 14, .84) 0%, rgba(57, 33, 18, .69) 42%, rgba(45, 26, 15, .26) 75%, rgba(39, 23, 14, .17) 100%), url('../images/contact-journey-hero.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.contact-enquiry-page .contact-page-hero h1 { max-width: 760px; font-size: clamp(2.8rem, 5.4vw, 4.8rem); }
.contact-enquiry-page .contact-page-hero p { max-width: 680px; font-size: 1.04rem; line-height: 1.72; }
.contact-enquiry-page .contact-enquiry-section { padding-block: clamp(62px, 7vw, 100px); }
.contact-enquiry-page .contact-grid { align-items: start; gap: clamp(28px, 4vw, 54px); }
.contact-enquiry-page .contact-information { display: grid; gap: 20px; }
.contact-enquiry-page .contact-box { border-color: #e5d2ba; box-shadow: 0 10px 24px rgba(71,43,18,.05); }
.contact-enquiry-page .contact-box h3 { color: #3b2618; }
.contact-enquiry-page .contact-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; }
.contact-enquiry-page .contact-actions .btn { min-height: 43px; }
.contact-planning-card { padding: 27px 29px 29px; border: 1px solid #e4ceb0; border-radius: 16px; background: #fff7e9; box-shadow: 0 8px 20px rgba(71,43,18,.045); }
.contact-planning-card h3 { margin: 9px 0 11px; color: #3b2618; font-size: 1.65rem; }
.contact-planning-card p { margin: 0; color: #6b5a4b; font-size: .95rem; line-height: 1.66; }
.contact-planning-card ul { display: grid; gap: 8px; margin: 18px 0 0; padding: 0; color: #67452a; font-size: .88rem; font-weight: 700; list-style: none; }
.contact-planning-card li::before { content: '•'; margin-right: 9px; color: #c9681b; }
.contact-planning-card .contact-actions { margin-top: 22px; }
.universal-enquiry-form { padding: clamp(25px, 3vw, 36px); }
.universal-enquiry-form h3 { font-size: clamp(1.9rem, 2.8vw, 2.35rem); }
.form-intro { margin: 9px 0 25px !important; color: #756353 !important; font-size: .94rem; }
.universal-enquiry-form .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 17px; }
.universal-enquiry-form .input { min-width: 0; }
.universal-enquiry-form .form-wide { grid-column: 1 / -1; }
.universal-enquiry-form .input label { margin-bottom: 7px; }
.universal-enquiry-form .input input, .universal-enquiry-form .input select, .universal-enquiry-form .input textarea { width: 100%; border: 1px solid #e4d5c3; border-radius: 9px; background: #fffefb; color: #382a20; font: inherit; font-size: .9rem; line-height: 1.4; padding: 11px 12px; }
.universal-enquiry-form .input textarea { min-height: 100px; resize: vertical; }
.universal-enquiry-form .input input:focus, .universal-enquiry-form .input select:focus, .universal-enquiry-form .input textarea:focus { outline: none; border-color: #c77730; box-shadow: 0 0 0 3px rgba(201,104,27,.12); }
.form-submit { margin: 24px 0 0 !important; }
.form-submit .btn { min-height: 47px; padding-inline: 22px; }

@media (max-width: 850px) {
  .contact-enquiry-page .contact-grid { gap: 28px; }
  .contact-enquiry-page .contact-information { grid-template-columns: 1fr 1fr; align-items: start; }
}

@media (max-width: 620px) {
  .contact-enquiry-page .contact-page-hero { padding-block: 70px; background-position: 59% center; }
  .contact-enquiry-page .contact-information { grid-template-columns: 1fr; }
  .universal-enquiry-form .form-grid { grid-template-columns: 1fr; gap: 14px; }
  .universal-enquiry-form .form-wide { grid-column: auto; }
}

@media (max-width: 540px) {
  .contact-enquiry-page .contact-page-hero h1 { font-size: clamp(2.5rem, 11vw, 3.25rem); }
  .contact-enquiry-page .contact-page-hero p { font-size: .98rem; }
  .contact-planning-card, .universal-enquiry-form { padding: 23px 20px; }
  .contact-enquiry-page .contact-actions .btn { flex: 1 1 145px; }
  .form-submit .btn { width: 100%; }
}
