.contact-hero {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-8);align-items:center;}
.contact-hero-content {max-width:640px;}
.contact-hero-lead {font-size:var(--font-size-lg);color:var(--color-text-muted);margin-top:var(--space-3);}
.contact-hero-actions {display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5);}
.contact-hero-meta {display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-top:var(--space-5);}
.contact-hero-media-inner {padding:var(--space-5);display:flex;flex-direction:column;justify-content:space-between;min-height:260px;}
.contact-hero-media-badges {display:flex;flex-wrap:wrap;gap:var(--space-2);}
.contact-hero-media-text {max-width:30rem;margin-top:var(--space-5);color:var(--color-text-muted);font-size:var(--font-size-sm);}

.contact-layout {display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1.4fr);gap:var(--space-8);align-items:flex-start;}
.contact-main {min-width:0;}
.contact-side {display:flex;flex-direction:column;gap:var(--space-4);}

.contact-form {margin-top:var(--space-5);}
.contact-form-grid {margin-top:var(--space-4);}
.contact-form-field {margin-top:var(--space-4);}
.contact-form-footer {margin-top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);}
.contact-form-note {font-size:var(--font-size-sm);}
.contact-consent {margin-top:var(--space-2);}
.contact-consent-label {display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--gray-700);}
.contact-consent-label input[type="checkbox"] {margin-top:0.2rem;}
.contact-consent-label a {text-decoration:underline;text-decoration-thickness:1px;}

.contact-form-alert {margin-top:var(--space-4);}

.contact-side-block h3 {margin-bottom:var(--space-2);}
.contact-side-block p {margin-bottom:var(--space-3);}
.contact-list {margin:0;padding:0;}
.contact-list-item {margin-top:var(--space-3);}
.contact-list-item:first-of-type {margin-top:0;}
.contact-list-item dt {font-size:var(--font-size-xs);letter-spacing:0.12em;text-transform:uppercase;color:var(--gray-500);margin-bottom:0.15rem;}
.contact-list-item dd {margin:0;font-size:var(--font-size-sm);color:var(--gray-700);}

@media (max-width:1024px){
  .contact-layout {grid-template-columns:minmax(0,1fr);} 
  .contact-side {order:-1;}
}

@media (max-width:900px){
  .contact-hero {grid-template-columns:minmax(0,1fr);} 
  .contact-hero-media {margin-top:var(--space-6);} 
}

@media (max-width:640px){
  .contact-hero-actions {flex-direction:column;align-items:stretch;} 
  .contact-form {padding:var(--space-4);} 
}
