/* ========= Expedite HRS — theme override (clean) ========= */
/* Brand tokens + shared vars */
:root{
  --accent-color:#1E5AA8;     /* brand blue */
  --accent-2:#F9A825;         /* star yellow */
  --heading-color:#0f172a;    /* headings */
  --default-color:#334155;    /* body text */
  --nav-hover-color:var(--accent-color);
  --nav-dropdown-hover-color:var(--accent-color);
}

/* Typography / text colors */
h1,h2,h3,h4,h5,h6{ color:var(--heading-color); }
body{ color:var(--default-color); }

/* Links (with fallback for older browsers before color-mix) */
a{ color:var(--accent-color); }
a:hover{ color:#184b8c; } /* fallback */
a:hover{ color:color-mix(in srgb, var(--accent-color) 85%, black); }

/* Buttons — primary + outline (with fallbacks) */
.btn-primary{
  color:#fff; background:var(--accent-color); border-color:var(--accent-color);
}
.btn-primary:hover,
.btn-primary:focus{
  background:#184b8c; border-color:#184b8c; /* fallback */
}
.btn-primary:hover,
.btn-primary:focus{
  background:color-mix(in srgb, var(--accent-color) 85%, black);
  border-color:color-mix(in srgb, var(--accent-color) 85%, black);
}

.btn-outline-primary{
  color:var(--accent-color); border-color:var(--accent-color); background:transparent;
}
.btn-outline-primary:hover{
  color:#fff; background:#184b8c; border-color:#184b8c; /* fallback */
}
.btn-outline-primary:hover{
  background:color-mix(in srgb, var(--accent-color) 85%, black);
  border-color:color-mix(in srgb, var(--accent-color) 85%, black);
}

/* Forms & focus ring */
input:focus, select:focus, textarea:focus, .form-control:focus, .form-select:focus{
  border-color:var(--accent-color) !important;
  box-shadow:0 0 0 .25rem rgba(30,90,168,.25) !important; /* stable, readable */
  outline:0;
}

/* ===== Navbar (force horizontal) ===== */
#header .navbar{ padding:0; }
#header .navbar > ul{
  display:flex; align-items:center; gap:24px;
  margin:0; padding:0; list-style:none;
}
#header .navbar > ul > li{ display:inline-block; }
#header .navbar > ul > li > a{
  display:inline-block; padding:10px 12px; text-decoration:none;
}
#header .btn-getstarted{ margin-left:16px; } /* CTA spacing */

/* ===== Features / Services tabs (equalize) ===== */
.features .nav-link{
  min-height:80px; display:flex; align-items:center; justify-content:flex-start; gap:.5rem;
  border:1px solid rgba(30,90,168,.25); color:var(--default-color);
}
.features .nav-link:hover{ border-color:var(--accent-color); color:var(--accent-color); }
.features .nav-link.active,
.features .nav-link.active:hover{
  background:var(--accent-color); border-color:var(--accent-color); color:#fff;
}

/* Optional: if you use #services .nav-tabs layout */
#services .nav-tabs{ display:flex; flex-wrap:wrap; gap:16px; }
#services .nav-tabs .nav-link{
  flex:1 1 220px; text-align:left; min-height:64px;
}

/* ===== Misc components recolor ===== */
.badge.bg-primary,
.pagination .page-item.active .page-link,
.progress-bar,
.scroll-top{
  background:var(--accent-color) !important; border-color:var(--accent-color) !important; color:#fff;
}

/* ===== Footer: brand block + socials ===== */
.footer .footer-logo{ height:56px; width:auto; display:block; }

.footer .social-links{
  display:flex; gap:12px; align-items:center;
  padding:0; margin:.5rem 0 0; list-style:none;
}
.footer .social-links a{
  display:inline-flex; width:40px; height:40px; justify-content:center; align-items:center;
  border-radius:9999px;
  border:1px solid rgba(30,90,168,.25);
  color:var(--accent-color); background:rgba(0,0,0,0.04);
  text-decoration:none;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease;
}
.footer .social-links a:hover{
  color:#fff; background:#184b8c; /* fallback */
  box-shadow:0 0 0 2px var(--accent-2) inset; transform:translateY(-1px);
}
.footer .social-links a:hover{
  background:color-mix(in srgb, var(--accent-color) 85%, black);
}

/* Mobile polish */
@media (max-width: 991.98px){
  .logo-img{ height:32px; }
}
@media (max-width: 420px){
  .footer .footer-logo{ height:48px; }
  .footer .social-links{ gap:10px; }
}

/* Force footer social row (beats template rules) */
#footer .footer-top .footer-info .social-links{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:12px !important;
  margin:0 !important;
  padding:0 !important;
}
#footer .footer-top .footer-info .social-links > a{
  display:inline-flex !important;
  width:auto !important;    /* kills any width:100% */
  height:40px; min-width:40px;
  justify-content:center; align-items:center;
  border-radius:50%;
}
/* Footer logo — force larger size */
#footer .footer-logo {
  height: 140px !important;   /* adjust to taste (120–160px looks strong) */
  width: auto !important;
  max-height: none !important;
  display: block !important;
}

@media (max-width: 576px){
  #footer .footer-logo {
    height: 100px !important;
  }
}
