/* ===================================================================================

* Theme Name: Visapass Child
* Theme URI: https://www.devsnews.com/wp/visapass/
* Author: Theme_Pure
* Author URI: https://themeforest.net/user/theme_pure/portfolio
* Description: Visapass - Immigration and Visa Consulting WordPress Theme
* Version: 1.0.0
* Template: visapass
* License: GNU General Public License version 3.0
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
* Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

====================================================================================== */

/* ==========================================================================
   Header Navigation Menu Layout Fixes
   ========================================================================== */

/* Align header container with topbar and grid layout */
.header-menu .row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
}

.header-menu .logo {
    display: flex !important;
    align-items: center !important;
    padding: 8px 0 !important;
}

.header-menu .logo img {
    max-height: 55px !important;
    width: auto !important;
    display: block !important;
}

/* Horizontal single-row menu alignment with balanced spacing */
.main-menu {
    text-align: right !important;
    width: 100% !important;
}

.main-menu nav > ul {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    gap: clamp(6px, 0.8vw, 13px) !important;
}

.main-menu nav > ul > li {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    position: relative !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.main-menu nav > ul > li > a {
    font-size: clamp(11.5px, 0.78vw, 12.8px) !important;
    font-weight: 600 !important;
    padding: 24px 0px !important;
    letter-spacing: 0.15px !important;
    text-transform: uppercase !important;
    color: #1A1C20 !important;
    transition: color 0.3s ease !important;
}

.main-menu nav > ul > li.menu-item-has-children > a {
    padding-right: 12px !important;
}

.main-menu nav > ul > li.menu-item-has-children::after {
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 10px !important;
}

/* Ensure Sub-menus (Dropdowns) format properly */
.main-menu ul li .sub-menu {
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 240px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12) !important;
    border-radius: 4px !important;
    padding: 10px 0 !important;
    text-align: left !important;
    z-index: 999 !important;
    opacity: 0;
    visibility: hidden;
    transition: all 0.25s ease-in-out !important;
}

.main-menu ul li:hover > .sub-menu {
    opacity: 1 !important;
    visibility: visible !important;
}

.main-menu ul li .sub-menu li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.main-menu ul li .sub-menu li a {
    display: block !important;
    padding: 9px 22px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    color: #333333 !important;
    white-space: normal !important;
    line-height: 1.4 !important;
}

.main-menu ul li .sub-menu li a:hover {
    color: #1076b5 !important;
    background-color: #f7f9fb !important;
    padding-left: 26px !important;
}

/* Nested sub-menus */
.main-menu ul li .sub-menu li .sub-menu {
    top: 0 !important;
    left: 100% !important;
}

/* ==========================================================================
   Page Title / Breadcrumb Banner Styling
   ========================================================================== */
.page-title__area {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    position: relative !important;
}

.page-title__area::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(10, 20, 35, 0.55) !important;
    z-index: 1 !important;
}

.page-title__area .container {
    position: relative !important;
    z-index: 2 !important;
}

.page-title__area h3 {
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

.breadccrumb-bg {
    position: relative !important;
    z-index: 2 !important;
}