

/* =========================================
   CONTACT PAGE LAYOUT OVERRIDES
   ========================================= */

/* Center page heading */
body.contact-page .main_heading {
  text-align: center;
  margin: 2.5rem auto 1.5rem;
}

body.contact-page .main_heading h1 {
  font-size: 2.3rem;
  letter-spacing: 0.06em;
  text-transform: capitalize;
  color: #05233b;
}

/* Wraps with max-width and centered */
body.contact-page .top2 {
  max-width: 1120px;
  margin: 0 auto 2.5rem;
  padding: 0 24px;
}

/* ========== CONTACT INFO CARDS ROW ========== */

body.contact-page .contact-info-row {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 96px;
  text-align: center;
}

/* kill old float layout for the cards */
body.contact-page .contact-info-row .col_sm3 {
  float: none !important;
  width: auto !important;
}

/* card look */
body.contact-page .contact-card {
  min-width: 210px;
}

/* icons */
body.contact-page .contact-card .con_icon img {
  width: 96px;
  height: 96px;
  object-fit: contain;
  display: block;
  margin: 0 auto 12px;
}

/* text */
body.contact-page .contact-card .c_txt {
  margin: 4px 0 0;
  font-size: 0.95rem;
  line-height: 1.7;
  color: #12212f;
}

body.contact-page .contact-card .c_txt span {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
}

/* ========== CONTACT FORM BLOCK ========== */

body.contact-page .c_col_sm8 {
  max-width: 1120px;
  margin: 0 auto 4rem;
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 18px 40px rgba(10, 37, 64, 0.08);
  padding: 32px 40px 36px;
}

body.contact-page .con_main_head {
  font-size: 1.4rem;
  margin-bottom: 20px;
  color: #05233b;
}

/* two-column fields */
body.contact-page fieldset2 {
  display: flex;
  gap: 18px;
  margin-bottom: 16px;
}

body.contact-page fieldset2 input,
body.contact-page fieldset2 textarea {
  flex: 1 1 0;
}

/* center submit button */
body.contact-page #contact-submit {
  display: inline-block;
  margin: 8px auto 0;
}
/* =========================================
   CONTACT PAGE – PERFECT CENTER ALIGNMENT
   ========================================= */

/* Page heading center */
body.contact-page .main_heading {
  text-align: center;
  margin: 2.5rem auto 1.5rem;
}

body.contact-page .main_heading h1 {
  font-size: 2.3rem;
  letter-spacing: 0.06em;
  color: #05233b;
}

/* Main wrapper */
body.contact-page .top2 {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 20px;
}

/* ================= CONTACT INFO CARDS ================= */

body.contact-page .contact-info-row {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 80px;
  text-align: center;
  margin: 0 auto 3rem;
  width: 100%;
}

/* remove floats completely */
body.contact-page .contact-info-row .col_sm3 {
  float: none !important;
  width: auto !important;
}

/* card */
body.contact-page .contact-card {
  min-width: 220px;
}

/* icons */
body.contact-page .contact-card .con_icon img {
  width: 90px;
  height: auto;
  margin: 0 auto 12px;
  display: block;
}

/* text */
body.contact-page .contact-card .c_txt {
  font-size: 0.95rem;
  line-height: 1.7;
  color: #12212f;
}

/* ================= CONTACT FORM ================= */

body.contact-page .c_col_sm8 {
  max-width: 900px;
  margin: 0 auto 4rem;
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 18px 40px rgba(10, 37, 64, 0.08);
  padding: 32px 28px 36px;
}

/* form heading */
body.contact-page .con_main_head {
  text-align: center;
  font-size: 1.4rem;
  margin-bottom: 22px;
  color: #05233b;
}

/* two column fields */
body.contact-page fieldset2 {
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
}

body.contact-page fieldset2 input,
body.contact-page fieldset2 textarea {
  flex: 1;
}

/* submit button center */
body.contact-page #contact-submit {
  display: block;
  margin: 12px auto 0;
}

/* ================= MOBILE FIX ================= */

@media (max-width: 768px) {
  body.contact-page .contact-info-row {
    flex-direction: column;
    gap: 36px;
  }

  body.contact-page fieldset2 {
    flex-direction: column;
  }

  body.contact-page .contact-card {
    min-width: 100%;
  }
}
