/* ========================================================
   Fuji Electric Framework
   Responsive Taxonomy Sidebar Engine
======================================================== */


/* --------------------------------------------------------
   Sidebar Container
-------------------------------------------------------- */

.fesp-sidebar {

    display:flex;

    flex-direction:column;

    gap:16px;

    width:100%;

    font-family:inherit;

}



/* --------------------------------------------------------
   Parent Group
-------------------------------------------------------- */

.fesp-sidebar-group {

    border:1px solid #dfe5ec;

    border-radius:8px;

    overflow:hidden;

    background:#ffffff;

}



/* --------------------------------------------------------
   Parent Button
-------------------------------------------------------- */

.fesp-sidebar .fesp-sidebar-parent {

    width:100%;

    display:flex;

    justify-content:space-between;

    align-items:center;


    padding:16px 20px;

    margin:0;


    border:0;

    outline:0;

    box-shadow:none;


    cursor:pointer;


    background:#005bac;

    color:#ffffff;


    font-size:16px;

    font-weight:600;

    line-height:1.4;

    text-align:left;


    appearance:none;

    -webkit-appearance:none;


    transition:background .25s ease;

}



.fesp-sidebar .fesp-sidebar-parent:hover,
.fesp-sidebar .fesp-sidebar-parent:focus {

    background:#004b90;

    color:#ffffff;

    outline:none;

}

.fesp-sidebar-group.is-active .fesp-sidebar-parent{

    background:#004b90;

    color:#ffffff;

}



.fesp-sidebar-parent-title {

    flex:1;

}



/* --------------------------------------------------------
   Parent Accordion Icon Circle
-------------------------------------------------------- */

.fesp-sidebar-parent-icon {

    display:flex;

    align-items:center;

    justify-content:center;


    width:28px;

    height:28px;


    flex:0 0 28px;


    margin-left:12px;


    border-radius:50%;


    background:#ffffff;


    transition:

        background .25s ease,

        transform .25s ease;

}



.fesp-sidebar-parent-icon i {

    color:#005bac;

    font-size:13px;

    line-height:1;


    transition:transform .25s ease;

}



/* Rotate when accordion opens */

.fesp-sidebar-group.is-open
.fesp-sidebar-parent-icon i {

    transform:rotate(180deg);

}



/* --------------------------------------------------------
   Accordion Panel
-------------------------------------------------------- */

.fesp-sidebar-children {

    max-height:0;

    overflow:hidden;

    opacity:0;


    transition:

        max-height .35s ease,

        opacity .25s ease;

}



.fesp-sidebar-group.is-open
.fesp-sidebar-children {

    max-height:1200px;

    opacity:1;

}



/* --------------------------------------------------------
   Child List
-------------------------------------------------------- */

.fesp-sidebar-list {

    margin:0;

    padding:0;

    list-style:none;

}



.fesp-sidebar-item {

    margin:0;

    padding:0;

    border-bottom:1px solid #ececec;

}



.fesp-sidebar-item:last-child {

    border-bottom:none;

}



/* --------------------------------------------------------
   Child Links
-------------------------------------------------------- */

.fesp-sidebar .fesp-sidebar-link,
.fesp-sidebar .fesp-sidebar-link:link,
.fesp-sidebar .fesp-sidebar-link:visited {


    display:flex;

    align-items:center;

    justify-content:flex-start;


    width:100%;


    padding:14px 20px;

    margin:0;


    background:#ffffff;


    color:#333333;


    text-decoration:none;


    font-size:15px;

    font-weight:500;


    line-height:1.5;



    transition:

        background .35s ease,

        color .35s ease,

        padding-left .35s ease,

        border-color .35s ease;

}



/* --------------------------------------------------------
   Child Icon
-------------------------------------------------------- */

.fesp-sidebar-icon {

    display:flex;

    align-items:center;

    justify-content:center;


    width:18px;

    flex:0 0 18px;


    margin-right:10px;

}



.fesp-sidebar-icon i {

    color:#005bac;

    font-size:12px;

    line-height:1;

}



/* --------------------------------------------------------
   Child Label
-------------------------------------------------------- */

.fesp-sidebar-label {

    display:block;

    text-align:left;

}



/* --------------------------------------------------------
   Child Hover
-------------------------------------------------------- */

.fesp-sidebar .fesp-sidebar-link:hover,
.fesp-sidebar .fesp-sidebar-link:focus {


    background:#f4f8fc;

    color:#005bac;


    text-decoration:none;

    outline:none;


    padding-left:24px;

}



.fesp-sidebar .fesp-sidebar-link:active {

    background:#e8f2fc;

    color:#005bac;

}

/* --------------------------------------------------------
   Active Child
-------------------------------------------------------- */

.fesp-sidebar .fesp-sidebar-link.is-active,
.fesp-sidebar .fesp-sidebar-link.is-active:link,
.fesp-sidebar .fesp-sidebar-link.is-active:visited{

    background:#eaf4ff;

    color:#005bac;

    font-weight:600;

    border-left:4px solid #005bac;

    padding-left:20px;

}

.fesp-sidebar .fesp-sidebar-link.is-active:hover,
.fesp-sidebar .fesp-sidebar-link.is-active:focus{

    background:#eaf4ff;

    color:#005bac;

    padding-left:20px;

}


/**
 * --------------------------------------------------------
 * FESP Product Catalog
 * Hide JetSmartFilters UI on all devices
 * Sidebar controls filtering
 * --------------------------------------------------------
 */

#product-catalog-filter {

    display:none !important;

}



/* --------------------------------------------------------
   Tablet
-------------------------------------------------------- */

@media (max-width:1024px){


    .fesp-sidebar {

        gap:14px;

    }



    .fesp-sidebar .fesp-sidebar-parent {

        padding:14px 18px;

        font-size:15px;

    }



    .fesp-sidebar .fesp-sidebar-link {

        padding:12px 18px;

        font-size:15px;

    }


}



/* --------------------------------------------------------
   Mobile
-------------------------------------------------------- */

@media (max-width:767px){


    .fesp-sidebar {

        gap:12px;

    }



    .fesp-sidebar .fesp-sidebar-parent {

        padding:14px 16px;

        font-size:15px;

    }



    .fesp-sidebar .fesp-sidebar-link {

        padding:12px 16px;

        font-size:14px;

    }



    .fesp-sidebar .fesp-sidebar-link:hover {

        padding-left:20px;

    }


}