/* HTML5 ✰ Boilerplate
 * ==|== normalize ==========================================================
 */
 
@import url("reset.css");
@import url("jquery.css");

/* ==|== primary styles =====================================================
   Author: Brad Mackenzie
   ========================================================================== */

body {
	display: flex;
	flex-direction: column;
	margin: 0 auto;
	color: #fff;
	background: #000;
	font-family: 'Maven Pro', sans-serif;
}

div,
input,
.btn {
	box-sizing: border-box;
}

.container {
	max-width: 1060px;
	margin: 0 auto;
	padding: 0 20px;
}

.spacer {
	height: 20px;
}

.center {
	text-align: center;
}

.nmt {
	margin-top: 0;
}

/* Font */
h1, h2, h3, h4, p {
	font-weight: 400;
}

h1 {
	font-size: 2em;
	word-spacing: 2px;
	margin: 10px 0;
	text-transform: uppercase;
}
h2 {
	font-size: 1.5em;
}

.superscript {
	font-size: 26px;
	vertical-align: super;
}

.btn,
a.btn {
	display: inline-block;
	height: 35px;
	line-height: 30px;
	padding: 0 20px;
	color: #fff;
	background-color: #000;
	border: 2px solid #fff;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
}

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

/* Forms */
div.input {
	margin-bottom:15px;
}

input,
textarea {
	height: 40px;
	padding:9px;
	border:solid 1px #ccc;
	outline:0;
	background-color:#FFFFFF;
}

input[type="radio"] {
	width:15px;
	margin-bottom:15px;
}

input[type="file"] {
	background:none;
	border:none;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
	padding:0;
}

textarea {
	height:150px;
	line-height:150%;
}

label {
	margin-left:10px;
	text-transform:uppercase;
}

div.submit input[type="image"] {
	padding:0;
	width:46px !important;
	height:31px;
	border:none;
}

/* Buttons - Forms */
button[type="submit"], 
utton[type="button"],
input[type="submit"] {
	min-width:50px;
	height:40px;
	line-height:40px;
	padding: 0 20px;
	background:#000;
	display:inline-block;
	color:#eee;
	text-align:center;
	text-decoration:none;
	text-transform:uppercase;
	font-size:0.9em;
	text-shadow:0 -1px 1px rgba(0,0,0,0.25);
	border:1px solid #fff;
	position:relative;
	cursor:pointer;
}

/* Sections */

.top-promo-container {
	display: flex;
	flex-direction: row;
	height: 50px;
	width: 100%;
	background-color: #d4002a;
}

.top-promo-container a {
	color: #fff;
	text-decoration: none;
	height: 50px;
	width: 100%;
}

.top-promo-container a .top-promo {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	height: 50px;	
	width: 100%;
}

.top-promo-container a .top-promo p {
	margin-bottom: 0;
}

header[role="banner"] {
	background-color: #fff;
	width: 100%;
	margin: 0 auto;
}

.logged-container {
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	margin-bottom: 20px;
}

.search {
	position: relative;
	margin-right: 20px;
	margin-top: 10px;
}

.search .spinner {
	position: absolute;
	top: 2px;
	left: 20px;
}

.search #SearchForm {
	display: flex;
	flex-direction: row;
}

.search #SearchForm input {
	border-radius: 30px;
	width: 200px;
	height: 30px;
	font-size: 12px;
}

.search #SearchForm button {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	background-color: #2d2d2d;
	color: #fff;
	margin-left: -30px;
	border-radius: 30px;
	padding: 0;
	min-width: 30px;
	font-size: 14px;
	text-transform: lowercase;
}

.logged {
	height: 40px;
	min-width: 250px;
	background-color: #d4002a;
	clip-path: polygon(0 0, 100% 0, 94% 100%, 6% 100%);
}

.logged p {
	text-align: center;
	margin-top: 5px;
	padding: 0;
}

.logged p a {
	text-decoration: none;
	color: #fff;
	padding: 0 5px 0 0;
	font-size: 12px;
	text-transform: uppercase;
}

.logos-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.logos-container .tagline {
	font-size: 13px;
	text-align: center;
	text-transform: uppercase;
	color: #bbb;
	margin-top: 10px;
}

.logos {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}

.logos .logo {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-bottom: 10px;
}

.logos .logo .tagline {
	color: #d00024;
}

@media all and (min-width: 620px) {
	.logos {
		flex-direction: row;
		align-items: flex-end;
	}
	
	.logos .logo {
		margin-bottom: 0;
	}
}

.navigation {
	margin-top: 20px;
	background-color: #909090; 
}

.navigation ul {
	margin: 0;
	padding: 0;
	text-align: center;
}

.navigation ul li {
	list-style: none;
	display: inline-block;
	margin-right: 20px;
	line-height: 45px;
}

.navigation ul li a {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
}

.navigation ul li.red a {
	color: #d4002a;
}

.navigation.red {
	background-color: #d4002a; 
}

/*
.navigation ul li .arrow {
	width: 0; 
  	height: 0; 
  	border-left: 5px solid transparent;
  	border-right: 5px solid transparent;
  	border-bottom: 5px solid #9f9f9f;
  	margin: 0 auto;
}
*/

footer {
	width:	100%;
	padding: 30px 20px 40px;
	margin-bottom: 40px;
}

.footer-top {
	width: 100%;
	min-height: 254px;
	background: #252525 url(../img/footer-top-bg.png) top right no-repeat;
    background-size: auto 100%;
	padding: 38px 20px;
}

.footer-top .enroll {
	max-width: 784px;
	min-height: 178px;
	margin: 0 auto;
	padding: 25px 90px 20px 40px;
	background-color: rgba(65, 65, 67, 0.7);
	border: 1px solid #979797;
}

.footer-top .enroll h2 {
	margin: 0;
	font-size: 20px;
	text-transform: uppercase;
}

.footer-top .enroll p {
	margin: 0;
	font-size: 16px;
}

.footer-top .enroll .btn {
	margin-top: 15px;
}

.footer-links {
	padding: 0 20px;
	position: relative;
	z-index: 11;
}

.footer-bottom ul,
.footer-links ul {
	margin: 0;
	padding: 50px 0 40px;
	text-align: center;
}

.footer-links ul {
	padding: 40px 0;
}

.footer-bottom ul li,
.footer-links ul li {
	list-style: none;
	display: inline-block;
	padding: 0 20px;
}

.footer-bottom ul li a,
.footer-links ul li a {
	color: #fff;
	font-size: 16px;
	text-decoration: none;
	text-transform: uppercase;
}

.footer-links ul li a {
	color: #666;
}

.footer-bottom .boilerplate,
.footer-links .copyright {
	margin: 0;
	font-size: 14px;
	text-align: center;
	color: #757575;
	text-transform: uppercase;
}

.footer-bottom .boilerplate {
	margin-top: 20px;
}

.footer-bottom .boilerplate a {
	font-size: 12px;
	text-decoration: none;
	color: #757575;
}

.footer-links .copyright {
	color: #383838;
	margin-bottom: 30px;
}

.footer-bottom .footer-links-middle {
	height: 85px;
	background-color: #5c5c5c;
	line-height: 85px;
}

.footer-bottom .footer-links-middle ul {
	padding: 0;
}

.footer-bottom .footer-links-middle ul li {
	padding: 0 5px;
}

.footer-bottom .footer-links-middle ul li a {
	font-size: 14px;
}

.footer-bottom .container {
	margin-top: 40px;
	display: flex;
	flex-direction: column;
}

.footer-bottom .container .footer-text {
	width: 100%;
}

.footer-bottom .container .footer-text img {
	margin-bottom: 30px;
}

.footer-bottom .container .footer-text p {
	color: #5c5c5c;
}

.footer-bottom .container .footer-text p.copyright {
	text-transform: uppercase;
	text-align: left;
}

.footer-bottom .container .footer-text p.copyright a {
	text-decoration: underline;
	color: #5c5c5c;
}

.footer-bottom .container .footer-link-column {
	width: 100%;
}

.footer-bottom .container .footer-link-column p {
	font-size: 14px;
	color: #000;
	background-color: #5c5c5c;
	padding: 5px;
	text-transform: uppercase;
}

.footer-bottom .container .footer-link-column ul {
	text-align: left;
	margin: 0 0 20px;;
	padding: 0;
}

.footer-bottom .container .footer-link-column ul li {
	display: block;
	padding: 0;
}

.footer-bottom .container .footer-link-column ul li a {
	color: #5c5c5c;
	text-transform: none;
	font-size: 12px;
}

@media all and (min-width: 820px) {
	.footer-bottom .footer-links-middle ul li {
		padding: 0 20px;
	}

	.footer-bottom .footer-links-middle ul li a {
		font-size: 16px;
	}
}

@media all and (min-width: 820px) {
	.footer-bottom .container {
		flex-direction: row;
		justify-content: space-between;
	}

	.footer-bottom .container .footer-text {
		width: 40%;
	}
	
	.footer-bottom .container .footer-link-column {
		width: 28%;
		padding-left: 20px;
	}
}

/* Company */

.company-direct {
	background-color: #fff;
}

.company-direct .company-direct-top {
	width: 100%;
	height: 20px;
}

.company-direct .container {
	max-width: 1060px; 
	margin: 30px auto;
	padding: 0;
	background-size: contain;
}

.company-direct .container .header-text {
	max-width: 400px;
}

.company-direct .container .header-text h1 {
    font-size: 38px;
    text-transform: uppercase;
    color: #2d2d2d;
    line-height: 37px;
    font-weight: bold;
    margin-top: 100px;
}

.company-direct .container p,
.company-direct .container .header-text p {
	color: #2d2d2d;
}

.company-direct .container .company-offers .company-offers-heading {
	height: 50px;
	margin-bottom: 10px;
	background-color: #a1a1a1;
	color: #fff;
	font-size: 24px;
	text-transform: uppercase;
	padding-left: 70px;
	line-height: 50px;
}

.company-direct .container .company-offers {
	margin-top: 100px;
}

.company-direct .container .company-offers .company-offer {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	background-color: #d5d5d5;
	margin-bottom: 10px;
	padding: 20px 0;
}

.company-direct .container .company-offers .company-offer .retailer-logo {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 23%;
	padding-left: 2%;
}

.company-direct .container .company-offers .company-offer .offer {
	width: 56%;
	padding: 0 2%;
}

.company-direct .container .company-offers .company-offer .offer h2 {
	color: #222;
}

.company-direct .container .company-offers .company-offer .redeem-now {
	width: 15%;
}

.company-direct .container .company-offers .company-offer .redeem-now a {
	padding: 5px 10px;
	color: #fff;
	text-transform: uppercase;
	font-size: 18px;
	background-color: #df002a;
}

/* Retailers List */

.retailers-list {
	max-width: 1050px; 
	margin: 45px auto;
	color: #000;
}

.retailers-list .retailers-list-header {
	height: 70px;
	background-color: rgba(255, 255, 255, 0.7);
}

.retailers-list .retailers-list-header h1,
.retailers-list .retailers-list-header h2 {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	text-transform: uppercase;
	line-height: 70px;
	margin: 0;
}

.retailers-list .retailers-list-header h3 {
	font-size: 20px;
	text-align: center;
	color: #000;
	text-transform: uppercase;
	letter-spacing: 4px;
}

.retailers-list .retailers-list-content	{
	background-color: #fff;
	padding: 20px 40px;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	align-items: center;
	flex-wrap: wrap;
}

.retailers-list .retailers-list-content .retailers-list-logo {
	padding: 10px;
}


@media all and (min-width: 1061px) {
	.retailers-list .retailers-list-content	{
		justify-content: space-between;
	}
}

/* Trending Deals */

.trending-deals .trending-deals-header h1 {
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	text-transform: uppercase;
	line-height: 70px;
	margin: 0;
	color: #000;
}

.trending-deals .trending-deals-content {
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	align-items: center;
	/*flex-wrap: wrap;*/
}

@media all and (min-width: 1061px) {
	.trending-deals .trending-deals-content {
		justify-content: space-between;
	}
}

.trending-deals .trending-deals-content .trending-deal {
	text-align: center;
	max-width: 250px;
	max-height: 275px;
	background-color: #e8e8e8;
	color: #000;
	margin-bottom: 20px;
}

.trending-deals .trending-deals-content .trending-deal .trending-deals-icon img {
	margin-bottom: 10px;
	width: 100%;
}

.trending-deals .trending-deals-content .trending-deal .trending-deals-logo img {
	max-height: 30px;
}

.trending-deals .trending-deals-content .trending-deal .book-now {
	margin-bottom: 20px;
}

.trending-deals .trending-deals-content .trending-deal h4 {
	font-size: 20px;
	font-weight: bold;
	text-transform: uppercase;
}

.trending-deals .trending-deals-content .trending-deal h4 a {
	color: #000;
	text-transform: uppercase;
	text-decoration: none;
}

.sidebar .trending-deals .trending-deals-content {
	flex-direction: column;
}

.sidebar .trending-deals .trending-deals-content .trending-deal h4 a {
	/* color: #fff !important; */
	font-size: 14px !important;
}

.sidebar-small-deal {
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #fff;
	padding: 15px 10px 0;
	margin-bottom: 20px;
	max-width: 250px;
}

.sidebar-small-deal .sidebar-small-logo img {
	max-height: 35px;
}


.sidebar-small-deal h4 {
	margin-top: 10px;
	font-size: 14px;
	text-transform: uppercase;
}

.sidebar-small-deal h4 a {
	color: #000;
}

.sidebar-red {
	margin-bottom: 20px;
}

/* LOGIN */

.login {
	background: #fff url(../img/login-bg.jpg) bottom center fixed;
	background-size: cover;
}

.login .login-promo-container {
	background-color: #2d2d2d;
	border-bottom: 8px solid #d4002a;
}

.login .login-top {
	padding-top: 30px;
}

.login .login-top h1 {
	font-size: 22px;
	text-align: center;
	margin: 0 0 15px;
	line-height: 12px;
}

.login .login-top .company-name {
	text-align: center;
}

@media all and (min-width: 768px) {
	.login .login-top h1 {
		font-size: 30px;
	}
}

.login .login-top h1 .superscript {
	color: #666;
}

.login .login-promo-container .fancy {
  line-height: 60px;
  text-align: center;
  font-size: 14px;
  text-transform: uppercase;
  overflow: hidden;
  margin-bottom: 0;
}

/*
.login .login-promo-container .fancy span {
  display: inline-block;
  position: relative;  
}

.login .login-top .fancy span:before,
.login .login-top .fancy span:after {
  content: "";
  position: absolute;
  height: 20px;
  border-top: 1px solid white;
  top: 10px;
  width: 1000px;
}

.login .login-top .fancy span:before {
  right: 100%;
  margin-right: 15px;
}

.login .login-top .fancy span:after {
  left: 100%;
  margin-left: 15px;
}
*/

.login .login-top .company-name p {
	text-transform: uppercase;
}

.login .login-promo {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1072px;
}

.login.discounts .login-promo-outer {
	position: relative;
	margin: 30px auto 0;
}

.login.discounts .login-promo-outer .top {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	top: -25px;
	width: 100%;
	z-index: 2;
}

.login.discounts .login-promo-outer .top h1 {
	font-size: 32px;
	line-height: 30px;
	font-weight: bold;
	text-transform: uppercase;
	color: #000;
	background-color: #fff;
	padding: 0 20px;
}

.login.discounts .login-promo-outer .top p {
	color: #000;
	text-transform: uppercase;
	margin: 0;
}

.login.discounts .login-promo-outer .bottom {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	bottom: -15px;
	width: 100%;
	z-index: 2;
}

.login.discounts .login-promo-outer .bottom .tag-line {
	padding: 5px 20px;
	width: auto;
	background-color: #d4002a;
}

.login.discounts .login-promo-outer .bottom .tag-line p {
	color: #fff;
	text-transform: uppercase;
	margin: 0;
}

.login.discounts .login-promo {
	padding: 20px;
	position: relative;
	padding-top: 60px;
	border: 3px solid #d4002a;
}

.login.discounts .login-promo div {
	width: 23%;
	max-width: none;
}

.login.discounts .login-pitch .register {
	border: 3px solid #d4002a;
}

.login.locations h1.bottom-tagline {
	text-align: center;
	font-weight: 700;
	color: #000;
	margin-bottom: 0;
}

.login.locations h1.bottom-tagline .red-underline {
	border-bottom: 4px solid #d4002a;
}

.login.locations p.bottom-tagline {
	text-align: center;
	color: #333;
}

.login.locations .red {
	color: #d4002a;
}

.login.locations .login-promo {
	flex-direction: column;
}

.login.locations .login-promo.brands {
	background-color: #fff;
}

.login.locations .login-promo .login-promo-top,
.login.locations .login-promo .login-promo-bottom {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	width: 100%;
}

.login.locations .login-promo .login-promo-bottom {
	margin-top: 32px;
}

.login.locations .login-promo.brands .login-promo-bottom {
	margin-top: 0;
}

.login.locations .login-promo .login-promo-bottom .bottom-offer {
	display: flex;
	flex-direction: column;
	width: 18%;
	background-color: #fff;
	text-decoration: none;
}

.login.locations .login-promo .login-promo-bottom .bottom-offer .bottom-offer-row {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1 0 auto;
	width: 100%;
}

.login.locations .login-promo .login-promo-bottom .bottom-offer .bottom-offer-row.fixed {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex: 0 0 40px;
	color: #000;
	font-weight: bold;
	font-size: 14px;
	text-transform: uppercase;
}

.login.locations .login-promo .login-promo-bottom .bottom-offer .bottom-offer-row .book-now {
	background-color: #000;
	color: #fff;
	margin-bottom: 16px;
	border: none;
}

.login.locations .login-pitch .register {
	border: none;
	background-color: #d4002a;
	color: #fff;
}

.login.locations .login-pitch .register h2 {
	color: #fff;
}

.login .login-pitch .register .privacy-policy {
	margin-top: 16px;
}

.login .login-pitch .register .privacy-policy a {
	color: #000;
}

.login.locations .login-pitch .register .privacy-policy a {
	color: #fff;
}

.login.locations .car-rental-tips {
	color: #000;
	margin-bottom: 40px;
}

.login.locations .car-rental-tips h1 {
	text-align: center;
	font-weight: 700;
	margin-bottom: 0;
	font-size: 48px;
}

.login.locations .car-rental-tips h2 {
	font-size: 20px;
	text-align: center;
	color: #000;
	text-transform: uppercase;
	letter-spacing: 4px;
	margin-bottom: 20px;
}

.login.locations .car-rental-tips ul {
	margin: 0 0 0 20px;
	padding: 0;
}

.login.locations .car-rental-tips ul li {
	margin-bottom: 16px;
}

.login.locations .top-locations {
	margin-bottom: 40px;
}

.login.locations .top-locations h3 {
	color: #000;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.login.locations .top-locations .location-links-container {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
}

.login.locations .top-locations .location-links-container .location-links {
	width: 24%;
}

.login.locations .top-locations .location-links-container .location-links a {
	display: block;
}

.login .retailers-list .retailers-list-content .retailers-list-logo a {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.login .retailers-list .retailers-list-content .retailers-list-logo a .book-now {
	margin-bottom: 20px;
}

@media all and (min-width: 620px) {
	.login .login-promo {
		margin: 0 auto;
	}
}

.login .login-promo div { 
	max-width: 258px;
}

.login .login-promo img {
	width: 100%;
}

.login .login-pitch {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	max-width: 1060px;
	margin: 50px auto;
	color: #000;
}

.login .login-pitch img {
	width: 100%;
}

.login .login-pitch div {
	max-width: 510px;
	margin-bottom: 30px;
	padding: 0 20px;
}

@media all and (min-width: 620px) {
	.login .login-pitch {
		justify-content: space-between;
		flex-wrap: nowrap;
	}
	
	.login .login-pitch div {
		margin-bottom: 0px;
	}
}

@media all and (min-width: 1100px) {
	.login .login-pitch div {
		padding: 0;
	}
}

.login .login-pitch div h2 {
	font-size: 40px;	
	text-transform: uppercase;
	text-align: left;
	color: #d4002a;
	margin-bottom: 10px;
}

.login .login-pitch div p {
	font-size: 16px;
	text-align: left;
}

.login .login-pitch div .btn {
	background-color: #d4002a;
}

.login.discounts .login-pitch .register {
	padding: 20px;
}

.login .login-pitch .register

.login .login-pitch .register p {
	font-size: 14px;
}

.login .login-pitch .register .input {
	padding: 0;
	margin-bottom: 10px;
}

.login .login-pitch .register input,
.login .login-pitch .register .error-message {
	width: 100%;
}

@media all and (min-width: 1060px) {
	.login .login-pitch .register input,
	.login .login-pitch .register .error-message {
		width: 325px;
	}
}
	
.login .login-form {
	display: flex;
	min-height: 60px;
	background-color: #d4002a;
	color: #fff;
	margin: 0 auto;
	width: 80%;
	clip-path: polygon(0 0, 100% 0, 94% 100%, 6% 100%);
}

.login .login-form .container {
	display: flex;
	flex-direction: column;
	justify-content: center;
    align-items: center;
    position: relative;
}

.login.discounts .login-form.login-form-bottom {
	background-color: #909090;
	min-height: 42px;
	max-height: 42px;
	height: 42px;
	margin-bottom: 50px;
}

.login.discounts .login-form .container h1 {
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	text-transform: uppercase;
	margin: 0;
	line-height: 42px
}

.login .login-form .container a {
	color: #000;
}

.login .login-form .container .forgot-password {
	position: absolute;
	right: 0;
	bottom: -20px;
	left: 0;
}

.login .login-form .container .forgot-password p.forgot-password-link {
	text-align: right;
	color: #2d2d2d;
	text-transform: uppercase;
}

.login .login-form #UserLoginForm {
	display: inline;
	margin-top: 20px;
}

.login .login-form #UserLoginForm div {
	display: inline;
	margin-left: 15px;
}

#UserLoginForm input {
	max-width: 280px;
	margin-bottom: 20px;
}

#UserLoginForm input[type="submit"] {
	width: auto;
	margin-right: 20px;
}

@media all and (min-width: 768px) {
	.login .login-form .container {
		flex-direction: row;
	}
}

@media all and (min-width: 1060px) {
	.login .login-form .container {
		width: 1060px;
	}
}

.login .retailers-list {
	padding: 10px 0;
}

@media all and (min-width: 768px) {
	.login .retailers-list {
		padding: 40px 0 30px;
	}
}

.login .retailers-list .retailers-list-header,
.login .retailers-list .retailers-list-content {
	background-color: transparent;
}

.login .retailers-list .retailers-list-header {
	height: auto;
}

.category-icons {
	max-width: 948px;
	margin: 0 auto 60px;
}

.retailers-banner h3,
.category-icons h3 {
	font-size: 20px;
    text-align: center;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin-bottom: 20px;
}

.category-icons img,
.retailers-banner img {
	width: 100%;
}

.retailers-banner {
	max-width: 918px;
	margin: 20px auto 50px;
}

.retailers-banner p {
	color: #000;
}

/* REGISTER HERO */

.register-hero h2 {
	font-size: 30px;
	line-height: 30px;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.register-hero p {
	font-size: 14px;
	margin: 20px;
	color: #000;
}

.register-hero .btn {
	font-size: 14px;
	text-transform: uppercase;
	background-color: #d90000;
	color: #fff;
	cursor: pointer;
}

/* CATEGORIES */

.categories {
	background: #dfdfdf url(../img/bg-categories.jpg) top center fixed;
	background-size: 100%;
	background-repeat: no-repeat;
	color: #000;
	padding: 0 20px;
}

.categories .banner {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	max-width: 1060px; 
	margin: 25px auto;
}

.categories .banner .banner-left {
	max-width: 675px;
}

.categories .banner .banner-right {
	max-width: 365px;
}

.categories .container {
	max-width: 1060px; 
	margin: 0 auto 45px;
	background-color: #434343;
	padding: 30px 20px 110px;
	border-top: 5px solid #d4002a;
}

.categories .container .trending-deals .trending-deals-content {
	flex-wrap: wrap;
}

.categories .container .trending-deals .trending-deals-content .trending-deal .trending-deals-icon img,
.categories .container .trending-deals .trending-deals-content .trending-deal .trending-deals-logo img {
	margin-bottom: 20px;
}

.categories .container .all-offers header h3 {
	font-size: 16px;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin: 30px 0 50px;
}

.categories .container .all-offers .all-offers-columns {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	flex-wrap: wrap;
}

.categories .container .all-offers .all-offers-column {
	width: 33%;
}

.categories .container .all-offers .all-offers-column p {
	font-size: 13px;
	text-align: center;
	margin: 0;
	text-transform: uppercase;
}

.categories .container .all-offers .all-offers-column p a {
	color: #fff;
	text-decoration: none;
}


/* ABOUT US */ 

.about-us {
	background: #2c2c2c url(../img/bg-aboutus.jpg) top center fixed;
	background-size: 100%;
	background-repeat: no-repeat;
	color: #000;
	padding: 0 20px;
}

.about-us .container {
	max-width: 1060px; 
	margin: 45px auto;
	background-color: #fff;
	padding: 30px 20px 110px;
}

@media all and (min-width: 768px) {
	.about-us .container {
		padding: 30px 30px 110px;
	}
}

@media all and (min-width: 1060px) {
	.about-us .container {
		padding: 30px 60px 110px;
	}
}

.about-us .container h1, 
.about-us .container h2 {
	text-align: center;
}

.about-us .container h2.terms-and-conditions {
	text-align: left;
}

.about-us .container h1 {
	font-size: 30px;
	line-height: 30px;
	margin-bottom: 30px;
}

.about-us .container h2 {
	margin-top: 30px;
}

.about-us .container p {
	font-size: 14px;
	margin: 20px 0 30px;
	
}

.about-us .container .triple-column-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.about-us .container .triple-column {
	width: 33%;
	float: left;
}

.about-us .container .triple-column p {
	margin: 10px 0;
}

/* Offers */

.offers {
	background: #2c2c2c url(../img/bg-offers.jpg) top center fixed;
	background-size: 100%;
	background-repeat: no-repeat;
	padding: 0 20px;
}

.offers.expiring {
	padding-top: 75px;
}

.offers .offer-list {
	max-width: 1060px; 
	background-color: rgba(255, 255, 255, 0.9);
	padding: 35px;
	margin: 0 auto;
}

.offers .offer-list h2 {
	font-size: 24px;
	text-align: center;
	font-weight: bold;
	text-align: center;
	margin: 0 0 25px;
	line-height: 24px;
	color: #000;
	text-transform: uppercase;
}

.offers .offer-list .offer {
	background-color: #fff;
	color: #000;
	height: 315px;
	border-bottom: 1px solid #ccc;
}

.offers .offer-list .offer:last-of-type {
	border-bottom: none;
	height: 314px;
}

.offers .offer-list .offer .offer-content {
	display: flex;
	flex-direction: column;
	padding: 40px 0 20px 20px;
	background-image: url(../img/offer-overlay.png);
	background-position: top left;
	background-repeat: no-repeat;
	height: 315px;
}

.offers .offer-list .offer .offer-content .offer-details-list {
	max-width: 400px;
	padding-right: 20px;
}

.offers .offer-list .offer .offer-content .offer-details-list h2 {
	text-align: left;
	font-weight: bold;
}

.offers .offer-list .offer .offer-content .offer-details-list h2 a {
	text-decoration: none;
	color: #000;
	font-size: 22px;
}

.offers .offer-list .offer .offer-content .offer-details-list .description {
	color: #000;
	margin-bottom: 10px;
}

.offers .offer-list .offer .offer-content .offer-details-list a.btn {
	border: none;
}

.featured {
	width: 100%;
	background-color: #fff;
}

.featured .featured-top {
	height: 40px;
	line-height: 40px;
	background-color: #fdd108;
	color: #fff;
}

.featured .featured-top h1 {
	font-size: 30px;
	text-align: center;
	margin: 0;
}

.featured .featured-top {
	height: 365px;
	background-image: url(../img/bg-featured-content.jpg);
	background-position: top left;
	background-repeat: no-repeat;
	background-size: cover;
}

.featured .featured-content {
	max-width: 1060px;
	margin: -335px auto 0;
	padding: 0 20px;
}

.featured .featured-content .featured-offers {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin: 0 auto 20px;
	padding: 20px;
	background-color: #fff;
}

.featured .featured-content .category-banners {
	max-width: 948px;
	margin: 0 auto;

}

.featured .featured-content .category-banners h3 {
	font-size: 22px;
	margin-bottom: 5px;
	color: #292929;
	font-weight: bold;
	text-transform: uppercase;
}

.featured .featured-content .category-banners a img {
	margin-bottom: 30px;

}

.featured .featured-content .featured-offers .featured-offers-left {
	padding-right: 20px;
	width: 100%;
}

.featured .featured-content .featured-offers .featured-offers-right {
	max-width: 250px;
	flex: 1 0 auto;
}

.featured .featured-content .featured-offers .featured-offers-right .friends-family {
	margin-bottom: 32px;
}

.featured .featured-content .featured-offers .featured-offers-right .sidebar h2 {
	display: none;
}

.featured .featured-content .featured-offers .featured-offers-right h3 {
	text-align: center;
	font-size: 16px;
	color: #df002a;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.featured .featured-content .category-banners .fancy,
.featured .featured-content .featured-offers .featured-offers-left .fancy {
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	font-size: 22px;
	color: #df002a; 
	text-align: center;
	font-weight: bold;
	margin-top: 20px;
}

.featured .featured-content .category-banners .fancy span,
.featured .featured-content .featured-offers .featured-offers-left .fancy span {
  	background: #fff;
  	margin: 0 15px;
}

.featured .featured-content .category-banners .fancy:before,
.featured .featured-content .category-banners .fancy:after,
.featured .featured-content .featured-offers .featured-offers-left .fancy:before,
.featured .featured-content .featured-offers .featured-offers-left .fancy:after {
  	background: #df002a;
  	height: 1px;
  	flex: 1;
  	content: '';
}


@media all and (min-width: 620px) {
	.featured .featured-content .featured-offers {
		flex-direction: row;
	}
}

.featured .featured-content .retailers-list {
	margin: 0 auto;
	background-color: #fff;
}

.featured .featured-content .retailers-list .retailers-list-content {
	background-color: transparent;
	flex-wrap: wrap;
	padding: 20px 40px;
}

.featured .featured-content .retailers-list .retailers-list-content .retailers-list-icon {
	max-width: 170px;
}

.featured .featured-content .retailers-list .retailers-list-content .retailers-list-logo {
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	padding-top: 10px;
	max-width: 170px;
	height: 90px;
	background-color: #e8e8e8;
	margin-bottom: 20px;
}

.featured .featured-content .featured-offers .featured-offers-left .retailers-list .retailers-list-content {
	justify-content: space-between;
	padding: 20px 0 40px;
	margin: 0 auto;
}

.featured .featured-content .retailers-list p {
	text-align: center;
}

.featured .featured-content .retailers-list .btn {
	background-color: #df002a;
}

.featured .featured-content .trending-deals .trending-deals-content .trending-deal a,
.featured .featured-content .retailers-list .retailers-list-content .retailers-list-logo a {
	color: #aaa;
	font-weight: bold;
	font-size: 12px;
	text-transform: uppercase;
	text-decoration: none;
}

.featured .featured-content .register-hero h2,
.featured .featured-content .register-hero p {
	color: #000;
	text-align: center;
}

.featured .featured-content .register-hero .btn {
	height: 30px;
	line-height: 25px;
	font-size: 12px;
	background-color: #000;
	text-align: center;
}

.featured .footer-links {
	background-color: #d1d1d1;
	margin-top: 60px;
	padding-bottom: 60px;
}

.featured .footer-links p.coopyright {
	margin-bottom: 0;
}

/* jQuery UI */
/* Tabs - Slideshow */
#featured {
	position: relative;
	width: 100%;
	height: 155px;
	margin: 0;
	cursor: pointer;
	border-bottom: 5px solid #fdd108;
	background: url(../img/bg-slider.jpg) ;
	background-position: top left;
	background-repeat: no-repeat;
	background-size: cover;
}

#featured section {
	max-width: 980px;
	max-height: 357px;
	display: none;
	position: relative;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100%;
	z-index: 1;
	margin: 0 auto;
}

#featured section .featured-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	width: 100%;
	height: 100%;
}

#featured section .featured-content img {
	height: 60px;
}

#featured section .featured-content h1 {
	font-size: 20px;
	font-weight: bold;
	margin-top: 0;
	text-shadow: #000 1px 0 10px;
}

@media all and (min-width: 768px) {
	/*
#featured {
		height: 230px;
	}
*/
	
	/*
#featured section {
		height: 225px;	
	}
*/
	
	#featured section .featured-content img {
		height: 100px;
	}
	
	#featured section .featured-content h1 {
		font-size: 40px;
		font-weight: bold;
	}
}

@media all and (min-width: 1060px) {
/*
	#featured {
		height: 305px;
	}
*/
	
	/*
#featured section {
		height: 300px;	
	}
*/
}

#featured section .featured-link {
	position: absolute;
	bottom: 0;
	left: 100px;
	width: 200px;
	text-align: center;
}

#featured section .featured-link:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  -webkit-transform-origin: -100% 0;
  -ms-transform-origin: -100% 0;
  transform-origin: -100% 0;
  -webkit-transform: skew(-45deg);
  -ms-transform: skew(-45deg);
  transform: skew(-45deg);
  z-index: -1;
}

#featured section .featured-link:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: skew(45deg);
  -ms-transform: skew(45deg);
  transform: skew(45deg);
  z-index: -1;
}

#featured section .featured-link a {
	color: #fdd108;
	font-size: 14px;
	text-transform: uppercase;
	text-decoration: none;
}

#featured_tabs {
	float: left;
	margin-left: 20px;
	margin-bottom: 10px;
	padding-top: 9px;
}

#featured_tabs a {
	width: 8px;
	height: 8px;
	float: left;
	margin: 3px;
	background: url(../img/tabs_navigator.png) 0 0 no-repeat;
	display: block;
	font-size: 1px;
}

#featured_tabs a:hover {
	background-position: 0 -8px;
}

#featured_tabs a.current {
	background-position: 0 -16px;
}

.retailer {
	background-color: #dadada;
	position: relative;
}

.retailer .retailer-header {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.retailer .container {
	max-width: 1060px;
	margin: 100px auto 0;
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 10;
}

.retailer .container .content {
	max-width: 825px;
	background-color: #fff;
	padding: 20px;
	color: #000;
}

.retailer .container .content .retailer-bottomtext {
	margin: 40px 0;
}

.retailer .container .content h1 {
	font-size: 26px;
}

.retailer .container .content .retailer-offer-deal h2 {
	margin-top: 20px;
	font-weight: bold;
}

.retailer .container .sidebar {
	background-color: #ccc;
	padding: 20px 15px;
}

.retailer .container .sidebar h2 {
	text-align: center;
}

@media all and (min-width: 550px) {
	.retailer .container {
		flex-direction: row;
	}
	
	.retailer .container .sidebar {
		max-width: 225px;
	}
	
	.retailer .container .sidebar h2 {
		text-align: left;
	}
}

.get-started .get-started-top {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
	height: 200px;
	background-image: url('/img/get-started-top.jpg');
	background-position: top left;
	background-repeat: no-repeat;
	background-size: auto 200px;
	background-color: #aca482;
}

.get-started .get-started-top .text {
	margin: 0 auto;
	display: flex;
    flex-direction: column;
    align-items: center;
}

.get-started .get-started-top .text h1,
.get-started .get-started-top .text h2 {
	font-size: 30px;
	color: #000;
	background-color: #fff;
	margin: 3px 0;
    line-height: 45px;
    padding: 0 10px;
    font-weight: bold;
    text-transform: uppercase;
}

@media all and (min-width: 620px) {
	.get-started .get-started-top {
		height: 400px;
		background-size: auto 400px;
	}
	
	.get-started .get-started-top .text {
		margin-right: 10%;
	}
	
	.get-started .get-started-top .text h1,
	.get-started .get-started-top .text h2 {
		font-size: 40px;
	}
}

.get-started .get-started-top .text h1 span,
.get-started .get-started-top .text h2 span {
	color: #3866a6;
}

.get-started .retailers-list {
	background-color: #fff;
	width: 100%;
	padding: 10px 0 0;
	max-width: 100%;
	margin: 0;
}

.get-started .retailers-list .retailers-list-header {
	background-color: transparent;
	height: auto;
}

.get-started .retailers-list .retailers-list-header h3 {
	font-size: 16px;
	color: #8a8a8a;
    letter-spacing: 1px;
}

.get-started .retailers-list .retailers-list-content {
	max-width: 1060px;
	margin: 0 auto;
	padding: 0 20px;
}

.get-started .get-started-pitch {
	background-image: url('/img/get-started-pitch.jpg');
	background-position: top left;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #aca482;
	color: #fff;
}

.get-started .get-started-pitch .container {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	max-width: 1060px;
	margin: 0 auto;
	padding: 50px 0;
}

.get-started .get-started-pitch .container img {
	width: 100%;
}

.get-started .get-started-pitch .container div {
	max-width: 510px;
	margin-bottom: 30px;
	padding: 0 20px;
}

.get-started .get-started-pitch div .container p {
	text-align: left;
}

@media all and (min-width: 620px) {
	.get-started .get-started-pitch .container {
		justify-content: space-between;
		flex-wrap: nowrap;
	}
	
	.get-started .get-started-pitch .container div {
		margin-bottom: 0px;
	}
}

@media all and (min-width: 1100px) {
	.get-started .get-started-pitch .container div {
		padding: 0;
	}
}

.get-started .get-started-benefits {
	min-height: 850px;
	background-image: url('/img/get-started-benefits.jpg');
	background-position: top left;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: #aca482;
	padding: 50px 20px 100px;
	color: #000;
}

.get-started .get-started-benefits h2 {
	font-size: 30px;
	text-transform: uppercase;
	margin-bottom: 40px;
	font-weight: bold;
	text-align: center;
}

.get-started .get-started-benefits .content {
	max-width: 1060px;
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	align-items: flex-start;
	flex-wrap: wrap;
}

.get-started .get-started-benefits .content .benefit {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 30%;
	margin-bottom: 40px;
	min-width: 300px;
}

.get-started .get-started-benefits .content .benefit img {
	height: 90px;
}

.get-started .get-started-benefits .content .benefit h3 {
	text-transform: uppercase;
	font-size: 24px;
	margin: 20px 0;
}

.get-started .get-started-benefits .content .benefit p {
	text-align: center;
}

.get-started .get-started-form {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 700px;
	padding: 40px 20px 60px;
	background-image: url('/img/get-started-form.jpg');
	background-position: top left;
	background-repeat: no-repeat;
	background-size: auto 701px;
}

.get-started .get-started-form h2 {
	color: #fff;
	font-size: 30px;
	text-transform: uppercase;
	margin-bottom: 5px;
	line-height: 30px;
}

.get-started .get-started-form p {
	color: #fff;
	font-size: 14px;
	text-transform: uppercase;
	margin: 0 0 30px;
}

.get-started .get-started-form #ContactGetStartedForm {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	max-width: 500px;
	width: 100%;
}

.get-started .get-started-form #ContactGetStartedForm div,
.get-started .get-started-form #ContactGetStartedForm input,
.get-started .get-started-form #ContactGetStartedForm textarea {
	width: 100%;
}

.get-started .get-started-form #ContactGetStartedForm .submit {
	width: 200px;
	margin: 0 auto;
}

.get-started .get-started-form #ContactGetStartedForm .submit input[type="submit"] {
	width: 100%;
	height: 50px;
	line-height: 45px;
	font-size: 18px;
	background: transparent;
}

/* contact | friends & family */

.contact,
.friends-family {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.contact .contact-left,
.friends-family .friends-family-left {
	flex: 1 0 auto;
	margin-right: 30px;
}

.friends-family .friends-family-left img {
	max-width: 660px;
}

.contact .contact-left {
	max-width: 65%;
}

.contact .sidebar,
.friends-family .sidebar {
	max-width: 250px;
}

form#ContactContactForm input,
form#ContactContactForm textarea,
form#UserFriendsfamilyForm input {
	width: 100%;
	max-width: 450px;
}

/* retailer */

.retailer .content .retailer-offer .retailer-offer-details {
	display: flex;
	flex-direction: row;
}

.retailer .content .retailer-offer .retailer-offer-details p {
	font-weight: bold;
	text-transform: uppercase;
}

.retailer .content .retailer-offer .retailer-offer-details p.expiration {
	margin-right: 40px;
}

.retailer .content .retailer-offer .retailer-button .btn {
	height: 50px;
	line-height: 45px;
	text-align: center
}

.retailer .content .retailer-offer .offer-admin-link {
	margin-bottom: 20px;
}

.retailer .content .retailer-offer-collapse {
	width: 100%;
	height: 65px;
	line-height: 65px;
	padding: 0 20px;
	margin-bottom: 20px;
	cursor: pointer;
	background-color: #acacac;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

/* User Edit */

.user-information {
	max-width: 1060px;
	margin: 0 auto;
	padding: 40px 50px;
	background-color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.user-information h1 {
	color: #000;
	font-size: 30px;
	text-align: center;
}

.user-information p,
.user-information h2,
.user-information ul li,
.user-information form label {
	color: #000;
}

.user-information form {
	max-width: 500px;
	width: 100%;
}

.user-information form div,
.user-information form input,
.user-information form textarea {
	width: 100%;
}

.user-information h2 {
	font-size: 18px;
	margin-top: 30px;
}

/* Pagination */

.pagination {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	max-width: 1060px; 
	margin: 45px auto 0;
	background-color: #fff;
    padding: 10px 20px;
    color: #000;
}

.pagination .paging a,
.pagination .paging .current {
	color: #007bff;
	padding: 5px 10px;
	text-decoration: none;
	font-size: 16px;
	background-color: #ddd;
	margin-right: 3px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}
.pagination .paging .current {
	color: #888;
}
.pagination .paging .disabled {
	display: none;
}
.pagination .paging_counter {
	clear: both;
	max-width: 698px;
	margin:10px;
}

.pagination .paging-counter p {
	text-align: left;
	margin-bottom: 0;
}

/* Error Messages */

div#flashMessage,
div#authMessage {
	font-size: 1.3em;
	color: #a94442;
	text-align: center;
	margin: 0 auto;
	background: #ebccd1;
	padding: 10px 0;
	width: 100%;
}

div#flashMessage h1 {
	font-size: 1em;
	margin-left: 10px;
	padding: 10px 0;
}
.error-message {
	background-color: #2d2d2d;
	color: #eee;
	border: 2px solid #777;
	padding: 3px;
	margin: 10px 0;
	text-align: center;
}
.error-message ul {
	padding: 0;
	margin: 0;
}
.error-message ul li {
	list-style: none;
}

/* ==|== non-semantic helper classes ======================================== */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

/* ==|== print styles ======================================================= */
 
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } 
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } 
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
