/* Contact Page Professional Classic Styles */
:root {
  --c-bg: #f5f7fa;
  --c-card-bg: #ffffff;
  --c-primary: #0b66d1;
  --c-primary-rgb: 11,102,209;
  --c-accent: #3b82f6;
  --c-text: #0d253e;
  --c-muted: #546271;
  --c-border: #d9e2ec;
  --c-radius-sm: 6px;
  --c-radius-md: 12px;
  --c-shadow-sm: 0 2px 4px -2px rgba(0,0,0,.08), 0 1px 3px rgba(0,0,0,.06);
  --c-shadow-lg: 0 10px 28px -8px rgba(0,0,0,.25);
  --c-focus-ring: 0 0 0 3px rgba(var(--c-primary-rgb), .35);
}

.contactus { padding: 8px 0 40px; }
.contact-layout { display: flex; flex-wrap: wrap; gap: 34px; align-items: stretch; }
.contact-layout > .contact-column { flex: 1 1 380px; min-width: 320px; display: flex; }

.contact-card {
  background: linear-gradient(135deg,#fff 0%,#f7fbff 100%);
  padding: 30px 30px 28px;
  border-radius: var(--c-radius-md);
  box-shadow: 0 6px 18px rgba(20,40,80,.08);
  border: 1px solid rgba(20,40,80,.06);
  font-family: system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,sans-serif;
  color: var(--c-text);
  width: 100%;
  display: flex;
  flex-direction: column;
}
.contact-card h2 { margin:0; font-size:12px; color:var(--c-accent); font-weight:700; letter-spacing:.6px; text-transform:uppercase; }
.contact-card h1 { margin:6px 0 18px; font-size:24px; color:#072146; line-height:1.2; }

.contact-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:row; flex-wrap:wrap; gap:18px 22px; }
.contact-list li { display:flex; align-items:flex-start; gap:14px; flex: 1 1 180px; min-width: 180px; }
.contact-list .icon { width:46px; height:46px; flex:0 0 46px; border-radius:10px; background:#eef7ff; color:var(--c-primary); display:inline-flex; align-items:center; justify-content:center; font-size:20px; box-shadow: var(--c-shadow-sm); }
.contact-list .text { line-height:1.35; color:var(--c-text); font-size:14px; }
.contact-list strong { display:block; font-size:12px; letter-spacing:.5px; text-transform:uppercase; color:var(--c-muted); margin-bottom:4px; }
.contact-list a { color: var(--c-primary); text-decoration:none; transition:.2s; }
.contact-list a:hover { text-decoration:underline; }

.contact-actions { margin-top: 22px; display:flex; gap:14px; flex-wrap:wrap; }
.btn-contact { display:inline-flex; align-items:center; gap:8px; padding:10px 16px; border-radius:10px; border:1px solid transparent; background:var(--c-primary); color:#fff; text-decoration:none; font-weight:600; font-size:14px; letter-spacing:.3px; box-shadow: var(--c-shadow-sm); transition:.3s cubic-bezier(.22,.7,.34,1); }
.btn-contact:hover { transform: translateY(-2px); box-shadow: var(--c-shadow-lg); }
.btn-contact:active { transform: translateY(0); }
.btn-contact:focus-visible { outline:none; box-shadow: var(--c-focus-ring), var(--c-shadow-sm); }
.btn-contact.btn-secondary { background:#fff; color:var(--c-primary); border:1px solid rgba(var(--c-primary-rgb), .25); }
.btn-contact.btn-secondary:hover { background: #eef7ff; }

/* Map wrapper */
.map-responsive { overflow:hidden; padding-bottom:56.25%; position:relative; height:0; border-radius: var(--c-radius-md); box-shadow: var(--c-shadow-sm); background:#000; }
.map-responsive iframe { left:0; top:0; height:100%; width:100%; position:absolute; border:0; border-radius: var(--c-radius-md); }

/* Responsive adjustments */
@media (max-width: 780px) {
  .contact-layout { gap:28px; }
  .contact-card { padding:26px 24px 24px; }
  .contact-card h1 { font-size:22px; }
}
@media (max-width:576px) {
  .contact-card { padding:22px 20px 20px; }
  .contact-card h1 { font-size:20px; }
  .contact-list { flex-direction:column; gap:16px; }
  .contact-list li { flex:1 1 auto; }
}

/* Focus utilities */
.contact-card a:focus-visible, .btn-contact:focus-visible { outline:none; box-shadow: var(--c-focus-ring); }
