.enquiry-dialog { width: min(720px, calc(100% - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; border: 1px solid #b69b61; border-radius: 8px; background: #fafbf9; color: #263732; box-shadow: 0 28px 100px #0008; font-family: Arial, sans-serif; letter-spacing: 0; overflow-y: auto; overscroll-behavior: contain; }
.enquiry-dialog::backdrop { background: #0c1514bf; backdrop-filter: blur(8px); }
.enquiry-dialog[open] { animation: enquiry-arrive .32s cubic-bezier(.2,.8,.2,1); }
body.enquiry-open { overflow: hidden; }
.enquiry-heading { position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 26px 30px; border-bottom: 2px solid #d5b46b; color: #fff8e8; background: #18231f; }
.enquiry-identity { display: flex; align-items: center; gap: 16px; min-width: 0; }
.enquiry-identity > div { min-width: 0; }
.enquiry-identity > img { width: 58px; height: 64px; object-fit: contain; flex-shrink: 0; }
.enquiry-brand { margin: 0 0 8px; color: #e2c986; font: 600 11px/1.4 Georgia, serif; }
.enquiry-heading h2 { margin: 0; font: 400 34px/1.2 Georgia, "Times New Roman", serif; letter-spacing: 0; overflow-wrap: anywhere; }
.enquiry-heading h2:focus { outline: none; }
.enquiry-steps { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 28px; margin: 0; padding: 18px 32px 0; list-style: none; background: #f0f3f0; }
.enquiry-steps li { display: flex; align-items: center; gap: 9px; min-height: 38px; padding-bottom: 13px; border-bottom: 2px solid transparent; color: #707974; font-size: 13px; line-height: 1.35; transition: color .2s, border-color .2s; }
.enquiry-steps small { margin-left: auto; font: 400 12px/1.3 Georgia,serif; }
.enquiry-steps li[aria-current] { color: #294e42; border-color: #a48236; font-weight: 700; }
.enquiry-content { padding: 28px 32px 24px; }
.enquiry-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px 20px; min-width: 0; margin: 0; padding: 0; border: 0; }
.enquiry-fields + .enquiry-fields { margin-top: 26px; padding-top: 24px; border-top: 1px solid #dce3de; }
.enquiry-fields legend { margin-bottom: 16px; padding: 0; color: #294e42; font: 400 21px/1.3 Georgia,serif; }
.enquiry-full { grid-column: 1 / -1; }
.enquiry-dialog label { display: flex; flex-direction: column; gap: 8px; font-size: 13px; font-weight: 600; line-height: 1.4; }
.enquiry-dialog label span { display: contents; color: #78817b; font-weight: 400; }
.enquiry-dialog input, .enquiry-dialog select, .enquiry-dialog textarea { width: 100%; min-width: 0; margin: 0; padding: 12px 14px; border: 1px solid #cdd7d0; border-radius: 4px; background: #fff; color: #263732; font: 400 16px/1.4 Arial,sans-serif; letter-spacing: 0; transition: border-color .18s, box-shadow .18s, background .18s; }
.enquiry-dialog input, .enquiry-dialog select { min-height: 48px; }
.enquiry-dialog textarea { resize: vertical; min-height: 88px; }
.enquiry-dialog input::placeholder, .enquiry-dialog textarea::placeholder { color: #7e8981; }
.enquiry-dialog :is(input,select,textarea):hover { border-color: #a1b5a7; }
.enquiry-dialog :is(input,select,textarea):focus { border-color: #608671; outline: 2px solid #60867145; outline-offset: 2px; box-shadow: 0 0 0 4px #6086710c; }
.enquiry-dialog :is(input,select,textarea):user-invalid { border-color: #ad4e54; }
.enquiry-actions { display: flex; justify-content: flex-end; align-items: center; gap: 12px; margin-top: 22px; padding-top: 20px; border-top: 1px solid #dce3de; }
.enquiry-primary, .enquiry-secondary, .enquiry-icon { display: inline-flex; justify-content: center; align-items: center; flex-shrink: 0; gap: 9px; min-height: 48px; border: 1px solid transparent; border-radius: 4px; padding: 0 20px; font: 600 13px/1.3 Arial,sans-serif; letter-spacing: 0; text-decoration: none; cursor: pointer; transition: background .18s, border-color .18s, box-shadow .18s; }
.enquiry-primary { color: #272314; background: #e7c77d; border-color: #c5a052; box-shadow: inset 0 1px 0 #fff6, 0 4px 10px #73582015; }
.enquiry-primary:hover { background: #efd393; box-shadow: inset 0 1px 0 #fff8, 0 5px 14px #73582026; }
.enquiry-secondary { color: #294e42; background: transparent; border-color: #cdd7d0; }
.enquiry-secondary:hover, .enquiry-icon:hover { background: #eaf0eb; }
.enquiry-icon { width: 44px; height: 44px; min-height: 44px; padding: 0; color: #50685a; background: transparent; }
.enquiry-heading .enquiry-icon { align-self: flex-start; border-color: #ffffff26; color: #fff5e0; }
.enquiry-heading .enquiry-icon:hover { background: #ffffff14; border-color: #e7c77d; }
.enquiry-dialog svg { width: 17px; height: 17px; flex-shrink: 0; }
.enquiry-dialog button:focus-visible, .enquiry-dialog a:focus-visible, .enquiry-message-preview summary:focus-visible { outline: 2px solid #ac8944; outline-offset: 3px; }
.enquiry-dialog [hidden] { display: none; }
.enquiry-recipient { display: flex; align-items: center; gap: 12px; margin: 0 0 8px; padding-bottom: 18px; border-bottom: 1px solid #dce3de; color: #6b7970; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.enquiry-recipient strong { display: block; color: #294e42; font-weight: 600; }
.enquiry-recipient > svg { width: 22px; height: 22px; color: #9c7a31; }
.enquiry-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 24px; margin: 22px 0; }
.enquiry-summary dt { margin-bottom: 6px; color: #748177; font-size: 12px; line-height: 1.4; }
.enquiry-summary dd { margin: 0; font-size: 15px; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.enquiry-summary > div:nth-child(-n+2) dd { color: #294e42; font: 400 23px/1.35 Georgia,serif; }
.enquiry-message-preview { border-top: 1px solid #dce3de; border-bottom: 1px solid #dce3de; }
.enquiry-message-preview summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 50px; color: #294e42; font-size: 13px; font-weight: 600; cursor: pointer; list-style: none; }
.enquiry-message-preview summary::-webkit-details-marker { display: none; }
.enquiry-message-preview summary svg { transition: transform .2s; }
.enquiry-message-preview[open] summary svg { transform: rotate(180deg); }
.enquiry-message-preview > label { padding-bottom: 18px; }
.enquiry-review textarea { background: #f1f5f1; font-size: 14px; line-height: 1.55; }
.enquiry-notice { display: flex; align-items: flex-start; gap: 9px; margin: 16px 0 0; font-size: 12px; line-height: 1.6; color: #68776d; }
.enquiry-notice svg { margin-top: 1px; }
.enquiry-review-actions { flex-wrap: wrap; }
.enquiry-review-actions .enquiry-secondary { margin-right: auto; }
.enquiry-status { min-height: 18px; margin: 12px 0 0; font-size: 12px; line-height: 1.5; color: #294e42; }
.enquiry-honeypot { display: none; }
.enquiry-notice a { color: #294e42; text-decoration: underline; text-underline-offset: 3px; }
.enquiry-primary:disabled, .enquiry-secondary:disabled, .enquiry-icon:disabled { opacity: .65; cursor: wait; }
.enquiry-primary .enquiry-send-spinner { display: none; }
.enquiry-primary.is-sending .enquiry-send-icon { display: none; }
.enquiry-primary.is-sending .enquiry-send-spinner { display: block; animation: enquiry-spin 1s linear infinite; }
.enquiry-status[data-kind="error"] { padding: 12px 14px; border-left: 3px solid #ac525c; color: #85313e; background: #f8ebed; }
.enquiry-status:focus { outline: 2px solid #ac525c; outline-offset: 3px; }
.enquiry-help { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; color: #294e42; font-size: 13px; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.enquiry-success { padding: 22px 0 8px; text-align: center; }
.enquiry-success > .enquiry-success-icon { width: 64px; height: 64px; margin-bottom: 20px; color: #46765b; }
.enquiry-success > p { max-width: 430px; margin: 0 auto 16px; font-size: 17px; line-height: 1.6; }
.enquiry-success .enquiry-success-recipient { color: #68776d; font-size: 14px; overflow-wrap: anywhere; }
.enquiry-success .enquiry-actions { justify-content: center; margin-top: 28px; }
@keyframes enquiry-spin { to { transform: rotate(360deg); } }
.enquiry-dialog[data-stage="review"] .enquiry-review { animation: enquiry-arrive .24s ease-out; }
@keyframes enquiry-arrive { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 520px) {
  .enquiry-heading { padding: 22px 18px; gap: 8px; }
  .enquiry-identity { gap: 10px; }
  .enquiry-identity > img { width: 36px; height: 48px; }
  .enquiry-heading h2 { font-size: 26px; }
  .enquiry-brand { font-size: 10px; }
  .enquiry-steps { padding: 14px 20px 0; gap: 18px; }
  .enquiry-steps li { font-size: 12px; gap: 7px; }
  .enquiry-content { padding: 22px 20px 20px; }
  .enquiry-fields { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .enquiry-fields legend { font-size: 20px; }
  .enquiry-actions > .enquiry-primary { flex: 1; }
  .enquiry-review-actions .enquiry-secondary, .enquiry-review-actions .enquiry-primary { padding: 0 12px; }
  .enquiry-summary { gap: 18px 16px; }
  .enquiry-summary > div:nth-child(-n+2) dd { font-size: 20px; }
  .enquiry-review-actions .enquiry-primary { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) { .enquiry-dialog[open], .enquiry-dialog[data-stage="review"] .enquiry-review, .enquiry-primary.is-sending .enquiry-send-spinner { animation: none; } .enquiry-dialog *, .enquiry-dialog *::after { transition: none !important; } }
