/* Popup Enquiry Modal: a split image/form dialog reusing the site's own
   ".modal" dialog machinery (open/close, backdrop, ESC — all already wired
   in script.js) and design tokens. No new colors/fonts/icon libraries.
   Spacing throughout is kept deliberately compact so the whole form fits
   within the modal's max-height without ever needing to scroll. */

.popup-enquiry-modal { width: min(94vw, 940px); max-width: 940px; max-height: min(88vh, 620px); max-height: min(88dvh, 620px); padding: 0; overflow: hidden; background: var(--ivory); }
.popup-enquiry-modal .modal-close { z-index: 3; color: var(--ivory); mix-blend-mode: difference; }

.popup-enquiry-grid { display: grid; grid-template-columns: 1fr 1.15fr; height: min(88vh, 620px); height: min(88dvh, 620px); }

.popup-enquiry-visual { position: relative; background: url("assets/hero.webp") 70% center/cover no-repeat; display: flex; flex-direction: column; justify-content: flex-end; padding: 32px; overflow: hidden; }
.popup-enquiry-shade { position: absolute; inset: 0; background: linear-gradient(0deg, rgba(2,35,44,.88) 0%, rgba(2,35,44,.35) 55%, rgba(2,35,44,.15) 100%); }
.popup-enquiry-wordmark { position: relative; z-index: 1; margin: 0 0 6px; color: var(--ivory); font: 400 22px var(--serif); letter-spacing: .1em; }
.popup-enquiry-tagline { position: relative; z-index: 1; margin: 0; color: rgba(255,251,244,.78); font: italic 400 13px var(--serif); }

.popup-enquiry-panel { position: relative; height: 100%; overflow-y: auto; padding: 26px 36px 22px; display: flex; flex-direction: column; justify-content: center; }
.popup-enquiry-motif { position: absolute; top: 44px; right: 24px; width: 50px; color: rgba(6,59,78,.24); }
.popup-enquiry-motif svg { width: 100%; height: auto; display: block; }

.popup-enquiry-eyebrow { color: var(--coral) !important; margin-bottom: 6px !important; }
.popup-enquiry-panel h2 { font-size: clamp(24px, 2.6vw, 32px); line-height: 1.05; margin: 0 0 10px; color: var(--ocean); }
.popup-enquiry-panel h2 i { color: var(--coral); font-style: italic; }
.popup-enquiry-panel h2::after { content: ""; display: block; width: 40px; height: 2px; margin-top: 8px; background: var(--coral); }
.popup-enquiry-sub { margin: 10px 0 16px; max-width: 360px; font-size: 12px; line-height: 1.55; color: rgba(6,59,78,.72); }

.popup-enquiry-form .form-line { margin-bottom: 10px; padding-bottom: 6px; }
.popup-enquiry-form label { margin-bottom: 3px !important; }
.popup-enquiry-form label em { font-style: normal; opacity: .6; text-transform: none; letter-spacing: 0; }
.popup-enquiry-form input { font-size: 14px !important; }
.popup-enquiry-form textarea {
  display: block;
  width: 100%;
  min-height: 40px;
  border: 0;
  background: transparent;
  color: var(--ocean);
  font: 14px/1.5 var(--sans);
  outline: none;
  padding: 4px 0 2px;
  resize: vertical;
}
.popup-enquiry-form textarea::placeholder { color: rgba(6,59,78,.43); }
.popup-enquiry-submit { width: 100%; min-height: 42px; padding: 10px 18px; margin-top: 4px; }
.popup-enquiry-trust { display: flex; align-items: center; gap: 7px; margin: 10px 0 0; font-size: 10px; letter-spacing: .04em; color: rgba(6,59,78,.55); }
.popup-enquiry-trust svg { width: 14px; height: 14px; color: var(--coral); flex-shrink: 0; }
.popup-enquiry-success, .popup-enquiry-error { margin-top: 10px; }

@media (max-width: 760px) {
  .popup-enquiry-modal { max-height: min(92vh, 560px); max-height: min(92dvh, 560px); }
  .popup-enquiry-grid { grid-template-columns: 1fr; height: min(92vh, 560px); height: min(92dvh, 560px); }
  .popup-enquiry-visual { display: none; }
  .popup-enquiry-panel { padding: 30px 24px 20px; justify-content: flex-start; }
  .popup-enquiry-motif { width: 44px; top: 36px; right: 20px; }
}

@media (max-height: 640px) {
  .popup-enquiry-modal { max-height: 94vh; max-height: 94dvh; }
  .popup-enquiry-grid { height: 94vh; height: 94dvh; }
  .popup-enquiry-panel { padding-top: 20px; padding-bottom: 16px; }
  .popup-enquiry-form .form-line { margin-bottom: 7px; padding-bottom: 4px; }
  .popup-enquiry-sub { margin: 6px 0 12px; }
}
