/* Header and footer fixes, loaded last: nothing wraps in the top red bar, the search box keeps a usable width,
   and the floating buttons / "Enquiry now" tab do not cover the footer text. */

/* ---------- Header: the red bar on top never breaks a line ---------- */
.header-utility, .header-utility * { white-space: nowrap; }
.header-utility .header-container { gap: 1rem; }
.header-utility-links a, .header-utility-links span { min-width: 0; }
@media (max-width: 1439.98px) { .header-tagline strong { display: none; } }
@media (max-width: 1199.98px) { .header-utility-links > span { display: none; } }

/* ---------- Header: main row on laptops ---------- */
@media (min-width: 992px) and (max-width: 1279.98px) {
  .navbar .nav-link { padding-left: .45rem; padding-right: .45rem; font-size: .92rem; }
  .navbar .nav-link::before { left: .45rem; right: .45rem; }
  .header-search { flex: 1 1 170px; min-width: 150px; }
}
@media (min-width: 992px) and (max-width: 1099.98px) {
  .header-quote { display: none; }
  .header-search { min-width: 190px; }
}

/* ---------- Footer ---------- */
.footer-hours { flex-wrap: wrap; column-gap: .9rem; row-gap: .15rem; }
.footer-hours span:last-child { white-space: nowrap; }
.site-footer .footer-bottom { padding-left: 4.5rem; padding-right: 4.5rem; }
@media (max-width: 1199.98px) { .site-footer .container { padding-right: 2.6rem; } }
@media (max-width: 991.98px) {
  .site-footer .footer-bottom { padding-left: 0; padding-right: 0; padding-bottom: 4.5rem; }
}
@media (min-width: 1200px) and (max-width: 1399.98px) { .navbar .navbar-nav { margin-left: .8rem !important; } }
