/*
 * Archivo: 48895.css
 * Guardado: 02 Aug 2025 | 02:00:30
 */

/*
 * Menú Responsive Hamburguesa (1) - 48895.css
 * 		https://www.viajaraperu.com/wp-admin/post.php?post=48895&action=edit
 * Menú Responsive Hamburguesa (2) - 48896.js
 *		https://www.viajaraperu.com/wp-admin/post.php?post=48896&action=edit
 *
 */

/* 
 * Menú Responsive Hamburguesa 
 * 48895.css
 *
 *
 */
#main-nav-toggle { display: none; }
@media (max-width: 900px) {
    #main-nav-toggle {
        display: block;
        position: fixed;
        top: 18px;
        right: 18px;
        z-index: 3002;
        background: #2d4367;
        color: #fff;
        border: none;
        border-radius: 7px;
        font-size: 2.1rem;
        cursor: pointer;
        padding: 7px 13px;
        box-shadow: 0 3px 16px rgba(61,99,172,0.18);
        transition: background 0.2s;
    }
    #main-nav-toggle:hover { background: #18325c; }
    #main-nav {
        position: fixed;
        top: 0;
        left: 0;
        height: 100vh;
        width: 85vw;
        max-width: 360px;
        background: #ffffed;
        box-shadow: 4px 0 26px rgba(0,0,0,0.11);
        border-radius: 0 18px 18px 0;
        z-index: 3003;
        overflow-y: auto;
        transform: translateX(-110%);
        transition: transform 0.28s cubic-bezier(.7,.07,.37,1.02);
        display: block;
    }
    #main-nav.lateral-abierto { transform: translateX(0); }
    #menu-overlay {
        display: none;
        position: fixed;
        z-index: 3001;
        inset: 0;
        background: rgba(44,44,44,0.28);
        opacity: 0;
        transition: opacity 0.18s;
        pointer-events: none;
    }
    #main-nav.lateral-abierto ~ #menu-overlay {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }
    #main-nav .menu {
        flex-direction: column;
        display: flex;
        padding: 0;
        margin: 0;
        gap: 0;
    }
    #main-nav .menu > li {
        width: 100%;
        min-width: 0;
        text-align: left;
        position: relative;
    }
    #main-nav .menu > li > a {
        background: none !important;
        color: #283349 !important;
        font-weight: 700;
        position: relative;
        border-bottom: 1px solid #f0f0e0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-size: 1.13em;
        padding: 20px 24px 20px 22px;
        transition: none;
        z-index: 1;
        cursor: pointer;
    }
    #main-nav .menu li.submenu-open > a {
        background: #f8f8e2 !important;
        color: #283349 !important;
    }
    #main-nav .menu li > a:focus { outline: none !important; }
    #main-nav .menu li:hover > ul,
    #main-nav .menu li:focus-within > ul,
    #main-nav .menu li ul:focus,
    #main-nav .menu li ul:active { display: none !important; }
    #main-nav .sub-menu {
        display: none;
        background: transparent;
        border-radius: 0 0 11px 11px;
        padding: 0;
        margin: 0 0 13px 14px;
        position: static !important;
        box-shadow: none;
        font-size: 1em;
        transition: none;
    }
    #main-nav .menu > li.submenu-open > .sub-menu {
        display: block !important;
        background: #cfcebc !important;
        border-radius: 0 0 10px 10px;
        box-shadow: 0 4px 16px rgba(30,40,60,0.08);
        padding: 10px 0 13px 0;
        margin-bottom: 10px;
        animation: subSlideDown 0.19s;
    }
    @keyframes subSlideDown {
        from { opacity: 0; transform: translateY(-7px);}
        to { opacity: 1; transform: translateY(0);}
    }
    #main-nav .sub-menu li a {
        padding: 12px 18px 12px 30px;
        border-bottom: 1px solid #edeada;
        background: none !important;
        color: #2c3453 !important;
        font-size: 1em;
        font-weight: 500;
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }
    #main-nav .sub-menu li:last-child a { border-bottom: none; }
    /* Flechita en círculo SIEMPRE a la derecha */
    #main-nav .submenu-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 34px;
        height: 34px;
        margin-left: 9px;
        border-radius: 50%;
        background: #f2f3fa;
        transition: background 0.17s;
    }
    #main-nav .menu > li.submenu-open > a > .submenu-arrow {
        background: #e4e7f9;
    }
    #main-nav .menu > li > a:focus .submenu-arrow,
    #main-nav .menu > li > a:hover .submenu-arrow {
        background: #e2e7f6;
    }
    #main-nav .menu > li.submenu-open > a > .submenu-arrow svg {
        transform: rotate(180deg);
        transition: transform 0.17s;
    }
    #main-nav .sub-menu .submenu-arrow {
        width: 28px;
        height: 28px;
        margin-left: 7px;
        font-size: 1.1em;
        color: #a1a6b9;
    }
    #main-nav .sub-menu li:hover > ul,
    #main-nav .sub-menu li:focus-within > ul { display: none !important; }
}
#main-nav .menu,
#main-nav .sub-menu {
    font-family: 'Segoe UI', 'Arial', sans-serif;
}
