/*==============================================================
#
# NovaCore Header
#
==============================================================*/

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

.nc-header{

    position:relative;

    z-index:1000;

    background:var(--nc-bg);

    border-bottom:1px solid var(--nc-border);

}

/*--------------------------------------------------------------
# Container
--------------------------------------------------------------*/

.nc-header__container{

    display:flex;

    align-items:center;

    justify-content:space-between;

    min-height:88px;

    gap:40px;

}

/*--------------------------------------------------------------
# Left
--------------------------------------------------------------*/

.nc-header__left{

    display:flex;

    align-items:center;

    flex-shrink:0;

}

/*--------------------------------------------------------------
# Center
--------------------------------------------------------------*/

.nc-header__center{

    flex:1;

    display:flex;

    justify-content:center;

}

/*--------------------------------------------------------------
# Right
--------------------------------------------------------------*/

.nc-header__right{

    display:flex;

    align-items:center;

    flex-shrink:0;

}

/*==============================================================
#
# Branding
#
==============================================================*/

.nc-header__branding{

    display:flex;

    align-items:center;

}

.nc-header__logo{

    display:flex;

    align-items:center;

    text-decoration:none;

    color:inherit;

}

.nc-header__logo img,
.nc-header__logo-image{

    display:block;

    width:auto;

    max-height:48px;

}

.nc-header__site-info{

    display:flex;

    flex-direction:column;

}

.nc-header__site-title{

    margin:0;

    font-size:28px;

    font-weight:700;

    line-height:1.1;

    color:var(--nc-text);

}

.nc-header__site-tagline{

    margin-top:4px;

    font-size:13px;

    color:var(--nc-text-light);

}

/*==============================================================
#
# Navigation
#
==============================================================*/

.nc-header__navigation{

    display:flex;

    align-items:center;

}

.nc-menu{

    display:flex;

    align-items:center;

    gap:40px;

    margin:0;

    padding:0;

    list-style:none;

}

.nc-menu>li{

    position:relative;

}

.nc-menu>li>a{

    position:relative;

    display:flex;

    align-items:center;

    height:88px;

    font-size:15px;

    font-weight:600;

    color:var(--nc-text);

    text-decoration:none;

    transition:color .25s ease;

}

/*--------------------------------------------------------------
# Animated Underline
--------------------------------------------------------------*/

.nc-menu>li>a::after{

    content:"";

    position:absolute;

    left:0;

    right:0;

    bottom:20px;

    height:2px;

    background:var(--nc-primary);

    transform:scaleX(0);

    transform-origin:center;

    transition:transform .25s ease;

}

.nc-menu>li:hover>a,

.nc-menu>.current-menu-item>a,

.nc-menu>.current-menu-parent>a,

.nc-menu>.current_page_item>a{

    color:var(--nc-primary);

}

.nc-menu>li:hover>a::after,

.nc-menu>.current-menu-item>a::after,

.nc-menu>.current-menu-parent>a::after,

.nc-menu>.current_page_item>a::after{

    transform:scaleX(1);

}

/*==============================================================
#
# Dropdown
#
==============================================================*/

.sub-menu{

    position:absolute;

    top:100%;

    left:0;

    min-width:240px;

    margin:0;

    padding:16px 0;

    list-style:none;

    background:#fff;

    border:1px solid var(--nc-border);

    border-radius:18px;

    box-shadow:var(--nc-shadow);

    opacity:0;

    visibility:hidden;

    transform:translateY(12px);

    transition:all .25s ease;

}

.menu-item:hover>.sub-menu{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

.sub-menu li{

    margin:0;

}

.sub-menu a{

    display:block;

    padding:12px 20px;

    text-decoration:none;

    font-size:14px;

    font-weight:500;

    color:var(--nc-text);

    transition:all .2s ease;

}

.sub-menu a:hover{

    background:var(--nc-bg-soft);

    color:var(--nc-primary);

}

/*==============================================================
#
# Actions
#
==============================================================*/

.nc-header__actions{

    display:flex;

    align-items:center;

    gap:16px;

}

/*--------------------------------------------------------------
# Header Action
--------------------------------------------------------------*/

.nc-header-action{

    display:flex;

    align-items:center;

    justify-content:center;

    width:46px;

    height:46px;

    border:none;

    border-radius:50%;

    background:var(--nc-bg-soft);

    color:var(--nc-text);

    cursor:pointer;

    transition:
        background-color .25s ease,
        color .25s ease,
        transform .25s ease;

}

.nc-header-action:hover{

    background:var(--nc-primary);

    color:#fff;

    transform:translateY(-2px);

}

.nc-header-action .dashicons{

    font-size:20px;

    width:20px;

    height:20px;

}

/*==============================================================
#
# Sticky (Foundation)
#
==============================================================*/

.nc-header.is-sticky{

    position:fixed;

    top:0;

    left:0;

    right:0;

    background:rgba(255,255,255,.90);

    backdrop-filter:blur(16px);

    box-shadow:var(--nc-shadow-sm);

    animation:nc-header-slide .25s ease;

}

@keyframes nc-header-slide{

    from{

        transform:translateY(-100%);

    }

    to{

        transform:translateY(0);

    }

}

/*==============================================================
#
# Responsive
#
==============================================================*/

@media (max-width:1024px){

    .nc-menu{

        gap:24px;

    }

}

@media (max-width:768px){

    .nc-header__center{

        display:none;

    }

    .nc-header__container{

        min-height:72px;

    }

    .nc-header__logo img{

        max-height:40px;

    }

}