.footer {
    padding: 2rem 0;
}

.footer-heading {
    font-size: 1.1rem;
    letter-spacing: 0.5px;
    position: relative;
    padding-bottom: 10px;
}

.footer-heading:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 50px;
    height: 2px;
    background: var(--theme-accent);
}

.footer-link {
    transition: all 0.3s ease;
    display: inline-block;
}

.footer-link:hover {
    color: var(--theme-accent) !important;
    transform: translateX(5px);
}

.google-reviews {
    transition: all 0.3s ease;
}

.google-reviews:hover {
    box-shadow: 0 0 15px var(--theme-shadow);
}

.rating-stars {
    letter-spacing: 2px;
}

.social-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: rgba(200, 169, 110, 0.1);
    border-radius: 50%;
    transition: all 0.3s;
}

.social-icons a:hover {
    background: var(--theme-accent);
    color: var(--theme-primary) !important;
    transform: translateY(-3px);
}

.btn:hover {
    background-color: var(--btn-secondary-hover) !important;
    color: var(--theme-primary) !important;
}


/* Navbar dropdown styles - simplified for top-level categories only */

.navbar .navbar-search-container .dropdown-menu {
    max-height: 80vh;
    overflow-y: auto;
}

.navbar-search-container {
    width: auto;
    /* Ensure it's not forced to 100% */
    flex-grow: 0;
    /* Prevent flexbox expansion */
}