/* Site font + mega-menu navbar */
body, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .btn, input, select, textarea {
    font-family: 'Plus Jakarta Sans', sans-serif;
}

.tsp-navbar { background: #fff; box-shadow: 0 2px 10px rgba(0,0,0,.08); position: relative; }
.tsp-navbar .nav-item,
.tsp-navbar .tsp-dd > .nav-link {
    color: #222; font-weight: 500; font-size: 16px; margin: 0 12px; padding: 8px 0; text-transform: uppercase;
}
.tsp-navbar .nav-item.active,
.tsp-navbar .nav-item:hover,
.tsp-navbar .tsp-dd:hover > .nav-link,
.tsp-navbar .tsp-dd > .nav-link.active { color: var(--primary); }
.tsp-navbar .navbar-utils { display: flex; align-items: center; gap: 18px; margin-left: 20px; }
.tsp-navbar .search-icon { font-size: 18px; color: #333; cursor: pointer; }
.tsp-navbar .enquire-btn {
    background: var(--primary); color: #fff; font-weight: 700; font-size: 15px; padding: 14px 26px;
    text-decoration: none; white-space: nowrap; text-transform: uppercase;
}
.tsp-navbar .enquire-btn:hover { background: var(--secondary); color: #fff; }

/* Mega menu */
.tsp-mega { display: none; background: #cfcfcf; padding: 24px 0 18px; }
.tsp-mega-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.tsp-mega-col { padding: 0 24px; border-left: 1px solid #b9b9b9; }
.tsp-mega-col:first-child { border-left: 0; }
.tsp-mega-col h6 { font-size: 14px; font-weight: 800; text-transform: uppercase; color: #111; margin: 0 0 16px; }
.tsp-mega-col a { display: block; color: #222; font-size: 14px; font-weight: 500; padding: 7px 4px; text-decoration: none; }
.tsp-mega-col a:hover { color: var(--primary); }

@media (min-width: 992px) {
    .tsp-navbar .tsp-dd { position: static; }
    .tsp-navbar .tsp-mega { position: absolute; left: 0; right: 0; top: 100%; z-index: 1030; }
    .tsp-navbar .tsp-dd:hover > .tsp-mega,
    .tsp-navbar .tsp-dd:focus-within > .tsp-mega { display: block; }
}
@media (max-width: 991.98px) {
    .tsp-navbar .tsp-dd.open > .tsp-mega { display: block; margin: 6px 0; }
    .tsp-mega-grid { grid-template-columns: 1fr; }
    .tsp-mega-col { border-left: 0; padding: 0 12px 10px; }
    .tsp-navbar .navbar-utils { margin: 12px 0; }
}
