/* Contact-only styles, using the site's existing palette and glass panels. */
.inquiry-layout { display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: 28px; align-items: start; }
.inquiry-form { min-width: 0; }
.inquiry-form fieldset { min-width: 0; padding: 0; margin: 0 0 32px; border: 0; }
.inquiry-form legend { width: 100%; padding: 0 0 14px; margin-bottom: 18px; border-bottom: 1px solid var(--tx-line); color: #eef8ff; font: 600 1.08rem/1.5 var(--display); }
.inquiry-form legend span { margin-right: 10px; color: #92e8ff; font-size: .8rem; }
.inquiry-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.inquiry-field { min-width: 0; }
.inquiry-wide { grid-column: 1 / -1; }
.inquiry-form .inquiry-field > label { display: block; min-height: auto; margin-bottom: 8px; color: #eef8ff; font-weight: 600; }
.inquiry-form label small { color: #bad0e5; font-size: .85rem; font-weight: 400; }
.inquiry-form .inquiry-field :is(input, select, textarea) { display: block; width: 100%; min-width: 0; min-height: 48px; padding: 12px 14px; border: 1px solid #759fc770; border-radius: 7px; background: var(--panel-control-fill); color: #fff; transition: border-color .18s ease, box-shadow .18s ease; }
.inquiry-form textarea { line-height: 1.65; resize: vertical; }
.inquiry-form :is(input, select, textarea), .inquiry-errors { scroll-margin-top: calc(var(--header-height) + 24px); }
.inquiry-form :is(input, textarea)::placeholder { color: #a9bfd4; opacity: 1; }
.inquiry-form :is(input, select, textarea):focus-visible { outline: 2px solid #8be9ff; outline-offset: 3px; border-color: #8be9ff; box-shadow: 0 0 18px #00c8f817; }
.inquiry-form select option { background: #0a244b; color: white; }
.inquiry-services { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.inquiry-services label { min-width: 0; min-height: 68px; padding: 12px; border: 1px solid var(--tx-line); border-radius: 8px; background: var(--panel-card-fill); color: #d3e0ef; cursor: pointer; transition: background .18s ease, border-color .18s ease; }
.inquiry-services label:has(input:checked) { border-color: #8be9ff; background: #12628380; box-shadow: inset 3px 0 #8be9ff; color: white; }
.inquiry-services label:has(input:focus-visible) { outline: 2px solid #8be9ff; outline-offset: 3px; }
.inquiry-services input { margin: 0; }
.inquiry-services label:hover { border-color: #8be9ff; }
.inquiry-help { margin: 8px 0; color: #bad0e5 !important; font-size: .875rem; line-height: 1.6; }
.inquiry-summary-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px 16px; margin-top: 8px; }
.inquiry-summary-meta .inquiry-help { margin: 0; }
.inquiry-counter { margin-left: auto; color: #bad0e5; font-size: .85rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.inquiry-form .inquiry-consent { align-items: flex-start; min-height: 48px; font-size: .9375rem; line-height: 1.6; }
.inquiry-consent input { margin-top: 4px; }
.inquiry-form [aria-invalid="true"] { border-color: #ffb6ae !important; }
.inquiry-error { display: block; margin: 7px 0 0; color: #ffb6ae; font-size: .875rem; }
.inquiry-error:empty { display: none; }
.inquiry-errors { margin: 0 0 24px; padding: 16px 18px; border: 1px solid #ffb6ae; border-radius: 8px; background: #57292e60; }
.inquiry-errors p { margin: 0 0 8px; color: #ffe3df; }
.inquiry-errors ul { padding-left: 20px; margin: 0; }
.inquiry-errors a { display: inline-block; padding-block: 4px; color: #ffe3df; }
.inquiry-availability { padding: 16px 18px; margin-bottom: 24px; border-left: 3px solid #92e8ff; border-radius: 0 8px 8px 0; background: var(--panel-control-fill); }
.inquiry-availability p { margin: 0; font-size: .9375rem; line-height: 1.65; }
.inquiry-availability[data-state="ready"] { border-color: #8ae8be; }
.inquiry-sidebar { padding: 24px; }
.inquiry-sidebar h3 { line-height: 1.5; }
.inquiry-sidebar p { font-size: .9375rem; line-height: 1.7; }
.inquiry-sidebar ol { padding-left: 20px; color: #d3e0ef; font-size: .9375rem; line-height: 1.7; }
.inquiry-sidebar li + li { margin-top: 12px; }
.inquiry-form .inquiry-actions { margin-top: 24px; align-items: stretch; }
.inquiry-form .inquiry-submit { min-height: 52px; padding: 12px 24px; border-color: #75dfff; background: linear-gradient(120deg, #147d9c, #144f87); color: white; font-weight: 600; }
.inquiry-form .inquiry-submit:hover:enabled { background: #136c91; box-shadow: 0 0 20px #00c8f826; }
.inquiry-form button:disabled { cursor: not-allowed; opacity: .6; }
.inquiry-result { min-height: 3em; margin-bottom: 0; line-height: 1.7; overflow-wrap: anywhere; }
.inquiry-result[data-state="sent"] { color: #a1f0c8 !important; }
.inquiry-result[data-state="error"] { color: #ffcbc5 !important; }
.inquiry-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 1000px) {
  .inquiry-layout { grid-template-columns: minmax(0, 1fr); }
  .inquiry-sidebar { display: none; }
}
@media (max-width: 600px) {
  .inquiry-fields, .inquiry-services { grid-template-columns: minmax(0, 1fr); }
  .inquiry-form .inquiry-actions { flex-direction: column; }
  .inquiry-form .inquiry-actions button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .inquiry-form :is(input, select, textarea), .inquiry-services label { transition: none; }
}
.attachment-drop { display: grid; justify-items: center; gap: 10px; padding: 30px 22px; border: 1px dashed #9ddcff77; border-radius: 12px; background: linear-gradient(130deg,#10375966,#1d245b55); text-align: center; transition: border-color .2s, background .2s; }
.attachment-drop p { margin: 0; color: #b9d0e9; }
.attachment-drop strong { font: 500 1.2rem var(--display); }
.attachment-symbol { font-size: 2rem; color: #9ae3ff; }
.attachment-drop button, .attachment-list button { min-height: 44px; padding: 9px 18px; border: 1px solid #9de3ff77; border-radius: 6px; background: #123c62; color: #e2f6ff; }
.attachment-drop.is-dragging { border-color: #b2edff; background: #19537c88; }
.attachment-drop[aria-disabled='true'] { border-color: #a8c3e344; }
.attachment-drop button:disabled { opacity: .6; cursor: default; }
.attachment-list { list-style: none; padding: 0; margin: 14px 0; }
.attachment-list li { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 10px 0; border-bottom: 1px solid #b8d8ff22; }
.attachment-list li span { overflow-wrap: anywhere; min-width: 0; color: #cfe2f7; }
.attachment-list button { flex: 0 0 auto; font-size: .85rem; }
[data-attachments-status][data-state='error'] { color: #ffc5c5; }
@media (max-width:400px) { .attachment-drop { padding-inline: 14px; }.attachment-list li { align-items: start; flex-direction: column; } }
@media (prefers-reduced-motion:reduce) { .attachment-drop { transition: none; } }
