/* =========================================================
   KING OF THE HALF
   GLOBAL HEADER + NAVIGATION
   This is the ONLY stylesheet that controls the shared nav.
   ========================================================= */

*,
*::before,
*::after{
    box-sizing:border-box;
}


/* =========================================================
   GLOBAL HEADER
   ========================================================= */

.koh-global-header{
    width:100%;
    margin:0;
    background:#030405;
    border-bottom:1px solid #b77b18;
    z-index:10000;
}

.koh-global-brand{
    display:block;
    text-decoration:none;
}

.koh-global-brand img{
    display:block;
    object-fit:contain;
}


/* =========================================================
   SHARED NAV
   ========================================================= */

.koh-mobile-icon-nav{
    margin:0;
    padding:0;
    gap:0;
    column-gap:0;
    row-gap:0;
    background:#050607;
}

.koh-mobile-icon-nav a{
    position:relative;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-decoration:none;
    color:#eeeeee;
    border-right:1px solid rgba(255,255,255,.07);

    /* No inherited site animation */
    animation:none;
    transition:none;
}

.koh-mobile-icon-nav a:last-child{
    border-right:0;
}


/* Prevent ANY old icon/pseudo layer */
.koh-mobile-icon-nav a::before,
.koh-mobile-icon-nav a::after{
    content:none!important;
    display:none!important;
    width:0!important;
    height:0!important;
    background:none!important;
    background-image:none!important;
    -webkit-mask:none!important;
    mask:none!important;
    animation:none!important;
    transition:none!important;
}


/* Actual navigation PNG icons */

.koh-nav-icon{
    display:block;
    object-fit:contain;
    object-position:center;
    flex:none;
    animation:none;
    transition:none;
}


/* Register pen/document SVG */

.koh-nav-register-icon{
    display:block;
    fill:none;
    stroke:#39d353;
    stroke-width:2.6;
    stroke-linecap:round;
    stroke-linejoin:round;
    flex:none;
    animation:none;
    transition:none;
}

.koh-mobile-icon-nav span{
    margin:0;
    padding:0;
    font-family:Inter,Arial,sans-serif;
    font-weight:800;
    color:#eeeeee;
    white-space:nowrap;
}


/* =========================================================
   ACTIVE STATES
   ========================================================= */

.koh-mobile-icon-nav a.active{
    background:
      linear-gradient(
        180deg,
        rgba(227,165,47,.12),
        rgba(227,165,47,.015)
      );
}

.koh-mobile-icon-nav a.active span{
    color:#e3a52f;
}


/* Registration remains green while open */

.koh-mobile-icon-nav a[data-nav="register"]{
    background:
      linear-gradient(
        180deg,
        rgba(57,211,83,.12),
        rgba(57,211,83,.02)
      );
}

.koh-mobile-icon-nav a[data-nav="register"] span{
    color:#39d353;
}


/* =========================================================
   PHONE / TABLET
   ========================================================= */

@media(max-width:900px){

    .koh-global-header{
        position:relative;
        height:110px;
        min-height:110px;
        display:flex;
        align-items:center;
        padding:0 20px;
    }

    .koh-global-brand{
        width:255px;
        max-width:72vw;
    }

    .koh-global-brand img{
        width:100%;
        height:auto;
    }


    .koh-mobile-icon-nav{
        position:sticky;
        top:0;
        z-index:99999;

        display:grid;
        grid-template-columns:repeat(6,minmax(0,1fr));

        width:100%;
        height:74px;

        border-bottom:1px solid #b77b18;
        box-shadow:0 6px 18px rgba(0,0,0,.45);
    }


    .koh-mobile-icon-nav a{
        width:100%;
        min-width:0;
        height:74px;
    }


    .koh-nav-icon{
        width:46px;
        height:38px;
        margin:0 0 -2px 0;
    }


    .koh-nav-register-icon{
        width:34px;
        height:38px;
        margin:0 0 -2px 0;
    }


    .koh-mobile-icon-nav span{
        font-size:8px;
        line-height:12px;
        letter-spacing:.65px;
    }
}


/* =========================================================
   LAPTOP / DESKTOP
   ========================================================= */

@media(min-width:901px){

    .koh-global-header{
        position:sticky;
        top:0;

        width:100vw;
        max-width:none;

        height:92px;
        min-height:92px;

        display:flex;
        align-items:center;

        margin-left:calc(50% - 50vw);
        margin-right:0;

        padding-left:3vw;
        padding-right:3vw;
    }


    .koh-global-brand{
        flex:0 0 430px;
        width:430px;
        max-width:30vw;
        height:82px;

        display:flex;
        align-items:center;
    }


    .koh-global-brand img{
        width:100%;
        height:74px;
        object-position:left center;
    }


    .koh-global-header .koh-mobile-icon-nav{
        flex:none;

        display:grid;
        grid-template-columns:repeat(6,98px);

        width:588px;
        min-width:588px;
        max-width:588px;
        height:82px;

        margin-left:auto;
        margin-right:0;

        background:transparent;
    }


    .koh-mobile-icon-nav a{
        width:98px;
        height:82px;
    }


    .koh-nav-icon{
        width:52px;
        height:43px;
        margin-bottom:-2px;
    }


    .koh-nav-register-icon{
        width:40px;
        height:43px;
        margin-bottom:-2px;
    }


    .koh-mobile-icon-nav span{
        font-size:9px;
        line-height:13px;
        letter-spacing:.7px;
    }
}
