/* G3 PROMO CAROUSEL CSS */
.plp-hero-banner-slot {
    margin:0 -15px 0 !important
}
.g3-hp {
	position: relative;
	width: 100%;
	max-width: 1680px;
	height: auto;
	z-index: 1;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family: 'poppins', sans-serif;
	font-size: 1.56vw;
	-webkit-text-decoration-skip: none;
	text-decoration-skip-ink: none;
}

@media all and (min-width: 1024px) and (max-width: 1680px) {
	.g3-hp {
		font-size: 0.95vw !important;
	}
}

@media (min-width: 1680px) {
	.g3-hp {
		font-size: 1em;
	}
}

.g3-hp *,
.g3-hp *::before,
.g3-hp *::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.g3-hp section {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}

.g3-hp picture {
	position: relative;
	width: 100%;
	display: block;
}

.g3-hp picture img {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
}

.g3-hp picture.g3-hero-bg--rel {
	position: relative;
	z-index: -1;
}

.g3-hp picture.g3-hero-bg--abs {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.g3-hp .g3-video-responsive video {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	object-fit: cover;
	margin: 0;
	display: none;
}

.g3-hp img {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	max-width: none;
}

.g3-hp sup {
	top: 0 !important;
	vertical-align: super !important;
	font-size: 0.5em;
}
.g3-hp sup.g3-poppins {
	font-size: 0.6em;
}
.g3-hp sub {
	bottom: 0em;
}

.g3-hp h1,
.g3-hp h2,
.g3-hp h3,
.g3-hp h4,
.g3-hp h5,
.g3-hp h6,
.g3-hp p {
	font-family: 'poppins', sans-serif;
	position: relative;
	display: block;
	margin: 0;
	line-height: 1.1;
	letter-spacing: 0.01em;
}

.g3-rel {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.g3-abs {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.g3-hidden {
	display: none;
}
.g3-fade {
	opacity: 0;
}

.g3-it {
	font-style: italic;
}

.g3-bold {
	font-weight: 700;
}

.g3-sb {
	font-weight: 600;
}

.g3-med {
	font-weight: 500;
}
.g3-knockout {
	font-family: 'knockout-48', sans-serif !important;
}

.g3-stroke--black-white {
	-webkit-text-stroke: 0.01em #000000;
	text-stroke: 0.01em #000000;
	color: #ffffff;
}

.g3-stroke--black-transparent {
	-webkit-text-stroke: 0.01em #000000;
	text-stroke: 0.01em #000000;
	color: transparent !important;
}

.g3-stroke--white-black {
	-webkit-text-stroke: 0.01em #ffffff;
	text-stroke: 0.01em #ffffff;
	color: #000000;
}

.g3-stroke--white-transparent {
	-webkit-text-stroke: 0.01em #ffffff;
	text-stroke: 0.01em #ffffff;
	color: transparent !important;
}

.g3-stroke--dk-grey-lt-grey {
	-webkit-text-stroke: 0.01em #1f1b08;
	text-stroke: 0.01em #1f1b08;
	color: #acc0f4 !important;
}

.g3-stroke--dk-grey-transparent {
	-webkit-text-stroke: 0.01em #1f1b08;
	text-stroke: 0.01em #1f1b08;
	color: transparent !important;
}

.g3-ctas {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

a.g3-cta--block,
span.g3-cta--block {
	display: inline-block;
	position: relative;
	height: auto;
	margin: 0 0.4em;
	padding: 0 2.5em 0 2.5em;
	overflow: hidden;
	font-family: 'poppins', sans-serif;
	font-size: 2.3625em;
	font-weight: 600;
	line-height: 2.6;
	letter-spacing: normal;
	text-align: center;
	color: #000000;
	background-color: #ffffff;
	border: solid 0.08em transparent;
	white-space: nowrap;
	text-decoration: none !important;
}

a.g3-cta--no-pad,
span.g3-cta--no-pad {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
a.g3-cta--narrow,
span.g3-cta--narrow {
	padding-left: 0.6em !important;
	padding-right: 0.6em !important;
	margin: 0 0.2em !important;
}
a.g3-cta--block.g3-cta--narrow,
span.g3-cta--block.g3-cta--narrow,
a.g3-cta--block--outline.g3-cta--narrow,
span.g3-cta--block--outline.g3-cta--narrow {
	padding-left: 2em !important;
	padding-right: 2em !important;
}

.g3-ctas--mobile-stack a,
.g3-ctas--mobile-stack span {
	margin-top: 0.21em !important;
	margin-bottom: 0.2em !important;
}

a.g3-cta--block--outline,
span.g3-cta--block--outline {
	display: inline-block;
	position: relative;
	height: auto;
	margin: 0 0.4em;
	padding: 0 2.2em 0 2.2em;
	overflow: hidden;
	font-family: 'poppins', sans-serif;
	font-size: 2.3625em;
	font-weight: 600;
	line-height: 2.5;
	letter-spacing: normal;
	text-align: center;
	color: #000000;
	background-color: transparent;
	border: solid 1px;
	white-space: nowrap;
	text-decoration: none !important;
}
a.g3-cta--ul,
span.g3-cta--ul {
	display: inline-block;
	position: relative;
	font-family: 'poppins', sans-serif;
	font-size: 2.7em;
	font-weight: 600;
	line-height: normal;
	letter-spacing: 0.02em;
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.2em;
	margin: 0;
}

@media (min-width: 1024px) {
	a.g3-cta--block {
		padding: 0 4.1em 0 4.1em;
		font-size: 0.875em;
		line-height: 3.4;
	}

	a.g3-cta--narrow,
	span.g3-cta--narrow {
		margin: 0 0.5em !important;
	}

	a.g3-cta--block--outline,
	span.g3-cta--block--outline {
		padding: 0 5.3em 0 5.3em;
		font-size: 0.875em;
		line-height: 3.5;
	}

	a.g3-cta--ul,
	span.g3-cta--ul {
		font-size: 1em;
	}
	.g3-ctas--mobile-stack a,
	.g3-ctas--mobile-stack span {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
}
@media (max-width: 1023px) {
	a.g3-cta--block--m-sm {
		font-size: 2.025em;
		line-height: 2.3;
		padding: 0 1.7em 0 1.7em;
	}
}

.g3-plus {
	display: inline-block;
	margin: 0;
	padding: 0;
}
.g3-plus::before {
	content: '+';
	display: inline;
}

.g3-eyebrow--knockout {
	display: block;
	color: inherit;
	font-family: 'knockout-48', sans-serif;
	font-size: 4.05em;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 0.02em;
	width: 100%;
}

@media (min-width: 1024px) {
	.g3-eyebrow--knockout {
		font-size: 2.91em;
	}
}

.g3-eyebrow--poppins {
	display: block;
	color: inherit;
	font-family: 'poppins', sans-serif;
	font-size: 2.025em;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: normal;
	width: 100%;
}

/* G3 CAROUSEL ========== */
.g3-carousel {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0 0 0 0;
	padding: 0;
	overflow: hidden;
	opacity: 0;
}
.g3-carousel__stage {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
.g3-carousel__offset {
	position: relative;
	left: 0;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
}
.g3-carousel__slider {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
}
a.g3-carousel__slide {
	color: inherit;
	text-decoration: none;
}
.g3-carousel__slide {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	text-align: center;
}

.g3-carousel__slide img {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
}
.g3-carousel__arrow {
	display: block;
	position: absolute;
	width: 4%;
	height: auto;
	top: 50%;
	transform: translateY(-50%);
	margin: 0 4.8em;
	z-index: 500;
	cursor: pointer;
}
.g3-carousel__arrow--l {
	left: 0;
}
.g3-carousel__arrow--r {
	right: 0;
}

.g3-promo-offer {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	overflow: visible;
	text-align: center;
}

.g3-disclaimer {
	display: block;
	position: relative;
	width: 100%;
	color: inherit;
	font-family: 'poppins', sans-serif;
	font-size: 1.518em;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: normal;
	z-index: 100;
}

.g3-disclaimer--fixed {
	display: block;
	position: absolute;
	width: 100%;
	bottom: 0em;
	left: 0;
	padding: 1em;
	color: inherit;
	font-family: 'poppins', sans-serif;
	font-size: 1.518em;
	font-weight: 400;
	letter-spacing: normal;
	line-height: normal;
	z-index: 100;
	text-align: center;
}

.g3-disclaimer > a,
.g3-disclaimer--fixed > a,
.g3-disclaimer > span,
.g3-disclaimer--fixed > span {
	display: inline-block;
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.1em;
	cursor: pointer;
}

.g3-disclaimer--fixed.g3-text--right {
	text-align: right;
}

.g3-disclaimer--fixed.g3-text--left {
	text-align: left;
}

@media (min-width: 1024px) {
	.g3-disclaimer,
	.g3-disclaimer--fixed {
		font-size: 0.8em;
	}
}

.g3-coupon {
	display: inline-block;
	position: relative;
	width: 100%;
	font-family: 'poppins', sans-serif;
	font-size: 2.025em;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: 0.02em;
}

.g3-coupon a {
	color: inherit;
	text-decoration: underline;
}

.g3-pct-stack--knockout sup {
	position: relative;
	color: inherit;
	font-family: inherit;
	font-size: 0.63em;
	font-weight: 400;
	line-height: 0.8;
	letter-spacing: 0.02em;
	vertical-align: text-top;
}

.g3-pct-stack--knockout sub {
	position: relative;
	color: inherit;
	font-family: inherit;
	font-size: 0.314em;
	font-weight: 400;
	line-height: 0.8;
	letter-spacing: 0.02em;
}

span.g3-pct-stack--knockout {
	display: inline-grid;
	grid-template-columns: 1fr;
	text-align: center;
	vertical-align: 0.27em;
}

.g3-pct-stack--knockout sub > sup,
.g3-pct-stack--knockout sup > sup {
	position: absolute;
	font-size: 0.4em;
}

.g3-section-title {
	display: inline-block;
	position: relative;
	width: 100%;
	color: #000000;
	font-family: 'poppins', sans-serif;
	font-size: 2.7em;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.02em;
	text-align: center;
}

@media (min-width: 1024px) {
	.g3-section-title {
		font-size: 1.6em;
	}

	.g3-coupon {
		font-size: 1.164em;
	}
}
sup.g3-dollar-sup {
	font-size: 0.6em;
}

/* PROMO NAV =========================================== */
section.g3-promo-nav {
	margin: 0;
}
div.g3-promo-nav__content {
	position: relative;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	overflow: hidden;
}
div.g3-promo-nav__grid {
	position: relative;
	flex-flow: nowrap;
	justify-content: space-between;
	align-items: stretch;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 3.5em 0;
	overflow: hidden;
	font-family: 'poppins', sans-serif;
	font-size: 1em;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.02em;
	display: none;
}
a.g3-promo-nav__grid-item {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1;
	height: auto;
	margin: 0;
	padding: 0.4em;
	overflow: hidden;
	text-align: center;
	color: inherit;
	text-decoration: none;
}
a.g3-promo-nav__grid-item > div {
	position: relative;
	margin: 0;
	padding: 0;
	overflow: hidden;
}
div.g3-promo-nav__content h5 {
	color: inherit;
	font-family: 'poppins', sans-serif;
	font-size: 3em;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0.03em;
}
div.g3-promo-nav__content h6 {
	color: inherit;
	font-family: 'poppins', sans-serif;
	font-size: 3em;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0.03em;
}
div.g3-promo-nav__content p {
	color: inherit;
	font-family: 'poppins', sans-serif;
	font-size: 2.0475em;
	font-weight: 400;
	line-height: 1.25;
	letter-spacing: 0.02em;
	margin: 0.8em 0 0 0;
}
div.g3-promo-nav__content .g3-carousel {
	padding: 3.5em 0;
}
.g3-promo-nav .g3-carousel__stage,
.g3-promo-nav .g3-carousel__offset,
.g3-promo-nav .g3-carousel__slider,
.g3-promo-nav .g3-carousel__slide {
	height: auto;
}
.g3-promo-nav .g3-carousel__offset {
	width: 100%;
	overflow: hidden;
}
.g3-promo-nav .g3-carousel__slider {
	display: grid;
	grid-auto-columns: 100%;
	grid-auto-flow: column;
	align-items: center;
}
.g3-promo-nav a.g3-carousel__slide {
	position: relative;
	font-size: 1em;
}
.g3-promo-nav .g3-carousel__arrow {
	width: 8%;
	margin: 0 0.8em;
}

@media (min-width: 1024px) {
	section.g3-promo-nav {
    margin: 1em 0 1.4em 0;
	}
	.g3-promo-nav .g3-carousel {
		display: none;
	}
	div.g3-promo-nav__grid {
		display: flex;
		padding: 0.8em 0;
	}
	a.g3-promo-nav__grid-item:nth-child(2) {
		flex: 0 0 auto; /* let it grow but not shrink */
		min-width: 33.3333%;
		white-space: nowrap;
		border-left: solid 1px;
		border-right: solid 1px;
	}
	div.g3-promo-nav__content h5 {
		font-size: 1.5em;
	}
	div.g3-promo-nav__content h6 {
		font-size: 1.25em;
	}
	div.g3-promo-nav__content p {
		font-size: 0.75em;
	}
	.g3-promo-nav--2-column a.g3-promo-nav__grid-item:nth-child(2) {
		flex: none; /* let it grow but not shrink */
		min-width: 50%;
		white-space: nowrap;
		border-left: solid 1px;
		border-right: none;
	}
}
