/* Business inquiries: an inline form with a native-dialog enhancement. */
.inquiry-panel { margin: 48px auto 0; padding: clamp(24px, 4vw, 44px); max-width: 760px; background: var(--color-cream); color: var(--color-text); border: 1px solid #d6cbb2; border-radius: 12px; text-align: left; }
.inquiry-panel[hidden], .inquiry-panel [hidden] { display: none; }
.inquiry-heading { display: flex; justify-content: space-between; align-items: start; gap: 16px; margin-bottom: 18px; }
.inquiry-heading h2 { font-size: clamp(1.8rem, 4vw, 2.5rem); }
.inquiry-eyebrow { margin-bottom: 8px; color: var(--color-forest); font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; }
.inquiry-lede { font-size: .9rem; }
.inquiry-panel a { text-decoration: underline; text-underline-offset: 3px; }
.inquiry-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 28px; }
.inquiry-wide { grid-column: 1 / -1; }
.inquiry-field label { display: block; margin-bottom: 7px; font-size: .9rem; font-weight: 600; }
.inquiry-field label span, .inquiry-field small { font-size: .8rem; font-weight: 400; color: #595950; }
.inquiry-field small { display: block; margin-top: 6px; }
.inquiry-field input, .inquiry-field select, .inquiry-field textarea { width: 100%; min-height: 48px; border: 1px solid #9eaa9e; border-radius: 4px; padding: 12px; background: var(--color-warm-white); color: var(--color-text); font: inherit; }
.inquiry-field textarea { resize: vertical; min-height: 130px; }
.inquiry-panel :is(input, select, textarea, button):focus-visible { outline: 3px solid var(--color-forest); outline-offset: 3px; }
.inquiry-consent { display: flex; align-items: start; gap: 12px; font-size: .85rem; margin-top: 24px; }
.inquiry-consent input { width: 20px; height: 20px; flex-shrink: 0; accent-color: var(--color-forest); margin-top: 3px; }
.inquiry-privacy { font-size: .75rem; color: #595950; margin: 10px 0 24px; }
.inquiry-panel .inquiry-submit { background: var(--color-forest); color: var(--color-cream); border-color: var(--color-forest); font-size: .85rem; }
.inquiry-panel .inquiry-submit:disabled { opacity: .65; cursor: wait; }
.inquiry-status { padding: 14px; margin-bottom: 20px; border: 1px solid currentColor; border-radius: 4px; font-size: .9rem; }
.inquiry-status[data-state='error'] { color: #8a3027; background: #fff0ec; }
.inquiry-status[data-state='success'] { color: #244533; background: #e7efdf; }
.inquiry-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.inquiry-dialog { width: min(800px, calc(100% - 32px)); max-height: calc(100svh - 32px); margin: auto; padding: 0; border: 0; border-radius: 12px; color: var(--color-text); background: var(--color-cream); overscroll-behavior: contain; }
.inquiry-dialog::backdrop { background: #172b25b8; }
.inquiry-dialog .inquiry-panel { margin: 0; max-width: none; border: 0; }
.inquiry-close { flex-shrink: 0; width: 44px; height: 44px; background: transparent; border: 1px solid #9eaa9e; border-radius: 50%; font: inherit; font-size: 1.8rem; line-height: 1; cursor: pointer; color: var(--color-forest); }
html:has(.inquiry-dialog[open]) { overflow: hidden; }
@media (max-width: 700px) {
  .inquiry-fields { grid-template-columns: minmax(0, 1fr); }
  .inquiry-heading { gap: 8px; }
  .inquiry-eyebrow { max-width: 23ch; }
  .inquiry-submit { width: 100%; }
}
