/* Right-side contact rail, adapted from Superon's fixed-buttons. */
.fixed-buttons { position: fixed; right: 0; top: 50%; transform: translateY(-50%); z-index: 1030; display: flex; flex-direction: column; gap: 5px; }
.fixed-buttons > a { position: relative; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border: 1px solid var(--line-2); border-right: 0; border-radius: 8px 0 0 8px; background: #fff; color: var(--green); box-shadow: 0 3px 12px #18282012; transition: color .2s, background .2s; }
.fixed-buttons > a:hover, .fixed-buttons > a:focus-visible { background: var(--green); color: #fff; }
.fixed-buttons svg { display: block; width: 23px; height: 23px; }
.fixed-buttons__label { position: absolute; right: calc(100% + 9px); padding: 8px 12px; border-radius: 4px; background: var(--forest); color: #fff; font: 500 13px/1.4 var(--sans); white-space: nowrap; opacity: 0; visibility: hidden; pointer-events: none; }
.fixed-buttons > a:hover .fixed-buttons__label, .fixed-buttons > a:focus-visible .fixed-buttons__label { visibility: visible; opacity: 1; }
.sx-finder-open .fixed-buttons { visibility: hidden; }
.quick-enquiry { position: fixed; inset: 50% 66px auto auto; transform: translateY(-50%); width: min(390px, calc(100% - 32px)); max-height: calc(100dvh - 40px); margin: 0; padding: 0; border: 1px solid var(--line-2); border-radius: 8px; color: var(--ink); background: #fff; box-shadow: 0 16px 64px #18282033; overflow-y: auto; overscroll-behavior: contain; }
.quick-enquiry::backdrop { background: #18282066; }
body.quick-enquiry-open { overflow: hidden; }
.quick-enquiry__heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 24px; background: var(--soft); border-bottom: 1px solid var(--line); }
.quick-enquiry__heading p { margin: 0 0 5px; color: var(--green); font-size: 11px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; }
.quick-enquiry__heading h2 { margin: 0; font-size: 24px; font-weight: 600; }
.quick-enquiry__close { flex-shrink: 0; display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--line-2); border-radius: 50%; background: #fff; color: var(--ink); font: 28px/1 var(--sans); cursor: pointer; }
.quick-enquiry-form { display: flex; flex-direction: column; gap: 14px; padding: 20px 24px 24px; }
.quick-enquiry__intro { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.quick-enquiry__field { display: flex; flex-direction: column; gap: 6px; }
.quick-enquiry__field label { color: var(--ink); font-size: 12px; font-weight: 500; }
.quick-enquiry__field input, .quick-enquiry__field select, .quick-enquiry__field textarea { width: 100%; min-width: 0; height: 42px; padding: 10px 12px; border: 1px solid var(--line-2); border-radius: 0; color: var(--ink); background: #fff; font: 400 14px/1.5 var(--sans); }
.quick-enquiry__field select { appearance: auto; cursor: pointer; }
.quick-enquiry__field select:invalid { color: var(--muted); }
.quick-enquiry__field select option { color: var(--ink); }
.quick-enquiry__field textarea { height: 84px; min-height: 84px; resize: vertical; }
.quick-enquiry__field input::placeholder, .quick-enquiry__field textarea::placeholder { color: var(--muted); opacity: 1; }
.quick-enquiry__field [aria-invalid="true"] { border-color: #a32626; }
.quick-enquiry__errors { color: #a32626; font-size: 12px; line-height: 1.5; }
.quick-enquiry__errors:empty { display: none; }
.quick-enquiry__privacy { margin: 0; font-size: 11px; line-height: 1.6; color: var(--muted); }
.quick-enquiry__privacy a { text-decoration: underline; }
.quick-enquiry-form > .btn { gap: 12px; width: 100%; flex-shrink: 0; }
.quick-enquiry-form > .btn:disabled { opacity: .65; cursor: wait; }
.quick-enquiry__notice { padding: 12px; border-left: 3px solid var(--green); background: var(--soft); color: var(--forest); font-size: 13px; line-height: 1.5; }
.quick-enquiry__notice[data-error="true"] { border-color: #a32626; color: #a32626; }
@media (max-width: 767px) {
  .fixed-buttons > a { width: 44px; height: 44px; }
  .fixed-buttons svg { width: 21px; height: 21px; }
  .quick-enquiry { right: 16px; }
  .quick-enquiry__field input, .quick-enquiry__field select, .quick-enquiry__field textarea { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .fixed-buttons > a { transition: none; } }
