.cd-accordion-menu {
    padding-left: 0;
    list-style: none;
    border: 1px solid #dddddd;
    border-radius: 2px;
}
.cd-accordion-menu ul {
    display: none;
    padding-left: 0;
    list-style: none;
}
.cd-accordion-menu li {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.cd-accordion-menu input[type=checkbox] {
    /* hide native checkbox */
    position: absolute;
    opacity: 0;
}
.cd-accordion-menu label, .cd-accordion-menu a {
    position: relative;
    display: block;
    box-shadow: inset 0 -1px #dddddd;
    font-weight: 400;
    margin: 0;
}
.no-touch .cd-accordion-menu label:hover, .no-touch .cd-accordion-menu a:hover {
    background: #eee;
}
.cd-accordion-menu label::before, .cd-accordion-menu label::after, .cd-accordion-menu a::after {
    /* icons */
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.cd-accordion-menu label {
    cursor: pointer;
}
.cd-accordion-menu label::before, .cd-accordion-menu label::after {
    background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iNjRweCIgaGVpZ2h0PSIxNnB4IiB2aWV3Qm94PSIwIDAgNjQgMTYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDY0IDE2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAsIDApIj4NCgk8cG9seWdvbiBmaWxsPSIjMzMzMzMzIiBwb2ludHM9IjgsMTIuNjAwMDAwNCAwLjMsNC45MDAwMDAxIDEuNywzLjQwMDAwMDEgOCw5LjY5OTk5OTggMTQuMzAwMDAwMiwzLjQwMDAwMDEgMTUuNjk5OTk5OCw0LjkwMDAwMDENCgkJCSIvPg0KPC9nPg0KPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTYsIDApIj4NCgk8cGF0aCBmaWxsPSIjNkM3MDc5IiBkPSJNMTUsM0g4LjM5OTk5OTZMNS42OTk5OTk4LDAuM0M1LjUsMC4xLDUuMzAwMDAwMiwwLDUsMEgxQzAuNCwwLDAsMC40LDAsMXYxNGMwLDAuNjAwMDAwNCwwLjQsMSwxLDFoMTQNCgkJYzAuNjAwMDAwNCwwLDEtMC4zOTk5OTk2LDEtMVY0QzE2LDMuNDAwMDAwMSwxNS42MDAwMDA0LDMsMTUsM3oiLz4NCjwvZz4NCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyLCAwKSI+DQoJPHBhdGggZmlsbD0iIzZDNzA3OSIgZD0iTTE1LjgwMDAwMDIsNy40MDAwMDAxQzE1LjYwMDAwMDQsNy4xOTk5OTk4LDE1LjMwMDAwMDIsNywxNSw3SDQNCgkJQzMuNTk5OTk5OSw3LDMuMiw3LjE5OTk5OTgsMy4wOTk5OTk5LDcuNTk5OTk5OWwtMyw3LjAwMDAwMDVDLTAuMSwxNS4xOTk5OTk4LDAuMSwxNiwxLDE2aDExDQoJCWMwLjM5OTk5OTYsMCwwLjgwMDAwMDItMC4xOTk5OTk4LDAuODk5OTk5Ni0wLjYwMDAwMDRsMy03QzE2LjEwMDAwMDQsOC4xMDAwMDA0LDE2LDcuNjk5OTk5OCwxNS44MDAwMDAyLDcuNDAwMDAwMXoiLz4NCgk8cGF0aCBmaWxsPSIjNkM3MDc5IiBkPSJNMS4yLDYuODAwMDAwMkMxLjcsNS42OTk5OTk4LDIuOCw1LDQsNWg5VjNjMC0wLjU5OTk5OTktMC4zOTk5OTk2LTEtMS0xSDYuNDAwMDAwMUw0LjY5OTk5OTgsMC4zDQoJCUM0LjUsMC4xLDQuMzAwMDAwMiwwLDQsMEgxQzAuNCwwLDAsMC40LDAsMXY4LjY5OTk5OThMMS4yLDYuODAwMDAwMnoiLz4NCjwvZz4NCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDQ4LCAwKSI+DQoJPHBhdGggZmlsbD0iIzZDNzA3OSIgZD0iTTE1LDBIMUMwLjQsMCwwLDAuNCwwLDF2MTRjMCwwLjYwMDAwMDQsMC40LDEsMSwxaDE0YzAuNjAwMDAwNCwwLDEtMC4zOTk5OTk2LDEtMVYxDQoJCUMxNiwwLjQsMTUuNjAwMDAwNCwwLDE1LDB6IE02LDRjMC41OTk5OTk5LDAsMSwwLjQwMDAwMDEsMSwxUzYuNTk5OTk5OSw2LDYsNlM1LDUuNTk5OTk5OSw1LDVTNS40MDAwMDAxLDQsNiw0eiBNMywxMmwyLTRsMiwybDMtNA0KCQlsMyw2SDN6Ii8+DQo8L2c+DQo8L3N2Zz4NCg==');
    background-repeat: no-repeat;
}
.cd-accordion-menu label::before {
    /* arrow icon */
    left: 18px;
    background-position: 0 0;
    -webkit-transform: translateY(-50%) rotate(-90deg);
    -moz-transform: translateY(-50%) rotate(-90deg);
    -ms-transform: translateY(-50%) rotate(-90deg);
    -o-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
}
.cd-accordion-menu label::after {
    /* folder icons */
    left: 41px;
    background-position: -16px 0;
}
.cd-accordion-menu a::after {
    /* image icon */
    left: 36px;
    background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iNjRweCIgaGVpZ2h0PSIxNnB4IiB2aWV3Qm94PSIwIDAgNjQgMTYiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDY0IDE2IiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAsIDApIj4NCgk8cG9seWdvbiBmaWxsPSIjMzMzMzMzIiBwb2ludHM9IjgsMTIuNjAwMDAwNCAwLjMsNC45MDAwMDAxIDEuNywzLjQwMDAwMDEgOCw5LjY5OTk5OTggMTQuMzAwMDAwMiwzLjQwMDAwMDEgMTUuNjk5OTk5OCw0LjkwMDAwMDENCgkJCSIvPg0KPC9nPg0KPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTYsIDApIj4NCgk8cGF0aCBmaWxsPSIjNkM3MDc5IiBkPSJNMTUsM0g4LjM5OTk5OTZMNS42OTk5OTk4LDAuM0M1LjUsMC4xLDUuMzAwMDAwMiwwLDUsMEgxQzAuNCwwLDAsMC40LDAsMXYxNGMwLDAuNjAwMDAwNCwwLjQsMSwxLDFoMTQNCgkJYzAuNjAwMDAwNCwwLDEtMC4zOTk5OTk2LDEtMVY0QzE2LDMuNDAwMDAwMSwxNS42MDAwMDA0LDMsMTUsM3oiLz4NCjwvZz4NCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyLCAwKSI+DQoJPHBhdGggZmlsbD0iIzZDNzA3OSIgZD0iTTE1LjgwMDAwMDIsNy40MDAwMDAxQzE1LjYwMDAwMDQsNy4xOTk5OTk4LDE1LjMwMDAwMDIsNywxNSw3SDQNCgkJQzMuNTk5OTk5OSw3LDMuMiw3LjE5OTk5OTgsMy4wOTk5OTk5LDcuNTk5OTk5OWwtMyw3LjAwMDAwMDVDLTAuMSwxNS4xOTk5OTk4LDAuMSwxNiwxLDE2aDExDQoJCWMwLjM5OTk5OTYsMCwwLjgwMDAwMDItMC4xOTk5OTk4LDAuODk5OTk5Ni0wLjYwMDAwMDRsMy03QzE2LjEwMDAwMDQsOC4xMDAwMDA0LDE2LDcuNjk5OTk5OCwxNS44MDAwMDAyLDcuNDAwMDAwMXoiLz4NCgk8cGF0aCBmaWxsPSIjNkM3MDc5IiBkPSJNMS4yLDYuODAwMDAwMkMxLjcsNS42OTk5OTk4LDIuOCw1LDQsNWg5VjNjMC0wLjU5OTk5OTktMC4zOTk5OTk2LTEtMS0xSDYuNDAwMDAwMUw0LjY5OTk5OTgsMC4zDQoJCUM0LjUsMC4xLDQuMzAwMDAwMiwwLDQsMEgxQzAuNCwwLDAsMC40LDAsMXY4LjY5OTk5OThMMS4yLDYuODAwMDAwMnoiLz4NCjwvZz4NCjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKDQ4LCAwKSI+DQoJPHBhdGggZmlsbD0iIzZDNzA3OSIgZD0iTTE1LDBIMUMwLjQsMCwwLDAuNCwwLDF2MTRjMCwwLjYwMDAwMDQsMC40LDEsMSwxaDE0YzAuNjAwMDAwNCwwLDEtMC4zOTk5OTk2LDEtMVYxDQoJCUMxNiwwLjQsMTUuNjAwMDAwNCwwLDE1LDB6IE02LDRjMC41OTk5OTk5LDAsMSwwLjQwMDAwMDEsMSwxUzYuNTk5OTk5OSw2LDYsNlM1LDUuNTk5OTk5OSw1LDVTNS40MDAwMDAxLDQsNiw0eiBNMywxMmwyLTRsMiwybDMtNA0KCQlsMyw2SDN6Ii8+DQo8L2c+DQo8L3N2Zz4NCg==') no-repeat -48px 0;
}
.cd-accordion-menu input[type=checkbox]:checked + label::before {
    /* rotate arrow */
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.cd-accordion-menu input[type=checkbox]:checked + label::after {
    /* show open folder icon if item is checked */
    background-position: -32px 0;
}
.cd-accordion-menu input[type=checkbox]:checked + label + ul,
.cd-accordion-menu input[type=checkbox]:checked + label:nth-of-type(n) + ul {
    /* use label:nth-of-type(n) to fix a bug on safari (<= 8.0.8) with multiple adjacent-sibling selectors*/
    /* show children when item is checked */
    display: block;
}
.cd-accordion-menu ul label,
.cd-accordion-menu ul a {
    background: #F8F8F8;
    box-shadow: inset 0 -1px #dddddd;
    padding-left: 82px;
    margin: 0;
}
.no-touch .cd-accordion-menu ul label:hover, .no-touch
.cd-accordion-menu ul a:hover {
    background: #eee;
}
.cd-accordion-menu > li:last-of-type > label,
.cd-accordion-menu > li:last-of-type > a,
.cd-accordion-menu > li > ul > li:last-of-type label,
.cd-accordion-menu > li > ul > li:last-of-type a {
    box-shadow: none;
}
.cd-accordion-menu ul label::before {
    left: 36px;
}
.cd-accordion-menu ul label::after,
.cd-accordion-menu ul a::after {
    left: 59px;
}
.cd-accordion-menu ul ul label,
.cd-accordion-menu ul ul a {
    padding-left: 100px;
}
.cd-accordion-menu ul ul label::before {
    left: 54px;
}
.cd-accordion-menu ul ul label::after,
.cd-accordion-menu ul ul a::after {
    left: 77px;
}
.cd-accordion-menu ul ul ul label,
.cd-accordion-menu ul ul ul a {
    padding-left: 118px;
}
.cd-accordion-menu ul ul ul label::before {
    left: 72px;
}
.cd-accordion-menu ul ul ul label::after,
.cd-accordion-menu ul ul ul a::after {
    left: 95px;
}
@media only screen and (min-width: 600px) {
    .cd-accordion-menu label, .cd-accordion-menu a {
        padding: 10px 10px 10px 60px;
    }
    .cd-accordion-menu label::before {
        left: 10px;
    }
    .cd-accordion-menu label::after {
        left: 35px;
    }
    .cd-accordion-menu ul label,
    .cd-accordion-menu ul a {
        padding-left: 80px;
    }
    .cd-accordion-menu ul label::before {
        left: 32px;
    }
    .cd-accordion-menu ul label::after,
    .cd-accordion-menu ul a::after {
        left: 57px;
    }
    .cd-accordion-menu ul ul label,
    .cd-accordion-menu ul ul a {
        padding-left: 105px;
    }
    .cd-accordion-menu ul ul label::before {
        left: 57px;
    }
    .cd-accordion-menu ul ul label::after,
    .cd-accordion-menu ul ul a::after {
        left: 80px;
    }
    .cd-accordion-menu ul ul ul label,
    .cd-accordion-menu ul ul ul a {
        padding-left: 130px;
    }
    .cd-accordion-menu ul ul ul label::before {
        left: 96px;
    }
    .cd-accordion-menu ul ul ul label::after,
    .cd-accordion-menu ul ul ul a::after {
        left: 105px;
    }
}
.cd-accordion-menu.animated label::before {
    /* this class is used if jquery is used to animate the accordion */
    -webkit-transition: -webkit-transform 0.3s;
    -moz-transition: -moz-transform 0.3s;
    transition: transform 0.3s;
}