body {
    font: 100% "Open sans", "Trebuchet MS", sans-serif;
}

a {
    text-decoration: none;
}

ol,ul{list-style:none;margin:0;padding:0;border:0;vertical-align:baseline;}

/**
 * Hidden fallback
 */
[hidden] {
    display: none;
    visibility: hidden;
}

/**
 * Styling top level items
 */
.nav>ul{
    border: 3px solid #06A3DA;
    border-radius: 10px;
    width: 100%;
    box-shadow: inset 0 0 0 1px rgb(6 163 218);
}
.nav>ul>li:first-child,.nav>ul>li:first-child label{border-top-left-radius: 8px;border-top-right-radius: 8px;}
.nav>ul>li:last-child label{border-bottom-left-radius: 8px;border-bottom-right-radius: 8px;}
.nav a,
.nav label {
    display: block;
    padding: 0.85rem;
    transition: all 0.25s ease-in;
}
.nav a:focus, .nav a:hover,
.nav label:focus,
.nav label:hover {
    color: #FFFFFF;
    background: #06A3DA;
    border-radius: 8px;
}

.nav label {
    color: #06A3DA;
    cursor: pointer;
}

/**
 * Styling first level lists items
 */
.group-list a,
.group-list label {
    color: #06A3DA;
    padding-left: 2rem;
}
/**
 * Styling second level list items
 */
.sub-group-list a,
.sub-group-list label {
    padding-left: 4rem;
}
/**
 * Styling third level list items
 */
.sub-sub-group-list a,
.sub-sub-group-list label {
    padding-left: 6rem;
}
/**
 * Hide nested lists
 */
.group-list,
.sub-group-list,
.sub-sub-group-list {
    height: 100%;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out;
}

.nav__list input[type=checkbox]:checked + label + ul {
    /* reset the height when checkbox is checked */
    max-height: 1000px;
}

/**
 * Rotating chevron icon
 */
label > span {
    float: right;
    transition: transform 0.65s ease;
}

.nav__list input[type=checkbox]:checked + label > span {
    transform: rotate(90deg);
}