/* ============ Contact page ============ */
.contact-hero{padding:80px 0 40px;}

.contact-grid{display:grid; grid-template-columns:1.5fr 1fr; gap:32px; margin-top:48px; align-items:start;}

.contact-form-card{background:var(--panel); border:1px solid var(--panel-line); border-radius:6px; padding:36px;}

.form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:0;}
.form-group{display:flex; flex-direction:column; gap:6px; margin-bottom:20px;}
.form-group label{font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint);}
.form-group input,.form-group select,.form-group textarea{background:var(--bg); border:1px solid var(--panel-line); border-radius:3px; padding:11px 13px; color:var(--text); font-family:inherit; font-size:14px;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none; border-color:var(--cyan);}
.form-group textarea{resize:vertical; min-height:80px;}

.contact-form-note{font-size:11.5px; color:var(--text-faint); margin-top:14px; text-align:center;}

.contact-info-card{background:var(--panel); border:1px solid var(--panel-line); border-radius:6px; padding:36px;}
.contact-info-card h3{font-size:20px; font-weight:600; margin-bottom:28px;}

.contact-method{display:flex; flex-direction:column; gap:4px; padding:16px 0; border-bottom:1px solid var(--panel-line);}
.contact-method:last-of-type{border-bottom:none;}
.contact-label{font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-faint);}
.contact-method a{color:var(--cyan); font-size:14px; text-decoration:none;}
.contact-method a:hover{text-decoration:underline;}

.contact-cta-alt{padding:24px 0 0; margin-top:8px;}
.contact-cta-alt p{font-size:13px; color:var(--text-faint);}

@media (max-width:720px){
  .contact-grid{grid-template-columns:1fr;}
  .form-row{grid-template-columns:1fr;}
}
