/* CONTACT V4 — Corporate Editorial Alignment */

/* Two equal-height columns */
.contact-grid {
  display:grid !important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.32fr) !important;
  align-items:stretch !important;
  gap:24px !important;
}

.contact-grid > .card {
  height:100% !important;
  box-sizing:border-box !important;
  min-width:0 !important;
}

/* Left card: compact editorial typography */
.contact-grid .info-card {
  display:flex !important;
  flex-direction:column !important;
  padding:25px 29px !important;
  font-family:Arial,Helvetica,sans-serif !important;
}

.info-card .info-mark {
  width:42px !important;
  height:42px !important;
  font-size:18px !important;
  margin-bottom:13px !important;
}

.info-card h2 {
  font-family:Georgia,serif !important;
  font-size:clamp(25px,2.4vw,32px) !important;
  line-height:1.1 !important;
  letter-spacing:-.7px !important;
  margin:0 0 12px !important;
  padding:0 0 12px !important;
}

.info-card .line {
  margin:10px 0 14px !important;
}

.info-card p {
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1.48 !important;
  color:#2d4357 !important;
  margin:0 0 12px !important;
}

.info-card p b {
  font-size:14px !important;
  font-weight:800 !important;
  color:#091e34 !important;
}

.info-card .phone-row {
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin:8px 0 10px !important;
}

.info-card .phone-num {
  font-family:Arial,Helvetica,sans-serif !important;
  font-size:23px !important;
  font-weight:800 !important;
  letter-spacing:-.6px !important;
  color:#091e34 !important;
}

/* Network showcase fills remaining space */
.info-card .gb-contact-showcase {
  margin-top:auto !important;
  padding:20px 19px !important;
  border-radius:6px !important;
}

.gb-showcase-eyebrow {
  font-size:10px !important;
  letter-spacing:1.4px !important;
  margin-bottom:9px !important;
}

.gb-showcase-heading {
  font-family:Georgia,serif !important;
  font-size:25px !important;
  line-height:1.12 !important;
  margin-bottom:15px !important;
}

.gb-showcase-metrics {
  gap:8px !important;
  margin-bottom:12px !important;
}

.gb-showcase-metrics > div {
  padding:10px 8px !important;
}

.gb-showcase-metrics strong {
  font-size:23px !important;
}

.gb-showcase-metrics span {
  font-size:10px !important;
}

.gb-contact-showcase p {
  font-size:12px !important;
  line-height:1.45 !important;
  margin-bottom:14px !important;
}

.gb-showcase-link {
  padding:12px !important;
  font-size:11px !important;
}

/* Right form: consistent corporate proportions */
.contact-grid .form-card {
  padding:25px 29px !important;
}

.form-card h2 {
  font-size:clamp(27px,2.5vw,34px) !important;
  line-height:1.12 !important;
}

.form-card .form-title {
  margin-bottom:18px !important;
}

.form-card form label {
  font-size:12px !important;
  margin-bottom:6px !important;
}

.form-card form input,
.form-card form textarea {
  font-size:14px !important;
  padding:12px 14px !important;
}

.form-card form textarea {
  min-height:125px !important;
}

.form-card .form-grid {
  gap:14px 18px !important;
}

.form-card .captcha-row {
  gap:14px !important;
}

/* Responsive: natural heights when stacked */
@media(max-width:850px) {
  .contact-grid {
    grid-template-columns:1fr !important;
    align-items:start !important;
  }

  .contact-grid > .card {
    height:auto !important;
  }

  .info-card .gb-contact-showcase {
    margin-top:18px !important;
  }
}

@media(max-width:600px) {
  .contact-grid .info-card,
  .contact-grid .form-card {
    padding:20px !important;
  }
}
