.site-header,
.site-header *{
    box-sizing:border-box;
}

body{
    padding-top:126px;
}

.site-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    z-index:99999;
    background:rgba(255,255,255,.90);
    border-bottom:1px solid rgba(15,23,42,.06);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    box-shadow:0 8px 30px rgba(15,23,42,.04);
    transition:.25s ease;
}

.site-header.is-scrolled{
    background:rgba(255,255,255,.96);
    box-shadow:0 18px 55px rgba(15,23,42,.12);
}

.header-container{
    max-width:1540px;
    margin:0 auto;
    padding:0 150px;
}

.header-topbar{
    height:42px;
    background:linear-gradient(180deg,#f8faf9,#eef7f2);
    overflow:hidden;
    transition:.25s ease;
}

.site-header.is-scrolled .header-topbar{
    height:0;
    opacity:0;
    transform:translateY(-100%);
}

.header-topbar-inner{
    height:42px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.header-contact{
    display:flex;
    align-items:center;
    gap:12px;
    color:#26343a;
    font-size:13px;
    font-weight:700;
}

.header-contact a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:inherit;
    text-decoration:none;
    white-space:nowrap;
}

.header-contact a:hover{
    color:#0f8f61;
}

.header-contact em{
    width:1px;
    height:13px;
    background:#cbd5d1;
    font-style:normal;
}

.header-top-buttons{
    display:flex;
    align-items:center;
    gap:12px;
}

.header-top-buttons > a,
.uye-name-btn{
    height:32px;
    padding:0 17px;
    display:flex;
    align-items:center;
    gap:7px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(15,23,42,.06);
    border-radius:999px;
    color:#24343a;
    font-size:13px;
    font-weight:850;
    text-decoration:none;
    white-space:nowrap;
    box-shadow:0 8px 20px rgba(15,23,42,.04);
    transition:.22s ease;
}

.header-top-buttons > a:hover,
.uye-name-btn:hover{
    transform:translateY(-1px);
    color:#0f8f61;
    background:#fff;
}

.uye-header-menu{
    position:relative;
}

.uye-dropdown{
    position:absolute;
    top:42px;
    right:0;
    width:245px;
    background:rgba(255,255,255,.94);
    border:1px solid rgba(255,255,255,.75);
    border-radius:16px;
    box-shadow:0 28px 80px rgba(15,23,42,.16);
    padding:10px;
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:.2s ease;
    z-index:99999;
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
}

.uye-dropdown::before{
    content:"";
    position:absolute;
    top:-8px;
    right:34px;
    width:16px;
    height:16px;
    background:rgba(255,255,255,.94);
    transform:rotate(45deg);
    border-left:1px solid rgba(255,255,255,.75);
    border-top:1px solid rgba(255,255,255,.75);
}

.uye-header-menu:hover .uye-dropdown{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.uye-dropdown a,
.uye-dropdown button{
    width:100%;
    height:42px;
    padding:0 12px;
    display:flex;
    align-items:center;
    gap:10px;
    background:transparent;
    border:0;
    border-radius:10px;
    color:#17342d;
    font-size:14px;
    font-weight:850;
    text-decoration:none;
    cursor:pointer;
    font-family:inherit;
}

.uye-dropdown a:hover,
.uye-dropdown button:hover{
    background:rgba(15,143,97,.08);
    color:#0f8f61;
}

.header-main,
.header-inner{
    height:84px;
    transition:.25s ease;
}

.site-header.is-scrolled .header-main,
.site-header.is-scrolled .header-inner{
    height:76px;
}

.header-main{
    background:transparent;
}

.header-inner{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.main-nav{
    display:flex;
    align-items:center;
    gap:34px;
    flex:1;
    min-width:0;
}

.nav-item{
    position:relative;
}

.nav-item > a,
.contact-link{
    position:relative;
    color:#17342d;
    font-size:16px;
    font-weight:850;
    text-decoration:none;
    display:flex;
    align-items:center;
    gap:7px;
    white-space:nowrap;
    transition:.22s ease;
}

.nav-item > a i{
    font-size:10px;
}

.nav-item > a::after,
.contact-link::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-9px;
    width:0;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg,#16a34a,#0f8f61);
    transition:.22s ease;
}

.nav-item:hover > a,
.contact-link:hover{
    color:#0f8f61;
}

.nav-item:hover > a::after,
.contact-link:hover::after{
    width:100%;
}

.site-logo{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    z-index:2;
    padding:7px 18px;
    border-radius:22px;
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    box-shadow:0 10px 32px rgba(15,23,42,.05);
}

.site-logo img{
    height:70px;
    width:auto;
    max-width:315px;
    object-fit:contain;
    transition:.25s ease;
}

.site-header.is-scrolled .site-logo img{
    height:58px;
}

.header-actions{
    flex:1;
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:18px;
}

.header-search-form{
    width:260px;
    height:32px;
    display:flex;
    align-items:center;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(15,23,42,.06);
    border-radius:999px;
    overflow:hidden;
    box-shadow:0 8px 20px rgba(15,23,42,.04);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    transition:.22s ease;
}

.header-search-form:focus-within{
    border-color:rgba(15,143,97,.32);
    background:#fff;
    box-shadow:0 12px 26px rgba(15,143,97,.10);
}

.header-search-form input{
    flex:1;
    min-width:0;
    height:100%;
    border:0;
    background:transparent;
    padding:0 12px 0 15px;
    color:#17342d;
    font-size:13px;
    font-weight:800;
    outline:none;
}

.header-search-form input::placeholder{
    color:#94a3b8;
    font-weight:700;
}

.header-search-form button{
    width:36px;
    height:32px;
    flex:0 0 36px;
    border:0;
    background:transparent;
    color:#0f8f61;
    font-size:14px;
    cursor:pointer;
    transition:.22s ease;
}

.header-search-form button:hover{
    background:#0f8f61;
    color:#fff;
}

.mobile-search-form{
    width:100%;
    height:48px;
    display:flex;
    align-items:center;
    background:#fff;
    border:1px solid rgba(15,23,42,.08);
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 8px 22px rgba(15,23,42,.04);
    margin-bottom:8px;
}

.mobile-search-form input{
    flex:1;
    min-width:0;
    height:100%;
    border:0;
    outline:none;
    background:transparent;
    padding:0 14px;
    color:#17342d;
    font-size:14px;
    font-weight:800;
}

.mobile-search-form input::placeholder{
    color:#94a3b8;
    font-weight:700;
}

.mobile-search-form button{
    width:48px;
    height:48px;
    flex:0 0 48px;
    border:0;
    background:#0f8f61;
    color:#fff;
    font-size:16px;
    cursor:pointer;
}

.cart-wrap{
    position:relative;
}

.cart-btn{
    width:52px;
    height:52px;
    border-radius:15px;
    background:rgba(15,143,97,.07);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#071226;
    position:relative;
    text-decoration:none;
    font-size:20px;
    box-shadow:0 10px 24px rgba(15,23,42,.06);
    transition:.22s ease;
}

.cart-btn:hover{
    transform:translateY(-2px);
    background:#0f8f61;
    color:#fff;
}

.cart-btn em{
    position:absolute;
    top:5px;
    right:6px;
    width:21px;
    height:21px;
    border-radius:50%;
    background:#020617;
    color:#fff;
    font-size:12px;
    font-style:normal;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
}

.donate-btn{
    height:52px;
    padding:0 25px;
    background:linear-gradient(135deg,#16a34a,#0f8f61);
    color:#fff;
    border-radius:15px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:15px;
    font-weight:950;
    text-decoration:none;
    box-shadow:0 16px 36px rgba(15,143,97,.22);
    white-space:nowrap;
    transition:.22s ease;
}

.donate-btn:hover{
    color:#fff;
    transform:translateY(-2px);
    box-shadow:0 22px 48px rgba(15,143,97,.30);
}

.mega-menu{
    position:absolute;
    top:48px;
    left:-34px;
    opacity:0;
    visibility:hidden;
    transform:translateY(12px);
    transition:.22s ease;
    z-index:99999;
}

.has-dropdown:hover .mega-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.pro-mega,
.work-mega{
    background:rgba(255,255,255,.94);
    border:1px solid rgba(255,255,255,.75);
    border-radius:22px;
    box-shadow:0 28px 80px rgba(15,23,42,.16);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
}

.pro-mega{
    width:360px;
    padding:18px;
}

.work-mega{
    width:650px;
    padding:26px;
}

.pro-mega::before,
.work-mega::before{
    content:"";
    position:absolute;
    top:-8px;
    left:52px;
    width:16px;
    height:16px;
    background:rgba(255,255,255,.94);
    transform:rotate(45deg);
    border-left:1px solid rgba(255,255,255,.75);
    border-top:1px solid rgba(255,255,255,.75);
}

.mega-head{
    padding:4px 6px 14px;
    border-bottom:1px solid rgba(15,23,42,.07);
    margin-bottom:10px;
}

.mega-head strong{
    display:block;
    color:#12382b;
    font-size:18px;
    font-weight:950;
}

.mega-head small{
    display:block;
    margin-top:4px;
    color:#8b9490;
    font-size:12px;
    font-weight:700;
}

.mega-list{
    display:grid;
    gap:6px;
}

.mega-pro-item{
    display:grid;
    grid-template-columns:46px 1fr;
    align-items:center;
    gap:12px;
    padding:10px;
    border-radius:15px;
    text-decoration:none;
    transition:.22s ease;
}

.mega-pro-item:hover{
    transform:translateX(4px);
    background:rgba(15,143,97,.075);
}

.mega-icon{
    width:46px;
    height:46px;
    border-radius:14px;
    background:#eef5f1;
    color:#0f7f47;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:17px;
    transition:.22s ease;
}

.mega-pro-item:hover .mega-icon{
    background:#0f7f47;
    color:#fff;
}

.mega-text b{
    display:block;
    color:#263b35;
    font-size:15px;
    font-weight:950;
    line-height:1.25;
}

.mega-text small{
    display:block;
    margin-top:3px;
    color:#7b8580;
    font-size:12px;
    font-weight:700;
    line-height:1.25;
}

.work-mega-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
}

.work-mega-col h4{
    margin:0 0 16px;
    color:#111827;
    font-size:17px;
    font-weight:900;
}

.work-mega-item{
    display:grid;
    grid-template-columns:46px 1fr;
    align-items:center;
    gap:14px;
    padding:10px 6px;
    border-radius:14px;
    color:#717171;
    text-decoration:none;
    transition:.22s ease;
}

.work-mega-item:hover{
    transform:translateX(4px);
    background:rgba(15,143,97,.075);
    color:#117a44;
}

.work-mega-item span{
    width:46px;
    height:46px;
    border-radius:12px;
    background:#eeeeee;
    color:#777;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    transition:.22s ease;
}

.work-mega-item span img{
    width:26px;
    height:26px;
    object-fit:contain;
}

.work-mega-item:hover span{
    background:#117a44;
    color:#fff;
}

.work-mega-item b{
    font-size:16px;
    font-weight:850;
    line-height:1.25;
}

.work-mega-empty{
    margin:0;
    padding:12px 0;
    color:#8b9490;
    font-size:13px;
    font-weight:700;
}

.cart-dropdown{
    position:absolute;
    top:64px;
    right:-18px;
    width:330px;
    padding:18px;
    background:rgba(255,255,255,.94);
    border:1px solid rgba(255,255,255,.75);
    border-radius:18px;
    box-shadow:0 28px 80px rgba(15,23,42,.16);
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:.2s ease;
    z-index:99999;
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
}

.cart-dropdown::before{
    content:"";
    position:absolute;
    top:-9px;
    right:34px;
    width:18px;
    height:18px;
    background:rgba(255,255,255,.94);
    border-left:1px solid rgba(255,255,255,.75);
    border-top:1px solid rgba(255,255,255,.75);
    transform:rotate(45deg);
}

.cart-wrap:hover .cart-dropdown{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.cart-dropdown h4{
    margin:0 0 14px;
    color:#111827;
    font-size:19px;
    font-weight:950;
}

.cart-empty{
    min-height:158px;
    border-radius:14px;
    background:#f1f5f3;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:#8b8d95;
    padding:18px;
    margin-bottom:14px;
}

.cart-empty i{
    font-size:25px;
    margin-bottom:10px;
}

.cart-empty p{
    margin:0;
    font-size:15px;
    line-height:1.35;
    font-weight:700;
}

.cart-mini-list{
    display:grid;
    gap:10px;
    margin-bottom:13px;
}

.cart-mini-item{
    display:grid;
    grid-template-columns:64px 1fr;
    gap:12px;
    align-items:center;
    padding:10px;
    border-radius:14px;
    background:rgba(248,250,252,.92);
    transition:.22s ease;
}

.cart-mini-item:hover{
    transform:translateX(3px);
    background:#eefaf3;
}

.cart-mini-item img{
    width:64px;
    height:58px;
    object-fit:cover;
    border-radius:10px;
}

.cart-mini-item strong{
    display:block;
    color:#111827;
    font-size:14px;
    font-weight:950;
    line-height:1.25;
}

.cart-mini-item span{
    display:block;
    margin-top:5px;
    color:#117a44;
    font-size:13px;
    font-weight:900;
}

.cart-mini-total{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:10px 0 13px;
    color:#111827;
    font-weight:900;
}

.cart-mini-total strong{
    color:#117a44;
}

.cart-go-btn{
    width:100%;
    height:48px;
    border-radius:12px;
    background:linear-gradient(135deg,#16a34a,#0f8f61);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    font-size:15px;
    font-weight:950;
    box-shadow:0 14px 30px rgba(15,143,97,.20);
}

.mobile-menu-btn{
    display:none;
    width:42px;
    height:42px;
    border:0;
    border-radius:12px;
    background:rgba(15,143,97,.07);
    color:#071226;
    font-size:20px;
    font-weight:900;
    box-shadow:0 10px 24px rgba(15,23,42,.06);
    transition:.22s ease;
}

.mobile-menu-btn:hover{
    transform:translateY(-2px);
    background:#0f8f61;
    color:#fff;
}

.mobile-menu{
    position:fixed;
    inset:0;
    background:rgba(15,23,42,.50);
    z-index:999999;
    opacity:0;
    visibility:hidden;
    transition:.2s ease;
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
}

.mobile-menu.active{
    opacity:1;
    visibility:visible;
}

.mobile-menu-panel{
    width:min(390px, 88vw);
    height:100%;
    background:linear-gradient(180deg,#fff,#f6fbf8);
    transform:translateX(-100%);
    transition:.25s ease;
    overflow-y:auto;
    box-shadow:20px 0 70px rgba(15,23,42,.24);
}

.mobile-menu.active .mobile-menu-panel{
    transform:translateX(0);
}

.mobile-menu-head{
    height:76px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 16px;
    border-bottom:1px solid rgba(15,23,42,.07);
}

.mobile-menu-head img{
    height:48px;
}

.mobile-menu-head button{
    width:42px;
    height:42px;
    border:0;
    background:#f1f4f5;
    border-radius:12px;
    font-size:28px;
    line-height:1;
}

.mobile-nav{
    padding:15px 16px 26px;
    display:flex;
    flex-direction:column;
    gap:8px;
}

.mobile-nav > a,
.mobile-nav-toggle,
.mobile-extra-links a,
.mobile-nav-sub a,
.mobile-logout-form button{
    width:100%;
    padding:14px;
    border-radius:12px;
    background:rgba(255,255,255,.86);
    border:1px solid rgba(15,23,42,.06);
    box-shadow:0 8px 22px rgba(15,23,42,.035);
    color:#173b2f;
    font-weight:850;
    font-size:14px;
    text-decoration:none;
    text-align:left;
    font-family:inherit;
    transition:.22s ease;
}

.mobile-nav > a:hover,
.mobile-nav-toggle:hover,
.mobile-nav-sub a:hover{
    background:rgba(15,143,97,.08);
    color:#0f8f61;
}

.mobile-nav-sub-title{
    padding:11px 4px 5px;
    color:#117a44;
    font-size:12px;
    font-weight:950;
    text-transform:uppercase;
}

.mobile-donate{
    background:linear-gradient(135deg,#16a34a,#0f8f61)!important;
    color:#fff!important;
    text-align:center!important;
    box-shadow:0 14px 30px rgba(15,143,97,.22);
}

.mobile-nav-toggle{
    display:flex;
    align-items:center;
    justify-content:space-between;
    cursor:pointer;
}

.mobile-nav-toggle i{
    transition:.2s;
    font-size:12px;
}

.mobile-nav-group.active .mobile-nav-toggle i{
    transform:rotate(180deg);
}

.mobile-nav-sub{
    display:none;
    padding:7px 0 0 12px;
}

.mobile-nav-group.active .mobile-nav-sub{
    display:grid;
    gap:7px;
}

.mobile-nav-sub a{
    font-size:13px;
}

.mobile-extra-links{
    display:grid;
    gap:8px;
    margin-top:10px;
    padding-top:12px;
    border-top:1px solid #e5e7eb;
}

@media(max-width:1320px){
    .header-container{padding:0 70px}
    .main-nav{gap:24px}
    .header-actions{gap:14px}
    .header-search-form{width:230px}
    .site-logo img{height:66px;max-width:280px}
    .site-header.is-scrolled .site-logo img{height:56px}
}

@media(max-width:1100px){
    .header-container{padding:0 32px}
    .main-nav{gap:18px}
    .nav-item > a,.contact-link{font-size:15px}
    .header-search-form{width:210px}
    .donate-btn{padding:0 20px}
    .work-mega{width:590px}
}

@media(max-width:991px){
    body{
        padding-top:76px;
    }

    .header-topbar{
        display:none;
    }

    .header-main,
    .header-inner,
    .site-header.is-scrolled .header-main,
    .site-header.is-scrolled .header-inner{
        height:76px;
    }

    .header-container{
        padding:0 14px;
    }

    .mobile-menu-btn{
        display:flex;
        align-items:center;
        justify-content:center;
    }

    .main-nav,
    .contact-link{
        display:none;
    }

    .site-logo{
        position:static;
        transform:none;
        margin:0 auto;
        padding:4px 10px;
        border-radius:16px;
    }

    .site-logo img,
    .site-header.is-scrolled .site-logo img{
        height:50px;
        max-width:190px;
    }

    .header-actions{
        flex:0 0 auto;
        gap:9px;
    }

    .header-search-form{
        display:none;
    }

    .cart-btn{
        width:43px;
        height:43px;
        border-radius:12px;
        font-size:17px;
    }

    .cart-btn em{
        top:3px;
        right:3px;
        width:18px;
        height:18px;
        font-size:10px;
    }

    .cart-dropdown{
        display:none;
    }

    .donate-btn{
        height:43px;
        padding:0 14px;
        font-size:12px;
        border-radius:12px;
    }

    .work-mega-item span img{
        width:24px;
        height:24px;
        object-fit:contain;
    }
}

@media(max-width:480px){
    .site-logo img,
    .site-header.is-scrolled .site-logo img{
        height:42px;
        max-width:148px;
    }

    .donate-btn{
        padding:0 11px;
        font-size:11px;
    }

    .cart-btn{
        display:none;
    }
}
.mega-img-icon{
    width:26px;
    height:26px;
    object-fit:contain;
}