/* Inquiry composition. Field and button appearance stays in the shared controls. */
#inquiry-dialog { width:min(700px,calc(100% - 48px)); max-width:none; max-height:calc(100dvh - 48px); border:1px solid #536975; border-radius:10px; background:#101e27; color:#e7eef2; box-shadow:0 30px 110px #0009; }
#inquiry-dialog[open] { display:flex; flex-direction:column; overflow:hidden; }
#inquiry-dialog::backdrop { background:#030910c9; backdrop-filter:blur(9px); }
#inquiry-dialog .dialog-head { padding:26px 32px 24px; flex:0 0 auto; align-items:flex-start; border-bottom:0; background:linear-gradient(110deg,#1d303b,#12222d); }
#inquiry-dialog .dialog-head .eyebrow { color:#e9a274; font-size:10px; letter-spacing:.12em; margin-bottom:10px; }
#inquiry-dialog .dialog-head h2 { font-size:38px; line-height:1.08; }
#inquiry-intro { color:#b5c8d3; font-size:14px; line-height:1.6; margin-top:10px; }
#inquiry-dialog .dialog-close { flex-shrink:0; }
.wizard-progress { display:grid; grid-template-columns:1fr 1fr; flex:0 0 auto; list-style:none; margin:0; padding:0 32px; border-block:1px solid #354a57; background:#0e1b24; }
.wizard-progress li { display:flex; align-items:center; gap:12px; padding:15px 0; border-bottom:2px solid transparent; color:#829aa9; }
.wizard-progress li>b { display:grid; place-items:center; width:30px; height:30px; flex-shrink:0; border:1px solid #4f6673; border-radius:50%; font:11px/1 var(--font-mono); }
.wizard-progress strong { font-size:13px; font-weight:500; }
.wizard-progress small { display:block; font-size:11px; line-height:1.5; }
.wizard-progress .active { color:#d9e7ef; }
.wizard-progress .active>b { color:#f0af88; border-color:#bb825f; background:#e99b6c0d; }
.wizard-progress [aria-current="step"] { border-bottom-color:var(--accent); }
#inquiry-dialog .dialog-body { flex:1 1 auto; min-height:0; padding:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; scroll-padding-bottom:90px; }
#inquiry-form { min-width:0; padding:28px 32px 24px; }
.inquiry-kicker { margin:0 0 12px; color:#efad85; font:10px/1.6 var(--font-mono); letter-spacing:.09em; }
.inquiry-section-heading h3 { font-size:26px; line-height:1.15; margin:0; }
.inquiry-section-heading>p:not(.inquiry-kicker) { color:#a9becb; font-size:13px; line-height:1.6; margin:8px 0 20px; }
.wizard-context { margin-bottom:22px; border:1px solid #38505e; border-left:2px solid #e9a274; border-radius:4px; padding:13px 16px; background:#192e3a; color:#dbe7ee; font-size:13px; line-height:1.6; }
.inquiry-context-heading { color:#b2c5d0; font:10px/1.5 var(--font-mono); letter-spacing:.06em; margin-bottom:9px; }
.inquiry-context-list { display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.inquiry-context-list li { display:grid; grid-template-columns:72px minmax(0,1fr); align-items:center; gap:12px; }
.inquiry-context-list img { width:72px; height:64px; padding:4px; object-fit:contain; background:#edf0ee; border-radius:3px; }
.inquiry-context-list li+li { border-top:1px solid #39515f; padding-top:10px; }
.inquiry-context-list strong { font-size:15px; font-weight:500; }
.inquiry-context-list small { display:block; font-size:11px; color:#a9c0ce; margin-top:3px; }
.inquiry-context-note { margin:9px 0 0; color:#c4d5df; font-size:12px; }
.wizard-field { display:block; min-width:0; color:#d2dfe7; font-size:13px; line-height:1.6; margin-bottom:14px; }
.wizard-field .field-control { margin-top:7px; }
#inquiry-task { min-height:108px; max-height:320px; }
.inquiry-field-help { color:#9eb5c3; font-size:12px; line-height:1.6; margin:-5px 0 18px; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.inquiry-details { margin:20px 0 22px; border-block:1px solid #354a57; }
.inquiry-details>summary { gap:16px; padding:16px 0; min-height:64px; font-size:13px; color:#d9e7ed; }
.inquiry-details>summary strong { font-size:14px; font-weight:500; }
.inquiry-details>summary small { display:block; margin-top:3px; color:#a4b9c6; font-size:11px; line-height:1.5; }
.inquiry-optional { color:#a4b9c6; font-size:11px; }
.inquiry-details>summary:after { content:'+'; color:#efad85; font-size:22px; }
.inquiry-details[open]>summary:after { content:'−'; }
.inquiry-details-body { padding:12px 0 4px; }
.inquiry-contact-heading { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:12px; }
.inquiry-contact-heading h4,.inquiry-send-heading h4 { margin:0; font-size:15px; font-weight:500; }
.inquiry-contact-heading>span { color:#9eb5c3; font-size:11px; }
.inquiry-project-contact .inquiry-field-help { margin-bottom:0; }
.wizard-actions { position:sticky; bottom:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:18px; padding-block:14px; background:#101e27; box-shadow:0 -8px 16px #101e27; }
.inquiry-action-note { font-size:11px; line-height:1.6; color:#9eb5c3; }
#inquiry-dialog[data-step="2"] .inquiry-action-note { display:none; }
.wizard-actions .btn { flex-shrink:0; }
.inquiry-note { border-top:1px solid #354a57; margin-top:24px; padding-top:16px; display:flex; align-items:center; gap:20px; }
.inquiry-note p { flex:1; color:#9eb5c3; font-size:11px; line-height:1.7; }
.inquiry-note a,.inquiry-faq a { text-decoration:underline; text-underline-offset:3px; }
.inquiry-note button { flex:0 0 100px; --button-font:10px; --button-height:44px; --button-padding:6px 10px; --button-surface:transparent; }
.inquiry-letter-meta { margin:0; padding:16px 18px; background:#192e3a; border:1px solid #38505e; border-radius:4px 4px 0 0; }
.inquiry-letter-meta>div { display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; font-size:12px; line-height:1.6; }
.inquiry-letter-meta>div+div { margin-top:7px; }
.inquiry-letter-meta dt { color:#96b1c2; }
.inquiry-letter-meta dd { margin:0; color:#dbe8ef; overflow-wrap:anywhere; }
.request-preview { margin:0; padding:20px; border:1px solid #38505e; border-top:0; border-radius:0 0 4px 4px; background:#0a171f; color:#d3e1e9; white-space:pre-wrap; overflow-wrap:anywhere; font:13px/1.75 var(--font-body); user-select:text; }
.inquiry-send-heading { margin-top:24px; }
.inquiry-send-heading p { font-size:12px; line-height:1.6; color:#a9becb; margin-top:7px; }
.request-delivery { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; --button-font:12px; --button-padding:11px 14px; --button-gap:10px; }
.request-primary-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:100%; --button-font:12px; --button-padding:11px 14px; --button-gap:10px; }
.request-primary-actions>.btn { justify-content:center; text-align:center; }
.request-delivery>.text-link { width:100%; justify-content:center; --button-surface:transparent; }
.request-primary-actions .contact-icon { filter:brightness(.15); }
.inquiry-mobile-actions { flex:0 0 auto; padding:12px 16px max(12px,env(safe-area-inset-bottom)); border-top:1px solid #38505e; background:#142630; box-shadow:0 -6px 18px #07131b45; }
.inquiry-mobile-actions .request-primary-actions { gap:8px; --button-padding:10px 8px; --button-gap:6px; }
.wizard-footnote { margin-top:16px; border-left:2px solid #e9a274; padding-left:12px; color:#c8d8e1; font-size:12px; line-height:1.7; }
#copy-status { grid-column:1/-1; color:#b9dcc6; font-size:12px; line-height:1.6; margin:0; overflow-wrap:anywhere; }
#copy-status:empty { display:none; }
.inquiry-faq { margin-top:20px; border-color:#354a57; }
.inquiry-faq>summary { font-size:12px; min-height:48px; padding:12px 0; }
.inquiry-faq>div { padding:0 0 15px; }
.inquiry-faq p { color:#adc2ce; font-size:12px; line-height:1.8; }
.inquiry-faq p+p { margin-top:12px; }
#inquiry-form .form-error { padding:12px 14px; border:1px solid #a26650; border-radius:4px; background:#47261c50; line-height:1.6; }
@media(max-width:860px),(max-width:1000px) and (max-height:500px) {
  #inquiry-dialog[data-step="2"] .wizard-actions { position:static; padding-block:0; box-shadow:none; }
  #inquiry-dialog[data-step="2"] .dialog-body { scroll-padding-bottom:24px; }
}
@media(max-width:860px) {
  #inquiry-dialog { width:calc(100% - 24px); max-height:calc(100dvh - 24px); }
  #inquiry-dialog .dialog-head { padding:22px 24px; }
  #inquiry-dialog .dialog-head h2 { font-size:32px; }
  .wizard-progress { padding-inline:24px; }
  #inquiry-form { padding:24px; }
}
@media(max-width:600px) {
  #inquiry-dialog { width:calc(100% - 16px); max-height:calc(100dvh - 16px); border-radius:8px; }
  #inquiry-dialog .dialog-head { padding:20px 16px; gap:14px; }
  #inquiry-dialog .dialog-head h2 { font-size:29px; }
  #inquiry-dialog .dialog-head .eyebrow { font-size:9px; }
  #inquiry-intro { font-size:12px; line-height:1.6; }
  .wizard-progress { padding-inline:16px; gap:12px; }
  .wizard-progress li { padding:12px 0; gap:8px; }
  .wizard-progress li>b { width:24px; height:24px; font-size:9px; }
  .wizard-progress strong { font-size:11px; }
  .wizard-progress small { display:none; }
  #inquiry-form { padding:22px 16px; }
  .inquiry-section-heading h3 { font-size:24px; }
  .field-row { grid-template-columns:1fr; gap:0; }
  .wizard-context { padding:12px; }
  .inquiry-details>summary { gap:10px; }
  .inquiry-optional { display:none; }
  .inquiry-action-note { display:none; }
  .wizard-actions { flex-wrap:wrap; gap:12px; }
  .wizard-actions>.btn { width:100%; }
  .inquiry-note { gap:12px; align-items:flex-start; }
  .inquiry-note p { font-size:10px; }
  .inquiry-note button { flex-basis:90px; }
  .request-preview { padding:16px; font-size:13px; }
  .request-delivery { flex-direction:column; }
}
@media(max-height:600px) {
  #inquiry-dialog .dialog-head { padding-block:14px; }
  #inquiry-dialog .dialog-head h2 { font-size:28px; }
  #inquiry-intro { display:none; }
  .wizard-progress li { padding-block:9px; }
}
