/* =========================================================
   CONTACT.HTML — page-specific styles (prefix: contact_)
   ========================================================= */

.contact_form-card{ background:var(--surface); }
.contact_form-title{ font-size:20px; margin-bottom:26px; }
.contact_label{  font-size:16px; color:var(--text-2); margin-bottom:6px; display:block; }
.contact_label span{ color:var(--pink); }
.contact_input{
  background:var(--bg-alt)!important; border:1px solid var(--border-strong)!important;
  color:var(--text-1)!important; border-radius:var(--radius-sm)!important; padding:12px 16px!important;
  font-size:14.5px!important;
}
.contact_input:focus{ border-color:var(--violet)!important; box-shadow:0 0 0 3px rgba(139,92,246,.2)!important; }
.contact_input.is-invalid{ border-color:var(--pink)!important; }
.contact_input::placeholder{ color:var(--text-3); }

.contact_info-photo{ height:180px; }
.contact_info-list{ display:flex; flex-direction:column; gap:22px; }
.contact_info-item{ display:flex; gap:16px; align-items:flex-start; }
.contact_info-item i{
  width:44px; height:44px; border-radius:12px; background:var(--surface); border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center; font-size:18px; color:var(--violet); flex-shrink:0;
}
.contact_info-item h6{ font-size:18px; color:var(--text-1); margin-bottom:4px; }
.contact_info-item p{ font-size:18px; color:var(--text-2); }
.contact_info-item a{ color:var(--text-2); }
.contact_info-item a:hover{ color:var(--violet); }

.contact_map{ border-radius:var(--radius-md); overflow:hidden; border:1px solid var(--border); filter:grayscale(.2) invert(.92) contrast(.9); }

.contact_checklist-item{ text-align:center; }
.contact_checklist-item i{ font-size:26px; color:var(--violet); margin-bottom:16px; display:block; }
.contact_checklist-item h5{ font-size:20px; margin-bottom:8px; }
.contact_checklist-item p{ font-size:16px; color:var(--text-3); }
