div.side-menu-widget {
    width: auto;
    display:inline-block;
    position: fixed;
    z-index:1000;
    top:50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

div.side-menu-widget.left {
    right:initial;
    left:0;
}

div.side-menu-widget > ul{
    list-style:none;
    padding:0;
    margin: 0;
}

div.side-menu-widget:not(:hover) > ul{
    width:50px;
}

div.side-menu-widget.expanded > ul, div.side-menu-widget.open > ul{
    width:100%;
}

div.side-menu-widget li {
    margin-bottom: 2px;
    height:50px;
    width:100%;
    overflow: hidden;
    float:right;
    position:relative;
    left:calc(100% - 50px);
    clear:both;
    -webkit-transition: left 0.33s; /* Safari */
    transition: left 0.33s;
}

div.side-menu-widget:hover li {
    width:100%;
}

div.side-menu-widget.left li {
    left:calc(-100% + 50px);
}



div.side-menu-widget.expanded li,
div.side-menu-widget li:hover,
div.side-menu-widget:not(.expanded) li:hover,
div.side-menu-widget li.open,
div.side-menu-widget:not(.expanded) li.open
{
    width:100%;
    left:0;
}


div.side-menu-widget > ul i.fa{
    padding:17px;
    width: 50px;
    height:50px;
    text-align: center;
    float:left;
}

div.side-menu-widget.left > ul i.fa{
    float:right;
}


div.side-menu-widget > ul a {
    height: 50px;
    width:100%;
    display:inline-block;
}

div.side-menu-widget > ul .text {
    padding-left: 15px;
    padding-right: 15px;
    height:100%;
    width:calc(100% - 50px);
    display:inline-block;
    position:relative;
    float:left;
    text-align:center;
    padding-top: 12px;
    white-space: nowrap;
}


img[data-expand] {
    width: 100%;
}

fieldset, legend {
    padding: 0;
    margin: 0;
}

legend {
    display: none;
}

div.paragraph {
    margin-bottom: 10px;
}

/* For when using the keyboard to navigate */
a.from-tab:focus, .option.from-tab:focus {
    outline:solid 1px #F00 !important;
}

/* Text Width h-block to prevent the split of hX when it has <sup> inside */
div.h-block h4,div.h-block h3,div.h-block h2,div.h-block h1{
    display: inline-block;
    width: auto;
}

form div.alert {
    display: inline-block;
    width: 100%;
}

div.formLabel {
    margin-top: 5px;
    margin-bottom: 5px;
}

form label.stacked {
    display: block;
}

form label input[type='checkbox'], form label input[type='radio'] {
    margin-right: 5px;
}

form label.inline {
    margin-right: 10px;
}

.row.block {
    margin-bottom:15px;
}

.vertical-padded-elements > * {
    margin-bottom: 10px;
}

.align-right {
    text-align: right;
}

.align-center {
    text-align: center;
}

.navigation-links a {
    color: #000;
}

.calendar-filter span {
    font-weight:bold;
}

.calendar-filter a {
    color:#000;
    text-decoration:none;
}

.calendar-filter a.active {
    color:#000;
    font-weight:bold;
    text-decoration:underline;
}

.block.calendar-filter {
    margin-bottom: 0px;
}

.nopadding {
    padding: 0 !important;
    margin: 0 !important;
}

@media (max-width: 767px)
{
    .nopadding-xs {
        padding: 0px !important;
        margin: 0px !important;
    }
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px)
{
    .nopadding-sm {
        padding: 0px !important;
        margin: 0px !important;
    }

}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px)
{
    .nopadding-md {
        padding: 0px !important;
        margin: 0px !important;
    }
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px)
{
    .nopadding-lg {
        padding: 0px !important;
        margin: 0px !important;
    }
}

a[href=""]
{
    display:none;
}

/* forms */
.respond-form .alert{
    display: none;
}

.respond-form i.icon-spinner{
    display: none !important;
}

.respond-form label{
    font-weight: normal;
}

.respond-form .error label{
    font-weight: bold;
    color: #b94a48;
}

/* img centering */
img.img-center{
    display:block;
    margin-left:auto;
    margin-right:auto;
}

.vehicleBreadcrumbWidget{
    color:#aaa;
    font:14px/20px 'Open Sans',sans-serif;
    margin:0;
    text-align:center;
    height:20px;
    position:relative;
}

.vehicleBreadcrumbWidget span{
    display:inline-block;
}

.vehicleBreadcrumbWidget a{
    text-decoration:none;
    color:#2d94ce;
    display:inline-block;
    margin:0 10px;
}


.vehicleBreadcrumbWidget a:hover{
    color:#000;
    text-decoration:underline;
}

@media (max-width: 720px) {
    div.side-menu-widget.hide-on-mobile {
        display: none;
    }
}
