/* ============================================
   OJ Exclusive — Custom Navigation Menu v5
   ============================================ */

@font-face {
    font-family: "PP Neue Montreal";
    font-display: swap;
    src: url('https://oj-exclusive.com/wp-content/uploads/et-fonts/PPNeueMontreal-Regular.otf') format('opentype');
}

/* ── Kill RMP ──────────────────────────────── */
#rmp_menu_trigger-242121,#rmp-menu-container-242121,#rmp-header-bar-242121,
.rmp-container,.rmp-menu-wrap,[id^="rmp_menu_trigger"],[id^="rmp-menu-container"],[id^="rmp-header-bar"] {
    display:none !important;visibility:hidden !important;pointer-events:none !important;
}

/* ── Kill Divi nav ─────────────────────────── */
#main-header #et-top-navigation,.et_pb_menu__menu,#et_mobile_nav_menu,
.mobile_menu_bar,#et-top-navigation nav > ul { display:none !important; }

/* ── Strip theme styles from our elements ──── */
#oj-header a,#oj-header button,#oj-overlay a,#oj-overlay button,
#oj-bottom-bar a,#oj-bottom-bar button,
.oj-hdr-icon,.oj-hdr-icon:hover,.oj-hdr-icon:focus,.oj-hdr-icon:active,
#oj-burger,#oj-burger:hover,#oj-burger:focus,#oj-burger:active,
#oj-close,#oj-close:hover,#oj-close:focus,.oj-b-icon,.oj-b-icon:hover {
    background:none !important;background-color:transparent !important;
    border:none !important;border-radius:0 !important;
    box-shadow:none !important;outline:none !important;
    -webkit-appearance:none !important;appearance:none !important;
}

/* ══════════════════════════════════════════
   HEADER
   ══════════════════════════════════════════ */
#oj-header {
    position:fixed;top:0;left:0;right:0;z-index:999999;
    display:flex;align-items:center;justify-content:space-between;
    padding:9px 5%;
    background:rgba(10,0,0,0.29);
    transition:background 0.4s ease,box-shadow 0.4s ease;
    height:50px;box-sizing:border-box;
    font-family:"PP Neue Montreal","Helvetica Neue",Helvetica,Arial,sans-serif;
}
#oj-header.oj-solid { background:#ffffff !important; box-shadow:0 1px 0 rgba(201,169,110,0.2) !important; }
#oj-header.oj-scrolled { background:transparent !important; box-shadow:none !important; }

.admin-bar #oj-header { top:32px; }
@media screen and (max-width:782px) { .admin-bar #oj-header { top:46px; } }

#oj-logo { display:block;line-height:0;text-decoration:none !important;border:none !important;color:transparent !important; }
#oj-logo img { height:34px;width:auto;object-fit:contain;display:block; }

.oj-hdr-right { display:flex;align-items:center;gap:18px; }

.oj-hdr-icon {
    display:flex !important;align-items:center !important;justify-content:center !important;
    position:relative;width:24px;height:24px;cursor:pointer;
    padding:0 !important;margin:0 !important;text-decoration:none !important;
    transition:opacity 0.3s ease,transform 0.3s ease,visibility 0.3s ease !important;
}
.oj-hdr-icon svg { width:19px;height:19px;stroke:#c9a96e;fill:none;stroke-width:1.3;transition:opacity 0.2s;display:block; }
.oj-hdr-icon:hover svg { opacity:0.65; }

.oj-cart-count {
    position:absolute;top:-5px;right:-7px;
    width:14px;height:14px;border-radius:50%;
    background:#c9a96e;font-size:8px;font-weight:500;color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-family:"PP Neue Montreal",sans-serif;letter-spacing:0;line-height:1;
}

/* ── Burger ────────────────────────────────── */
#oj-burger {
    width:29px !important;height:29px !important;
    display:flex !important;flex-direction:column !important;
    justify-content:center !important;align-items:flex-end !important;
    gap:5px !important;cursor:pointer;padding:0 !important;margin:0 !important;flex-shrink:0;
}
#oj-burger span {
    display:block;height:1px;background:#c9a96e !important;border-radius:0;
    transition:transform 0.45s cubic-bezier(0.77,0,0.175,1),opacity 0.45s cubic-bezier(0.77,0,0.175,1),width 0.45s cubic-bezier(0.77,0,0.175,1);
    transform-origin:center;
}
#oj-burger span:nth-child(1){width:22px}
#oj-burger span:nth-child(2){width:14px}
#oj-burger span:nth-child(3){width:18px}
#oj-burger.oj-open span:nth-child(1){transform:translateY(6px) rotate(45deg);width:22px;background:#c9a96e !important}
#oj-burger.oj-open span:nth-child(2){opacity:0;transform:scaleX(0);background:#c9a96e !important}
#oj-burger.oj-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg);width:22px;background:#c9a96e !important}

/* ══════════════════════════════════════════
   OVERLAY
   ══════════════════════════════════════════ */
#oj-overlay {
    position:fixed;inset:0;z-index:999998;
    background:#ffffff;opacity:0;pointer-events:none;
    transition:opacity 0.4s ease;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    font-family:"PP Neue Montreal","Helvetica Neue",Helvetica,Arial,sans-serif;
}
#oj-overlay.oj-open { opacity:1;pointer-events:all; }
#oj-overlay::after {
    content:'';position:absolute;top:50px;left:5%;right:5%;
    height:0.5px;background:rgba(201,169,110,0.2);pointer-events:none;
}

#oj-overlay-logo { position:absolute;top:8px;left:5%;display:flex;align-items:center;height:50px; }
#oj-overlay-logo img { height:34px;width:auto;object-fit:contain;display:block; }

#oj-close {
    position:absolute !important;top:9px !important;right:5% !important;
    width:29px !important;height:29px !important;
    display:flex !important;align-items:center !important;justify-content:center !important;
    cursor:pointer;padding:0 !important;margin:0 !important;
}
#oj-close svg { width:17px;height:17px;stroke:#c9a96e;fill:none;stroke-width:1;transition:opacity 0.2s;display:block; }
#oj-close:hover svg { opacity:0.6; }

/* ══════════════════════════════════════════
   NAV
   ══════════════════════════════════════════ */
#oj-nav-list { list-style:none;margin:0;padding:0;text-align:center;width:100%; }
#oj-nav-list li { margin:0;padding:0; }

#oj-nav-list a {
    display:block;
    font-family:"PP Neue Montreal","Helvetica Neue",Helvetica,Arial,sans-serif !important;
    font-size:22px !important;font-weight:400 !important;
    letter-spacing:0.3em !important;text-transform:uppercase !important;
    color:rgba(201,169,110,0.0) !important;
    text-decoration:none !important;
    padding:9px 0 !important;margin:0 !important;
    border:none !important;background:transparent !important;
    box-shadow:none !important;line-height:1.2 !important;
    transform:translateY(18px);opacity:0;
    transition:color 0.25s ease !important;
    text-align:center !important;
}

#oj-overlay.oj-open #oj-nav-list a { animation:ojFadeUp 0.5s ease forwards; }
#oj-overlay.oj-open #oj-nav-list li:nth-child(1) a { animation-delay:0.04s; }
#oj-overlay.oj-open #oj-nav-list li:nth-child(2) a { animation-delay:0.09s; }
#oj-overlay.oj-open #oj-nav-list li:nth-child(3) a { animation-delay:0.14s; }
#oj-overlay.oj-open #oj-nav-list li:nth-child(4) a { animation-delay:0.19s; }
#oj-overlay.oj-open #oj-nav-list li:nth-child(5) a { animation-delay:0.24s; }
#oj-overlay.oj-open #oj-nav-list li:nth-child(6) a { animation-delay:0.29s; }

@keyframes ojFadeUp {
    to { transform:translateY(0);opacity:1;color:#1a1612 !important; }
}

#oj-nav-list a:hover,#oj-nav-list a:focus,#oj-nav-list li:hover > a,
body #oj-overlay #oj-nav-list a:hover,
html body #oj-overlay.oj-open #oj-nav-list li a:hover {
    color:#c9a96e !important;background:transparent !important;
    background-color:transparent !important;text-decoration:none !important;
}
html body #oj-overlay.oj-open ul#oj-nav-list li a {
    color:#1a1612 !important;opacity:1 !important;transform:translateY(0) !important;
    background:transparent !important;
}
html body #oj-overlay.oj-open ul#oj-nav-list li a:hover { color:#c9a96e !important; }

/* ══════════════════════════════════════════
   SEARCH
   ══════════════════════════════════════════ */
#oj-search-lang-row {
    margin-top:18px;margin-bottom:20px;
    display:flex;flex-direction:column;align-items:center;gap:10px;
    opacity:0;transform:translateY(8px);
    transition:opacity 0.35s ease 0.38s,transform 0.35s ease 0.38s;
    width:100%;
}
#oj-overlay.oj-open #oj-search-lang-row { opacity:1;transform:translateY(0); }

#oj-search-wrap {
    display:flex;align-items:center;justify-content:center;
    border:0.5px solid rgba(201,169,110,0.2);
    padding:8px 16px;gap:8px;width:280px;max-width:80vw;box-sizing:border-box;
}
#oj-search-wrap svg { width:13px;height:13px;stroke:rgba(201,169,110,0.55);fill:none;stroke-width:1.5;flex-shrink:0;display:block; }
#oj-search-input {
    background:none !important;border:none !important;outline:none !important;box-shadow:none !important;
    font-family:"PP Neue Montreal","Helvetica Neue",sans-serif !important;
    font-size:10px !important;letter-spacing:0.2em !important;color:#1a1612 !important;
    width:100%;padding:0 !important;margin:0 !important;text-align:center !important;-webkit-appearance:none;
}
#oj-search-input::placeholder { color:rgba(201,169,110,0.38) !important;text-align:center; }

/* ══════════════════════════════════════════
   LINGUISE
   ══════════════════════════════════════════ */
ul.linguise_switcher {
    background:transparent !important;border:none !important;box-shadow:none !important;
    padding:0 !important;margin:0 !important;list-style:none !important;
    display:flex !important;justify-content:center !important;position:relative !important;
}
ul.linguise_switcher > li.linguise_current {
    background:transparent !important;border:none !important;box-shadow:none !important;
    padding:0 !important;margin:0 !important;list-style:none !important;position:relative !important;
}
ul.linguise_switcher > li.linguise_current > div.linguise_current_lang {
    display:inline-flex !important;align-items:center !important;gap:8px !important;
    background:rgba(201,169,110,0.05) !important;border:0.5px solid rgba(201,169,110,0.25) !important;
    padding:6px 14px !important;cursor:pointer !important;border-radius:0 !important;box-shadow:none !important;
}
ul.linguise_switcher .linguise_flags {
    width:20px !important;min-width:20px !important;height:20px !important;min-height:20px !important;
    border-radius:50% !important;box-shadow:none !important;flex-shrink:0 !important;
}
ul.linguise_switcher .linguise_lang_name {
    font-family:"PP Neue Montreal",sans-serif !important;font-size:10px !important;
    letter-spacing:0.2em !important;color:#c9a96e !important;text-transform:uppercase !important;
    line-height:1 !important;margin:0 !important;
}
ul.linguise_switcher .lccaret svg { width:14px !important;height:14px !important;fill:#c9a96e !important; }
ul.linguise_switcher .lccaret { display:flex;align-items:center; }
ul.linguise_switcher_sub,ul.linguise_switcher .linguise_switcher_sub {
    position:absolute !important;top:100% !important;left:50% !important;
    transform:translateX(-50%) !important;background:#ffffff !important;
    border:0.5px solid rgba(201,169,110,0.2) !important;border-top:none !important;
    box-shadow:none !important;border-radius:0 !important;padding:4px 0 !important;
    margin:0 !important;list-style:none !important;min-width:100px !important;z-index:999999 !important;
}
ul.linguise_switcher .linguise_lang_item {
    display:flex !important;align-items:center !important;gap:8px !important;
    padding:6px 14px !important;cursor:pointer !important;
    list-style:none !important;margin:0 !important;transition:background 0.15s !important;
}
ul.linguise_switcher .linguise_lang_item:hover { background:rgba(201,169,110,0.06) !important; }
ul.linguise_switcher .linguise_lang_item .linguise_lang_name { color:rgba(26,22,18,0.7) !important; }
ul.linguise_switcher .linguise_lang_item:hover .linguise_lang_name { color:#c9a96e !important; }
ul.linguise_switcher a { text-decoration:none !important;border:none !important; }
#oj-lang-wrap {
    display:flex;justify-content:center;
    background:transparent !important;border:none !important;
    box-shadow:none !important;padding:0 !important;margin:0 !important;
}
#oj-lang-wrap,#oj-search-lang-row,ul.linguise_switcher,ul.linguise_switcher > li.linguise_current {
    overflow:visible !important;position:relative !important;
}

/* ══════════════════════════════════════════
   BOTTOM BAR
   Outside #oj-overlay in HTML.
   Shown/hidden via JS opacity only —
   no display toggle so iOS never loses it.
   ══════════════════════════════════════════ */
#oj-bottom-bar {
    position:fixed;
    bottom:0;left:0;right:0;
    padding:16px 5%;
    padding-bottom:max(16px, env(safe-area-inset-bottom, 16px));
    border-top:0.5px solid rgba(201,169,110,0.2);
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:#faf8f5;
    box-sizing:border-box;
    z-index:999997;
    transition:opacity 0.35s ease;
}

.oj-bottom-left,.oj-bottom-right { display:flex;align-items:center;gap:16px; }

.oj-b-icon {
    display:flex !important;align-items:center !important;gap:6px !important;
    font-family:"PP Neue Montreal","Helvetica Neue",sans-serif !important;
    font-size:9px !important;letter-spacing:0.2em !important;
    color:rgba(201,169,110,0.85) !important;
    text-transform:uppercase !important;text-decoration:none !important;
    transition:color 0.2s !important;cursor:pointer;line-height:1 !important;
    padding:0 !important;margin:0 !important;background:transparent !important;
}
.oj-b-icon:hover { color:#c9a96e !important;background:transparent !important; }
.oj-b-icon svg { flex-shrink:0;display:block;opacity:0.85; }
.oj-b-icon:hover svg { opacity:1; }
.oj-b-divider { width:0.5px;height:16px;background:rgba(201,169,110,0.2);flex-shrink:0; }

/* ── Body lock ─────────────────────────────── */
body.oj-menu-open { overflow:hidden !important; }

/* ══════════════════════════════════════════
   MOBILE
   ══════════════════════════════════════════ */
@media (max-width:768px) {
    #oj-overlay { align-items:center !important; }
    #oj-nav-list {
        width:100% !important;text-align:center !important;padding:0 !important;
        display:flex !important;flex-direction:column !important;align-items:center !important;
    }
    #oj-nav-list li { width:100% !important;text-align:center !important; }
    #oj-nav-list a {
        font-size:18px !important;padding:8px 0 !important;
        text-align:center !important;width:100% !important;display:block !important;
    }
    #oj-search-wrap { width:calc(100vw - 80px) !important;max-width:none !important; }
    #oj-bottom-bar {
        padding:14px 5%;
        padding-bottom:max(14px, env(safe-area-inset-bottom, 14px));
        flex-wrap:wrap;gap:10px;
    }
    .oj-hdr-right { gap:14px; }
    .oj-bottom-left,.oj-bottom-right { gap:12px; }
}