.top-sticky{
    position:sticky;
    top:0;
    z-index:1000;
    background:var(--bg);
}
.site-header{
    position: relative;
    background: var(--bg);
    overflow: visible;
}
.site-header::after{
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:4px;

    background:var(--header-line-color,var(--accent));
}

@media (min-width:783px){
.site-header::after{
        left:50%;
        width:min(71.25rem,calc(100% - 2rem));
        transform:translateX(-50%);
    }
}
/* Only desktop gets offset */
@media (min-width:783px){
    .admin-bar .top-sticky{
        top:32px;
    }
}
.header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    height:4rem
}
.logo-link{
    display:flex;
    align-items:center
}
.logo-img{
    height:27px;
    width:auto;
    display:block
}
.main-nav{
    display:none
}
.menu{
    display:flex;
    gap:var(--space-7);
    list-style:none;
    margin:0;
    padding:0
}
.main-nav .menu li a{
    font-family:var(--font-heading);
    font-weight:600;
    font-size:1rem;
    position:relative;
    padding:6px 0;
    transition:color .2s ease;
}
.main-nav .menu li a:hover{
    color:var(--accent);
}
/* underline animation */
.main-nav .menu li a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-6px;
    width:0;
    height:2px;
    background:var(--accent);
    transition:width .25s ease;
}
.main-nav .menu li a:hover::after{
    width:100%;
}
.header-actions{
    display:flex;
    align-items:center;
    gap:var(--space-2)
}
.icon-btn,
.burger{
    width:2.25rem;
    height:2.25rem;
    border-radius:var(--space-2);
    border:none;
    background:transparent;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:.2s
}
.icon-btn:hover,
.burger:hover{
    background:rgba(24,85,25,.08)
}
.icon-btn:hover .icon{
    stroke:var(--accent)
}
.icon{
    width:1.25rem;
    height:1.25rem;
    stroke:var(--text);
    fill:none;
    stroke-width:2
}
.burger{
    position:relative
}
.burger span{
    position:absolute;
    width:1.125rem;
    height:.125rem;
    background:var(--text);
    transition:.3s,.2s
}
.burger span:nth-child(1){
    transform:translateY(-.3125rem)
}
.burger span:nth-child(2){
    transform:translateY(0)
}
.burger span:nth-child(3){
    transform:translateY(.3125rem)
}
.burger.active span:nth-child(1){
    transform:rotate(45deg)
}
.burger.active span:nth-child(2){
    opacity:0
}
.burger.active span:nth-child(3){
    transform:rotate(-45deg)
}
.burger:hover span{
    background:var(--accent)
}
.mega-menu{
    position:absolute;
    top:100%;
    left:50%;
    width:min(71.25rem,calc(100% - 2rem));
    background:var(--bg);
    border-top:.0625rem solid var(--border);
    opacity:0;
    transform:translate(var(--mega-menu-x,-50%),-.5rem);
    pointer-events:none;
    transition:.2s,.2s
}
.mega-menu.active{
    opacity:1;
    transform:translate(var(--mega-menu-x,-50%),0);
    pointer-events:auto;
    box-shadow:0 var(--space-2) var(--space-8) rgba(0,0,0,.05)
}
.mega-inner{
    padding:var(--space-7) var(--space-4) var(--space-9)
}
.mega-search{
    margin-bottom:var(--space-7)
}
.mega-search form{
    position:relative
}
.mega-search input{
    width:100%;
    height:3rem;
    border-radius:var(--space-3);
    border:.0625rem solid var(--border);
    padding:0 var(--space-8) 0 var(--space-3);
    font-size:.9375rem;
    background:var(--bg);
    color:var(--text)
}
.mega-search input:focus{
    border-color:var(--accent);
    box-shadow:0 0 0 var(--space-1) rgba(24,85,25,.15);
    outline:none
}
.mega-search button{
    position:absolute;
    right:var(--space-2);
    top:50%;
    transform:translateY(-50%);
    width:2.25rem;
    height:2.25rem;
    border-radius:var(--space-2);
    background:transparent;
    border:none;
    cursor:pointer
}
.mega-search button:hover{
    background:rgba(24,85,25,.08)
}
.mega-search button:hover .icon{
    stroke:var(--accent)
}
.mega-menu-root{
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:var(--space-5);
    list-style:none;
    margin:0;
    padding:0;
}
.mega-menu-root > li.menu-item-has-children > a{
    font-weight:700;
    margin-bottom:var(--space-3);
    display:block;
}
.mega-menu-root .sub-menu{
    list-style:none;
    padding:0;
    margin:0;
}
.mega-menu-root .sub-menu li{
    margin-bottom:var(--space-2);
}
.mega-menu-root .sub-menu a{
    font-size:.875rem;
    color:var(--muted);
}
.mega-menu-root .sub-menu a:hover{
    color:var(--accent);
}

@media (max-width:1023px){
.mega-menu{
        position:fixed;
        top:calc(4rem + var(--admin-bar,0px));
        left:0;
        right:auto;
        width:100vw;
        max-width:100vw;
        height:calc(100dvh - 4rem - var(--admin-bar,0px));
        overflow-x:hidden;
        overflow-y:auto;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior:contain;
        z-index:2000;
        transform:translate3d(0,-.5rem,0);
    }
.mega-menu.active{
        transform:translate3d(0,0,0);
    }
.mega-inner{
        width:100%;
        max-width:none;
        margin:0;
        padding:var(--space-4) max(16px, env(safe-area-inset-right)) var(--space-7) max(16px, env(safe-area-inset-left));
        box-sizing:border-box;
    }
.mega-menu-root > li{
        padding-bottom:var(--space-3);
        border-bottom:.0625rem solid var(--border);
    }
.mega-menu-root > li > a{
        font-size:1rem;
        font-weight:700;
        margin-bottom:var(--space-2);
        display:block;
    }
.mega-menu-root .sub-menu{
        display:block;
        margin-top:var(--space-2);
    }
.mega-menu-root .sub-menu li{
        margin-bottom:6px;
    }
.mega-menu-root .sub-menu a{
        font-size:.9rem;
        color:var(--muted);
    }
}

@media (min-width:1024px){
.mega-menu-root{
        grid-template-columns:repeat(5, 1fr);
        gap:var(--space-8);
    }

}
:root{
    --admin-bar:0px
}
.admin-bar{
    --admin-bar:32px
}
@media (max-width:782px){
.admin-bar{
        --admin-bar:46px
}
}
body.menu-open{
    overflow:hidden
}
@media (min-width:1024px){
.main-nav{
        display:block
}
}
.load-more-wrap{
    margin-top:var(--space-7);
    display:flex;
    justify-content:center
}
.loadMoreBtn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:.6rem 1.5rem;
    font-size:.85rem;
    font-weight:600;
    font-family:var(--font-body);
    border-radius:999px;
    border:none;
    background:var(--accent);
    color:#fff;
    cursor:pointer;
    transition:.2s
}
.loadMoreBtn:hover{
    background:#111;
    color:#fff
}
.loadMoreBtn:active{
    transform:scale(.97)
}
.loadMoreBtn.loading{
    opacity:.7;
    pointer-events:none
}
/* ===== BAR ===== */
.city-bar{
    background:var(--bg);
}
.city-bar-inner{
    max-width:1140px;
    margin:0 auto;
    padding:0 16px;
    min-height:2.75rem;
    border-bottom:1px solid var(--border);
    display:flex;
    align-items:center;
    gap:0;
    overflow:hidden;
}
/* ===== LABEL ===== */
.trending-label{
    display:flex;
    align-items:center;
    align-self:stretch;
    flex:0 0 auto;
    white-space:nowrap;
    position:relative;
    padding-right:14px;
    margin-right:14px;
}
.trending-label span{
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--text);
    line-height:1.2;
}
.trending-label::after{
    content:"";
    position:absolute;
    right:0;
    top:50%;
    width:1px;
    height:16px;
    background:var(--border);
    transform:translateY(-50%);
}
/* ===== LIST ===== */
.trending-list{
    display:flex;
    align-items:center;
    flex:1 1 auto;
    min-width:0;
    gap:16px;
    margin-left:0;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
}
.trending-list::-webkit-scrollbar{
    display:none;
}
/* ===== LINKS ===== */
.trending-link{
    position:relative;
    display:inline-flex;
    align-items:center;
    min-height:2.75rem;
    font-size:.85rem;
    color:var(--muted);
    text-decoration:none;
    white-space:nowrap;
    line-height:1.2;
    transition:.2s;
    opacity:.85;
}
.trending-link:not(:last-child)::after{
    content:"";
    display:inline-block;
    width:2px;
    height:2px;
    background:rgba(0,0,0,.25);
    border-radius:50%;
    margin-left:16px;
}
.trending-link:hover{
    color:var(--text);
    opacity:1;
}
.trending-link.active{
    color:var(--accent);
    font-weight:600;
    opacity:1;
}
@media (max-width:640px){
    .city-bar-inner{
        padding:0 12px;
        min-height:2.625rem;
    }
    .trending-label{
        padding-right:12px;
        margin-right:12px;
    }
    .trending-link{
        min-height:2.625rem;
        font-size:.82rem;
    }
    .trending-list{
        gap:14px;
    }
    .trending-link:not(:last-child)::after{
        margin-left:14px;
    }
}