.click-to-close-overlay {
    position: fixed;
    z-index: 9;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    background: rgba(23, 26, 29, 0.5);
    cursor: url('http://styles.prosites.com/themes/_shared/close.png'), default;
}

.mobile nav {
    -webkit-transition: none!important;
    transition: none!important;
    position: fixed;
    z-index: 10;
    text-align: left;
    bottom: 0;
    right: 0;
    overflow-x: hidden;
    height: 100%;
    width: 100%;
    padding: 25px 0;
    display: none;
    transition: margin 0.3s cubic-bezier(0.0, 0.0, 0.2, 1)!important;
}

.mobile .show-phones nav,
.mobile .show-maps nav {
    overflow: hidden;
}

.mobile nav * {
    position: static;
    box-shadow: none;
}

.mobile nav ul li,
.mobile nav ul li a {
    position: relative!important;
}

.mobile nav > ul > li > ul {
    width: auto;
}

.mobile nav > ul > li {
    display: block;
}

.mobile nav > ul li:not(.more-li) ul {
    display: none;
}

.mobile nav > ul li.more-li > a {
    font-size: 0;
}

.mobile nav > ul li.more-li > ul {
    display: block!important;
    position: static!important;
    margin: 0!important;
    padding: 0!important;
}

.mobile nav > ul li.more-li > ul > li {
    opacity: 1!important;
}

.mobile-nav-button,
.menu-icons a {
    display: block;
    box-sizing: content-box;
    position: fixed;
    z-index: 12;
    bottom: 25px;
    right: 10px;
    font-size: 25px!important;
    line-height: 25px;
    height: 25px;
    width: 25px;
    text-align: center;
    border-radius: 100%;
    cursor: pointer;
    top: auto!Important;
    padding: 12.5px;
    overflow: hidden;
    -webkit-transition: opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    transition: opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    transition: transform 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    transition: transform 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), -webkit-transform 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    -webkit-transform: scale(0) rotate(0) translate3d(0,0,0);
    -ms-transform: scale(0) rotate(0) translate3d(0,0,0);
    transform: scale(0) rotate(0) translate3d(0,0,0);
    opacity: 0;
    text-decoration: none;
}

.desktop .mobile-nav-button,
.desktop .menu-icons a {
    right: 25px;
}

.ios.landscape .mobile-nav-button,
.ios.landscape .menu-icons a {
    margin-bottom: 25px;
}

.mobile .top.waypoint.fade.triggered ~ .mobile-nav-button,
.mobile .show-menu-icons .top.waypoint.fade.triggered ~ .menu-icons a,
.mobile .hide-menu.show-menu-icons .top.waypoint.fade.triggered ~ .menu-icons a {
    -webkit-transform: scale(1) rotate(0) translate3d(0,0,0);
    -ms-transform: scale(1) rotate(0) translate3d(0,0,0);
    transform: scale(1) rotate(0) translate3d(0,0,0);
    opacity: 1;
}

.mobile .hide-menu.show-menu-icons.show-phones .mobile-nav-button,
.mobile .hide-menu.show-menu-icons.show-maps .mobile-nav-button,
.mobile .show-menu-icons .top.waypoint.fade.triggered ~ .menu-icons a {
    -webkit-transform: scale(1) rotate(0) translate3d(0,0,0)!important;
    -ms-transform: scale(1) rotate(0) translate3d(0,0,0)!important;
    transform: scale(1) rotate(0) translate3d(0,0,0)!important;
    opacity: 1;
}

.mobile .hide-menu .mobile-nav-button.close-button {
    -webkit-transform: scale(0.75) rotate(-180deg) translate3d(0,0,0)!important;
    -ms-transform: scale(0.75) rotate(-180deg) translate3d(0,0,0)!important;
    transform: scale(0.75) rotate(-180deg) translate3d(0,0,0)!important;
    opacity: 1!important;
}

.mobile .show-menu-icons .keep-menu-visible .top.waypoint.fade.triggered ~ .mobile-nav-button.close-button,
.mobile .mobile-nav-button.close-button,
.mobile .show-menu-icons .top.waypoint.fade.triggered ~ .menu-icons a.close-button {
    -webkit-transform: scale(0.75) rotate(-180deg) translate3d(0,0,0)!important;
    -ms-transform: scale(0.75) rotate(-180deg) translate3d(0,0,0)!important;
    transform: scale(0.75) rotate(-180deg) translate3d(0,0,0)!important;
}

.hide-menu:not(.show-menu-icons) .mobile-nav-button {
    -webkit-transform: scale(0) rotate(0) translate3d(0,0,0)!important;
    -ms-transform: scale(0) rotate(0) translate3d(0,0,0)!important;
    transform: scale(0) rotate(0) translate3d(0,0,0)!important;
    opacity: 0!important;
}

.mobile .keep-menu-visible .top.waypoint.fade.triggered ~ .mobile-nav-button {
    -webkit-transform: scale(1) rotate(0) translate3d(0,0,0)!important;
    -ms-transform: scale(1) rotate(0) translate3d(0,0,0)!important;
    transform: scale(1) rotate(0) translate3d(0,0,0)!important;
    opacity: 1!important;
}

.mobile .mobile-nav-button:before,
.mobile .mobile-nav-button:after,
.mobile .menu-icons a:before,
.mobile .menu-icons a:after {
    -webkit-transition: color 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    transition: color 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
}

.mobile .mobile-nav-button:after,
.mobile .menu-icons a:after {
    content: '\f00d';
    font-family: 'FontAwesome';
    position: absolute;
    margin: -1px 0 0 0;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.mobile [class*="rbl"] {
    display: block;
    position: fixed;
    z-index: 11;
    top: 0;
    right: 0;
    overflow-x: hidden;
    height: 100%;
    width: 100%;
    text-align: left;
    -webkit-transition: opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), visibility 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    transition: opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), visibility 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    opacity: 0;
    visibility: hidden;
}

.mobile .show-phones .rblPhones {
    opacity: 1;
    visibility: visible;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

.mobile .show-maps .rblMaps {
    opacity: 1;
    visibility: visible;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

.mobile .rblPhones li > a:before,
.mobile .rblMaps li > a:before {
    content: '\f095';
    font-family: 'FontAwesome';
    margin: 0 5px 0 0;
}

.mobile .rblMaps li > a:before {
    content: '\f041';
}

.mobile [class*="rbl"] {
    padding: 25px 0;
}

.mobile nav > ul,
.mobile [class*="rbl"] {
    padding-right: 70px;
    -webkit-transition: opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), visibility 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    transition: opacity 0.3s cubic-bezier(0.0, 0.0, 0.2, 1), visibility 0.3s cubic-bezier(0.0, 0.0, 0.2, 1);
    opacity: 0;
    visibility: hidden;
}

.mobile [class*="rbl"] ul {
    list-style: none;
}

.mobile .show-navigation nav > ul {
    opacity: 1;
    visibility: visible;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}

.mobile nav > ul ul {
    padding: 0 0 25px 0.75em;
}

.mobile .menu-icons a[id*="Phone"] {
    bottom: 87px;
    -webkit-transition-delay: 0.02s;
    transition-delay: 0.02s;
}

.mobile .menu-icons a[id*="Phone"]:before {
    content: '\f095';
    font-family: 'FontAwesome';
}

.mobile .menu-icons a[id*="Map"] {
    bottom: 149px;
    -webkit-transition-delay: 0.025s;
    transition-delay: 0.025s;
}

.mobile .menu-icons a[id*="Map"]:before {
    content: '\f041';
    font-family: 'FontAwesome';
}

.mobile .menu-icons a[id*="Appointment"] {
    bottom: 211px;
    -webkit-transition-delay: 0.045s;
    transition-delay: 0.045s;
}

.mobile .menu-icons a[id*="Appointment"]:before {
    content: '\f073';
    font-family: 'FontAwesome';
}

.mobile .menu-icons a[id*="Email"] {
    bottom: 273px;
    -webkit-transition-delay: 0.075s;
    transition-delay: 0.075s;
}

.mobile .menu-icons a[id*="Email"]:before {
    content: '\f0e0';
    font-family: 'FontAwesome';
}

.mobile nav .mobile-nav-button,
.mobile nav .menu-icons a,
.mobile nav .top.waypoint.fade.triggered ~ .mobile-nav-button,
.mobile nav .show-menu-icons .top.waypoint.fade.triggered ~ .menu-icons a {
    -webkit-transform: scale(0) rotate(0)!important;
    -ms-transform: scale(0) rotate(0)!important;
    transform: scale(0) rotate(0)!important;
    opacity: 0!important;
}

@media screen and (min-width:601px) {
    .mobile nav,
    .mobile [class*="rbl"] {
        max-width:500px;
        padding-left: 25px;
    }
    .mobile nav ul li a,
    .mobile [class*="rbl"] a {
        font-size: 1em;
        line-height: 1.2em;
    }
    .mobile nav {
        margin-right: -25px;
    }
    .mobile .show-menu-icons nav {
        margin-right: 0;
    }
}

@media screen and (min-width:961px) {
    .mobile nav ul li a,
    .mobile [class*="rbl"] a {
        font-size: 0.9em;
        line-height: 1.2em;
    }
}

@media screen and (max-width:840px) {
    .mobile nav ul li a,
    .mobile [class*="rbl"] a {
        font-size: 1em;
        line-height: 1.2em;
    }
}

@media screen and (max-width:600px) {
    .click-to-close-overlay {
        opacity: 0;
    }
    .mobile nav ul li a,
    .mobile [class*="rbl"] a {
        font-size: 0.9em;
        line-height: 1.2em;
    }
}

@media screen and (max-width:480px) {
    .mobile nav ul li a,
    .mobile [class*="rbl"] a {
        font-size: 0.8em;
        line-height: 1.2em;
    }
}