.inquiry { padding-bottom: 100px; }
.inquiry h3 { font-size: 30px; font-weight: 700; text-align: center; margin-bottom: 24px; }
.inquiry-intro { text-align: center; font-size: 16px; line-height: 2; margin-bottom: 48px; }
.inquiry-intro span { display: block; }
.inquiry-row { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 32px; align-items: start; padding: 32px 0; border-top: 1px solid #ddd; }
.inquiry-row label { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 16px; font-weight: 700; padding-top: 12px; }
.inquiry-row label span { flex-shrink: 0; font-size: 13px; padding: 3px 10px; border-radius: 4px; }
.inquiry .required { background: #fabf02; color: #191c1c; }
.inquiry .optional { background: #eee; color: #555; }
.inquiry input, .inquiry select, .inquiry textarea { box-sizing: border-box; width: 100%; min-width: 0; border: 1px solid #ccc; border-radius: 6px; background: #fffdf8; color: #191c1c; font: inherit; font-size: 16px; line-height: 1.6; padding: 14px 16px; }
.inquiry select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: 48px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%23191c1c' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 16px 16px;
}
.inquiry textarea { resize: vertical; min-height: 200px; }
.inquiry :is(input, select, textarea):focus-visible { outline: 2px solid #ff8328; outline-offset: 3px; }
.inquiry-status { margin: 32px 0 20px; text-align: center; font-size: 14px; line-height: 1.8; }
.inquiry-submit { display: block; width: min(100%, 360px); margin: auto; border: 0; border-radius: 8px; padding: 20px; font: inherit; font-weight: 700; background: #333; color: #fff; }
.inquiry-submit:disabled { background: #666; cursor: not-allowed; }
@media (max-width: 750px) {
 .inquiry { padding-bottom: 64px; }
 .inquiry h3 { font-size: 24px; }
 .inquiry-row { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 24px 0; }
 .inquiry-row label { padding-top: 0; justify-content: flex-start; }
}
