.contact-page .page-header { padding: 40px 0; background: #112033; }
.contact-page .page-header h1 { color: white; font-size: 2rem; }
.contact-page .contact { padding: 50px 0 80px !important; }
.contact-page .contact-grid { gap: 60px; grid-template-columns: 1.15fr 1fr; }
.contact-page .contact-form h2 { font-size: 1.55rem; margin-bottom: 16px; }
.contact-page .contact-form { padding: 32px; }
.contact-page .contact-info h3 { font-size: 1.3rem; }
.contact-page .form-group label { font-size: .9rem; }
.contact-page .form-group input, .contact-page .form-group textarea { font-family: inherit; }
.contact-page .form-group input:focus, .contact-page .form-group textarea:focus { outline: 2px solid #087b78; outline-offset: 2px; }
.contact-page .contact-info a[href^="mailto:"] { color: #087b78 !important; text-decoration: underline; text-underline-offset: 4px; }
.contact-privacy { font-size: .78rem; line-height: 1.6; }
.contact-privacy a, .contact-back { color: #087b78; text-decoration: underline; text-underline-offset: 3px; }
.contact-hints { list-style: disc; padding-left: 20px; margin: 0 0 16px; color: #526173; }
#product-contact-hint { background: #eaf4f1; border-radius: 8px; padding: 24px; margin: 24px 0 32px; }
#product-contact-hint[hidden] { display: none; }
#product-contact-hint h3 { font-size: 1.1rem; margin-bottom: 14px; }
#product-contact-hint p, #product-contact-hint li, .contact-back { font-size: .9rem; }
.contact-status { padding: 18px; border-radius: 8px; margin-bottom: 22px; }
.contact-status-success { background: #e4f5eb; color: #185b38; }
.contact-status-error { background: #fff0f0; color: #952727; }
@media (max-width: 800px) {
  .contact-page .contact-grid { grid-template-columns: 1fr; gap: 35px; }
  .contact-page .contact-form { padding: 24px; }
}
