* { margin: 0; padding: 0; outline: 0; }

::-moz-selection { background: #3a3a3a; color: #fff; text-shadow: none; }
::selection {background: #3a3a3a; color: #fff; text-shadow: none; }
::-webkit-selection { background: #3a3a3a; color: #fff; text-shadow: none;}

*:not(.form-control), *:before, *:after {
-webkit-user-select: none; /* Chrome/Safari */        
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* IE10+ */
}

#noJS {text-align:center; padding: 0px; width:100%; background-color:rgb(255, 255, 224); font-weight:400; font-style:italic; line-height:2rem;}

html {min-height: 100%; -webkit-tap-highlight-color:transparent; -webkit-text-size-adjust: 100%;}
body { min-height: 100%;}
html.mobile {/*overflow:hidden;*/}
html.mobile body {overflow:hidden;}

div.testsize {display:block;position:absolute;left:0;top:0;color:#000;width:auto;height:auto;font-size:16px;z-index:999;}

#goTop { background:rgba(112, 47, 138,.1); width: 42px; height: 42px; position: fixed; bottom:-55px; right: 15px; cursor: pointer; -webkit-transition: all .4s ease; -moz-transition: all .4s ease; -ms-transition: all .4s ease; -o-transition: all .4s ease; transition: all .4s ease; z-index: 16;border:0 none; text-decoration:none; color:#702f8a; text-align:center; opacity:0; border-radius: 100%; display:-webkit-box;display:-ms-flexbox;display:flex; -webkit-align-content:center; align-content: center;-webkit-align-items:center; align-items: center; -webkit-justify-content: center; justify-content: center; border:2px solid rgba(112, 47, 138,.7);}
#goTop.hide {opacity: 0;bottom:-55px}
#goTop.show {opacity: 1; bottom:25px;}
#goTop i {font-size: 1.3rem; position: relative; display: block; transform:rotate(-90deg)}
#goTop:hover {text-decoration:none; opacity: 1;}

img { outline: 0; border: 0;}
a {-webkit-transition:all .3s ease-in-out 0s;-moz-transition:all .3s ease-in-out 0s;-ms-transition:all .3s ease-in-out 0s;transition:all .3s ease-in-out 0s;border:none;outline:0;}
button {-webkit-transition:all 500ms ease;-moz-transition:all 500ms ease;-ms-transition:all 500ms ease;-o-transition:all 500ms ease;transition:all 500ms ease; outline: none !important;}

button {outline: none !important; }
button:focus {box-shadow: none !important;}

body {font-family: 'Avenir W01', sans-serif; font-weight:300; font-style:normal; font-size: 1.125rem; line-height:1.75rem; color:#54585A; padding: 0px; margin: 0px; text-rendering: optimizeLegibility; position:relative; overflow-x: hidden; word-wrap: break-word; background:#fff; -ms-text-size-adjust:100%; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}

#splash {display:none; position: fixed; width:100%; height: 100%; background-color:#fff; z-index: 99;left: 0; top: 0; right: 0; bottom: 0;}
#splash > div {display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex; width:100%; height: 100%; -webkit-align-content: center; align-content: center;-webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; position: relative; -ms-flex-direction: column; flex-direction: column;}
#splash > div img {display: block; width:200px; position: relative; max-width: 94%; margin: 0 auto; }

.fade {opacity: 0;-webkit-transition: opacity 200ms ease;-moz-transition: opacity 200ms ease;-ms-transition: opacity 200ms ease;-o-transition: opacity 200ms ease;transition: opacity 200ms ease;}
.tooltip.fade, .popover.fade {-webkit-transition: none;-moz-transition: none;-ms-transition: none;-o-transition: none;transition: none;}
.animate__animated {-webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); -webkit-backface-visibility: hidden; backface-visibility: hidden;}
.notransition {-webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none;}
a {-webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); -webkit-backface-visibility: hidden; backface-visibility: hidden;}
.btn.focus, .btn:focus {box-shadow: none !important; text-decoration:none!important;}
.btn:hover {text-decoration:none!important;}

div { display: block; }
ol, ul {list-style: none;margin:0;padding:0;}
ul li { list-style: none; padding: 0; margin: 0;}
ol li {list-style: none; padding: 0; margin: 0;}
p {margin: 0; padding:0;}

a, a:visited {color:#54585A; cursor:pointer; text-decoration: none;outline:none; border:none;}
a:hover {color:#54585A; text-decoration:none;}

p a {color:#0000ee;text-decoration: underline;}
p a:hover, p a:visited {color:#0000ee;text-decoration: underline;}

.btn {text-decoration:none; position:relative; padding: 14px 30px; margin: 0; font-size: 1.0625rem; line-height: 1; color:#fff; background:#00AFD7; border-radius: 30px; opacity: 1; border: 1px solid #00AFD7; font-weight: 400; transition: all 0.4s ease 0s;}
.btn:active, .btn:focus {color:#fff; background:#00AFD7;border: 1px solid #00AFD7;}
.btn:visited {color:#fff;}
.btn:hover {background:#00AFD7; color:#fff; border-color:#00AFD7;}

.btn.btn-outline {border: none; background: none; border-radius: 30px; color:#54585a;}
.btn.btn-outline:hover {background:none; color:#54585a;}
.btn.btn-outline:before {content:''; position: absolute; top:0;right:0;bottom:0;left:0;border:2px solid transparent; border-radius: 30px; opacity: .4; transition:all 0.4s ease 0s;}
.btn.btn-outline:hover:before {opacity: 1;}

.btn.btn-outline.purple:before {border-color:#702f8a;}
.btn.btn-outline.white:before {border-color:#fff;}

.btn.btn-form { background-color:#702f8a; color:#fff; border:2px solid rgba(112, 47, 138,0.4); min-width:130px;}
.btn.btn-form:hover {background-color: #702f8a;color:#fff; border-color:rgba(112, 47, 138,0.4);}

h1,h2,h3,h4,h5,h6 {margin:0;padding:0;}
h1 {font-size: 1.625em;}
h5 {font-size: 1.125rem;}
h6 {font-size: 1.125rem;}

strong, b {font-weight:700; font-style:normal;}
i { font-style: normal !important; }
em {font-weight:400; font-style: italic;}

::-webkit-input-placeholder {color: #7c7c7c; color: rgba(124, 124, 124,0.5);}
:-moz-placeholder {color: #7c7c7c; color: rgba(124, 124, 124,0.5);}
::-moz-placeholder {color: #7c7c7c; color: rgba(124, 124, 124,0.5);}
:-ms-input-placeholder {color: #7c7c7c; color: rgba(124, 124, 124,0.5);}
.placeholder {color: #7c7c7c; color: rgba(124, 124, 124,0.5);}

input:-webkit-autofill,input:-webkit-autofill:hover, input:-webkit-autofill:focus,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus {background-color: transparent !important; color:#ED1C24 !important; border: 1px solid #ddd; -webkit-text-fill-color: #54585a;-webkit-box-shadow: 0 0 0px 1000px #fff inset;box-shadow: 0 0 0px 1000px #fff inset;transition: background-color 5000s ease-in-out 0s;}

.form-control {border-radius: 5px; line-height: 1.5; border-width: 1px; border-color:#d8d8d8; -webkit-transition: all .5s; transition: all .5s; background-color: transparent; box-shadow: none; padding: 0.625rem 1.25rem; font-size:1rem; height:53px;}
.form-floating label {font-size: 1rem;}
.form-control:focus {border-color:#003c71; box-shadow: inset 0 1px 2px transparent,0 .375rem .625rem -0.3125rem rgba(0, 60, 113,.15);}

.modal.fade.show {opacity: 1;}
.modal-header {text-align: center; padding: 20px 1rem 15px; position: relative;border-bottom-color:#003c71;}
.modal-header h5 {text-align: left; display: block;width:100%; padding: 0px 50px 0px 0px;margin: 0; color:#fff; font-size:1.25rem; line-height:1.2; position: relative;}
.modal-header button.close {outline: none !important; text-shadow: none; margin: 0; position: absolute; padding:0;right:1rem; top:50%; transform:translateY(-50%); color:#fff; opacity: 1 !important; font-size: 1.75rem; width:32px; height:32px; line-height:1; background-color:transparent; border-radius: 0; -webkit-transition: 0.3s 0s background-color ease; transition: 0.3s 0s background-color ease;font-weight: normal; border: 0 none; z-index: 10}
.modal-header button.close:hover {background-color:transparent; color:#00AFD7;}

.modal-body {background-color:#fff; border-bottom-left-radius:calc(.3rem - 1px); border-bottom-right-radius:calc(.3rem - 1px);}
.modal-content {background-color:#003C71; border:none; box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.2);}
.modal-content p {}

.modal.multiple-modal .modal-body a {display: block; position: relative; padding: 5px 0 5px 10px; border-bottom: 1px solid #ddd;  text-align: left; text-decoration: none;color:#54585a;}
.modal.multiple-modal .modal-body a:before {display: none;}
.modal.multiple-modal .modal-body a i {position: relative; margin-right:0.7rem;}
.modal.multiple-modal .modal-body a:last-child {border-bottom: 0; padding-bottom: 0;}

#mapError.modal .modal-body p {margin: 0;}

/* Main Elements */
.wrapper {display: block; overflow: hidden !important; overflow-x:hidden; position: absolute; top: 0px; left: 0; width:100%; min-height: 100%; border: 0 none; background:#fff;}
#scroller {position: absolute; top:50px; left: 0; width:100%; display: block; height:calc(100% - 50px); border: 0; -webkit-backface-visibility: hidden; backface-visibility: hidden;padding: 0px 0 0 0; -webkit-transform:translate3d(0px, 0px, 0);transform:translate3d(0px, 0px, 0);-webkit-transition:-webkit-transform 0.3s cubic-bezier(0.16, 0.68, 0.43, 0.99); transition: transform 0.3s cubic-bezier(0.16, 0.68, 0.43, 0.99);}
.insidescroller {position: relative; width:100%; display: block; background-color: transparent; min-height:100%; float:left; padding: 0px 0 0 0; background:#fff; background-position: top right;}
.container-fluid {padding: 0 1rem;}
.maincontent {width:100%;height:auto;display:block;position:relative;float:left; -webkit-backface-visibility: hidden; backface-visibility: hidden;}
.maincontent > .container-fluid {float:left; position: relative; }
.insidecontent {position: relative; display: block; width:100%; float:left;}

/* Header */
header {position: fixed; width:100%; top:0; left: 0; right: 0; height: 50px; z-index: 11; padding: 0; -webkit-transform: translateZ(0); transform: translateZ(0); background-color:#fff; color:#54585a; display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: space-between; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);}

header .navbar-toolbar {position: relative;display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex;-webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; -webkit-box-pack: space-between; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; width:100%;height:100%;}

header .navbar-toolbar button {border:none; border-radius: 0; background: none; padding: 0 1rem; font-size: 1.45rem; width:auto; height:100%; border-left: 0px solid rgba(0,0,0,0.1); color:#003c71}

a.navbar-brand {padding: 0 0.5rem 0 1rem; margin: 0; position: relative; color:#003c71}
a.navbar-brand:hover {color:#003c71}
a.navbar-brand span.title {font-size: 1.0625rem; font-weight: 800;}

/* Footer */
footer {background:#003C71; position: relative; color:#fff; padding: 0; font-size: 0.75rem; line-height: 1.5; overflow: hidden; -webkit-backface-visibility: hidden; backface-visibility: hidden; width:100%;}
footer .container-fluid {position: relative; display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack:center; -ms-flex-pack:center; justify-content: center; -ms-flex-direction: column; flex-direction: column; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; text-align: center; padding-top: .5rem; padding-bottom: .5rem;}
footer .copyright {position: relative; text-align: center; padding: 0 .5rem 0 0; }
footer .footerlinks {position: relative;padding: 0; }
footer .footerlinks ul {position: relative; text-align: center; margin: 0; display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack:center; -ms-flex-pack:center; justify-content: center; -ms-flex-direction: row; flex-direction: row; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center;}
footer .footerlinks ul li {position:relative; display: block; padding: 0 0.5rem;}
footer .footerlinks ul li:first-child:after {content: ''; position:absolute; right: 0; height: 75%; width:1px; background:#fff; top: 12%;}
footer .footerlinks ul li a {display: block; position:relative; color:#fff; text-decoration:none;font-weight: 500;}

/* Index */
#indexslides {display: none;}
.logo {margin: 0 auto; position: relative; display: block; text-align: center; padding: 1rem 0 1rem; background:#fff;}
.logo a {display: block; border: none; text-decoration: none; position: relative;}
.logo a img {width:250px; position: relative; margin: 0 auto;}

.container-fluid.indexpage {padding: 0;}

.indexgrid {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; flex-shrink: 0; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center;-moz-justify-content: center;-ms-justify-content: center;justify-content: center; width:100%; margin: 0; position: relative;}
.indexgrid .grid-item {position: relative; -ms-flex: 0 0 100%; flex: 0 0 100%; max-width:100%; background-color:#f5f5f5; border-top: solid 1px rgba(0, 0, 0, 0.15);}
.indexgrid .grid-item.wide {background-color: #003c71;border-top: none;}
.indexgrid .grid-item.wide:last-child {background-color:#00afd7}
.indexgrid .grid-item:first-child {border-top: none;}
/*
.indexgrid .grid-item:nth-child(2) {background-color:#00AFD7;}
.indexgrid .grid-item:nth-child(3) {background-color:#D0DF00;}
.indexgrid .grid-item:nth-child(4) {background-color:#702F8A;}
.indexgrid .grid-item:nth-child(5) {background-color:#C8102E;}
.indexgrid .grid-item:nth-child(6) {background-color:#F2A900;}
.indexgrid .grid-item:nth-child(7) {background-color:#00AFD7;}
*/

.indexgrid .grid-item a {display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack:flex-start; -ms-flex-pack:start; justify-content: flex-start; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; -ms-flex-direction: row; flex-direction: row;position: relative; width:100%; height:100%; text-align: center; border: none;color:#54585a;  font-size: 1.0625rem; line-height: 1; padding: 20px 25px 17px 15px; font-weight: 600;}
.indexgrid .grid-item.wide a {color:#fff;}
.indexgrid .grid-item a br {display: none;}
.indexgrid .grid-item a i.fas {position: relative; line-height: 1; top:-2px; margin-right: 10px; width:18px; text-align: center; }
.indexgrid .grid-item a i.icon {position: absolute; right: 0.75rem; display: block;}

.indexgrid .grid-item:nth-child(2) a i.fas {color:#00AFD7;}
.indexgrid .grid-item:nth-child(3) a i.fas {color:#D0DF00;}
.indexgrid .grid-item:nth-child(4) a i.fas {color:#702F8A;}
.indexgrid .grid-item:nth-child(5) a i.fas {color:#C8102E;}
.indexgrid .grid-item:nth-child(6) a i.fas {color:#F2A900;}
.indexgrid .grid-item:nth-child(7) a i.fas {color:#003C71;}

/* Inside Pages */
a#historyback {position: fixed; bottom:30px; left: 10px; display: none; z-index: 8; text-decoration: none; padding: 10px 1.2rem 10px 1.7rem; width:auto;height:auto; line-height: 1; text-align: center; border-radius: 30px; background-color:#702f8a; opacity:0.8;color:#fff; font-size: 1rem; border:1px solid #702f8a;; -webkit-box-pack:center; -ms-flex-pack:center; justify-content: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; -ms-flex-direction: row; flex-direction: row; }
a#historyback.end {bottom:52px; opacity: 1; border-radius: 10px 10px 0 0;}
a#historyback i {position: absolute; text-align: center; width:auto; font-size:1rem; left:0.7rem;}
a#historyback span.text {position: relative; margin-left: 7px;}
body.indexpage a#historyback {display:none;}
html.webapp a#historyback {display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex;}
html.webapp body.indexpage a#historyback {display:none;}

.pagetitle {position: relative; width:100%; height: auto; text-align: center; padding: 0; display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; -webkit-box-pack: center; -ms-flex-pack:center; justify-content: center; background:#003c71; height: 42px;}
.pagetitle h2 {display: block; position: relative; color:#fff; margin: 2px 0 0 0; padding: 0 4px; font-size: 20px; font-weight:600; text-transform: uppercase; line-height: 1;}

.subtitle {position: relative; width:100%; height: auto; text-align: center; padding: 0; display: block;}
.subtitle > h2 {font-size: 1.25rem;font-weight: 800;margin: 0;line-height: normal;position: relative;}

.maincontent .dropdown-menu {box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 1.2rem 0px; color:#54585A; border-radius: 0; border: none; margin-top:8px !important; margin-bottom:8px !important; padding-top:4px; padding-bottom: 4px;  width:auto; min-width: 200px; max-height:300px;}
.maincontent .dropdown-menu a.dropdown-item {padding:4px 12px; position: relative; display:block; font-weight: 400; color:#54585A;}
.maincontent .dropdown-menu a.dropdown-item:hover {background-color:transparent; color:#54585A;}
.maincontent .dropdown-menu a.dropdown-item:active, .maincontent .dropdown-menu a.dropdown-item:focus {background-color:transparent;}
.maincontent .dropdown-menu a.dropdown-item.mainactive {background-color:transparent; color:#003C71;}

.top-pagination {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; -webkit-box-pack:space-between; -ms-flex-pack:justify; justify-content: space-between; margin:0rem 0 1.5rem 0; background:#702f8a; color:#fff; padding: 1rem 1rem 1rem 1rem; border-radius: 0;}
.mixitup-page-stats {font-size: 1.0625rem;text-align: center;}
.mixitup-page-stats > div {}
.mixitup-page-stats > div span {font-weight:500;}

.selectview {position: relative;}
.selectview span {position: relative; display: inline-block; margin-right: .4rem; }
html.webkit.safari.mac .selectview span {top:1px;}
.selectview a {position:relative; display: inline-block; padding: .3rem; color:#868e96; font-weight:500; transition:none;}
.selectview a.active {font-weight: 700; color:#3a3a3a;}

.selectview button#showall {-webkit-appearance: none; appearance: none; color:#fff;}
.selectview button#showall:hover {}
.selectview.d-sm-none button#showall {color:#54585a;}

.pagination {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; padding: 1.5rem .5rem 0 .5rem;margin: 1.5rem auto 0 auto; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; border-top: 1px solid #dadada; border-radius: 0px;}

.page-item {position:relative; margin: 0 .125rem; padding: 0;}
.page-item:not(:first-child) .page-link {margin-left:0;}

.page-item .page-link {border: none; background-color:#fff; position: relative; display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding:0 .25rem; margin: 0; border-radius: 0; width:auto; height:auto; font-weight: 400; color:#54585a; font-size: 1.0625rem;}

.page-arrow .page-link.mixitup-pager-prev {margin: 0 0.7rem 0 0; padding: 0 0.7rem 0 0; border-right:1px solid #dadada;}
.page-arrow .page-link.mixitup-pager-next {border-left:1px solid #dadada; margin: 0 0 0 0.7rem; padding: 0 0 0 0.7rem;}
.page-arrow .page-link i {position:relative;}
.page-arrow .mixitup-pager-next i {margin-left:0.4rem;}
.page-arrow .mixitup-pager-prev i {margin-right:0.4rem;}

.page-link:hover, .page-link:active, .page-link:focus {background-color:#fff;}
.page-link:hover {color:#54585a;}
.page-link.mixitup-pager-active {color:#00AFD7;}
.page-arrow .page-link.mixitup-pager-disabled {color:#A2AAAD; cursor: not-allowed}

.pagination.mixitup-mixitup-page-list-disabled {border-top-color:transparent;}
#cat.hidepager .pagination {display:none;}
#cat.hidepager .top-pagination {display:none;}
#newvendors.hidepager .pagination {display:none;}
#newvendors.hidepager .top-pagination .selectview {display:none;}
.pagination.mixitup-mixitup-page-list-disabled {display:none;}

/* Discounts & Program Info */
.toplinks {float:left; width:100%; height:auto; position: relative; margin: 0; padding: 0 0 50px 0;}
.toplinks ul {position: relative; width:100%; height:auto; display: block; margin: 0; padding: 0;}
.toplinks ul li {position: relative; width:100%; height:auto; display: block; margin: 0; padding: 0;}
.toplinks ul li a {text-decoration: none; background:transparent; border: none; color:#003C71; padding:23px 19px 15px 0; font-size: 1.0625rem; font-weight: 500; border-bottom: 1px solid #A2AAAD; line-height:normal; box-shadow: none; display: block;}

/* Discounts by Category */
.discountcontent { width: 100%; height: auto; position: relative;  display: block; margin: 0px auto 0px auto; float: left; overflow: hidden; transition: height 1s ease;}
.discountcontent .discountpage {display:block; position: relative; overflow: hidden;}
.discountpage .card {position: relative; -webkit-backface-visibility: hidden; backface-visibility: hidden; border-radius:0; border:1px solid #A2AAAD; margin: 0 auto 0.5rem; background-color:#fff; box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);}
.discountpage .card-header {border:0 none; border-radius: 0; background-color: transparent; position: relative; padding: 0; }
.discountpage .card-header a {border:none; background-color:transparent; display: block; position: relative; padding:1rem 2rem 1rem 2.25rem; text-decoration: none; color:#003c71; font-weight: 500;}
.discountpage .card-header a i.fa-plus {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-box-align: center;-ms-flex-align: center;align-items: center; -webkit-box-pack: center; -ms-flex-pack: center;justify-content: center; position: absolute; right:0.6rem; top: 50%; margin-top: -16px; line-height: 1; width: 32px; height:32px; text-align: center; border-radius: 50%; border: 0px solid #5bc4be; transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1); font-size: 1.25rem;}
.discountpage .card-header a i.icon {position: absolute; display: block; left: 0.65rem; top:50%; width:1rem; height:1rem; margin-top:-0.65rem; line-height: 1;}

.discountpage .card.toggle .card-header a {color:#00afd7}
.discountpage .card.toggle .card-header a i.fa-plus {transform: rotate(45deg); transition: all 350ms cubic-bezier(0.4, 0, 0.2, 1); color: #00afd7; border-color:#00afd7;}

.discountpage .card-body {padding: 0; min-height: 0; height: 0; position: relative; margin: 0; }
.discountpage .card-body ul {padding: 0.5rem 1rem 1rem; opacity: 0; visibility: hidden; margin: 0; text-align: center; display: -webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-align-items: stretch; -moz-align-items: stretch; -ms-align-items: stretch; align-items: stretch; width:100%; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; background-color: transparent;}
.discountpage .card-body ul li {position: relative; padding: 0.25rem; width:100%; box-sizing: border-box;}
.discountpage .card-body ul li a.btn {position: relative; display: -webkit-box; display:-ms-flexbox; display:flex; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; width:100%; height: 100%;margin: 0; text-decoration: none;text-align: center;}

.discountpage .card.toggle .card-body ul {opacity: 1; visibility: visible;}

div.viewcats {display: block; float:left; width:100%; text-align: center; position: relative; margin: 0 auto 0;}
div.viewcats > button {position: relative; font-size: 1rem; margin-bottom: 0.7rem;}
div.viewcats > button i {position: relative; line-height: 1; top:1px;}
div.viewcats > button i.icon-arrow-right {margin-left: 7px; }
div.viewcats > button i.icon-arrow-left {margin-right:7px;}

#az {display:none;}
#az ul {position: relative; display: -webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-items: stretch; -moz-align-items: stretch; -ms-align-items: stretch; align-items: stretch; width:100%; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap;}
#az ul li {position: relative; margin: 0; box-sizing: border-box; }
#az ul li a:before {content: ''; background:#A2AAAD; height:1px; width:100%; position: absolute; bottom: 0; left: 0;}
#az ul li a {position: relative; display: -webkit-box; display:-ms-flexbox; display:flex; -webkit-justify-content: flex-start; -moz-justify-content: start; -ms-justify-content: start; justify-content: flex-start; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center;text-decoration: none; padding: 0.5rem 0 0.5rem 0px; width:100%; height: 100%; color:#003C71;}
#az ul li a i {display: none;}

/* Vendors */
#alpha {display:none; position: fixed; z-index: 7; right: 5px; top: 85px; text-align: center; width:25px; height:calc(100% - 50px);}
#alpha > div {display: table; position: relative; margin: 0; padding: 0; width:100%; height: 100%;}
#alpha > div span {display: table-cell; position: relative; width:auto; height: auto; margin: 0; padding: 0; vertical-align: middle;}
#alpha > div span a {display: block; width:auto; height: auto; padding: 0; line-height: 1; font-size:0.85rem; text-align: center;font-weight: 400; position: relative; cursor: pointer;-webkit-backface-visibility: hidden; backface-visibility: hidden; margin: 2px 0px; color:#54585a; text-decoration: none;border:none;}

#allVendors.discountcontent {}
ul.vendors {margin: 0px 0 0 0px; position: relative; display: block; padding: 0 1rem 0 0px; float:left; width:100%;}
ul.vendors > li {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; min-width: 0; word-wrap: break-word; background-color:#fff; background-clip: border-box; position: relative; width: 100%; height: auto; float:left; margin:0 auto 0.5rem; padding: 0; }
ul.vendors span.title {border-radius: 0; background-color:#00AFD7; position: relative; padding: 0.5rem 1.25rem; color:#fff; font-size: 1.2rem; font-weight: 600;}
ul.vendors ul {border:0px solid #A2AAAD; -ms-flex: 1 1 auto; flex: 1 1 auto; min-height: 1; padding: 6px 12px; margin: 0; position: relative;}
ul.vendors ul li {margin: 0 auto; padding: 0; position: relative;border-bottom:1px solid #A2AAAD;}
ul.vendors ul li:last-child {border-bottom: none;}
ul.vendors ul li a {display: block; position: relative; text-decoration: none; -webkit-backface-visibility: hidden; backface-visibility: hidden; padding: 8px; font-size: 1.0625rem; white-space: normal; }
ul.vendors ul li a:visited {color:#54585a;}

/* New Vendors */
div.newvendorfilter {position: relative; display: none;}
div.newvendorfilter a.btn {border:none; padding: 14px 50px 14px 20px; text-align: left; background:rgba(255, 255, 255,0.4);}
div.newvendorfilter a.btn i {position: absolute; line-height: 1; font-size: 0.9rem; right:1rem; top:35%;}

#newvendors.discountcontent {margin: 0;}
#newvendors .row {position: relative;-ms-flex-wrap: wrap; flex-wrap: wrap;-webkit-box-align: flex-start; -ms-flex-align: start; align-items: flex-start; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center;  -webkit-align-content: start; align-content: flex-start; }
#newvendors .row > div {position: relative; margin-bottom:0.5rem;}
#newvendors .row a {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: flex-start; -ms-flex-pack:start; justify-content: flex-start; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; transition:none; height:auto; text-align: left; padding: 0.3rem 2rem 0.3rem 1rem; border-radius: 3px; color:#003c71; background-color:#f5f5f5; border:none; min-height:45px;}
#newvendors .row a i {position: absolute; right:0.75rem; top:50%; margin-top: -0.5rem;}

/* National Discounts */
fieldset.filter-group {float:left; width: 100%; display:block; text-align: center; margin: 0 auto 1.5rem auto;}
fieldset.filter-group input {width: 100%; position: relative; margin: 0 auto; flex: 1 1 auto; background-color:#f5f5f5;}
.resulttext {display:none; text-align: center; position: relative; font-style: italic; float:left; width:100%;}
.resulttext p { margin-top: 0px; padding: 0; margin-bottom: 0; line-height: 1.3;}

.nationalcategories {text-align: center; display:block; float:left; margin: 0px auto 10px auto; position: relative; width:100%; padding: 0; }
.nationalcategories a.btn:after {display: none;}
.nationalcategories a.btn i {position: relative; top:2px; margin-left: 8px; display: inline-block;}
.nationalcategories a.btn[aria-expanded=true] i {transform: rotate(-180deg);}
.nationalcategories a.btn[aria-expanded=true] {background-color:#00AFD7; color:#fff; border-color:#00AFD7;}

.nationallinks {position: relative; display:block; float:left; width:100%; height:auto;padding: 0;}
.nationallinks .grid {position: relative;  display: -webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 auto; padding: 0;-webkit-align-content: flex-start; align-content: flex-start;}
.nationallinks .grid .item { position: relative; padding-top:1rem; padding-bottom: 1rem; margin: 0; filter: alpha(opacity=0); opacity: 0; transition: opacity 250ms ease-in;}
.nationallinks .grid.items-visible > .item {filter: alpha(opacity=100); opacity: 1; }
.nationallinks .grid .item > div {display: -webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center; -webkit-box-align: flex-start; -ms-flex-align: start; align-items: flex-start; width:100%; height:100%; flex: 1 1 auto; box-sizing: border-box;}
.nationallinks .item .img {display:block; position: relative;/* width:100%; height: 100%; margin: 0; padding: 1.3rem 1.45rem;  border:1px solid #dcdcdc; border-radius: 1rem;*/}
.nationallinks .item a {display: -webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center; -webkit-box-align: flex-start; -ms-flex-align: start; align-items: flex-start; width:100%; height:100%; flex: 1 1 auto; box-sizing: border-box; }
.nationallinks .item a {border:1px solid #dcdcdc; border-radius: 20px; padding: .4rem .4rem .75rem .4rem; text-align: center; color:#003c71;}
.nationallinks .item a span.outerimg {display:block; position: relative; top:0; transition: all 0.25s;}
.nationallinks span.outerimg img {border-radius: 15px; position: relative; display:block; margin: 0 auto .5rem auto;padding: 10px;}
.nationallinks span.busname {position:relative; line-height: 1.3; font-size: 1.0625rem; font-weight: 500; display: block; padding: 0 4px;}

/* Error Pages */
.errorpage p.formpagetext {font-weight: 500;}
.errorpage p.formpagetext span {font-weight: 600;}

/* Form Pages */
.formpage {float:left; width:100%; height:auto; display: block; position: relative; padding: 0;}
p.formpagetext {display: block; float:left; width: 100%; position: relative; text-align:center; font-size: 1.0625rem; line-height: 1.6rem;}
.formContainer input[type=checkbox] {display:none;}
h4.suggesttitle {float:left; width:100%; display: block; position:relative; font-weight: 700; font-size: 20px; text-align: center;}
.formContainer {position: relative; float:left; width:100%; margin: 0px auto 0 auto; padding: 0px;}
.formContainer p.smaller {margin: 1rem 0 0; padding: 0; font-size:0.9rem; line-height: 1.5;float:left; width:100%; display: block; text-align: center; font-style: italic;}
.formContainer .form-floating .form-control {color:#54585A;}
.formContainer .form-floating textarea.form-control {height: calc(4.5rem + 2px);}

.formContainer .form-floating.focus label {color:#003c71}
.formContainer .form-floating.hasvalue label {color:#003c71; /*opacity: 1;*/}
.formContainer .form-floating.error label {color:#C8102E}
.formContainer .form-floating.error input {border-color:#c8102e;}
.formContainer .form-floating.error input:focus {border-color:#c8102e; box-shadow: inset 0 1px 2px transparent,0 .375rem .625rem -0.3125rem rgba(200,16,46,.15);}
.formContainer .form-floating.error:hover label {color:#C8102E}
.formContainer .form-floating.error textarea {border-color:#c8102e;}
.formContainer .form-floating.error textarea:focus {border-color:#c8102e; box-shadow: inset 0 1px 2px transparent,0 .375rem .625rem -0.3125rem rgba(200,16,46,.15);}
.formContainer .form-floating.error select {border-color:#c8102e;}
.formContainer .form-floating.error select:focus {border-color:#c8102e; box-shadow: inset 0 1px 2px transparent,0 .375rem .625rem -0.3125rem rgba(200,16,46,.15);}

.formContainer .eac-input-wrap {width:100%; position: relative;}
.formContainer .eac-sugg {padding-left: 0px !important; padding-top: 27px !important; padding-bottom: 0px !important;}

.formContainer .select i.fa-sort {position: absolute; right: 1.1rem;top:50%; margin-top:-10px; color:#54585a}

.formContainer .form-actions {float:left; width:100%;text-align: center; margin: 0rem auto 0 auto;}
.formContainer .form-actions .btn {}
.formContainer .form-actions .btn:disabled {background-color:#888; border-color:#888;}

.formContainer .popover.fade {opacity: 1; z-index: 10;}
.formContainer .popover {background-color:#fff; box-shadow: 0 2px 4px rgba(0,0,0,0.15); border-color:#ddd;}
.formContainer .popover .popover-body {font-family: 'Avenir W01', sans-serif; text-align:center; color:#54585a; padding:0.6rem 1rem;}
.formContainer .bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before, .formContainer .bs-popover-top>.popover-arrow::before {border-top-color:#ddd;}
.formContainer .bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before, .formContainer .bs-popover-start>.popover-arrow::before {border-left-color:#ddd;}
.formContainer .bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before, .formContainer .bs-popover-bottom>.popover-arrow::before {border-bottom-color:#ddd;}
.formContainer .bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before, .formContainer .bs-popover-end>.popover-arrow::before {border-right-color:#ddd;}

.formContainer #formresponse {float:left; width:100%; height:auto; position: relative;}
.formContainer #formresponse > div {position: relative;width: 100%;float: left; margin: 0px 0 1rem 0; padding: 1rem; text-align:center; background-color:#00afd7;}
.formContainer #formresponse > div p {margin: 0; padding: 0; color:#fff;}
.formContainer #formresponse > div p a {color:#fff;}
.formContainer #formresponse > div p span {font-weight: 500;}

.formContainer #formresponse > div.errormessage {background:#c8102e;}
.formContainer #formresponse > div.errormessage p {color:#fff;}

.formContainer #formresponse > div.error p {font-style: italic;}

.formContainer.update #formresponse > div {width:100%;}
.formContainer.update #formresponse > div p {font-style: italic;}
#formresponse table {margin: 20px 0 10px; width:100%; border-width: 2px;}
#formresponse table td {font-weight: 500; padding:8px 7px; text-align: left;background:none; color:#fff; font-size: 1.0625rem;}
#formresponse table td:first-child {width:40%;}
#formresponse table td:last-child {font-weight: 300;color:#fff}

.formContainer.subscribe {margin-bottom: 1rem;}
.bottomsubscribe.card {background:#003c71; color:#fff; border-radius: 0; border-color: #003c71; text-align: center;}
.bottomsubscribe.card .card-body p {color:#fff; margin: 0 0 0.5rem; position: relative; font-size: 1.0625rem; line-height: 1.6rem;}
.bottomsubscribe.card .card-body p:last-child {margin: 0;}
.bottomsubscribe.card .card-body p a {color:#fff; font-weight: 500;}

/* Faqs */
#faqs {float:left; width:100%; height: auto; position: relative; margin: 0px auto 0 auto;}
#faqs .faqs {border-bottom: 1px solid #eee; display: block; float:left; width:100%; margin: 0 0 0.75rem 0; padding: 0 0 0.75rem 0;}
#faqs .faqs:last-child {padding: 0; margin: 0; border:none;}
#faqs .faqs h3 {font-size: 20px; font-weight: 700; position: relative; margin: 0 0 0.5rem 0; padding: 0;}
#faqs .faqs p {margin: 0; padding: 0; font-size: 1.0625rem; line-height: 1.5;}

/* Contact */
.contactbox {border-radius: 0; border-color:#fff; background-color:rgba(112,47,138,0); margin:0 auto 0 auto; box-shadow: 0 0 12px rgba(0, 0, 0, 0.3); }
.contactbox .card-body {padding: 1rem 1rem; display: -webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-direction: column; flex-direction: column; font-size: 1.025rem; line-height: 1.5rem;}
.contactbox .card-body p {position:relative; margin: 0 0 0 0;}
.contactbox .card-body p:last-child {margin: 0;}
.contactbox .card-body p a {}
.contactbox .card-body p i {display: none;}
.contactbox .card-body p.formpagetext {text-align: center;margin: 0.7rem auto 0 auto; font-style: italic;}

/* Cats */
.locbutton {text-align: center; position: relative; display:block; margin: 0 auto 1rem;}
.locbutton .btn i {position:relative; margin-right:0.7rem;}

div.singlecat {}
div.singlecat .row {position: relative;-ms-flex-wrap: wrap; flex-wrap: wrap;-webkit-box-align: flex-start; -ms-flex-align: start; align-items: flex-start; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center;  -webkit-align-content: start; align-content: flex-start; }
div.singlecat .row > div {position: relative; margin-bottom:0.5rem;}
div.singlecat .row a {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: flex-start; -ms-flex-pack:start; justify-content: flex-start; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; transition:none; height:auto; text-align: left; padding: 0.3rem 2rem 0.3rem 1rem; border-radius: 3px; color:#003c71; background-color:#f5f5f5; border:none; min-height:45px;}
div.singlecat .row a i {position: absolute; right:0.75rem; top:50%; margin-top: -0.5rem;}

.jumpcat select { -webkit-appearance: none;-moz-appearance: none; -ms-appearance: none;appearance: none; outline: 0;box-shadow: none;border:1px solid #1f2554 !important;background-color:#fff;}
.jumpcat select::-ms-expand {display: none;}

.jumpcat {position: relative; display: block; padding: 0 0px 10px; margin: 0 auto 0 auto; width:100%; text-align: center; float:left; border-top:1px solid #ddd;}
.jumpcat > div {position: relative; width: 20em; max-width:100%; height:auto; background-color:#702f8a; margin: 0px auto 0 auto; border-radius: 30px; border:0 none; box-shadow: none; padding:0}
.jumpcat select { padding:0.65rem 2.25rem 0.65rem 1.25rem; color:#fff; cursor: pointer; width:100%; border-radius: 30px; border: none !important; text-align: left; font-family: 'Avenir W01', sans-serif; background-color:#702f8a; font-size: 1.0625rem;} 
.jumpcat > div::after {font-family: "cms"; content: "\e91c"; position: absolute;top: 0;right: 0.7rem;padding: 0;cursor: pointer;pointer-events: none; font-size: 1rem; font-weight: normal; height:100%; width:2.25rem;  display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex;-webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; -webkit-box-pack: center; -ms-flex-pack:center; justify-content: center; color:#fff;}
.jumpcat option {text-transform: none;}

/* Business */
.backtocat {position: relative; display: block; border-top:0px solid #ddd; margin: 0 auto 10px auto; width:100%; text-align: center; float:left;}
.buscontent + .backtocat {margin-top:1rem;}
.backtocat .btn {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: flex-start; -ms-flex-pack:start; justify-content: flex-start; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; transition:none; width: 20em; max-width:100%; margin: 0 auto; text-align: left; min-height: 49px; background-color:#702f8a; border-color:#702f8a; padding: 0.65rem 1rem 0.65rem 2.5rem;}
.backtocat .btn i {position: absolute; left: 1rem; font-size: 1rem; line-height: 1; top:50%; margin-top:-0.5rem;}

.buscontent {position: relative;}

.businessContent {width:auto; height: auto; display: block; position: relative;margin: 0 auto 0px; padding: 0; overflow: hidden;}
.businessContent .business-image {display: block; height:auto; width:auto; position: relative; margin: 0 auto 0px; text-align: center; overflow: hidden; border: none; padding: 0px 0 0px 0;}
.businessContent span.buttons {position: absolute; left: 10px; top: 7px; display: block; z-index: 5;}
.businessContent span.buttons button {border: 1px solid #e1e1e1; border-radius: 4px; background-color:rgba(255,255,255,0.7); padding: 0; cursor: pointer;font-size:11px; color:#222; width:30px; height: 27px; line-height:25px;text-align: center; display:block;}
.businessContent span.buttons button.zoom-in {border-radius: 4px 4px 0px 0px;}
.businessContent span.buttons button.zoom-out {border-radius: 0px 0px 4px 4px;}

.outerzoom {width:475px; max-width:97%; margin: 0 auto; position: relative; display: block; padding: .25rem; border: 1px solid #dadada; background:#fff; border-radius: 0;}
.business-image .imagezoom {display: inline-block; width:100%; height:auto; position: relative; margin: 0 auto; padding: 0px; text-align: center; }
.business-image img {padding: 0; margin: 0 auto; text-align: center; position: relative; filter: alpha(opacity=0); opacity: 0; z-index: 3; border-radius: 0; border: none;}

#business-buttons {width:100%; height:auto; position: relative; display:-ms-flexbox; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: flex; margin: 1rem auto 0 auto; padding: 0; text-align: center; -webkit-align-items: center;-moz-align-items: center;-ms-align-items: center;align-items: center; -webkit-flex-flow:column;-moz-flex-flow:column;-ms-flex-flow: column;flex-flow: column; -webkit-justify-content: center;-moz-justify-content: center;-ms-justify-content: center;justify-content: center; }
#business-buttons a.btn {position: relative; margin: 5px;  width:100%; max-width: 250px;}
#business-buttons a.btn i {position: relative; margin-right: 8px;}

/* Directions & Locations */
.map-ie {display: none; margin-top:1em; font-style: italic;}
html.ie11 .map-ie, html.ie10 .map-ie, html.ie9 .map-ie {display: block;}

div.gm-style {font-family: 'Avenir W01', sans-serif !important; color:#54585A; font-weight: normal !important; width:100% !important; overflow: hidden !important; text-align:left;}
div.poi-info-window.gm-style {border-radius: 0 !important;}
.gm-style-iw {}
.infoWindow {height:100%;width:100%;display:block;position:relative;min-width:150px;z-index: 999; text-align:left; }
.infoWindow h4 {display:block; line-height:24px; font-size:18px; font-weight:bold !important; color: #54585a !important; margin:0; padding:0 2px 5px 2px;border-bottom: 0px solid rgba(200, 201, 199, 0.5); font-family: 'Avenir W01', sans-serif !important; -webkit-font-smoothing: subpixel-antialiased; }
.infoWindow p { margin: 0 0 5px 0 !important; padding:5px 0 0 !important; display:block !important; position:relative;font-weight:400 !important; font-family: 'Avenir W01', sans-serif !important; background-color:#fff; -webkit-font-smoothing: subpixel-antialiased; font-size:17px !important; line-height:24px !important; color:#54585A !important;}
.infoWindow h5 {display:block;line-height:20px; font-size:1rem; font-weight:600 !important; color:#54585A !important; margin:0; padding:0; font-family: 'Avenir W01', sans-serif !important; text-transform: capitalize;}

#directions_map img, #directions_map object, #directions_map embed { max-width: none; height: auto }
#directions_map *,#directions_map *:before,#directions_map *:after{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;}
#location_map img, #location_map object, #location_map embed { max-width: none; height: auto }
#location_map *,#location_map *:before,#location_map *:after{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;}
.adp, .adp table, .adp-list {font-family: 'Avenir W01', sans-serif !important;font-weight: normal !important;}
.address a { text-decoration: underline;}
div.adp-legal { display: none !important;}

.gm-style-iw .poi-info-window.gm-style {width:100%;display:block;overflow:hidden; font-family: 'Avenir W01', sans-serif !important;font-weight: 400 !important; padding-left: 0px; padding-right:0px;text-align:left; -webkit-font-smoothing: subpixel-antialiased;}
.gm-style-iw .poi-info-window.gm-style div.title.full-width {font-family: 'Avenir W01', sans-serif !important;font-weight: 700 !important; padding:0 0 0px 0px;margin: 0 0 0px;background:#fff; font-size:14px; line-height:20px !important;color:#54585A;}
.gm-style-iw .poi-info-window.gm-style div.full-width { width: 200px !important; }
.gm-style-iw .poi-info-window.gm-style div.address {color:#54585A; font-family: 'Avenir W01', sans-serif !important;font-weight: 400 !important; padding: 0 0 7px 0px !important; margin: 0 0 7px 0px !important; border-bottom: 1px solid rgba(200, 201, 199, 0.5);}
.gm-style-iw .poi-info-window.gm-style div.address .address-line:nth-child(1) {padding-top:5px;}
.gm-style-iw .poi-info-window.gm-style div.address .address-line {color:#54585A; font-family: 'Avenir W01', sans-serif !important;font-weight: 400 !important; line-height:18px; font-size:13px;background: #fff !important;}
.gm-style-iw .poi-info-window.gm-style div.view-link {padding-top:0px;}
.gm-style-iw .poi-info-window.gm-style div.view-link a {font-family: 'Avenir W01', sans-serif !important; font-weight: 400 !important; text-decoration: underline; color:#54585A !important; padding: 0px 0px 5px 0px !important; text-transform: none; font-size:13px; display: block !important;}
.gm-control-active.gm-fullscreen-control {width:30px !important; height: 30px !important; }
.gm-control-active.gm-fullscreen-control > img {margin: 0px !important;}
.gmnoprint.gm-bundled-control {right:0px !important; margin: 0px !important;}
.gmnoprint.gm-bundled-control > div {left: auto !important; right: 0px !important; margin: 10px !important;}
.gmnoprint.gm-bundled-control .gmnoprint > div {width: 30px !important; height: 61px !important;}
.gmnoprint.gm-bundled-control .gmnoprint > div > button {width:30px !important; height: 30px !important;}
.gmnoprint.gm-bundled-control .gmnoprint > div > button > img {margin: 0px 0px 0px !important; width:11px !important; height: 11px !important;}
.gmnoprint.gm-bundled-control .gmnoprint > div > button:focus > img {margin: 0px 0px 0px !important; }
.gmnoprint.gm-bundled-control .gmnoprint > div > button:active > img {margin: 0px 0px 0px !important; }
.gmnoprint.gm-bundled-control .gmnoprint > div > div {width: 21px !important;}
button.gm-control-active + .gmnoprint:not(.gm-bundled-control) {right: 40px !important;}
.gmnoprint .gm-style-mtc {font-family: 'Avenir W01', sans-serif !important; font-size: 12px !important;}
.gmnoprint .gm-style-mtc > div[role=button] {font-family: 'Avenir W01', sans-serif !important; font-size: 12px !important; height: 28px !important; padding: 0 10px !important; font-weight: bold !important;}
.gmnoprint .gm-style-mtc button {font-size: 14px !important; padding: 0 10px !important; height:28px !important;}
button[aria-label=Close] img {margin: 0 !important; margin-top:10px !important; z-index: 99 !important; width:18px !important; height: 18px !important;}

.infowindow {height:100%;width:100%;display:block;position:relative;min-width:210px; text-align:center; border:none !important; padding: 10px 0 10px 0px;}
.infowindow > div {display:block; position: relative;font-weight:normal; font-size: 14px; line-height: 18px; font-family: 'Avenir W01', sans-serif !important; color:#54585A;}
.infowindow .title {font-family: 'Avenir W01', sans-serif !important; font-weight:700 !important; padding:0px 0 4px 0px;margin: 0 0 2px;background:#fff; font-size: 16px; line-height:20px !important;color:#003c71; -webkit-font-smoothing: antialiased; border-bottom:1px solid #e6e6e6; white-space: normal;}
.infowindow .title > span {font-style: italic !important; font-weight: 400 !important; display: block; color:#54585A;  font-size:15px; font-family: 'Avenir W01', sans-serif !important;}
.infowindow .address {color:#54585A; font-weight: normal !important; padding: 0px 0 0px 0px !important; margin: 0 0 0px 0px !important; -webkit-font-smoothing: antialiased; }
.infowindow .address .address-line {color:#54585A; line-height:1.25;}
.infowindow .address .address-line:first-child {padding-top:5px;}
.infowindow .address .address-line:last-child {padding-top:0px;}
.infowindow .discountlink {display: block; width:auto; height:auto; margin: 10px 0 0px 0; padding: 0; position: relative;}
.infowindow .discountlink > a { position: relative; text-decoration: none; font-family: 'Avenir W01', sans-serif; animation:none; font-size:1rem; padding: 11px 24px;border:none;}
.infowindow .discountlink > a:hover {border:none;}
.infowindow .discountlink > a i {display: none;}
.infowindow.geolocation {padding: 5px 0;;}

/* Locations */
.locationContent {min-height: 0px; float: left; height: auto; width: 100%; padding: 0; margin: 1rem auto 0px auto; position: relative; filter: alpha(opacity=0);opacity: 0;}
.locationouter {width:100%; height: 500px; border:1px solid #ddd; display:inline-block; position:relative; padding:0px; margin: 0 auto; background: #fff;}
#location_map {width: 100%;height:100%; position: relative; max-width:100%; padding: 0;margin: 0; overflow:hidden; font-size: 90%; display:block; background-color:transparent;}
#location_map .gm-style .gm-style-iw > div {min-width:150px;}

.droploc {position: relative; display: block; padding: 0; margin: 0 auto; text-align: center; width:100%;}
button#dropdownlocation {position: relative; width:auto; display: block; margin: 0 auto;}
button#dropdownlocation:after {display:none;}
button#dropdownlocation i {position:relative; margin-left:.5rem; display: inline-block; line-height: 1; top:1px;}
button#dropdownlocation.btn.btn-outline.purple:hover:before {opacity: .4}
button#dropdownlocation.btn.btn-outline.purple.show:before {opacity: 1;}
button#dropdownlocation.show i {-webkit-transform: rotate(-180deg); transform: rotate(-180deg);}

#locationlist {}
#locationlist > div {max-height: 300px;}
#locationlist a {border-bottom: 1px solid #eee; ;}
.maincontent #locationlist.dropdown-menu a.dropdown-item:after {display: none;}
#locationlist a.activeLoc {color:#003c71;}

/* Directions */
table#printDiv {display:none;}
.mapContent {min-height: 0px; float: left; height: auto; width: 100%; padding: 0; margin: 1rem auto 0px auto; position: relative; filter: alpha(opacity=0);opacity: 0;}
.mapouter {width:100%; height: 400px; display:inline-block; position:relative; padding:0px; margin: 0 auto; background: transparent; border:1px solid #ddd;}
#directions_map {width: 100%;height:100%; position: relative; max-width:100%; padding: 0;margin: 0; overflow:hidden; font-size: 90%; display:block; background-color:transparent;}
#directions_map .gm-style .gm-style-iw > div {min-width:150px;}

.gm-style-iw.gm-style-iw-c > button[aria-label="Close"] {top: 0px !important; right: 0px !important;}
.gm-style-iw.gm-style-iw-c > button[aria-label="Close"] > span {width:18px !important; height:18px !important; margin: 4px !important;}

div.geo {width:100%; padding: 0px; position: relative; text-align: center; display:block; margin: 1rem auto 1rem; float:left;}
div.geo p {position: relative; margin: 0;}
div.geo a {color:#0000ee; text-decoration: underline;}
div.geo a i {position: relative; margin-right: 7px;}

#form-outer {width:100%; position: relative; margin: 0 auto 1rem auto; float:left; display:block; padding: 0;}
#form-outer > form {width:100%; height: auto; display: block; position: relative;float:left; margin: 0 auto;}
#form-outer > form input {border-radius: 5px; margin-right: 0.75rem;}
#form-outer > form ::-webkit-input-placeholder {opacity: 0.8;}
#form-outer > form button {border:none; border-radius: 5px; margin-left: 0.5rem;}

#directions {display:none; float:left; text-align: left; width:100%; position:relative; margin: 0px auto 0px; color:#54585a;}
#directions .panel {position:relative; border-radius: 0; border: 0 none; float:left; width:100%; margin: 0rem auto 0rem; background-color:#f5f5f5; padding: 15px;}
#directions .panel .panel-heading {position:relative;background-color:transparent; border: 0 none; margin-bottom:1rem; padding: 0 1.2rem 1rem 0px; border-radius: 0; border-bottom:1px solid #dedede; }

.timeTop span.distanceTime {display:block; position: relative;font-weight: 400; font-size: 1.0625rem;}
.timeTop span.trafficTime {display:block;font-style: italic; position: relative;font-weight: 400;font-size: 1.0625rem;}
.timeTop span.trafficTime > span {color:green;}
.timeTop span.trafficTime.traffic > span {color:red;}
.timeTop button {border:none; background-color: transparent; padding: 0; position: absolute; top: 50%;right: 1rem; text-align: center; cursor: pointer; margin: -1rem 0 0 0; z-index: 10; outline: none!important; border-radius:0; color:#00AFD7;}
.timeTop button:hover {background-color: transparent;color:#00AFD7}

#directions .panel .panel-body {padding: 0px;}
.mapbottom {position: relative;}
.mapbottom h3 {float:left; width: 100%; display:block; position: relative; margin: 0 0 0px 0px; padding: 0; text-transform: none; }
.mapbottom h3.fromLocation {margin: 0 0 1rem 0px; font-size: 1.2rem; line-height: 1.4;}
.mapbottom h3.fromLocation span {display: block;font-size: 1.0625rem;}
.mapbottom h3.toLocation {margin: 0 0 0 0; padding: 0; font-size: 1.2rem; line-height: 1.4;}
.mapbottom h3.toLocation span.destination_address {display:block; font-size: 1.0625rem; font-weight: 300;}
.mapbottom h3.toLocation span.destination_name {}
.mapbottom h3.toLocation span.destination_loc {}

#instructions {display:block; width: 100%; padding: 0px; margin: 0px 0px 0px 0px; position: relative; float:left; }
#instructions > li {float:left; width:100%; height:auto;display: block; position: relative; margin: 0; padding: 0 0 0px 1.5rem; font-size: 1.0625rem;}
#instructions > li:last-child {padding-bottom:10px; margin-bottom: 0;}
#instructions > li span.steps {display:block; width: 100%; position: relative; margin: 0 0 25px 0px; padding: 0 0 12px 0; border-bottom:1px solid #dedede; }
#instructions > li span.steps b {font-weight: 600;}
#instructions > li span.instruct {display: block; width:100%;}
#instructions > li span.dis {display: block;width:auto; font-size: 0.9rem; line-height: 1.2; position: absolute;overflow: hidden;background:#f5f5f5; padding: 0 5px 0 0; bottom:-10px;font-style: italic; font-weight: 400;}

#directionslist {display:none; position: absolute; top:3.5rem; left: 15px; z-index:11;}
#directionslist .dropdown-menu {max-height:270px;}
#directionslist .btn {border-radius: 5px; padding: 0.7rem 1rem; background-color:#003C71; border-color:#003C71; color:#fff;}
#directionslist .btn:after {display: none;}
#directionslist .btn i {line-height: 1; position: relative; margin-left: 8px;top:1px;}

/* LTO */
p.formpagetext.ltopage {font-style: italic;}
.ltocontent {float: left; height: auto; width: 100%; margin: 0px auto 0px auto; position: relative;}

/* LTO - All */
.ltorow.row {position: relative; -webkit-box-align:center;-ms-flex-align:center;align-items:center;}
.ltorow.row > div {padding: 0 0.5rem;}
#all.ltocontent .col-6 {position: relative; margin: 0;}
#all.ltocontent a.card {position: relative; flex-grow: 1; border-radius: 20px; border:1px solid #dcdcdc; }
#all.ltocontent a.card .card-img {overflow: hidden; border-radius: 15px;}
#all.ltocontent a.card .card-img img {position: relative; display: block; width:100%; padding: 10px 20px;}
#all.ltocontent a.card .card-body {display: -webkit-box; display:-ms-flexbox; display:flex; flex-direction: column; padding: 5px; height:70px; border-radius: 0;}
#all.ltocontent a.card .card-body .card-title {display: -webkit-box; display:-ms-flexbox; display:flex; position: relative; flex-grow: 1; line-height: 1.1; font-size: 1.0625rem; font-weight: 500; height:auto; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; white-space: normal; overflow: hidden; text-align: center;}

/* LTO - Single */
.ltoinfo {width:auto; float:left; text-align: center; position: relative; display: block; margin: 0 auto 0;}
.ltoinfo.imageonly {overflow: hidden; float:none;width:100%; padding: 0px;}
.ltoinfo.imageonly .imagezoomlto {display: inline-block; width:100%; height: auto; position: relative; margin: 0 auto; padding: 0; text-align: center; background:#fff; border: 1px solid #dadada;  border-radius: 0;}
.ltoinfo.imageonly .imagezoomlto img {position: relative; border-radius: 0; padding: .25rem}
.ltoinfo.imageonly span.buttons {position: absolute; left: 10px; top: 8px; display: block; z-index: 5;}
.ltoinfo.imageonly span.buttons button {border: 1px solid #e1e1e1; border-radius: 4px; background-color:rgba(255,255,255,0.7); padding: 0; cursor: pointer;font-size:11px; color:#222; width:30px; height: 27px; line-height:25px;text-align: center; display:block;}
.ltoinfo.imageonly span.buttons button.zoom-in {border-radius: 4px 4px 0px 0px;}
.ltoinfo.imageonly span.buttons button.zoom-out {border-radius: 0px 0px 4px 4px;}

.ltoinfo > .links {width:100%; height:auto; position: relative; display:-ms-flexbox; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: flex; margin: 1rem auto 0 auto; padding: 0; text-align: center; -webkit-align-items: center;-moz-align-items: center;-ms-align-items: center;align-items: center; -webkit-flex-flow:column;-moz-flex-flow:column;-ms-flex-flow: column;flex-flow: column; -webkit-justify-content: center;-moz-justify-content: center;-ms-justify-content: center;justify-content: center; }
.ltoinfo > .links a.btn {position: relative; margin: 5px;  width:100%; max-width: 90%;}
.ltoinfo > .links a.btn i {display: none;}

/* MObile App */
.apptop {float:left; width:100%; height: auto; position: relative; margin: 0px auto 0 auto;}
.appaccordion.card {position: relative;-webkit-backface-visibility: hidden;backface-visibility: hidden;border-radius: 0;border: 1px solid #A2AAAD;margin: 0 auto 0.5rem;background-color: #fff; box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);}
.appaccordion.card .card-header {border: 0 none; border-radius: 0; background-color:transparent; position: relative; padding: 0;}
.appaccordion.card .card-header a {border: none; background-color:transparent; display: block; position: relative; padding: 1rem 2rem 1rem 2.4rem; text-decoration: none; color:#003c71; font-weight: 500; text-align: left; font-size: 1.25rem;}
.appaccordion.card .card-header a i.fa-plus {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: -ms-flexbox;display: flex;-webkit-box-align: center;-ms-flex-align: center;align-items: center; -webkit-box-pack: center; -ms-flex-pack: center;justify-content: center; position: absolute; right:0.6rem; top: 50%; margin-top: -16px; line-height: 1; width: 32px; height:32px; text-align: center; border-radius: 50%; border: 0px solid #5bc4be; transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1); font-size: 1.25rem;}
.appaccordion.card .card-header a i.fab {position: absolute; display: block; left: 0.65rem; top:50%; width:1rem; height:1rem; margin-top:-0.65rem; line-height: 1;}
.appaccordion.card .card-header a i.fab.fa-apple {margin-top:-0.7rem;}

.appaccordion.card .card-body {border: 0 none; padding: 0; min-height: 0; height: 0;}
.appaccordion.card .card-body ul {padding: 0.5rem 1rem 1rem; opacity: 0; visibility: hidden; margin: 0; width:100%; background-color: transparent; border-top:1px solid #a2aaad;}

.appaccordion.card.toggle .card-body ul {opacity: 1; visibility: visible;}
.appaccordion.card.toggle .card-header a {color:#00afd7}
.appaccordion.card.toggle .card-header a i.fa-plus {transform: rotate(45deg); transition: all 350ms cubic-bezier(0.4, 0, 0.2, 1); color: #00afd7; border-color:#00afd7;}

.appaccordion .card-body ul li {list-style: decimal; list-style-position: outside; position: relative; padding: 0; margin: 0 0 0 25px; font-size: 1.0625rem;}
.appaccordion .card-body ul li span {}
.appaccordion .card-body ul li i.icon-ios-action {margin: 0 2px;color:#0046df; position: relative;}
.appaccordion .card-body ul li i.icon-chrome-menu {position: relative;}
.appaccordion .card-body ul li img {width:32px; position: relative; margin: 0 3px; border:1px solid #e3e6e7; border-radius: 6px;}

.appbottom {float:left; width:100%; height: auto; position: relative; margin: 0px auto 0 auto;}

/* Search */
.outerpagesearch {position: relative; float:left; width:100%;background-color:#fff; padding: 0.5rem 0 1.5rem; }
#searchpage {position: relative; float:left; width:100%;}
#searchresults {width: 100%; height: auto; display:block; margin: 0 auto;position: relative; padding:0px 0px 0px 0px;}
#searchresults p {text-align: center; font-style: italic; }
#searchresults p.noresults{}

#searchpageouter { width:100%; height: auto; position: relative; display:block; margin: 0 auto;padding: 0; background:#fff; overflow:hidden;}
#searchpageouter form {position:relative;margin: 0 auto;}
#searchpageouter form input {border-radius: 5px; padding-right:2.5em;}
#searchpageouter form input:focus {box-shadow:none;}
#searchpageouter form button {border:none;background-color:transparent; color:#702f8a; padding: 0; font-size: 1.75rem; border-radius: 0; height:53px; width:50px; position: absolute; top:0px;right:0px; }

#searchfilter {padding:0px; width:100%; height:auto; position: relative; margin: 0 auto; display:none;}
#searchfilter > div {margin: 0 auto 1rem; width:100%; float:left; text-align: center;}
.resultstext {width:100%; display: block; position: relative;margin:0 auto 1rem; font-size: 1.35rem; }
.resultstext > span {position: relative; padding: 0 4px;}
.resultstext span#search-string {font-weight: 600}
.results p.search {text-align: center; font-style: italic; margin-top:.5rem;}

#searchfilter.nofilter > div {border: none; border-bottom: 1px solid #eee; margin: 10px auto 0px;}
#searchfilter.nofilter > div .resultstext {margin: 0 auto 0;}

#main.searchpage #searchfilter {display:block;}
#resultsgrid .pagination {margin-top:25px;}

.filterdropdown {float:left; width:100%; text-align: center; position: relative; display: none; margin: 0px auto 1rem auto; padding:0;}
.filterdropdown a.btn {position: relative; padding-left:25px;padding-right:45px;}
.filterdropdown a.btn i {position: absolute; display: block; font-size: 1rem; right:1.25rem;top:50%;margin-top: -0.5rem;}
.filterdropdown a.btn.show:before {opacity: 1;}
.filterdropdown a.btn.show i {transform: rotate(180deg);}

#resultsgrid {width:100%; height:auto; position: relative; padding: 0; margin: 0px auto 0px auto; float:left; min-height:200px; }
#resultsgrid .gridouter { padding-top: 0; padding-bottom: 1rem; float:left; width:100%; height: auto; position: relative; display:block;}
#resultsgrid .gridouter .grid {position: relative;-ms-flex-wrap: wrap; flex-wrap: wrap;-webkit-box-align: flex-start; -ms-flex-align: start; align-items: flex-start; -webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center;  -webkit-align-content: start; align-content: flex-start;}
#resultsgrid .mix {position: relative; margin-bottom:0.5rem;}
#resultsgrid .mix a {display: -webkit-box; display:-moz-box; display:-webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: flex-start; -ms-flex-pack:start; justify-content: flex-start; -webkit-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; transition:none; height:auto; text-align: left; padding: 0.3rem 2rem 0.3rem 1rem; border-radius: 3px; color:#003c71; background-color:#f5f5f5; border:none; min-height:45px;}
#resultsgrid .mix a i {position: absolute; right:0.75rem; top:50%; margin-top: -0.5rem;}

/* Terms & Privacy Page */
.policypage {float:left; width:100%; height:auto; display: block; position: relative; margin-top: 0px;}
#terms {position: relative; float:left; width:100%;}
#terms .terms {float:left; width:100%; display: block; position: relative;}
#terms .terms:not(.well) p {display: block; position: relative; float:left; width:100%; margin: 1rem auto 0 auto; font-size:1.0625rem;}
#terms .terms .subtitle h2 {margin: 0; text-align: left; font-size: 1.35rem}

#privacytable {position: relative; float:left; display: block; width:100%; height:auto; margin: 0px auto 0px auto; padding: 0; }
#privacytable .table-responsive {float:left; width:100%;position: relative;}
#privacytable table td {}
#privacytable table td a {display: block; text-decoration:none; color:#003c71;}

#privacytable > div:not(.table-responsive) {margin-bottom:1.5rem;}
#privacytable .subtitle h2 {margin-top:0; margin-bottom: 1rem; text-align: left; }
#privacytable > div.subtitle {margin-bottom: 0;}

#privacytable .card {border:none; background:#f5f5f5; border-radius: 0; padding: 1.5rem;}
#privacytable .card .card-header {padding: 0; border:none;background:none;}
#privacytable .card .card-header h4 {margin: 0 0 0.25rem 0; padding: 0 0 0.75rem 0; border-bottom: 1px solid rgba(0,0,0,0.1); font-size: 22px; font-weight: 700;}
#privacytable .card .card-body {padding: 0; border: none;}
#privacytable .card-body p {margin: 1rem 0; font-size:1.0625rem;}
#privacytable .card-body p:last-child {margin:0;}
#privacytable .card-body ul {margin: 0 0 1rem 0;padding: 0 0 0 1rem;position: relative;}
#privacytable .card-body ul:last-child {margin:0;}
#privacytable .card-body ul li {margin: 0 0 0.25rem; list-style: disc; list-style-position: outside; position: relative; font-size:1.0625rem;}
#privacytable .card-body ol {margin: 0 0 1rem 0;padding: 0 0 0 1rem;position: relative;}
#privacytable .card-body ol:last-child {margin:0;}
#privacytable .card-body ol li {margin: 0 0 0.25rem; list-style: decimal; list-style-position: outside; position: relative; font-size:1.0625rem;}