* { 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:#fff;width:auto;height:auto;font-size:16px;z-index:999;}

#goTop { width: 44px; height: 44px; 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:#32335a; text-align:center; opacity:0; 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; }
#goTop.hide {opacity: 0;bottom:-55px}
#goTop.show {opacity: 1; bottom:25px;}
#goTop i {font-size: 2.75rem; position: relative; display: block;}
#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: 'sofia-pro', sans-serif;  font-weight:400; font-style:normal; font-size: 100%; line-height:1.5; color:#15243c; 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:#485cc7; 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; }
#splash > div span {display: block; position: relative; color:#fff; padding: 15px 0 0 0; margin: 17px 0 0 0; border-top:1px solid rgba(255,255,255,0.5); font-size: 1.15rem;line-height: 1;}

.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;}

a, a:visited {color:#485cc7; cursor:pointer; text-decoration: underline;outline:none; border:none;}
a:hover {color:#485cc7; text-decoration:underline;}

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: 19px 0; padding:0;}

.btn, .btn:visited {text-decoration:none; font-size: 1rem; line-height: 1.5; position: relative; display:-webkit-inline-flex; display: -ms-inline-flexbox; display: inline-flex; -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; background-color:#485cc7; border:1px solid #485cc7; border-radius: 6px; color:#fff; font-weight: 600; white-space: normal; vertical-align: middle; text-align: center; cursor: pointer; padding: 0.6rem 1.5rem 0.8rem; margin: 0; }
.btn:hover {background-color:#485cc7; border-color:#485cc7; color:#fff;}
.btn:active, .btn:focus {background-color:#485cc7; border:1px solid #485cc7; color:#fff;}
a.btn, a.btn:hover {text-decoration: none;}

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

h1,h2,h3,h4,h5,h6 {margin:0;padding:0;font-family: 'Outfit',sans-serif; color:#32335a;letter-spacing: -0.02em;}
h1 {}

::-webkit-input-placeholder {color: #15243C; color: rgba(21,36,60,0.3);}
:-moz-placeholder {color: #15243C; color: rgba(21,36,60,0.3);}
::-moz-placeholder {color: #15243C; color: rgba(21,36,60,0.3);}
:-ms-input-placeholder {color: #15243C; color: rgba(21,36,60,0.3);}
.placeholder {color: #15243C; color: rgba(21,36,60,0.3);}

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 #b9c0d7; -webkit-text-fill-color: #363136;-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; font-family: 'sofia-pro', sans-serif !important;}

.form-control {border-radius: 6px; line-height: 1.5; border-width: 1px; border-color:#b9c0d7; -webkit-transition: all .5s; transition: all .5s; background-color: transparent; box-shadow: none; padding: 0.625rem 1.25rem 0.725rem; font-size:1rem; height:48px; color:#15243c;}
.form-control:hover {border-color:#485cc7;}
.form-floating label {font-size: 1rem;}
.form-control:focus {border-color:#485cc7; box-shadow: inset 0 1px 2px transparent,0 .375rem .625rem -0.3125rem rgba(72,92,199,.15);}

.modal.fade.show {opacity: 1;}
.modal-header {text-align: center; padding: 20px 1rem 15px; position: relative;border-bottom-color:#485cc7;}
.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:2}
.modal-header button.close:hover {background-color:transparent; color:#fff;}

.modal-body {background-color:#fff; border-bottom-left-radius:calc(.3rem - 1px); border-bottom-right-radius:calc(.3rem - 1px);}
.modal-content {background-color:#485cc7; 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 #b9c0d7;  text-align: left; text-decoration: none;color:#15243c;}
.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; min-height:100%; float:left; padding: 0px 0 0 0; background:#fff;}
.insidescroller:before {content:''; position: absolute; top:0; left: 0; right: 0; width:100%; height:550px; background-image: url(../images/bg-hero-wave.svg), radial-gradient(circle farthest-corner at 20% 0%,rgba(255,255,255,0.9),rgba(255,255,255,0) 20%),radial-gradient(circle farthest-corner at -8% 38%,rgba(0,42,189,0.3),rgba(255,255,255,0) 16%),linear-gradient(158deg,#e0e3ff 0%,#fff 50%); background-size:100vw; background-position: center; background-repeat: no-repeat;}
.container-fluid {max-width: 1600px; 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:#485cc7; color:#fff;  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);}
header .container-fluid {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; position: relative; height: 100%;}

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:auto; height:100%;}
header .navbar-toolbar button {border-color:#fff; border-radius: 6px; background:none; transition:none; padding: 0 0; width:38px; height: 36px; 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-align-items: center; -moz-align-items: center; -ms-align-items: center; align-items:center; }
header .navbar-toolbar button span {position: relative; display: none; font-weight: 400; margin-left: 0.5rem; font-size: 0.9rem;}
header .navbar-toolbar button i {font-size: 1.15rem;}
header .navbar-toolbar button:hover, header .navbar-toolbar button:focus, header .navbar-toolbar button:active {background:none; border-color:#fff; color:#fff;}

header .navbar-toolbar button.menubutton {}
header .navbar-toolbar button.searchbutton {margin-right: 0.6rem;}

a.sitename {color:#fff; text-decoration: none;  }
a.sitename span {font-size: 1.1rem;}
a.sitename span.sm-screen {display: block;}
a.sitename span.lg-screen {display: none;}

/* Footer */
footer {background-color:#fff; background-image:radial-gradient(circle farthest-corner at 10% -10%,rgba(103,70,232,0.3),rgba(255,255,255,0) 20%),radial-gradient(circle farthest-corner at 33% -30%,rgba(0,156,189,0.3),rgba(255,255,255,0) 30%),radial-gradient(circle farthest-corner at 100% 80%,rgba(0,155,189,0.15),rgba(255,255,255,0) 15%),radial-gradient(circle farthest-corner at 100% 100%,rgba(155,217,126,0.15),rgba(255,255,255,0) 15%); position: relative; color:#15243c; padding: 0; font-size: 0.8rem; line-height: 1.2; 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: row; flex-direction: row; -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 .2rem 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: 85%; width:1px; background:#15243c; top:3px;}
footer .footerlinks ul li a {display: block; position:relative; color:#32335a; text-decoration:none;}

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

.container-fluid.indexpage {padding: 0; width: 100%; margin-left: 0; margin-right: 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:transparent; border-top: solid 1px #d9ddea;}
.indexgrid .grid-item.wide {background-color: #32335a;border-top: none;}
.indexgrid .grid-item.wide:last-child {background-color:#32335a}
.indexgrid .grid-item:first-child {border-top: none;}

.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:#485cc7;  font-size: 1em; line-height: 1; padding: 20px 25px 17px 15px; font-weight: 600; text-decoration: none; font-family: 'Outfit', sans-serif; letter-spacing: -0.02em;}
.indexgrid .grid-item.wide a {color:#fff;}
.indexgrid .grid-item a br {display: none;}
.indexgrid .grid-item a i.fas, .indexgrid .grid-item a i.far {position: relative; line-height: 1; margin-right: 10px; width:18px; text-align: center; }
.indexgrid .grid-item a i.icon {position: absolute; right: 1rem; display: block;}

/* Inside Pages */
a#historyback {position: fixed; bottom:20px; 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: 6px; background-color:#485cc7; opacity:0.85;color:#fff; font-size: 1rem; border:1px solid #485cc7; -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:31px; opacity: 1; border-radius: 6px 6px 0 0;}
a#historyback i {position: absolute; text-align: center; width:auto; top:50%; margin-top:-7px; left:0.6rem;}
a#historyback span.text {position: relative; margin-left: 5px;}
body.indexpage a#historyback {display:none;}
html.webapp a#historyback {display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; bottom:41px;}
html.webapp body.indexpage a#historyback {display:none;}

p.largetext {margin:1rem 0 2rem; font-size: 1.095rem; line-height: 1.43478em;}

.subtitle {position: relative;}
.subtitle > h2 {position:relative; margin: 0; font-size: 24px; line-height: 1.125em; letter-spacing: -0.02em; text-align: center;}

.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; height:42px; background:#fff;}
.pagetitle > h1 {font-weight: 700; text-align: center; padding: 0 5px; margin: 0; line-height: 1;}

.maincontent .dropdown-menu {box-shadow: 0 15px 45px rgba(19,22,95,0.2); color:#15243c;  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:#15243c; text-decoration: none;}
.maincontent .dropdown-menu a.dropdown-item:hover {background-color:transparent; color:#485cc7;}
.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:#485cc7;}

.maincontent .dropdown-menu button.dropdown-item {padding:4px 12px; position: relative; display:block; font-weight: 400; color:#15243c;}
.maincontent .dropdown-menu button.dropdown-item:hover {background-color:transparent; color:#485cc7;}
.maincontent .dropdown-menu button.dropdown-item:active, .maincontent .dropdown-menu button.dropdown-item:focus {background-color:transparent;}
.maincontent .dropdown-menu button.dropdown-item.mainactive {background-color:transparent; color:#485cc7;}
.maincontent .dropdown-menu button.dropdown-item.mixitup-control-active {background-color:#f0e6ff; color:#15243c;}

.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:0 0 2.2rem 0; background:none; padding: 0 0 1.05rem 0; border-radius: 0; border-bottom:1px solid #b9c0d7;}
.mixitup-page-stats {text-align: center;}
.mixitup-page-stats > div {font-size: 1.095rem; line-height: 1.43478em;}
.mixitup-page-stats > div span {font-weight: 700;}

.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:400; transition:none;}
.selectview a.active {font-weight: 700; color:#15243c;}

.selectview button#showall {-webkit-appearance: none; appearance: none; padding: 0.6rem 1.5rem 0.8rem;}
.selectview button#showall:hover {}

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

.page-item {position:relative; margin: 0; 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 0 0.2em 0; margin: 0; border-radius: 50%; width:2em; height:2em; font-weight: 400; color:#485cc7; font-size: 1.35rem; line-height: 1.43478em;}

.page-item.page-arrow {margin: 0 1em;}
.page-item.page-arrow .page-link {width:auto; text-decoration: none; }
.page-arrow .page-link.mixitup-pager-prev {margin: 0; font-weight: 700; border-radius: 0;}
.page-arrow .page-link.mixitup-pager-next {margin: 0; font-weight: 700; border-radius: 0;}
.page-arrow .page-link i {position:relative; font-size: 1.25rem; top:2px; line-height:1;}
.page-arrow .mixitup-pager-next i {margin-left:1rem;}
.page-arrow .mixitup-pager-prev i {margin-right:1rem;}

.page-link:hover, .page-link:active, .page-link:focus {background-color:#fff;}
.page-link:hover {}
.page-link.mixitup-pager-active {color:#fff; background-color:#485cc7; font-weight: 700;}
.page-arrow .page-link.mixitup-pager-disabled {opacity: 0.1; 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 {display:none;}
#newvendors.hidepager .top-pagination .selectview {display:none;}
#newvendors.hidepager .selectview {display:none !important;}
.pagination.mixitup-mixitup-page-list-disabled {display:none;}

/* Discounts & Program Info */
.toplinks {position: relative; margin: 1rem auto 0;}
.toplinks .row {-webkit-justify-content: center; -moz-justify-content: center; -ms-justify-content: center; justify-content: center;}
.toplinks .row > div {margin-bottom: 1.5rem;}
.toplinks a {position: relative;display: -webkit-box; display:-ms-flexbox; display:flex; -webkit-justify-content: flex-start; -moz-justify-content:flex-start; -ms-justify-content: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-direction: row; flex-direction: row; width:100%; height:100%; flex: 1 1 auto; box-sizing: border-box; }
.toplinks a {background-color:#00778b; padding: 1.5rem 1.25rem; font-size: 20px; text-align: left; line-height: 1.25; border-radius: 6px; color:#fff; background-image: linear-gradient(310deg,#00ad83 0%,#009cbd 100%); font-weight: 600; text-decoration: none; letter-spacing: -0.02em; font-family: 'Outfit',sans-serif;}
.toplinks a i { position: relative; margin: 0 1rem 0 0; color:#fff;}
.toplinks a span {position: relative;}
.toplinks a span:after {font-family: 'centra';content: "\e924";color:#fff;font-size: 1rem; /*position: absolute; top:50%; margin-top:-0.5rem;right:-30px; */transition:all 0.3s ease; position: relative; right:0; opacity: 0;}
.toplinks a:hover span:after {right:-15px;opacity: 1;}

/* 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; padding: 0.25rem;}
.discountpage .card {position: relative; -webkit-backface-visibility: hidden; backface-visibility: hidden; border-radius:0; border:1px solid #d9ddea; border-width:0px 0px 1px 0px;  margin: 0 auto 0; background-color:transparent; box-shadow: none;}
.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 2rem; text-decoration: none; color:#485cc7; font-weight:600; font-size: 1.1rem;}
.discountpage .card-header a i.icon-arrow-down {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.4rem; top: 50%; margin-top: -12px; line-height: 1; width: 24px; height:24px; text-align: center; border-radius: 50%; border: 1px solid #485cc7; transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1); font-size: 0.8rem;}
.discountpage .card-header a i.icon:not(.icon-arrow-down) {position: absolute; display: block; left: 0; top:50%; width:1rem; height:1rem; margin-top:-0.6rem; line-height: 1; font-size: 1.25rem;}

.discountpage .card.toggle {}
.discountpage .card.toggle .card-header a {color:#32335a;font-weight: 700;}
.discountpage .card.toggle .card-header a i.icon-arrow-down {transform: rotate(180deg); transition: all 350ms cubic-bezier(0.4, 0, 0.2, 1); color:#fff; background-color:#485cc7}

.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; padding-left:10px; padding-right:10px;}

.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; border-color:#3a4ebc; background-color:transparent; color:#3a4ebc;}
div.viewcats > button:hover, div.viewcats > button:active, div.viewcats > button:focus {border-color:#3a4ebc; background-color:transparent; color:#3a4ebc;}
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:#d9ddea; 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:#32335a;}
#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:#15243c; 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;border-radius: 6px; }
ul.vendors span.title {border-radius: 0; position: relative; padding: 0.5rem 12px 0.25rem; font-size: 1.35rem; font-weight: 700; color:#15243c;}
ul.vendors ul {border:0px solid #d9ddea; -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 #d9ddea;}
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 0; white-space: normal; color:#485cc7;}
ul.vendors ul li a:visited {color:#485cc7;}

/* New Vendors */
div.newvendorfilter {position: relative; display: none;}
div.newvendorfilter a.btn {padding:0.6rem 3rem 0.8rem 1.5rem;background-color: transparent; border-color:#485cc7; color:#485cc7;}
div.newvendorfilter a.btn.show, div.newvendorfilter a.btn:hover {background-color: transparent; border-color:#485cc7; color:#3a4ebc;}
div.newvendorfilter a.btn i {position: absolute; line-height: 1; font-size:0.9rem; right:1.5rem; top:36%;}

#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: 5px 2rem 5px 10px; border-radius: 6px; color:#566274; background-color:#fff; border:1px solid #d9ddea; min-height:60px; font-weight: 600; line-height: 1.2;}
#newvendors .row a i {position: absolute; right:0.75rem; top:50%; margin-top: -0.5rem; font-size: 95%;}

/* Error Pages */
.errorpage p.formpagetext {font-weight: 400; text-align: center;}
.errorpage p.formpagetext span {font-weight: 600;}

/* Cats */
.locbutton {text-align: center; position: relative; display:block; margin: 0 auto 1.5rem;}
.locbutton .btn {background-color: transparent; border-color:#485cc7; color:#485cc7;}
.locbutton .btn.show, .locbutton .btn:hover {background-color: transparent; border-color:#485cc7; color:#3a4ebc;}
.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.75rem;}
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: 5px 2rem 5px 10px; border-radius: 6px; color:#566274; background-color:#fff; border:1px solid #d9ddea; min-height:60px; font-weight: 600; line-height: 1.2;}
div.singlecat .row a i {position: absolute; right:0.75rem; top:50%; margin-top: -0.5rem; font-size: 95%;}

.jumpcat select { -webkit-appearance: none;-moz-appearance: none; -ms-appearance: none;appearance: none; outline: 0;box-shadow: none;border:1px solid #485cc7 !important;background-color:#485cc7;}
.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 #eee;}
.jumpcat > div {position: relative; width: 20em; max-width:100%; height:auto; background-color:#485cc7; margin: 0px auto 0 auto; border-radius: 6px; border:0 none; box-shadow: none; padding:0}
.jumpcat select { padding:0.65rem 2.25rem 0.85rem 1.25rem; color:#fff; cursor: pointer; width:100%; border-radius: 6px; border: none !important; text-align: left; font-family: 'sofia-pro', sans-serif; background-color:#485cc7; font-weight: 600; font-size: 1rem;} 
.jumpcat > div::after {font-family: "centra"; content: "\e91c"; position: absolute;top: 0;right: 1rem;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:#ffffff; border-color:#3a4ebc; padding:0.65rem 1.25rem 0.85rem 2.5rem;color:#3a4ebc;}
.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; }
.businessContent .business-image {display: block; height:auto; width:auto; position: relative; margin: 0 auto 0px; text-align: center; border: none; padding:5px 5px 10px 5px;}
.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: .35rem; border: 0px solid #dadada; background:#fff; border-radius: 6px; box-shadow: 0 2px 24px rgba(0,0,0,.15);}
.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: 3px; 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: 0.5rem 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;top:1px;}

/* 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: 'sofia-pro', sans-serif !important; color:#15243c; font-weight: normal !important; width:100% !important; overflow: hidden !important; text-align:left;}
.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: #15243c !important; margin:0; padding:0 2px 5px 2px;border-bottom: 0px solid rgba(200, 201, 199, 0.5); font-family: 'Outfit', 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: 'sofia-pro', sans-serif !important; background-color:#fff; -webkit-font-smoothing: subpixel-antialiased; font-size:17px !important; line-height:24px !important; color:#15243c !important;}
.infoWindow h5 {display:block;line-height:20px; font-size:1rem; font-weight:600 !important; color:#15243c !important; margin:0; padding:0; font-family: 'Outfit', sans-serif !important; text-transform: capitalize;}
.infowindow h5 {padding:0;margin:0; }

#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: 'sofia-pro', 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: 'sofia-pro', 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: 'sofia-pro', 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:#15243c;}
.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:#15243c; font-family: 'sofia-pro', 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:#15243c; font-family: 'sofia-pro', 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: 'sofia-pro', sans-serif !important; font-weight: 400 !important; text-decoration: underline; color:#15243c !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: 'sofia-pro', sans-serif !important; font-size: 12px !important;}
.gmnoprint .gm-style-mtc > div[role=button] {font-family: 'sofia-pro', 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: 5px 0 5px 0px;}
.infowindow > div {display:block; position: relative;font-weight:normal; font-size: 14px; line-height: 18px; font-family: 'sofia-pro', sans-serif !important; color:#15243c;}
.infowindow .title {font-family: 'sofia-pro', 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:#32335a; -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:#15243c; font-size:15px; font-family: 'sofia-pro', sans-serif !important;}
.infowindow .address {color:#15243c; 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:#15243c; line-height:1.3;}
.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: 'sofia-pro', sans-serif; animation:none; font-size: 1.05rem;}
.infowindow .discountlink > a:hover span {text-decoration: none;}
.infowindow .discountlink > a i {position: relative; transition: all 0.3s ease; font-size: 0.95rem; line-height: 1; right:-6px;top:1px;}
.infowindow .discountlink > a:hover:hover i {right:-10px;}

/* 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 #d9ddea; 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; padding-right:2.75rem;}
button#dropdownlocation:after {display:none;}
button#dropdownlocation i {position:absolute; line-height: 1; top:50%; margin-top:-7px;right:1rem; font-size: 0.9rem;}
button#dropdownlocation.show, button#dropdownlocation:active, button#dropdownlocation:focus {background-color: #3a4ebc; border-color:#3a4ebc; color:#fff;}
button#dropdownlocation.show i {transform: rotate(180deg);}

/* Directions */
table#printDiv {display:none;}
.mapContent {min-height: 0px; float: left; height: auto; width: 100%; padding: 0; margin: 0 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 #d9ddea;}
#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 a {position: relative;font-weight: 400;}
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;height:100%;}
#form-outer > form ::-webkit-input-placeholder {opacity: 0.8;}
#form-outer > form button {height: 100%}

#directions {display:none; float:left; text-align: left; width:100%; position:relative; margin: 0px auto 0px; color:#15243c;}
#directions .panel {position:relative; border-radius: 0; border: 0 none; float:left; width:100%; margin: 0rem auto 0rem; padding: 15px 0;}
#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 rgba(185, 192, 215, 1);}

.timeTop span.distanceTime {display:block; position: relative;font-weight: 400; font-size: 1.25rem;}
.timeTop span.trafficTime {display:block;font-style: italic; position: relative;font-weight: 400;font-size: 1.15rem;}
.timeTop span.trafficTime > span {color:green;}
.timeTop span.trafficTime.traffic > span {color:red;}
.timeTop button {border:none; background-color: transparent; background:none; 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:#32335a;}
.timeTop button:active,.timeTop button:focus {border:none; background:none;color:#32335a;}
.timeTop button:hover {background-color: transparent;color:#c81e82}

#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; line-height: 1.4;}
.mapbottom h3.fromLocation span {display: block; font-size: 1.25rem; letter-spacing: normal;}
.mapbottom h3.toLocation {margin: 1rem 0 0 0; padding: 0; line-height: 1.4;}
.mapbottom h3.toLocation span.destination_address {display:block; font-size: 1.25rem; letter-spacing: normal;}
.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; }
#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 rgba(185, 192, 215, 0.25); }
#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:#fff; 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:after {display: none;}
#directionslist .btn i {line-height: 1; font-size: .8rem; position: relative; margin-left: 8px;top:1px;}
#directionslist .btn.show, #directionslist .btn:active, #directionslist .btn:focus {background-color: #3a4ebc; border-color:#3a4ebc; color:#fff;}
#directionslist .btn.show i {transform: rotate(180deg);}

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

#all.ltocontent {display: none;}
#all.ltocontent .col-6 {position:relative; margin-bottom: 0.5rem;}

#all.ltocontent a {display: -webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-around; -moz-justify-content: space-around; -ms-justify-content: justify; justify-content: space-around; -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;flex-direction: column; }
#all.ltocontent a {border:1px solid #d9ddea; border-radius: 6px; padding: .4rem .4rem .75rem .4rem; text-align: center; background-color:#fff;}
#all.ltocontent a span.img {display:block; position: relative; margin: 0 auto;}
#all.ltocontent span.img img {border-radius: 0; position: relative; display:block; margin: 0 auto .5rem auto; padding: 0 10px;}
#all.ltocontent span.title {position:relative; line-height: 1.15; font-weight: 400; display: block; padding: 0 4px; text-align: center; width:100%;}

/* LTO - Single */
.ltoinfo {width:auto; float:left; text-align: center; position: relative; display: block; margin: 0 auto 0;}
.ltoinfo.imageonly {float:none;width:100%; padding: 5px 5px 10px 5px;}
.ltoinfo.imageonly .imagezoomlto {display: inline-block; width:100%; height: auto; position: relative; margin: 0 auto; padding: 0.35rem; text-align: center; background:#fff; border: 0px solid #dadada;  border-radius: 6px; box-shadow: 0 2px 24px rgba(0,0,0,.15);}
.ltoinfo.imageonly .imagezoomlto img {position: relative; border-radius: 3px; padding: 0}
.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: 0.75rem 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;}

/* 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; margin: 0;}
.formContainer input[type=checkbox] {display:none;}
.formajax .pagetitle p.largetext span {display: block;}
.formpage p.formpagetext.contactbox span {display: block;}
.formpage p.formpagetext.contactbox span.eplee {font-weight: 600;}
.formpage p.formpagetext.contactbox span.links {font-weight: 600;}
.formpage p.formpagetext.contactbox span:last-child {margin-top:5px; font-style: italic;}
h4.suggesttitle {float:left; width:100%; display: block; position:relative; margin:15px 0px 22px 0; line-height:normal; font-weight: 600; font-size:1.75rem;}

.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; float:left; width:100%; display: block; text-align: center; font-style: italic;}
.formContainer .form-group label {font-weight: 400; padding: 0 0 .5rem 0; position: relative;}

.formContainer .form-group .form-control {position: relative; height:52px; background:#fff;}
.formContainer .form-group textarea.form-control {height:auto;}
.formContainer .select {position: relative;}

.formContainer .form-group .error .form-control {border-color:#cc0000; }
.formContainer .form-group .error .form-control:focus {box-shadow: inset 0 1px 2px transparent,0 .375rem .625rem -0.3125rem rgba(204,0,0,.15);}

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

.formContainer .select i.fa-sort {position: absolute; right: 2rem;top:50%; margin-top:-9px; color:#512d6d}

.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 #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; background:#00778b; text-align: center;}
.formContainer #formresponse > div.errormessage {background:rgba(220, 53, 69,1);}
.formContainer #formresponse > div p {margin: 0; padding: 0; color:#fff;}
.formContainer #formresponse > div p span {font-weight: 600;}
.formContainer #formresponse > div p a {color:#fff;}

.formContainer.update #formresponse > div {}
.formContainer.update #formresponse > div p:first-child {font-style: italic; margin-bottom: .5rem; border-bottom: 1px solid rgba(255,255,255,0.25); padding: 0 0 .5rem 0;}
.formContainer.update #formresponse > div.error p:first-child {margin-bottom: 0; border-bottom: none;padding:0;}
.formContainer.update #formresponse > div p {margin-bottom: 0.25rem;}
.formContainer.update #formresponse > div p:last-child {margin-bottom: 0;}
.formContainer.update #formresponse > div p span:first-child {font-weight: 600; padding: 0 0.5rem 0 0;}
.formContainer.update #formresponse > div p span:last-child {font-weight: 400;}

.bottomsubscribe.card {background:#32335a; color:#fff; border-radius: 6px; border-color: #32335a; text-align: center;}
.bottomsubscribe.card .card-body p {color:#fff; margin: 0 0 0.5rem;position: relative;}
.bottomsubscribe.card .card-body p:last-child {margin: 0;}
.bottomsubscribe.card .card-body p a {color:#fff; text-decoration: underline;}

/* Faqs */
#faqs {float:left; width:100%; height: auto; position: relative; margin: 0px auto 0 auto;}
#faqs .faqs {border-bottom: 1px solid #d9ddea; display: block; float:left; width:100%; margin: 0 0 1rem 0; padding: 0 0 1rem 0;}
#faqs .faqs:last-child {padding: 0; margin: 0; border:none;}
#faqs .faqs h4 {position: relative; margin: 0 0 0.5rem 0;font-weight: 600;}
#faqs .faqs p {position: relative; margin:0;}

/* 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 #d9ddea; border-width:0px 0px 1px 0px;  margin: 0 auto 0; background-color:transparent; box-shadow: none;}
.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 2rem; text-decoration: none; color:#485cc7; font-weight:600; font-size: 1.1rem;}
.appaccordion.card .card-header a i.icon-arrow-down {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.4rem; top: 50%; margin-top: -12px; line-height: 1; width: 24px; height:24px; text-align: center; border-radius: 50%; border: 1px solid #485cc7; transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1); font-size: 0.8rem;}
.appaccordion.card .card-header a i.bi {position: absolute; display: block; left: 0; top:50%; width:1rem; height:1rem; margin-top:-0.6rem; line-height: 1; font-size: 1.25rem;}

.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:0px solid #d9ddea;}

.appaccordion.card.toggle .card-body ul {opacity: 1; visibility: visible;}
.appaccordion.card.toggle .card-header a {color:#32335a;font-weight: 700;}
.appaccordion.card.toggle .card-header a i.icon-arrow-down {transform: rotate(180deg); transition: all 350ms cubic-bezier(0.4, 0, 0.2, 1); color:#fff; background-color:#485cc7}

.appaccordion .card-body ul li {list-style: decimal; list-style-position: outside; position: relative; padding: 0; margin: 0 0 0 25px;}
.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.bi {position: relative;color:#000; font-size: 1.1rem; top:1px; line-height: 1;}
.appaccordion .card-body ul li img {width:32px; position: relative; margin: 0 3px; border:1px solid #d9ddea; border-radius: 6px;}

.appbottom {float:left; width:100%; height: auto; position: relative; margin: 0px auto 0 auto;}
.appbottom p.formpagetext {font-style: italic;}

/* Search Page */
.outerpagesearch {position: relative; float:left; width:100%;background-color:transparent; padding: 0.5rem 0 1.5rem; }
#searchpageouter { width:100%; height: auto; position: relative; display:block; margin: 0 auto;padding: 0; overflow:hidden;}
#searchpageouter form {position:relative;}
#searchpageouter form input {background-color: #fff; height:54px; padding-right: 50px;}
#searchpageouter form button {border:none;background-color:transparent; color:#485cc7; padding: 0; font-size: 1.5rem; border-radius: 0; height:54px; width:50px; position: absolute; top:0px;right:5px; }

#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{}

#searchfilter {padding:0px; width:100%; height:auto; position: relative; margin: 0 auto; display:none;}
#searchfilter > div {margin: 0 auto 0; padding: 0 0 1rem 0;width:100%; float:left; text-align: center;}
.resultstext {width:100%; display: block; position: relative;margin:0 auto 1rem; font-size: 1.095rem; line-height: 1.43478em;}
.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 #d9ddea; margin: 10px auto 0px;}
#searchfilter.nofilter > div .resultstext {margin: 0 auto 0;}

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

.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: 0.6rem 3rem 0.8rem 1.5rem;}
.filterdropdown a.btn i {position: absolute; display: block; font-size: 0.8rem; right: 1.5rem; top: 50%; margin-top:-0.5rem;}
.filterdropdown a.btn.show {background-color:#3a4ebc; border-color: #3a4ebc; color:#fff;}
.filterdropdown a.btn.show i {transform:rotate(180deg);}

#results {float:left;width: 100%; height: auto; display:block; margin: 0 auto;position: relative; padding:0px 0px 0px 0px; }
.results { float:left; width:100%; height:auto; display:block;position: relative; border-top:0px solid #E1E7E9; padding: 0px 0px 0px 0; margin: 0px auto 0px auto; }

#resultsgrid {width:100%; height:auto; position: relative; padding: 0 1rem; margin: 0px auto 0px auto; float:left; min-height:200px; }
#resultsgrid .gridouter { padding-top: 0px; padding-bottom: 15px; 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 > div {padding: 0 0px; box-sizing: border-box; margin: 0 0 0px 0;}

#resultsgrid .mix a {padding: 0.5rem 1.5rem; 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; width:100%; height:100%; flex: 1 1 auto; box-sizing: border-box; min-height:62px;}
#resultsgrid .mix a {text-align: center; position: relative; height:75px; background:#fff; padding: 5px 10px; border:1px solid #d9ddea; border-radius: 6px; color:#566274; font-weight: 400; font-size: 1.05rem;font-weight: 600; line-height: 1.2;}
#resultsgrid .mix a:before {display: none;}
#resultsgrid .mix a:hover, #searchgrid .mix a:active {background:#fff; color:#566274; border-color:#d9ddea;}
#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: 0 auto 19px auto;}
#terms .terms .subtitle h2 {text-align: left; margin: 0 0 20px;}
#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;}

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

#privacytable .card {border-color: transparent; background:none; border-radius: 0; padding: 0;}
#privacytable .card .card-header {padding: 0; border:none;background:none;}
#privacytable .card .card-header h4 {font-size: 1.35em; font-weight: 600; line-height: 1.2em; margin-top:1rem; margin-bottom: 1rem;}
#privacytable .card .card-body {padding: 0; border: none;}
#privacytable .card-body h5 {margin-bottom:.5rem; font-weight: 600;}
#privacytable .card-body p {margin: 0 auto 19px auto;}
#privacytable .card-body p:last-child {margin:0;}
#privacytable .card-body ul {margin: 0 auto 19px auto; 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;}
#privacytable .card-body ol {margin: 0 auto 19px auto; 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;}