/* ##  Left Nav  ## */

.railNavWrapper {}

.rail-nav-mod {position:relative; display:block; padding-left:20px; padding-right:20px; margin-bottom:20px; color:#ffffff; font-weight:600; text-transform:uppercase; letter-spacing:1px; background-color:#ed2024;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
}

.rail-nav-mod::after {position:absolute; z-index:-1; left:0; right:0; top:auto; bottom:-5px; height:10px;}

.rail-nav-mod a,
.rail-nav-mod a:visited {color:#ffffff; text-decoration:none;}
.rail-nav-mod a:hover, 
.rail-nav-mod a:active {color:#ffffff; text-decoration:underline;}

.rail-nav-mod ul {display:block; margin:0; padding:0; list-style-type:none;}

.rail-nav-heading {display:block; width:100%; margin:0; padding:10px 0;
    font-size:18px; line-height:22px;
    color:#ffffff;
    background-color:transparent;
    border-width:0 0 1px 0;
    border-style:solid;
    border-color:#d51d20;
    box-sizing:border-box;
    cursor:pointer;
}

.rail-nav-mod .rail-nav-trigger {display:none;}

.rail-nav-heading span {position:relative; display:inline-block; padding-left:30px;}

.rail-nav-heading span::before {content:""; position:absolute; display:block; width:16px; height:0; left:0; top:9px;
    border-top:2px solid #ffffff;
    transition:border-color 200ms ease;
}
.rail-nav-heading span::after {content:""; position:absolute; display:block; opacity:1; width:0; height:16px; left:7px; top:2px;
    border-left:2px solid #ffffff;
    transition:opacity 200ms ease;
}

.rail-nav-mod .rail-nav-trigger:checked ~ .rail-nav-heading span::after {opacity:0;}

.rail-nav-mod .rail-nav-list {
    max-height:0px; opacity:0;
    transition:max-height 400ms ease-out, opacity 200ms ease;
    overflow:hidden;
    will-change:max-height,opacity;
}
.rail-nav-mod .rail-nav-trigger:checked ~ .rail-nav-list {
    max-height:400px; opacity:1;
    transition:max-height 400ms ease-out, opacity 600ms ease;
}

.rail-nav-mod .rail-nav-list ul {display:block; padding:5px 0;}

.rail-nav-mod .rail-nav-list li {display:block;}
.rail-nav-mod .rail-nav-list li a {display:block; padding:5px; margin:0 20px; font-size:17px; font-weight:500;}

/* 16px baseline (768px +) */
@media only screen and (min-width:48em) {

    .rail-nav-heading {padding:20px 0;}
    .rail-nav-mod {text-align:center; margin-bottom:40px; padding-left:0; padding-right:0; padding-bottom:0;}
    .rail-nav-mod .rail-nav-list {padding-bottom:0;}
    .rail-nav-mod .rail-nav-list ul {display:block; padding:20px 0;}
    .rail-nav-mod .rail-nav-list li {display:inline-block;}
    .rail-nav-mod .rail-nav-list li a {padding:10px 25px; margin:0;}
    .rail-nav-mod .rail-nav-trigger:checked ~ .rail-nav-list {max-height:200px;}

}