/* Desktop dropdown — hover without gap (navbar-expand-xl = 1200px+) */
@media (min-width: 1200px) {
    .site-nav .nav-item.dropdown > .dropdown-menu {
        display: block;
        top: 100%;
        left: 0;
        margin-top: 0 !important;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(6px);
        transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    }

    /* Invisible bridge so moving from toggle to menu does not lose hover */
    .site-nav .nav-item.dropdown::after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        height: 10px;
    }

    .site-nav .nav-item.dropdown:hover > .dropdown-menu {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }

    .site-offcanvas.offcanvas-xl {
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    .site-offcanvas.offcanvas-xl .offcanvas-body {
        display: flex;
        align-items: center;
        padding: 0;
        overflow: visible;
    }
}

.nav-item .dropdown-toggle .fa-chevron-down {
    transition: transform 0.3s ease;
}

.nav-item .dropdown-menu.show ~ .fa-chevron-down {
    transform: rotate(180deg);
}

.navbar .dropdown-menu {
    background: var(--ink);
}

@media (max-width: 1199px) {
    a.nav-item.nav-link.btn.theme-btn {
        margin-left: 0;
        margin-top: 0.75rem;
        text-align: center;
        width: 100%;
    }

    .site-nav > .container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
    }

    .site-nav .navbar-brand {
        flex: 1;
        min-width: 0;
        margin-right: 0;
    }

    .site-nav .navbar-toggler {
        flex-shrink: 0;
        margin-left: auto;
    }

    .site-offcanvas {
        width: min(100vw, 320px);
    }

    .site-offcanvas .offcanvas-header {
        padding: 0.85rem 1rem;
    }

    .site-offcanvas .btn-close {
        flex-shrink: 0;
        margin: 0;
    }

    .site-offcanvas .offcanvas-body {
        padding: 0.75rem 1rem 1.5rem;
        overflow-y: auto;
    }

    .site-offcanvas .navbar-nav {
        align-items: stretch;
        width: 100%;
        gap: 0.15rem;
    }

    .site-offcanvas .nav-link {
        width: 100%;
        padding: 0.75rem 0.85rem !important;
    }

    .site-offcanvas .nav-link.active::after {
        display: none;
    }

    .site-offcanvas .nav-item.dropdown {
        width: 100%;
    }

    .site-offcanvas .nav-item.dropdown > .dropdown-menu {
        position: static !important;
        float: none;
        display: none;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none !important;
        margin: 0.25rem 0 0.5rem !important;
        width: 100%;
        box-shadow: none;
    }

    .site-offcanvas .nav-item.dropdown > .dropdown-menu.show {
        display: block;
    }

    .site-offcanvas .nav-item.dropdown::after {
        display: none;
    }

    .header-top .header-hours {
        display: none;
    }
}

@media (max-width: 992px) {
    .hero_section {
        min-height: auto;
        padding: 3.5rem 0 5rem;
    }

    .hero_section .heading h1 {
        font-size: 2rem;
    }

    .banner_search {
        padding: 1rem;
        border-radius: 16px;
    }

    .flex_search {
        flex-direction: column;
    }

    .flex_search .btn {
        width: 100% !important;
    }

    .counter_section {
        margin-top: -2rem;
    }

    .counter_section .row {
        padding: 1.5rem 0.5rem;
        border-radius: 16px;
    }

    .counter {
        text-align: center;
        margin-bottom: 1.5rem;
    }

    .border_right {
        border-right: none !important;
        border-bottom: 1px solid var(--line);
        padding-bottom: 1.5rem;
    }

    .similar_search_content h2 {
        font-size: 1.75rem;
    }

    .similar_search_content {
        margin: 2rem 0;
    }

    .image_absolute {
        display: none;
    }

    .logo_card {
        margin-bottom: 1rem;
    }

    .attorney {
        position: relative;
        top: 0;
    }

    .attorney_inner {
        padding: 1.5rem;
    }

    .faq {
        margin-top: 0;
    }

    .site-footer .footer_links {
        align-items: flex-start;
    }

    .comp_search .flex_search .input_field {
        width: 100%;
    }

    .comp_search .flex_search .btn {
        width: 100% !important;
        margin: 0 auto;
    }

    .pkg_card.card {
        margin-bottom: 1.25rem;
    }

    .comp_search_table {
        display: none;
    }

    .trademark_services {
        display: none;
    }

    .card_border {
        margin: 0.5rem;
    }

    .countries_sec img {
        margin: 1.25rem 0;
    }

    .mmpopup .centercont h3 span {
        font-size: 1.25rem !important;
    }

    .get_in_touch {
        padding: 1.5rem;
        margin-bottom: 1.25rem;
    }

    .popupmain {
        width: 95%;
        max-width: 95%;
    }

    section {
        padding: 3rem 0;
    }
}

@media (max-width: 576px) {
    .header-top .navtop {
        justify-content: center;
        gap: 0.5rem 0.75rem;
    }

    .header-top .navtop a {
        font-size: 0.72rem;
    }

    .header-top .navtop a:last-of-type {
        flex: 1 1 100%;
        justify-content: center;
        text-align: center;
        word-break: break-word;
    }

    .site-offcanvas {
        width: 100vw;
        max-width: 100%;
    }

    .section-badge {
        font-size: 0.7rem;
    }
}
