
.contact-page-hero { padding: calc(var(--spacing-4xl) + 5rem) var(--spacing-xl) var(--spacing-3xl); background: var(--color-surface-tint); }
.contact-page-hero-inner, .contact-page-grid, .contact-page-responsible-inner { width: 100%; max-width: var(--content-max-width); margin: 0 auto; }
.contact-page-hero-inner { max-width: 58rem; text-align: center; }
.contact-page-section { padding: var(--spacing-4xl) var(--spacing-xl); background: var(--color-surface); }
.contact-page-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: var(--spacing-3xl); align-items: start; }
.contact-page-copy { min-width: 0; }
.contact-detail-list { display: grid; gap: var(--spacing-sm); margin-top: var(--spacing-xl); }
.contact-detail-card { display: flex; gap: .35rem; flex-direction: column; padding: var(--spacing-md); background: var(--color-surface-tint); border: 1px solid var(--color-outline); border-radius: var(--border-radius-md); }
.contact-detail-card span { color: var(--color-on-surface-secondary); font-size: var(--font-size-xs); text-transform: uppercase; letter-spacing: .08em; }
.contact-detail-card a { color: var(--color-primary); overflow-wrap: anywhere; }
.contact-page-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--spacing-md); padding: var(--spacing-xl); }
.form-field { display: flex; gap: .4rem; flex-direction: column; }
.form-field-full { grid-column: 1 / -1; }
.form-field label { font-weight: 600; font-size: var(--font-size-sm); }
.form-field input, .form-field textarea, .form-field select { width: 100%; min-width: 0; border: 1px solid var(--color-outline); border-radius: var(--border-radius-sm); padding: .85rem 1rem; color: var(--color-on-surface); background: #fff; font: inherit; }
.contact-page-responsible { padding: var(--spacing-3xl) var(--spacing-xl); background: var(--color-surface-tint); }
.contact-page-responsible-inner { max-width: 58rem; }
@media (max-width: 767px) { .contact-page-hero { padding-top: calc(var(--spacing-3xl) + 4rem); } .contact-page-grid { grid-template-columns: 1fr; gap: var(--spacing-xl); } .contact-page-form { grid-template-columns: 1fr; padding: var(--spacing-lg); } .form-field-full { grid-column: auto; } }
