/* =========================================================
   SAFE MENU V2
   Modern Responsive Navigation System
========================================================= */

:root{

    --safe-primary:#47823D;

    --safe-primary-dark:#2F5A29;

    --safe-text:#1F2937;

    --safe-text-light:#6B7280;

    --safe-border:#E5E7EB;

    --safe-bg:#FFFFFF;

    --safe-radius-lg:24px;

    --safe-radius-md:16px;

    --safe-shadow:
        0 20px 40px rgba(0,0,0,.08);

}

/* =========================================================
   MAIN NAV
========================================================= */

.safe-menu{

    position:relative;

    width:100%;

    background:#fff;

    border-top:1px solid rgba(71,130,61,.12);

    border-bottom:1px solid rgba(71,130,61,.08);

    z-index:20;

}

/* =========================================================
   DESKTOP NAV
========================================================= */

.safe-menu__desktop{

    display:flex;

    align-items:center;

    justify-content:flex-start;

    min-height:72px;

    padding:
        0 clamp(24px,4vw,80px);

}

.safe-menu__list{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:clamp(12px,1.8vw,34px);

    list-style:none;

    margin:0;

    padding:0;

}

.safe-menu__item{

    position:relative;

}

.safe-menu__link{

    display:flex;

    align-items:center;

    gap:8px;

    background:none;

    border:none;

    cursor:pointer;

    text-decoration:none;

    color:var(--safe-text);

    font-size:15px;

    font-weight:600;

    letter-spacing:.2px;

    padding:18px 4px;

    transition:
        color .25s ease,
        transform .25s ease;

}

.safe-menu__link:hover{

    color:var(--safe-primary);

}

/* =========================================================
   DESKTOP DROPDOWN
========================================================= */

.safe-menu__dropdown{

    position:absolute;

    top:100%;

    left:100%;

    transform:
        translateX(-50%)
        translateY(14px);

    min-width:280px;

    max-width:min(92vw,420px);

    padding:14px;

    background:#fff;

    border-radius:22px;

    border:1px solid rgba(71,130,61,.10);

    box-shadow:var(--safe-shadow);

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    transition:
        opacity .25s ease,
        transform .25s ease,
        visibility .25s ease;

}

.safe-menu__item:hover .safe-menu__dropdown{

    opacity:1;

    visibility:visible;

    pointer-events:auto;

    transform:
        translateX(-50%)
        translateY(0);

}

.safe-menu__dropdown-link{

    display:flex;

    align-items:center;

    width:100%;

    text-decoration:none;

    color:var(--safe-text);

    font-size:14px;

    font-weight:500;

    line-height:1.5;

    padding:14px 16px;

    border-radius:16px;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease;

}

.safe-menu__dropdown-link:hover{

    background:
        rgba(71,130,61,.08);

    color:var(--safe-primary);

    transform:translateX(4px);

}

/* =========================================================
   MOBILE TOP BAR
========================================================= */

.safe-menu__mobile-top{

    display:none;

    align-items:center;

    justify-content:space-between;

    padding:14px 18px;

    background:#fff;

}

.safe-menu__mobile-title{

    font-size:17px;

    font-weight:700;

    color:var(--safe-text);

}

/* =========================================================
   HAMBURGER
========================================================= */

.safe-menu__hamburger{

    width:44px;

    height:44px;

    border:none;

    background:#F3F4F6;

    border-radius:14px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    gap:5px;

    cursor:pointer;

    transition:all .25s ease;

}

.safe-menu__hamburger:hover{

    background:
        rgba(71,130,61,.12);

}

.safe-menu__hamburger span{

    width:18px;

    height:2px;

    background:var(--safe-text);

    border-radius:999px;

}

/* =========================================================
   MOBILE PANEL
========================================================= */

.safe-menu__mobile-panel{

    position:fixed;

    top:0;

    left:0;

    width:min(88vw,360px);

    height:100vh;

    background:#fff;

    z-index:99;

    transform:translateX(-100%);

    transition:transform .35s ease;

    display:flex;

    flex-direction:column;

    overflow:hidden;

    box-shadow:
        0 0 40px rgba(0,0,0,.18);

}

.safe-menu__mobile-panel.active{

    transform:translateX(0);

}

/* =========================================================
   MOBILE HEADER
========================================================= */

.safe-menu__mobile-header{

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:20px 18px;

    background:var(--safe-primary);

    color:#fff;

}

.safe-menu__mobile-user{

    display:flex;

    align-items:center;

    gap:12px;

}

.safe-menu__mobile-avatar{

    width:42px;

    height:42px;

    border-radius:50%;

    background:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    color:var(--safe-primary);

    font-size:18px;

}

.safe-menu__mobile-user-text{

    font-size:15px;

    font-weight:600;

}

.safe-menu__close{

    border:none;

    background:none;

    color:#fff;

    font-size:22px;

    cursor:pointer;

}

/* =========================================================
   MOBILE BODY
========================================================= */

.safe-menu__mobile-body{

    flex:1;

    overflow-y:auto;

    padding:18px;

}

/* =========================================================
   MOBILE GROUP
========================================================= */

.safe-menu__mobile-group{

    border-bottom:
        1px solid rgba(0,0,0,.06);

}

.safe-menu__mobile-trigger{

    width:100%;

    border:none;

    background:none;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:18px 0;

    font-size:15px;

    font-weight:600;

    color:var(--safe-text);

    cursor:pointer;

}

.safe-menu__mobile-dropdown{

    display:none;

    padding-bottom:16px;

}

.safe-menu__mobile-dropdown.active{

    display:flex;

    flex-direction:column;

    gap:8px;

}

.safe-menu__mobile-dropdown a{

    text-decoration:none;

    color:var(--safe-text-light);

    font-size:14px;

    line-height:1.5;

    padding:10px 14px;

    border-radius:14px;

    transition:
        background .25s ease,
        color .25s ease;

}

.safe-menu__mobile-dropdown a:hover{

    background:
        rgba(71,130,61,.08);

    color:var(--safe-primary);

}

/* =========================================================
   MOBILE SINGLE LINK
========================================================= */

.safe-menu__mobile-link{

    display:flex;

    align-items:center;

    width:100%;

    text-decoration:none;

    color:var(--safe-text);

    font-size:15px;

    font-weight:600;

    padding:18px 0;

}

/* =========================================================
   OVERLAY
========================================================= */

.safe-menu__overlay{

    position:fixed;

    inset:0;

    background:
        rgba(0,0,0,.45);

    backdrop-filter:blur(4px);

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    transition:
        opacity .3s ease,
        visibility .3s ease;

    z-index:99;

}

.safe-menu__overlay.active{

    opacity:1;

    visibility:visible;

    pointer-events:auto;

}

/* =========================================================
   RESPONSIVE
========================================================= */

@media(max-width:900px){

    .safe-menu__desktop{

        display:none;

    }

    .safe-menu__mobile-top{

        display:flex;

    }

}

@media(min-width:901px){

    .safe-menu__mobile-top,

    .safe-menu__mobile-panel,

    .safe-menu__overlay{

        display:none;

    }

}

/* =========================================================
   LANGUAGE ADAPTIVE
========================================================= */

.safe-menu__link,
.safe-menu__dropdown-link,
.safe-menu__mobile-trigger,
.safe-menu__mobile-dropdown a{

    word-break:break-word;

    overflow-wrap:anywhere;

}

/* =========================================================
   RTL READY
========================================================= */

[dir="rtl"] .safe-menu__dropdown-link:hover{

    transform:translateX(-4px);

}

.safe-menu__dot{

    width:6px;

    height:6px;

    border-radius:50%;

    background:
        rgba(71,130,61,.45);

    transition:
        transform .25s ease,
        background .25s ease,
        opacity .25s ease;

}

.safe-menu__item:hover .safe-menu__dot{

    transform:scale(1.6);

    background:var(--safe-primary);

    opacity:1;

}

.safe-menu__floating-close{

    position:absolute;

    top:18px;

    right:18px;

    width:42px;

    height:42px;

    border:none;

    border-radius:50%;

    background:#F3F4F6;

    color:#111827;

    display:flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

    font-size:18px;

    z-index:10;

}

.safe-menu__link{

    position:relative;

}

.safe-menu__link::after{

    content:"";

    position:absolute;

    left:0;

    bottom:10px;

    width:0;

    height:2px;

    border-radius:999px;

    background:var(--safe-primary);

    transition:width .28s ease;

}

.safe-menu__item:hover
.safe-menu__link::after{

    width:100%;

}

/* =========================================================
   GLOBAL FLOATING UI FIX
========================================================= */

.LanguageContainer,
.CurrencyContainer,
.location-modal,
.location-popup,
.account-dropdown{

    z-index:999999 !important;

}