/* Scoped to the project inquiry page. */
.inquiry-hero { position: relative; isolation: isolate; padding-block: clamp(2.5rem, 6vw, 5rem); background: #e7ecea; }
.inquiry-hero-background { position: absolute; inset: 0; overflow: hidden; pointer-events: none; background: linear-gradient(135deg, #f7f9f8, #d9e3e4); }
.inquiry-hero-background img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.inquiry-hero::after { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, #e7ecea 0%, rgb(231 236 234 / 80%) 8%, transparent 30%), linear-gradient(90deg, rgb(247 249 248 / 60%), rgb(247 249 248 / 35%) 35%, transparent 65%); }
.inquiry-hero > .container { position: relative; z-index: 1; }
@media (max-width: 800px) { .inquiry-hero::after { background: linear-gradient(180deg, #e7ecea 0%, rgb(231 236 234 / 80%) 6%, transparent 24%), linear-gradient(90deg, rgb(247 249 248 / 65%), rgb(247 249 248 / 30%) 65%, transparent); } }
.inquiry-hero h1 { max-width: 800px; margin: 0; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.15; }
.inquiry-layout { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(240px, 1fr); gap: clamp(2rem, 5vw, 5rem); padding-block: clamp(2rem, 5vw, 4rem); }
.inquiry-layout > * { min-width: 0; }
.inquiry-layout h2 { font-size: clamp(1.4rem, 2.4vw, 2rem); }
.inquiry-layout p { color: var(--color-muted); }
.inquiry-form fieldset { min-width: 0; padding: 0; margin: 1.75rem 0; border: 0; }
.inquiry-form legend { margin-bottom: 1rem; font-size: 1.125rem; font-weight: 700; }
.inquiry-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.2rem; }
.inquiry-fields > div { min-width: 0; }
.inquiry-wide { grid-column: 1 / -1; }
.inquiry-fields label { display: block; margin-bottom: .4rem; font-size: .875rem; font-weight: 600; }
.inquiry-fields input, .inquiry-fields select, .inquiry-fields textarea { display: block; width: 100%; min-height: 44px; padding: .75rem; border: 1px solid var(--color-line); border-radius: var(--radius); background: white; color: var(--color-ink); font: inherit; }
.inquiry-fields textarea { resize: vertical; }
.inquiry-form [aria-invalid="true"] { border-color: #9d2424; }
.inquiry-form :focus-visible { outline: 2px solid var(--color-blue); outline-offset: 3px; }
.inquiry-required { font-size: .8125rem; }
.inquiry-privacy { display: flex; align-items: flex-start; gap: .75rem; margin: 1.5rem 0; font-size: .875rem; }
.inquiry-privacy input { flex: 0 0 auto; width: 20px; height: 20px; margin-top: .1rem; accent-color: var(--color-blue); }
.inquiry-privacy a, .inquiry-errors a { color: var(--color-blue); text-underline-offset: .15em; }
.inquiry-note { align-self: start; padding: 1.5rem; border-left: 3px solid var(--color-yellow); background: var(--color-paper); }
.inquiry-note h2 { font-size: 1.25rem; }
.inquiry-note p:last-child { margin-bottom: 0; }
.inquiry-errors, .inquiry-message { padding: 1rem 1.25rem; margin-block: 1.5rem; border-left: 3px solid var(--color-blue); background: var(--color-paper); }
.inquiry-errors ul { padding-left: 1.2rem; }
.inquiry-form .button:disabled { opacity: .6; cursor: not-allowed; }
@media (max-width: 900px) { .inquiry-layout { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .inquiry-fields { grid-template-columns: 1fr; } }
