/* Background INSIDE container */
.contact-3 .contact-bg {
  position: relative;
  background: var(--contact-bg) no-repeat center/cover;
  border-radius: 1rem;        
  overflow: hidden;           
  padding: 60px 40px;           
  color: #fff;
}
.contact-3 .contact-bg::before{
  content:"";
  position:absolute; inset:0;
  background: rgba(21, 40, 117, 0.85); /* deep blue overlay */
  z-index:0;
}
.contact-3 .contact-bg .row{ position: relative; z-index:1; }


.contact-3 .eyebrow{
  text-transform: uppercase;
  letter-spacing: .20em;
  font-weight: 600;
  font-size: 24px;
  opacity: .85;
  margin-bottom: .5rem;
  line-height: 1.8;
}
.contact-3 .hero-title{
  font-size: clamp(2rem, 3.4vw + 1rem, 3.25rem);
  line-height: 1.1;
  font-weight: 700;
  margin: 0 0 1rem;

  color: #fff;
}
.contact-3 .hero-title .accent{ color: var(--custom-deepyellow, #f2cc22); }
.contact-3 .lead-subtext{
  font-size: 1rem;
  opacity: .95;
  margin-bottom: 1.75rem;
}


.contact-3 .info-box{ background: transparent; padding: 0; }
.contact-3 .info-item{ display:flex; gap:1rem; align-items:center; margin-bottom:1rem; }
.contact-3 .info-item:last-child{ margin-bottom:0; }
.contact-3 .icon-box{
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--custom-deepyellow, #f2cc22);
  display:flex; align-items:center; justify-content:center;
  color: #0c1a54;
  box-shadow: 0 8px 18px rgba(0,0,0,.25);
  flex-shrink: 0;
}
.contact-3 .icon-box i{ font-size: 18px; }


.contact-3 .contact-form{ background: transparent; padding: 0; box-shadow: none; }


.contact-3 .form-label-top{
  display:block;
  color:#fff;
  font-weight:700;
  margin-bottom:.35rem;
}


.contact-3 .form-control, 
.contact-3 .form-select{
  background: #fff;
  color: #1f2a37;
  border: none;
  border-radius: .75rem;
  padding: .9rem 1rem;
  box-shadow: 0 6px 18px rgba(0,0,0,.15);
}
.contact-3 .form-control:focus, 
.contact-3 .form-select:focus, 
.contact-3 textarea.form-control:focus{
  outline: none;
  box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--custom-deepyellow, #f2cc22), transparent 60%), 
              0 8px 24px rgba(0,0,0,.2);
}


.contact-3 .btn.btn-submit{
  background: var(--custom-deepyellow, #f2cc22);
  color: #0c1a54;
  font-weight: 800;
  padding: .9rem 2rem;
  border-radius: .75rem;
  border: none;
  letter-spacing: .04em;
  transition: transform .15s ease, filter .15s ease;
}
.contact-3 .btn.btn-submit:hover{
  transform: translateY(-1px);
  filter: brightness(.96);
}


@media (min-width: 992px){
  .contact-3 .contact-form .row > [class*="col-"]{ padding-right: .5rem; padding-left: .5rem; }
}
