
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

html {
}
body {
}
img {
	max-width:100% 
}
a , h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	transition:color .2s ease-in-out;
	text-decoration:none
}

/* print this page button */
.print-page {
	text-align:center;
	margin:20px 0;
	position:absolute;
	right:50px;
	top:20px;
}

/* hide stuff */
.print-logo, .print-footer {display:none} 

.stack-on-mobile { display:inline-block; }

.stack-on-mobile .btn { margin:10px 20px 10px 0px;  }

form small {
	display:block;
	font-size:12px;
	color:#777;
	margin-top:4px;
}

ul ul, ol ul {
  list-style-type: disc; /* solid bullet */
}

/* Optional: if you want only the bullet to be colored, not the text */
ul ul li::marker, ol ul li::marker {
  color: #A50034;
}



.table, table, .card { -moz-border-radius:7px !important; border-radius:7px !important; border:1px solid #CCC }

thead, .table th {background-color:#F6F6F6; border-bottom:0px solid #F6F6F6 }

.row {margin-top:0} 

.card {box-shadow:none !important}

.card-body .row {margin-top:20px !important; margin-bottom:20px !important;}

.card-body .row > div {margin-top:0 !important; margin-bottom:0 !important;}

.card-header, .modal-footer {border-bottom:none !important;
background-color:#F6f6f6;
}

.input-info { 
    position: absolute;
    right: 14px;
    top: 14px; }

/* header and nav menu */
header, #header {
	position: relative;
    z-index: 999;
}
#header {
	background-color:#000;
}
#header .header-wrap {
	max-width: 1100px;
	margin:0 auto 
}
#header-nav {
	background-color:#F6F6F6;
}

#header .logo, #header nav.navbar {
	float:left 
}
#header .logo {
	max-height: 120px;
	width:120px;
	margin-top:8px;
	margin-bottom:-38px;
	display:block;
}

#header-banner {
	background:url('/img/header-banner-234987.png') no-repeat; 
	background-size:cover; 
	background-position:center center; 
	width:100%;
	vertical-align:bottom;
	position:relative;
	min-height:300px;
	/* position:absolute; top:0; left:-50%; transform: translate(50%);z-index:0; */
}

#header-banner .header-banner-inner {
	max-width:1140px;
	padding:0;
	margin: 0 auto;
	position:relative;
	height:300px; 
}
	
#header-banner .header-banner-overlay {
	background-color:rgba(0,0,0,0.5);
	height:300px; 
	width:100%;
	position:absolute;
	top:0;
	left:0px;
	z-index:1;
}

#header-banner h1.tplTitle {
	color:#FFF;
	position:absolute;
	bottom:40px;
	left:22px;
	text-shadow:1px 1px 3px rgba(0,0,0,0.1);
	z-index:3;
	margin:0;
}

.navbar-toggler {
	border:none;
	font-size: 32px;
	font-weight:700
}
.navbar-toggler:focus {
	box-shadow:none
}
#contentWrapper {
}
#contentMain .content-inner {
	min-height: 600px;
	max-width:1200px;
	background-color: #ffffff;
	padding: 14px 50px 44px 50px;
	margin:0 auto;
	position:relative
}

#contentMain .notification {
max-width:1100px;
	margin:0 auto;
}
.tplTitle {
	font-weight:700;
	margin:2rem 0 3rem 0;
	color:#999 
}
h4 {
	color:#b82847 
}

h4.baskerville {font-family:"Libre Baskerville", serif; font-weight:900; font-size:23px;margin-bottom:16px;}

.reqMissing { border: 1px solid red; }

#footer h4.baskerville {color:#fff;}

/* checkboxes */
.categorySelection {
	background-color:none;
}
.categorySelected {
	font-weight:bold;
	color:#900;
}
input[type=checkbox] {
	background: #FFF;
	border:1px solid #000;
	-webkit-appearance: none;
	-moz-appearance: none;
	height: 16px;
	width: 16px;
}
input[type=checkbox]:checked {
	background-image: url(/img/checkbox-red.png);
	background-size:14px 14px;
}
#footer.bg-dark {
	background-color:#000 !important;
}
#footer {
	padding:60px 15px 30px 15px;
	color: #000;
	min-height:130px;
}
#footer *, #footer a {color:#FFF !important}

#footer .container-fluid { max-width:1140px; border-sizing:border-box }


#footer .logo {
	max-height: 120px;
	width:120px;
	display:block;
	float:left;
	margin-right:24px;
	margin-left:0
}

#footer p {
	font-size:15px;
	letter-spacing:.05rem;
	margin:0;
}

#footer .container-fluid > div {margin:0px;}

#footer p.copyright {
margin-top:100px; font-size:12px !important; text-align:center
	}
	
.jgi-logo-footer {
display:inline-block;margin-bottom:0;width:160px;margin-left:5px;
}


#footer .col2 img { width:220px; }
#footer .col2 img:last-child { width:160px; margin-top:12px; }

@media (max-width:1343px) {


#footer p {
	font-size:14px;
}

#footer h4.baskerville {font-size:18px;}


#footer .logo {
	max-height: 90px;
	width:90px;
	}

#footer .col2, #footer .col3 {margin-left:-7% !important;}

}

@media (max-width:1064px) {
#header, .entry-steps { padding-left:12px; padding-right:12px; }

#entry-steps { padding-left:10px; padding-right:10px; }
#footer .col2 img { width:180px; }
#footer .col2 img:last-child { width:120px; }
}

@media (max-width:991px) {


#footer p {
	font-size:13px;
}

#footer h4.baskerville {font-size:15px;}

#footer .logo {
	max-height: 90px;
	width:90px;
	}

}

@media (max-width:768px) {
#footer {padding-top:20px}
#footer .col1, #footer .col2, #footer .col3 {
width:100% !important; clear:both; display:block
}

#footer .col1, #footer .col2, #footer .col3, p.copyright, #footer a, #footer .container-fluid div.AuthorizeNetSeal, p.copyright { margin:0 auto !important; text-align:center !important; clear:both; display:block
 }

#footer .logo {float:none;margin:15px auto;}


#footer .container-fluid div {margin:10px 0px 40px 0px !important;}

#footer p {
	font-size:14px;
}
#footer p.copyright {text-align:left}

#footer h4.baskerville {font-size:18px;}

.m-break { display:block; margin-top:15px;}

.m-hide {display:none}

}


#entry-steps {
	display:block;
	width:100%;
	text-align:center;
	padding-top:40px;
	margin-right:auto;
	margin-left:auto;
	max-width:1100px;
}
.step1, .step2, .step3, .step4 {
	transition:all .5s;
	text-align:left;
	display:inline-block;
	width:22%;
	text-decoration:none;
	padding:2px;
	box-sizing:border-box;
}
.step1, .step2, .step3, .step4 {
	border-top:8px solid #888;
	color:#888;
	padding:10px;
	letter-spacing:.025em;
}
#entry-steps strong {
	display:block;
	text-transform:uppercase;
}
.step1, .step2, .step3 {
	margin-right:3.55%;
}
.active {
	border-top:8px solid #A50034
}
.active, .active strong {
	color:#000 
}
.close {
	padding:0 !important;
	background:#fff;
	color:#777;
	border:1px solid #ddd;
	border-radius:20px;
	font-size:18px;
	line-height:1;
	height:24px;
	width:24px;
	text-decoration:none;
	display:inline-block;
	text-align:center;
	vertical-align:middle;
	margin-top:5px;
	transition:border-color 1s;
}
.close:hover, .close:focus {
	border:1px solid #999
}
.modal-header .close { position:absolute; right:10px; top:10px; padding:0; margin:0; display:block; font-family:Arial, sans-serif; font-size:20px; line-height:.9em}

.catList label { width:100% } 

.catList label:hover { color:#a50034}

label {padding-bottom:4px}

/* Tooltip container */
.tooltip27 {
  position: relative;
  display: inline-block;
  padding:2px;
 /* min-width:160px; */
}

span.tooltip27 {
  display: block;
}

/* Tooltip text */
.tooltip27 .tooltiptext27 {
  visibility: hidden;
  width: 230px;
  font-size:13px;
  background-color:rgba(0,0,0,0.9);
  color: #fff;
  text-align: left;
  padding: 10px;
  border-radius: 6px;

  /* Position the tooltip text */
  position: absolute;
  z-index: 0;
  bottom: 125%;
  right:0;
  margin-right:-105px;

  /* Fade in tooltip */
  opacity: 0;
  transition: all .5s;
}

/* Tooltip arrow */
.tooltip27 .tooltiptext27::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: rgba(0,0,0,0.8) transparent transparent transparent;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip27:hover .tooltiptext27 {
  visibility: visible;
  opacity: 1;
}

.btn { font-size:16px;padding:10px 30px; box-shadow:none !important  }

.btn-sm { font-size:14px;padding:8px 24px;  }

.btn-default { border:1px solid #ccc !important }

.details-footer { margin-top:0 !important; }

/* desktop styles */
@media (min-width: 992px) {
	#header {
		position:fixed;
		width:100%;
		z-index:4;
		background:#000
	}
	#header-nav {
		padding-bottom:20px;
		padding-top:20px;
	}
	#contentWrapper {
		padding-top:90px;
		padding-bottom:90px
}
	.navbar-expand-lg .navbar-collapse {
		margin-right:40px;
	}
	.navbar {
		margin-left:.9rem;
		padding:1.6rem 1rem 1rem 1rem;
	}
	.navbar .nav-item {
		margin-right: 1rem;
		margin-left: 1rem;
	}
	.navbar .navbar-nav .nav-link {
		border-radius:0px;
		color:#FFF;
		border-bottom:4px solid transparent
	}
	.navbar-dark .navbar-nav .nav-link:hover {
		transition: border-color .2s ease-in-out;
		background-color:transparent;
		border-bottom: 4px solid #a50034
	}
	.navbar-dark .navbar-nav .nav-link.cart-link {
		background:url(/img/shopping-cart5-2.svg) no-repeat; 
		padding:.15rem .5rem .65rem .85rem; 
		background-size: auto 100%; 
		background-position:center center; 
		min-width:100px;text-align:center !important; 
		border-bottom:none !important; 
		text-shadow:1px 1px 2px rgba(0,0,0,0.2);
		transition:all .5s
	}
	.navbar-dark .navbar-nav .nav-link.cart-link:hover,.navbar-dark .navbar-nav .nav-link.cart-link:active {
		background:url(/img/shopping-cart3-2.svg) no-repeat;
		background-size: auto 100%;
		 background-position:center center; 
	}
	#mobile-cart-link {
		display:none
	}
}

@media (max-width: 1100px) {
	.step1, .step2, .step3, .step4 {
		font-size:14px;
		width:21%;
	}
}
/* tablet styles*/
@media (max-width: 991px) {

	.step1, .step2, .step3, .step4 {
		font-size:13px;
		vertical-align:top;
	}
	#header {
		min-height:90px;
	}
	#contentMain {
		max-width:100% 
}
	.navbar {
		position:absolute;
		top:20px;
		right:15px;
		z-index:11;
	}
	#navbarNav {
		background-color:#111;
		border:1px solid #FFF;
		padding:10px 0;
		position: absolute;
		width: 200px;
		right: -15px;
		top: 60px;
	}
	#navbarNav .nav-link {
		-moz-border-radius:0;
		border-radius:0;
		border-bottom:none;
		padding-bottom:0;
		margin-bottom:4px;
	}
	#navbarNav .nav-link:hover {
		background-color: transparent !important;
	}
	#navbarNav .nav-link.cart-link {
		display:none;
	}
	
	#mobile-cart-link {
		color:#FFF;
		font-size:14px;
		background:url(/img/shopping-cart5-2.svg) no-repeat; 
		padding:.15rem .5rem .65rem 1.5rem; 
		background-size: auto 100%; 
		background-position:6px center; 
		min-width:60px;
		text-align:left !important; 
		border-bottom:none !important; 
		text-shadow:1px 1px 2px rgba(0,0,0,0.2);
		transition:all .5s;
		margin:5px 0;
		position:absolute;
		right:100px;
		top:20px;
		}
	#entry-steps {
		padding-top:50px;
		padding-bottom:20px;
	}
	
	.btn {
		margin-top:6px
	}
		
	.award-logo { 
		max-width:220px;
		margin:0; 
	}
	
}
@media (max-width: 767px) {

	.step1, .step2, .step3, .step4 {
		font-size:11px;
	}
	
	.print-page {
		margin:0 0 30px 0;
		position:static;
		text-align:left
		
	}
	#contentMain .content-inner {
    padding: 14px 20px 44px 20px;
    max-width:100% !important
    }

	.steps-break {
		display:block;
	}
	
	.tooltip27 .tooltiptext27 {
		left:0;
		margin-right:0;
		margin-left:47px;
	}
	.table {font-size:13px;}
	.table h4 {font-size:18px;}
	
	.stack-on-mobile { 
	margin-bottom:10px;
	white-space: pre; 
	display:block;
	width:100%;
	}
	
	.stack-on-mobile .btn { margin:15px 0px 0px 0px;  }
	
	.table > :not(caption) > * > * {
	padding:12px 12px;
	}
	
	.coupon-code-input .col-sm-7 {width:65% !important}
	
	.coupon-code-input .col-sm-2 {width:35% !important}
	
	.coupon-code-input > div { margin-top:0; }
	
}	
@media (max-width: 655px) {
	.step1, .step2, .step3, .step4 {
		height:90px;
}

/* mobile styles*/
@media (max-width: 575px) {
	.awardsLogos {
		max-width:180px;
		margin-bottom:20px;
	}
}