/* Page-scoped Phase 7 layer. Native controls, no effects or global component overrides. */
@layer components {
	/* The usual scroll state is JS-driven. Keep this light-surface page's logo
	 * readable even when that script never runs; enhanced scrolled styling stays intact. */
	.page-template-start-a-project .site-header:not(.is-scrolled)::before { background: var(--fg-dark-background); }
	.enquiry-intro { padding-block: var(--fg-space-7) 0; }
	.enquiry-eyebrow { font-size: var(--fg-font-size-xs); text-transform: uppercase; letter-spacing: var(--fg-letter-spacing-meta); color: var(--fg-color-text-muted); display: flex; align-items: center; gap: var(--fg-space-3); }
	.enquiry-eyebrow::before { content: ""; inline-size: 1.75rem; block-size: 1px; background: var(--fg-brand-primary); }
	.enquiry-intro__grid { display: grid; gap: var(--fg-space-5); padding-block: var(--fg-space-5) var(--fg-space-7); }
	.enquiry-intro h1 { max-inline-size: 15ch; font-size: clamp(2.75rem, 4.5vw, 4.5rem); letter-spacing: var(--fg-letter-spacing-display); }
	.enquiry-intro__grid > p { max-inline-size: 45ch; color: var(--fg-dark-text-secondary); font-size: var(--fg-font-size-lg); align-self: end; }
	.enquiry-rule { block-size: 1px; background: var(--fg-dark-border); }
	.enquiry-rule span { display: block; inline-size: 27%; block-size: 1px; background: var(--fg-brand-primary); }
	.enquiry-surface { background: var(--fg-light-background); color: var(--fg-light-text-primary); padding-block: var(--fg-section-space-compact); }
	.enquiry-layout { display: grid; gap: var(--fg-space-7); align-items: start; }
	.enquiry-context h2 { font-size: clamp(2rem, 2.8vw, 2.75rem); max-inline-size: 15ch; }
	.enquiry-steps { list-style: none; padding: 0; margin: var(--fg-space-6) 0; counter-reset: enquiry-steps; }
	.enquiry-steps li { display: flex; gap: var(--fg-space-4); align-items: baseline; padding-block: var(--fg-space-3); border-block-start: 1px solid var(--fg-light-border); font-size: var(--fg-font-size-sm); }
	.enquiry-steps li::before { counter-increment: enquiry-steps; content: "0" counter(enquiry-steps); font-family: var(--fg-font-mono); font-size: var(--fg-font-size-xs); color: var(--fg-brand-primary); }
	.enquiry-contact { font-size: var(--fg-font-size-sm); color: var(--fg-light-text-secondary); }
	.enquiry-contact a { margin-block-start: var(--fg-space-2); color: var(--fg-light-text-primary); }
	.enquiry-working, .enquiry-field { min-inline-size: 0; }
	.enquiry-required, .enquiry-help, .enquiry-privacy { font-size: var(--fg-font-size-sm); color: var(--fg-light-text-secondary); }
	.enquiry-required { max-inline-size: none; padding-block-end: var(--fg-space-5); border-block-end: 1px solid var(--fg-light-border-strong); margin-block-end: var(--fg-space-5); }
	.enquiry-fields { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--fg-space-5); border: 0; margin: 0; padding: 0; min-inline-size: 0; }
	.enquiry-field label { display: flex; flex-wrap: wrap; gap: var(--fg-space-2); align-items: baseline; font-size: var(--fg-font-size-sm); font-weight: var(--fg-font-weight-medium); margin-block-end: var(--fg-space-2); }
	.enquiry-optional { color: var(--fg-light-text-secondary); font-size: var(--fg-font-size-xs); font-weight: var(--fg-font-weight-regular); }
	.enquiry-field input, .enquiry-field select, .enquiry-field textarea { display: block; inline-size: 100%; min-inline-size: 0; max-inline-size: 100%; min-block-size: 3.25rem; border: 1px solid #8a8790; border-radius: var(--fg-radius-xs); padding: 0.75rem 0.875rem; background: var(--fg-light-surface-elevated); color: var(--fg-light-text-primary); font: inherit; font-size: 1rem; line-height: 1.5; transition: border-color var(--fg-duration-fast) var(--fg-easing-standard); }
	.enquiry-field textarea { resize: vertical; min-block-size: 11rem; }
	.enquiry-field select { padding-inline-end: 1.5rem; }
	.enquiry-field input::placeholder { color: var(--fg-light-text-secondary); opacity: 1; }
	.enquiry-field :is(input, select, textarea):hover { border-color: var(--fg-light-text-secondary); }
	.enquiry-field :is(input, select, textarea):focus-visible { outline: 2px solid var(--fg-brand-primary); outline-offset: 3px; border-color: var(--fg-brand-primary); }
	.enquiry-field input[type="file"] { padding: 0.5rem; overflow: hidden; }
	.enquiry-field input::file-selector-button { border: 0; border-inline-end: 1px solid var(--fg-light-border-strong); border-radius: 0; padding: 0.375rem 0.75rem 0.375rem 0.25rem; margin-inline-end: 0.75rem; color: var(--fg-light-text-primary); background: transparent; font: inherit; font-weight: var(--fg-font-weight-medium); cursor: pointer; }
	.enquiry-help, .enquiry-error { margin-block-start: var(--fg-space-2); }
	.enquiry-error { color: #a02e37; font-size: var(--fg-font-size-sm); font-weight: var(--fg-font-weight-medium); }
	.enquiry-field [aria-invalid="true"] { border: 2px solid #a02e37; }
	.enquiry-submit { margin-block-start: var(--fg-space-6); padding-block-start: var(--fg-space-5); border-block-start: 1px solid var(--fg-light-border-strong); display: grid; gap: var(--fg-space-5); justify-items: start; }
	.enquiry-privacy { max-inline-size: 58ch; }
	.enquiry-submit .fg-button { min-block-size: 3.25rem; }
	.enquiry-submit button:disabled { cursor: progress; }
	.enquiry-feedback { padding-block: var(--fg-space-5); border-block-start: 2px solid var(--fg-brand-primary); scroll-margin-block-start: 7rem; }
	.enquiry-feedback:focus { outline: 2px solid var(--fg-brand-primary); outline-offset: 8px; }
	.enquiry-feedback h2 { font-size: var(--fg-font-size-xl); max-inline-size: 24ch; margin-block-end: var(--fg-space-4); }
	.enquiry-feedback > p { margin-block-end: var(--fg-space-4); }
	.enquiry-feedback--error { margin-block-end: var(--fg-space-6); border-color: #a02e37; }
	.enquiry-feedback--error h2 { font-size: var(--fg-font-size-lg); }
	.enquiry-feedback ul { padding-inline-start: 1.25rem; margin-block: var(--fg-space-4); font-size: var(--fg-font-size-sm); }
	.enquiry-feedback li + li { margin-block-start: var(--fg-space-2); }
	.enquiry-feedback--success { padding-block: var(--fg-space-6); }
	.enquiry-feedback--success h2 { margin-block-start: var(--fg-space-6); }
	.enquiry-reference { display: grid; gap: var(--fg-space-2); margin-block: var(--fg-space-6); font-size: var(--fg-font-size-sm); }
	.enquiry-reference strong { font-family: var(--fg-font-mono); color: var(--fg-brand-primary); font-weight: 400; }
	.enquiry-field :is(input, select, textarea) { scroll-margin-block-start: 8rem; }
	@media (min-width: 40rem) { .enquiry-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } .enquiry-field--wide { grid-column: 1 / -1; } }
	@media (min-width: 64rem) {
		.enquiry-intro { padding-block-start: var(--fg-space-8); }
		.enquiry-intro__grid { grid-template-columns: 1.2fr 1fr; gap: var(--fg-space-9); padding-block-end: var(--fg-space-8); }
		.enquiry-layout { grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.5fr); gap: clamp(3rem, 7vw, 7rem); }
		.enquiry-contact { margin-block-start: var(--fg-space-7); }
	}
	@media (max-width: 39.999rem) { .enquiry-submit .fg-button { inline-size: 100%; justify-content: space-between; } }
	@media (prefers-reduced-motion: reduce) { .enquiry-field :is(input, select, textarea) { transition: none; } }
}
