:root{
  --frx-blue:#0b2f6b;
  --frx-blue-dark:#081f49;
  --frx-red:#e30613;
  --frx-red-dark:#b8050f;
  --frx-light:#f4f7fb;
}
body{ font-family:'Poppins', sans-serif; color:#1c2b3a; background:#fff; }

.contact-hero{
  background:
    linear-gradient(100deg, #f1f4fb 0%, #e8eef8 50%, rgba(241,244,251,.65) 100%),
    url("../images/hero.png") right center / cover no-repeat;
  border-bottom:1px solid #e8eef5;
  padding:2.2rem 0 1.8rem;
}
.contact-breadcrumb{ font-size:.78rem; color:#8492a3; margin-bottom:.75rem; }
.contact-breadcrumb a{ color:var(--frx-blue); text-decoration:none; font-weight:600; }
.contact-hero h1{ font-weight:800; font-size:1.85rem; color:var(--frx-blue); margin:0 0 .4rem; }
.contact-hero h1 span{ color:var(--frx-red); }
.contact-hero p{ margin:0; color:#4c5a6e; font-size:.92rem; max-width:560px; }

.contact-page{ padding:2.25rem 0 3rem; background:#fafbfd; }
.contact-card{
  background:#fff; border:1px solid #e8eef5; border-radius:10px;
  padding:1.5rem 1.4rem; height:100%;
}
.contact-card h2{
  font-size:1.05rem; font-weight:800; color:var(--frx-blue);
  margin:0 0 1.1rem; text-transform:uppercase; letter-spacing:.3px;
}
.contact-info-item{
  display:flex; gap:.75rem; align-items:flex-start;
  padding:.85rem 0; border-bottom:1px solid #eef1f5;
}
.contact-info-item:last-child{ border-bottom:none; padding-bottom:0; }
.contact-info-item i{
  width:38px; height:38px; border-radius:8px; flex-shrink:0;
  background:#f1f4fb; color:var(--frx-blue);
  display:inline-flex; align-items:center; justify-content:center; font-size:1.15rem;
}
.contact-info-item .label{
  font-size:.72rem; font-weight:700; color:#8492a3;
  text-transform:uppercase; letter-spacing:.3px;
}
.contact-info-item .value{ font-size:.9rem; font-weight:700; color:#16233a; }
.contact-info-item a{ color:#16233a; text-decoration:none; }
.contact-info-item a:hover{ color:var(--frx-red); }

.contact-form .form-label{
  font-size:.78rem; font-weight:700; color:#16233a; margin-bottom:.35rem;
}
.contact-form .form-control,
.contact-form .form-select{
  border:1px solid #d7dee7; border-radius:6px; font-size:.85rem;
  padding:.65rem .8rem; color:#16233a;
}
.contact-form .form-control:focus,
.contact-form .form-select:focus{
  border-color:var(--frx-blue); box-shadow:0 0 0 .2rem rgba(11,47,107,.12);
}
.contact-form textarea.form-control{ min-height:130px; resize:vertical; }
.contact-submit{
  background:var(--frx-red); color:#fff; border:none; font-weight:800;
  font-size:.85rem; letter-spacing:.4px; padding:.7rem 1.25rem;
  border-radius:6px; display:inline-flex; align-items:center; gap:.4rem;
}
.contact-submit:hover{ background:var(--frx-red-dark); color:#fff; }
.form-success{
  display:none; background:#eef8f0; border:1px solid #c6e6cc; color:#1e6b32;
  border-radius:6px; padding:.85rem 1rem; font-size:.85rem; font-weight:600; margin-bottom:1rem;
}
.form-success.show{ display:block; }

.contact-map{
  border-radius:10px; overflow:hidden; border:1px solid #e8eef5;
  height:280px; background:#e8eef5;
}
.contact-map iframe{ width:100%; height:100%; border:0; display:block; }

.contact-hours{
  margin-top:1rem; background:#f1f4fb; border-radius:8px; padding:1rem 1.1rem;
}
.contact-hours h3{
  font-size:.8rem; font-weight:800; color:var(--frx-blue);
  text-transform:uppercase; margin:0 0 .55rem;
}
.contact-hours p{ margin:0; font-size:.82rem; color:#4c5a6e; line-height:1.55; }

