.contact-shell{width:min(var(--reading-width),calc(100% - 2 * var(--layout-gutter)));margin-inline:auto;padding-bottom:var(--space-12);min-width:0}
.contact-intro{padding-block:var(--space-12)}
.contact-intro h1{font-size:clamp(2rem,6vw,5rem);line-height:var(--line-heading)}
.contact-intro p,.contact-help,.contact-privacy{color:var(--color-text-muted)}
.contact-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6)}
.contact-field{min-width:0}
.contact-field label{display:block;font-weight:600;margin-bottom:var(--space-2)}
.contact-field input,.contact-field textarea{width:100%;min-width:0;min-height:var(--touch-target);font:inherit;border:1px solid var(--color-control-border);border-radius:var(--radius-control);padding:var(--space-3);background:var(--color-surface);color:var(--color-text)}
.contact-help,.contact-privacy{font-size:var(--type-small)}
.contact-help:empty,.contact-field-errors:empty{display:none}
.contact-field-errors,.contact-error-summary{border-left:3px solid var(--color-accent);padding-left:var(--space-3)}
.contact-error-summary{padding:var(--space-4);background:var(--color-surface-raised);margin-bottom:var(--space-6)}
.contact-error-summary ul{padding-left:var(--space-5)}
.contact-error-summary a,.contact-link{display:inline-flex;align-items:center;min-height:var(--touch-target);color:var(--color-text);text-decoration-color:var(--color-accent);text-underline-offset:4px}
.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.contact-privacy{margin-block:var(--space-8)}
.contact-reference{overflow-wrap:anywhere;font-family:var(--font-mono)}
@media(min-width:600px){.contact-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-wide{grid-column:1/-1}}
@media(min-width:1000px){.contact-intro{padding-block:var(--space-16)}}
@media(forced-colors:active){.contact-field-errors,.contact-error-summary{border-color:CanvasText}}
