html, body { overflow-x: visible; } /* overriding what's in dg.css, but not sure why it's there */

@font-face {
	font-family: 'Whitney';
	src: url('../fonts/Whitney-Semibold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
}

@font-face {
	font-family: 'Whitney';
	src: url('../fonts/Whitney-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-stretch: normal;
}

@font-face {
	font-family: 'WhitneyCondense';
	src: url('../fonts/WhitneyCond-Semibold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
}

:root {
	--color-black: #000;
	--color-dew: #009b77;
	--color-gray: #333;
	--color-magenta: #810055;
	--color-marigold: #eaaa21;
	--color-plum: #2e1a47;
	--color-plum-light: #433159;
	--color-silver-light: #f6f8f9;
	--color-soft-black: #2d2926;
	--color-transparent: rgba(0, 0, 0, 0);
	--color-vermillion: #da5037;
	--font-primary: 'Whitney', sans-serif;
	--font-secondary: 'WhitneyCondense', sans-serif;
	--font-primary-amex: 'BentonSans', 'Helvetica Neue', Helvetica, sans-serif;
	--font-weight-default: 400;
	--font-weight-medium: 500;
	--font-weight-semibold: 600;
	--font-weight-bold: 700;
	--vertical-space: clamp(50px, 4.5vw, 80px);
	--width-lg: 2730px;
}

body {
	background-color: var(--color-white);
	color: var(--color-gray);
	font-size: calc(1.5rem * .625);
	font-family: var(--font-primary-amex);
	font-weight: var(--font-weight-default);
	line-height: 1.4;
	margin: 0; 
}

section { 	scroll-margin-top: 40px;scroll-snap-margin-top: 40px;}

h1 {
	color: var(--color-white);
	font-family: var(--font-primary);
	font-size: clamp(calc(3.2rem * .625), 4.7vw, calc(6rem * .625));
	font-weight: var(--font-weight-bold);
	line-height: .9;
}

h2 {
	color: var(--color-white);
	font-family: var(--font-secondary);
	font-size: calc(3.3rem * .625);
	font-weight: var(--font-weight-semibold);
	line-height: .8;
	margin-bottom: 40px;
	text-transform: uppercase;
}

a {
	color: var(--color-vermillion);
	font-weight: var(--font-weight-medium);
	text-decoration: none;
}

a:focus,
a:hover {
	color: var(--color-magenta);
	text-decoration: underline;
}

strong,
.strong {
	font-weight: var(--font-weight-bold);
}

[hidden]{
	visibility: hidden;
}

/* Global */
.overlay {
	background: rgba(46, 26, 71, .3);
	height: 100%;
	display: none;
	left: 0;
	position: fixed;
	top: 0;
	transition: all .3s ease-out;
	width: 100%;
	z-index: 2;
}

.bg-plum-color {
	background-color: var(--color-plum);
}

.arrow-right {
	color: var(--color-gray);
	position: relative;
}

.arrow-right::after {
	background-image: url(../deltareserve/img/icon-arrow-vermillion.svg?v=0);
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: inline-block;
	height: 10px;
	margin-left: 8px;
	transform: rotate(90deg);
	width: 12px;
}

.btn {
	align-items: center;
	border: 0;
	border-radius: 5px;
	cursor: pointer;
	display: flex;
	font-family: var(--font-primary-amex);
	font-size: calc(1.5rem * .625);
	font-weight: var(--font-weight-bold);
	justify-content: center;
	line-height: 1.2;
	max-width: 100%;
	padding: 13px 25px;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	transition: color .2s, background-color .2s, border-color .2s, opacity .2s;
}

.btn--primary {
	background: var(--color-marigold);
	border: 1px solid var(--color-marigold);
	color: var(--color-plum);
	min-width: 105px;
	padding: 13px 25px;
}

.btn--primary:active,
.btn--primary:focus,
.btn--primary:hover {
	background-color: var(--color-white);
	border-color: var(--color-white);
	color: var(--color-plum);
	text-decoration: none;
}

.eyebrow {
	color: var(--color-white);
	font-family: var(--font-secondary);
	font-size: calc(2.5rem * .625);
	font-weight: var(--font-weight-bold);
	letter-spacing: 1px;
	line-height: 1;
	text-transform: uppercase;
}

.eyebrow-secondary {
	font-family: var(--font-primary-amex);
	font-weight: var(--font-weight-medium);
	font-size: 1rem;
	line-height: 1;
	text-transform: uppercase;
	margin-bottom: 0.5rem;
}

.eyebrow--marigold { color: var(--color-marigold); }
.eyebrow--dew { color: var(--color-dew); }
.eyebrow--magenta { color: var(--color-magenta); }
.eyebrow--block { display: block; }

.flag {
	background-color: var(--color-vermillion);
	border-radius: 8px;
	border: 1px solid var(--color-vermillion);
	color: var(--color-white);
	font-family: var(--font-primary-amex);
	font-size: calc(1.2rem * .625);
	font-weight: var(--font-weight-bold);
	letter-spacing: -1px;
	line-height: 1.3;
	margin: 0 15px;
	padding: 0 10px;
	text-transform: uppercase;
}

.show-mobile,
.show-tablet { 
	display: none; 
}

/* Navigation */
.card-nav--container {
	position: sticky;
	top: 8px;
	z-index: 3;
}

.card-nav {
	align-items: center;
	background-color: var(--color-plum);
	border-radius: 5px;
	height: 45px;
	margin-top: 10px;
	padding: 0 15px 0 5px;
	width: 95%;
}

.cn-card { 
	background-image: url(../deltareserve/img/card-nav.png?v=0);
	color: var(--color-white);
	font-family: var(--font-primary-amex);
	font-size: calc(1.4rem * .625);
	font-weight: var(--font-weight-medium);
	height: 45px;
}

.cn-card:active,
.cn-card:focus,
.cn-card:hover {
	color: var(--color-white);
	text-decoration: none;
}

.nav-container { 
	display: flex;
	flex: 1;
	flex-direction: row;
	justify-content: space-between;
	transform: translateX(-110px);
	max-width: 605px;
}

	.nav-link-applyNow { position: absolute !important; right: -105px; height: 50px; display: flex; align-items: center; color: #000; font-weight: 500; text-decoration: none; font-size: calc(1.5rem * .625); }


.nav-links { 
	align-items: center; 
	align-self: center; 
	display: flex;
	flex: 1;
	justify-content: space-between;
	margin-right: 40px;
	position: relative; 
	z-index: 6; 
} 

.nav-link { 
	color: var(--color-white); 
	display: flex; 
	flex-direction: column; 
	font-size: calc(1.5rem * .625); 
	font-weight: var(--font-weight-medium); 
	height: 45px; 
	justify-content: center; 
	line-height: 1.3em; 
	position: relative; 
	text-decoration: none; 
}

.cn-explore {
	background: none;
	color: var(--color-white); 
	font-size: calc(1.5rem * .625); 
	font-weight: var(--font-weight-medium);
	padding: 0;
}

.cn-explore, 
.nav-close { 
	text-transform: capitalize;
}

.explore-close {
	background: none;
	border-radius: 5px;
	color: var(--color-white); 
	font-weight: var(--font-weight-medium);
	height: 45px;
	justify-content: flex-end;
}

.nav-close {
	cursor: pointer;
	font-size: calc(1.5rem * .625); 
	height: 45px;
	margin-right: 15px;
	transition: transform .35s ease-in-out;
	color: var(--color-white);
	text-decoration: none;
}

.nav-link:focus,
.nav-link:hover,
.cn-explore:focus,
.cn-explore:hover,
.nav-close:focus,
.nav-close:hover {
	color: var(--color-white);
	text-decoration: none;
}

.explore-links {
	background-color: var(--color-silver-light);
	border-radius: 5px;
	max-width: 355px;
	transform: translateY(0);
	width: 300px;
	z-index: -1;
	display: none;
}

.explore-links-open {
	border: 0;
	transform: translateY(46px);
	display: block;
}

.explore-link.nav-link-arrow {
	background-color: var(--color-plum);
	background-image: none;
	border-color: rgba(255, 255, 255, 0.35);
	color: var(--color-white);
	font-family: var(--font-primary-amex);
	font-size: calc(1.5rem * .625);
	position: relative;
}

.explore-link.nav-link-arrow::after {
	background-image: url(../deltareserve/img/icon-arrow-vermillion.svg?v=0);
	background-position: center;
	background-repeat: no-repeat;
	bottom: 0;
	content: '';
	display: inline-block;
	height: 10px;
	margin: auto;
	position: absolute;
	right: 20px;
	top: 0;
	transform: rotate(90deg);
	width: 10px;
}

.explore-link-external {
	background-size: 15px;
	color: var(--color-gray);
	font-family: var(--font-primary-amex);
	font-size: calc(1.3rem * .625);
	font-weight: var(--font-weight-default);
	height: 44px
}

.explore-link-external:last-child {
	border-bottom: 0;
}

/* Homepage */
.hero {
	align-items: flex-end;
	background-image: url(../deltareserve/img/home-hero-md.jpg?v=0);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	height: calc(100vh - 60px);
	margin: -55px auto 0;
	max-height: 870px;
	max-width: var(--width-lg);
	width: 100%;
	flex-wrap: wrap;
	position: relative;
}

.hero--inner {
	background-image: linear-gradient(180deg, rgba(46, 26, 71, 0.67) 12.69%, #2E1A47 64.84%);
	padding: 10px 0 20px;
	position: relative;
	width: 100%;
}
 
.hero--airplane {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	max-width: 441px;
	width: 100%;
}

.hero--content {
	color: var(--color-white);
	display: grid;
	gap: clamp(10px,2.7vw,50px);
	grid-template-columns: 35fr 65fr;
	margin: 0 auto;
	max-width: 1200px;
	padding: 15px 0;
	width: 90%;
}

.hero--headline {
	margin-bottom: 20px;
}

.hero--text {
	color: rgba(255, 255, 255, 0.70);
	font-family: var(--font-primary);
	font-size: calc(2.4rem * .625);
	font-weight: var(--font-weight-semibold);
	line-height: 1;
	text-transform: uppercase;
	text-wrap: balance
}

/* Animation */
@-webkit-keyframes fadeInLeft {
	from {
			opacity:0;
			-webkit-transform: translatex(-25px);
			-moz-transform: translatex(-25px);
			-o-transform: translatex(-25px);
			transform: translatex(-25px);
	}
	to {
			opacity:1;
			-webkit-transform: translatex(-20px);
			-moz-transform: translatex(-20px);
			-o-transform: translatex(-20px);
			transform: translatex(-20px);
	}
}

@-moz-keyframes fadeInLeft {
	from {
			opacity:0;
			-webkit-transform: translatex(-25px);
			-moz-transform: translatex(-25px);
			-o-transform: translatex(-25px);
			transform: translatex(-25px);
	}
	to {
			opacity:1;
			-webkit-transform: translatex(-20px);
			-moz-transform: translatex(-20px);
			-o-transform: translatex(-20px);
			transform: translatex(-20px);
	}
}

@keyframes fadeInLeft {
	from {
			opacity:0;
			-webkit-transform: translatex(-25px);
			-moz-transform: translatex(-25px);
			-o-transform: translatex(-25px);
			transform: translatex(-25px);
	}
	to {
			opacity:1;
			-webkit-transform: translatex(-20px);
			-moz-transform: translatex(-20px);
			-o-transform: translatex(-20px);
			transform: translatex(-20px);
	}
}

@media (prefers-reduced-motion: no-preference) {
	.in-left {
		-webkit-animation-name: fadeInLeft;
		-moz-animation-name: fadeInLeft;
		-o-animation-name: fadeInLeft;
		animation-name: fadeInLeft;
		-webkit-animation-fill-mode: both;
		-moz-animation-fill-mode: both;
		-o-animation-fill-mode: both;
		animation-fill-mode: both;
		-webkit-animation-duration: 1s;
		-moz-animation-duration: 1s;
		-o-animation-duration: 1s;
		animation-duration: 1s;
		-webkit-animation-delay: 1s;
		-moz-animation-delay: 2s;
		-o-animation-duration:1s;
		animation-delay: 1.8s;
		margin-left: 45px;
	}
}


@-webkit-keyframes fadeInTop {
	from {
		opacity:0;
		-webkit-transform: translatey(15px);
		-moz-transform: translatey(15px);
		-o-transform: translatey(15px);
		transform: translatey(15px);
	}
	to {
		opacity:1;
		-webkit-transform: translatey(0);
		-moz-transform: translatey(0);
		-o-transform: translatey(0);
		transform: translatey(0);
	}
}

@-moz-keyframes fadeInTop {
	from {
		opacity:0;
		-webkit-transform: translatey(15px);
		-moz-transform: translatey(15px);
		-o-transform: translatey(15px);
		transform: translatey(15px);
	}
	to {
		opacity:1; 
		-webkit-transform: translatey(0);
		-moz-transform: translatey(0);
		-o-transform: translatey(0);
		transform: translatey(0);
	}
}

@keyframes fadeInTop {
	from {
		opacity:0;
		-webkit-transform: translatey(15px);
		-moz-transform: translatey(15px);
		-o-transform: translatey(15px);
		transform: translatey(15px);
	}
	to {
		opacity:1;
		-webkit-transform: translatey(0);
		-moz-transform: translatey(0);
		-o-transform: translatey(0);
		transform: translatey(0);
	}
}

@media (prefers-reduced-motion: no-preference) {
	.in-top {
		-webkit-animation-name: fadeInTop;
		-moz-animation-name: fadeInTop;
		-o-animation-name: fadeInTop;
		animation-name: fadeInTop;
		-webkit-animation-fill-mode: both;
		-moz-animation-fill-mode: both;
		-o-animation-fill-mode: both;
		animation-fill-mode: both;
		-webkit-animation-duration: 1s;
		-moz-animation-duration: 1s;
		-o-animation-duration: 1s;
		animation-duration: 1s;
		-webkit-animation-delay: 1s;
		-moz-animation-delay: 2s;
		-o-animation-duration:1s;
		animation-delay: 2s;
		margin-left: 45px;
		display: none;
	}
}


.hero--stamp-card { 
	align-items: center; 
	display: flex; 
	justify-content: center; 
	margin-top: -30%; 
	position: relative; 
}

.hero--stamp { 
	height: 100%; 
	max-height: 350px; 
	text-align: center; 
	max-width: 350px; 
	width: 100%; 
}

.hero--stamp svg { 
	display: block; 
}

.hero--card { 
	max-width: 165px; 
	position: absolute; 
	width: 100% 
}

.card-benefits {
	display: grid;
	gap: clamp(10px,2.7vw,40px);
	grid-template-columns: repeat(3, 1fr);
	padding: var(--vertical-space) 0;
}

.card-benefit {
	cursor: pointer;
	position: relative;
}

.card-benefit:focus,
.card-benefit:hover {
	box-shadow: 0px 0px 138.3px 0px rgba(234, 170, 33, 0.25), 0px 0px 15px 0px rgba(0, 0, 0, 0.33);
	text-decoration: none;
	transition: all .35s ease-in-out;
}

.card-benefit:nth-child(2):focus, .card-benefit:nth-child(2):hover { box-shadow: 0px 0px 137.4px 0px rgba(0, 155, 119, 0.40), 0px 0px 15px 0px rgba(0, 0, 0, 0.33); }
.card-benefit:nth-child(3):focus, .card-benefit:nth-child(3):hover { box-shadow: 0px 0px 138.3px 0px rgba(129, 0, 85, 0.30), 0px 0px 15px 0px rgba(0, 0, 0, 0.33); }

.card-benefit:focus .card-benefit--footer,
.card-benefit:hover .card-benefit--footer {
	background-color: rgba(234, 170, 33, .15);
	transition: color .2s, background-color .2s;
}

.card-benefit:nth-child(2):focus .card-benefit--footer, .card-benefit:nth-child(2):hover .card-benefit--footer { background-color: rgba(0, 155, 119, .12); }
.card-benefit:nth-child(3):focus .card-benefit--footer, .card-benefit:nth-child(3):hover .card-benefit--footer { background-color: rgba(129, 0, 85, .12); }

.card-benefit--inner { 
	background-color: var(--color-white);
	border: 1px solid var(--color-white);
	box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, .3);
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	text-decoration: none;
}

.card-benefit--image {
	margin-bottom: 15px;
	padding-bottom: 70%;
	position: relative;
}

.card-benefit--image img {
	height: 100%;
	object-fit: cover;
	position: absolute;
	width: 100%;
}

.card-benefit--content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.card-benefit--headline {
	color: var(--color-plum);
	font-family: var(--font-primary);
	font-size: calc(2.2rem * .625);
	font-weight: var(--font-weight-semibold);
	line-height: 1;
	margin: 0 auto 15px;
	padding: 0 20px;
	text-transform: uppercase;
	width: 100%;
}

.card-benefit--footer {
	border-bottom: 2px solid var(--color-marigold);
	border-top: 1px solid rgba(234, 170, 33, 0.40);
	color: var(--color-gray);
	font-weight: var(--font-weight-medium);
	padding: 12px 20px;
}

.card-benefit:nth-child(2) .card-benefit--footer { border-color: var(--color-dew); }
.card-benefit:nth-child(3) .card-benefit--footer { border-bottom-color: var(--color-magenta); border-top-color: rgba(139, 35, 50, 0.40); }

.mid {
	background-image: url(../deltareserve/img/home-mid-md.jpg?v=0);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: cover;	
	margin: 0 auto;
	max-width: var(--width-lg);
	width: 100%;
}

.mid--inner {
	margin: 0 auto;
	max-width: 995px;
	padding: var(--vertical-space) 0;
	width: 90%;
}

.membership-feature {
	background-color: rgba(0, 0, 0, .2);
	margin-bottom: 65px;
	padding: 50px clamp(20px, 4.5vw, 80px) 40px;
}

.set-up-and-payments .membership-feature {
	background-color: var(--color-plum);
	margin-bottom: var(--vertical-space);
	padding: clamp(40px, 4.5vw, 120px) 20px;
}

.membership-feature--inner {
	color: var(--color-white);
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(2, 1fr);
	margin: 0 auto;
	max-width: 840px;
	width: 100%;
}

.membership-feature--content {
	align-self: center;
}

.membership-feature--image img {
	height: auto;
	margin: 0 auto;
	max-width: 335px;
	width: 100%;
}

.membership-feature--text {
	margin-bottom: 30px;
}

.membership-feature--content .btn {
	margin-bottom: 0;
}

.quick-steps {
	background-color: rgba(0, 0, 0, .2);
	padding: clamp(25px, 4.5vw, 80px) 30px clamp(20px, 4.5vw, 50px);
	text-align: center;
	width: 100%;
}

h2.quick-steps--headline {
    font-family: var(--font-secondary);
    font-size: calc(3.3rem * .625);
    font-weight: var(--font-weight-semibold);
    line-height: 1.2;
	margin-bottom: 35px;
	text-align: center;
}

.quick-steps--content {
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(3, 1fr);
	position: relative;
}

.quick-steps--content::after {
	background-color: var(--color-plum);
	bottom: 0;
	content: '';
	display: block;
	height: 2px;
	left: 0;
	margin: auto;
	position: absolute;
	top: 0;
	width: 100%;
}

.quick-step {
	background-color: var(--color-white);
	border: 2px solid var(--color-plum);
	color: var(--color-soft-black);
	cursor: pointer;
	display: block;
	padding: 16px 24px 40px;
	position: relative;
	text-wrap: balance;
	transition: all .25s ease;
	z-index: 1;
}

.quick-step::after,
.quick-step::before {
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	position: absolute;
}

.quick-step::before {
	background-image: url(../img/external-link.svg?v=0);
	height: 16px;
	opacity: .6;
	right: 10px;
	top: 10px;
	width: 16px;
}

.quick-step::after {
	background-image: url(../deltareserve/img/icon-check-circle.svg?v=0);
	bottom: -24px;
	height: 48px;
	left: 0;
	margin: 0 auto;
	right: 0;
	width: 48px;
}

.quick-step:focus,
.quick-step:hover {
	color: inherit;
	text-decoration: none;
	transform: translateY(-10px);
}

@media (prefers-reduced-motion) {
	.quick-step:focus,
	.quick-step:hover {
		transform: none;
	}
}

.quick-step--headline {
	font-weight: var(--font-weight-bold);
	margin-bottom: 10px;
}

/* Uncoveryour benefits page */
.status-faster {
	background-color: var(--color-plum);
	color: var(--color-white);
	padding: var(--vertical-space) clamp(20px, 4.5vw, 40px);
	position: relative;
	margin-bottom: var(--vertical-space);
}

.status-faster::before { 
	background-image: url(../deltareserve/img/plane-stamp.svg?v=0); 
	background-position: left bottom; 
	background-repeat: no-repeat; 
	bottom: 0; 
	content: ''; 
	height: 108px; 
	left: 0; 
	opacity: .1; 
	position: absolute; 
	width: 235px; 
}

.status-faster--inner {
	display: grid;
	grid-template-columns: 27% 1fr 1fr;
}

.status-faster .status-faster--inner {
	grid-template-columns: 27% 1fr;
}

.status-faster--subhealine {
	font-size: calc(1.6rem * .625);
	font-weight: var(--font-weight-medium);
	margin-bottom: 10px;
}

.status-faster .arrow-right {
	color: var(--color-white);
	margin-bottom: 20px;
	margin-top: 14px;
	display: inline-block;
}

.more-offers {
	background-color: var(--color-plum);
	margin: 0 auto var(--vertical-space);
	max-width: 1200px;
	padding: var(--vertical-space) 25px;
	width: 100%;
}

.more-offers--inner {
	color: var(--color-white);
	display: grid;
	gap: 80px;
	grid-template-columns: repeat(2, 1fr);
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
}

.more-offers--headline {
	margin: 8px 0 0;
}

.more-offers--text {
	margin-bottom: 30px;
}

.more-offers .btn {
	display: inline-block;
	margin: 0;
}

/* Setup & Payments page */
.card-features {
	background: linear-gradient(176deg, rgba(129, 0, 85, 0.10) 45.46%, rgba(129, 0, 85, 0.06) 96.58%);
	border-top: 1px solid var(--color-magenta);
	margin-bottom: 15px;
	padding: 40px;
}

.card-features--inner {
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(3, 1fr);
}

.card-features--headline {
	color: var(--color-plum);
	margin-bottom: 55px;
}

.card-features--item img {
	height: auto;
	margin-bottom: 15px;
	max-width: 48px;
	width: 100%;
}

.card-features--item h3 {
	font-size: calc(1.6rem * .625);
	font-weight: var(--font-weight-medium);
	margin-bottom: 5px;
}

.card-features--item p:not(:last-child){
	margin-bottom: 10px;
}

.payments-and-benefits .featured-benefit {
	margin: 80px 0;
}

.card-features--footer .fineprint {
	font-size: calc(1.2rem * .625);
	line-height: 1.5;
}

/* Componentes */
.header {
	background-color: var(--color-plum);
	margin-bottom: clamp(10px, 4.5vw, 40px);
	margin-top: -55px;
}

.header--inner {
	background-image: url(../deltareserve/img/icon-delta.svg?v=0);
	background-position: 92% bottom;
	background-repeat: no-repeat;
	margin: 0 auto;
	max-width: 1200px;
	padding: 100px 0 15px;
	width: 90%;
}

.header .eyebrow {
	font-family: var(--font-primary-amex);
	font-size: calc(1.5rem * .625);
	opacity: .7;
}

.header--headline {
	font-size: clamp(calc(3.9rem * .625), 4.7vw, calc(6rem * .625));
	max-width: 550px;
	text-wrap: balance;
	width: 100%;
}

.featured-benefit {
	align-items: flex-start;
	border: 0;
	display: grid;
	grid-template-columns: calc(59% + 80px) 41%;
	margin-bottom: var(--vertical-space);
}

.featured-benefit-reverse {
	grid-template-columns: 41% calc(59% + 80px);
}

.featured-benefit-reverse .fb-featured {
	grid-column-start: 2;
	grid-row-start: 1;
}

.featured-benefit-reverse .fb-text {
	grid-column-start: 1;
	grid-row-start: 1;
}

.fb-img {
	max-width: 790px;
	padding: 0;
	position: relative;
	width: 100%;
}

.fb-featured {
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid rgba(255, 255, 255, 0.35);
	padding-bottom: 85%;
}

.fb-featured1 { background-image: url(../deltareserve/img/benefits-featured-1-md.jpg?v=0); }
.fb-featured2 { background-image: url(../deltareserve/img/benefits-featured-2-md.jpg?v=0); }
.fb-featured3 { background-image: url(../deltareserve/img/benefits-featured-3-md.jpg?v=0); }
.fb-featured4 { background-image: url(../deltareserve/img/benefits-featured-4-md.jpg?v=0); padding-bottom: 50%; }
.fb-featured5 { background-image: url(../deltareserve/img/benefits-featured-5-md.jpg?v=0); }
.fb-featured6 { background-image: url(../deltareserve/img/benefits-featured-6-md.jpg?v=0); }
.fb-featured7 { background-image: url(../deltareserve/img/benefits-featured-7-md.jpg?v=0); }
.fb-featured8 { background-image: url(../deltareserve/img/benefits-featured-8-md.jpg?v=0); }
.fb-featured9 { background-image: url(../deltareserve/img/benefits-featured-9-md.jpg?v=0); padding-bottom: 50%; }

.fb-text {
	border: 4px solid var(--color-white);
	margin: 0;
	max-width: 485px;
	padding: 25px 15px 0;
	width: 100%;
	z-index: 1;
}

.fb-marigold { background: linear-gradient(166deg, rgba(234, 170, 33, 0.07) 0%, rgba(234, 170, 33, 0.00) 30.44%), linear-gradient(185deg, rgba(255, 255, 255, 0.88) -0.12%, #FFF 22.29%); }
.fb-dew { background: var(--textBlock_miles, linear-gradient(174deg, rgba(0, 155, 119, 0.14) 0.18%, rgba(0, 155, 119, 0.00) 24.31%), linear-gradient(185deg, rgba(255, 255, 255, 0.88) 0%, #FFF 16.1%)); }
.fb-magenta { background: var(--textBlock_setup, linear-gradient(171deg, rgba(129, 0, 85, 0.07) 1.07%, rgba(129, 0, 85, 0.00) 36.33%), linear-gradient(13deg, #FFF 78.64%, rgba(255, 255, 255, 0.88) 99.1%));}

.fb-text-container {
	padding: 25px 0;
}

.fb-text-container:not(:last-child) {
	border-bottom: 1px solid rgba(51, 51, 51, 0.15);
}

.fb-text-container h3 {
	font-weight: var(--font-weight-semibold);
	margin-bottom: 15px;
}

.fb-text-container p:not(:last-child) {
	margin-bottom: 1em;
}

.fb-head {
	background: none;
	border-bottom: 1px solid var(--color-marigold);
	border-radius: 0;
	color: var(--color-gray);
	margin: 0 0 5px;
	padding: 0 0 20px;
	text-wrap: balance;
}

.fb-dew .fb-head { border-color: var(--color-dew); }
.fb-magenta .fb-head { border-color: var(--color-magenta); }

.fb-title,
.fb-detail {
	box-shadow: none;
	background: none;
}

.fb-title:not(:last-child),
.fb-detail:not(:last-child) {
	border-bottom: 1px solid rgba(0, 0, 0, .3);
}

.fb-title img,
.fb-detail img {
	display: inline-block;
	height: 16px;
	transform: none;
	vertical-align: top;
	width: 16px;
}

.fb-link,
.fb-summary-heading {
	padding: 25px 0;
	text-wrap: balance;
	font-weight: 700;
}

.fb-link:focus,
.fb-link:hover,
.fb-summary-heading:focus,
.fb-summary-heading:hover {
	background: none;
	color: var(--color-gray);
	text-decoration: none;
}

.fb-content,
.fb-detail-content {
	background: none;
	padding: 0;
}

.fb-content p a,
.fb-text-container p a,
.fb-detail-content p a {
	color: var(--color-vermillion);
}

.fb-content .featuredOL,
.fb-detail-content .featuredOL { 
	margin-bottom: 1em; 
}

.fb-content .featuredLI a,
.fb-detail-content .featuredLI a {
	color: var(--color-vermillion);
}

.fb-content .featuredLI a:focus,
.fb-content .featuredLI a:hover,
.fb-detail-content .featuredLI a:focus,
.fb-detail-content .featuredLI a:hover {
	color: var(--color-magenta);
}

.fb-content .arrow-right,
.fb-detail-content .arrow-right {
	display: inline-block;
	margin-bottom: 1em;
}

.fb-content .arrow-right:focus,
.fb-content .arrow-right:hover,
.fb-detail-content .arrow-right:focus,
.fb-detail-content .arrow-right:hover {
	color: var(--color-vermillion);
}

.fb-title-open img:not(.ob-col-hero):not(.fb-logo),
.fb-detail[open] img:not(.ob-col-hero):not(.fb-logo) {
	transform: rotate(180deg);
}

.fb-title-open .fb-content {
	padding: 0 0 1em;
}

.fb-content-open {
	margin: 32px 0;
}

.fb-content-open--headline {
	margin-bottom: 15px;
}

.fb-content-open p {
	margin-bottom: 1em;
}

.more-to-explore {
	margin-bottom: 40px;
}

.more-to-explore span {
	background-color: var(--color-white);
}

.other-benefits { 
	background: none; 
	box-shadow: none; 
	justify-content: space-between; 
	padding: 0;
}

.other-benefits .fb-head { 
	align-items: center; 
	display: flex; 
	flex-direction: row; 
	padding: 0 0 12px; 
	width: 100%; 
}

.other-benefits .fb-head img { 
	height: auto;
	margin-right: 10px; 
	max-width: 48px; 
	width: 100%; 
}

.other-benefits .fb-head span { 
	color: var(--color-gray);
	font-family: var(--font-secondary);
	font-size: calc(2.4rem * .625); 
	font-weight: var(--font-weight-semibold);
	padding: 0;
	text-transform: uppercase;
}

.ob-col { 
	padding: 0; 
	width: 49%; 
}

.obHead {
	flex-direction: row;
	justify-content: space-between;
	width: 100%;
}

.obHead:focus, 
.obHead:hover {
	color: var(--color-gray);
	text-decoration: none;
}

.ob-col h3 { 
	font-weight: var(--font-weight-bold);
	margin: 0; 
	padding: 20px 0; 
}
.ob-col .ob-detail summary h3 {
	border-top: none;
}

.ob-col h3:not(:nth-child(2)),
.ob-col .ob-detail:not(:first-of-type) h3 { 
	border-top: 1px solid rgba(0, 0, 0, 0.30);
	border-bottom: none; 
}

.ob-col h3 img {
	height: 16px;
	width: 16px;
}

.ob-col h3:hover {
	text-decoration: none;
}

.ob-col h3.ob-arrow-open img,
.ob-detail[open] .ob-summary-heading img {
    transform: rotate(-180deg);
}

.ob-col .ob-summary-heading {
	font-weight: 500;
}

.ob-container { 
	background: linear-gradient(166deg, rgba(234, 170, 33, 0.07) 0%, rgba(234, 170, 33, 0.00) 30.44%), linear-gradient(185deg, rgba(255, 255, 255, 0.88) -0.12%, var(--color-white) 22.29%); 
	border: 4px solid var(--color-white); 
	padding: 12px 15px; 
}

.ob-content,
.ob-detail-content {
	padding-left: 0;
}

.rewards--text {
	padding: 0 clamp(40px, 3.5vw, 65px) 40px;
	text-align: center;
}

.rewards--item:not(:first-of-type) {
	padding-top: 10px;
}

.rewards--item:not(:last-child) {
	border-bottom: 1px solid var(--color-dew);
	padding-bottom: 25px;
}

.rewards--item h2 {
	color: var(--color-dew);
	font-family: var(--font-primary);
	font-size: calc(7rem * .625);
	font-weight: var(--font-weight-semibold);
	line-height: 1.1;
	margin-bottom: 20px;
}

.rewards--item h2 .text-small {
	font-size: calc(3.5rem * .625)
}

.rewards--item h2 .text-smaller {
	color: var(--color-gray);
	display: block;
	font-family: var(--font-secondary);
	font-size: calc(1.8rem * .625);
	font-weight: var(--font-weight-semibold);
}

/* Not a member */
.not-a-member {
	background-color: var(--color-white);
	border: none;
	display: flex;
	flex-flow: row;
	gap: 40px;
	margin: 0 auto;
	padding-inline: 40px;
	width: 90%;
    max-width: var(--width-lg);
}

.not-a-member--headline {
	color: var(--color-plum);
	font-family: var(--font-secondary);
	font-size: 2.063rem;
	font-weight: 600;
	line-height: 1.75rem;
	text-transform: uppercase;
	text-wrap: balance
}

.not-a-member .btn--ghost {
	align-items: center;
	background-color: transparent;
	border-radius: 3px;
	border: 1px solid var(--color-vermillion);
	color: var(--color-gray);
	display: flex;
	font-family: var(--font-primary-amex);
	font-size: 0.938rem;
	font-weight: 700;
	justify-content: center;
	line-height: 1.5rem;
	padding: 9px 24px;
	transition: all 0.2s ease-in;
}

.not-a-member .btn--ghost:focus,
.not-a-member .btn--ghost:hover {
	background-color: var(--color-plum);
	border-color: var(--color-plum);
	color: var(--color-white);
	transition: all 0.2s ease-in;
}

.footer {
	background-color: var(--color-plum);
}

.footer--airport-tracker {
	background-color: var(--color-plum-light);
	border-top: 3px solid var(--color-plum);
	border-bottom: 3px solid var(--color-plum);
}

.footer--airport-tracker-media {
	display: grid;
	margin: 0 auto;
	overflow: hidden;
	width: 100%;
	max-height: 50px ;
}
.footer--airport-tracker-media svg path {
	fill: #fff;
	fill-opacity: .55;
}

.footer--tagline {
	border-bottom: 1px solid var(--color-white);
	position: relative;
}

.footer--tagline-image {
	height: auto;
	margin: 0 auto;
	max-width: 1200px;
	width: 100%;
}

.footer--tagline-logo {
	bottom: 0;
	height: auto;
	left: 0;
	margin: auto;
	max-width: 410px;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.footer--links {
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(3, auto);
	margin: 0 auto;
	max-width: 725px;
	padding: 6px 0;
	width: 100%;
}

.footer--link {
	color: var(--color-white);
	font-weight: var(--font-weight-medium);
	padding-block: 12px;
}

.footer--link:focus,
.footer--link:hover {
	color: var(--color-white);
}

.footer--link:not(:first-child)::before {
	background: rgba(255, 255, 255, .1);
	content: '';
	display: inline-block;
	height: 100%;
	margin-right: 40px;
	vertical-align: bottom;
	width: 1px;
}

.terms {
	max-width: 1200px;
	padding: 26px 0 16px;
}

.terms-link {
	background: none;
	font-size: inherit;
	font-weight: var(--font-weight-default);
	padding-left: 18px;
	position: relative;
}

.terms-link::before {
	background-image: url(../deltareserve/img/icon-arrow-black-light.svg?v=0);
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 0;
	content: '';
	display: block;
	height: 12px;
	left: 0;
	margin: auto;
	position: absolute;
	top: 0;
	width: 10px;
}

.terms-link:focus,
.terms-link:hover {
	color: inherit;
}

@media all and (min-width: 1025px) {
	/* Navigation */
	.cn-card { font-size: calc(1.4rem * .625); font-weight: 500; padding-left: 65px; }
	.nav-link:focus::after, .nav-link:hover::after, .nav-link.is-active::after, .cn-explore:focus::before, .cn-explore:hover::before { background-color: var(--color-vermillion); bottom: 0; content: ''; display: block; height: 4px; position: absolute; width: 100%; }	
	.nav-close { margin-right: 15px; }
	.cn-explore, .nav-close { background-color: var(--color-plum); background-image: none; border: 0; padding: 0; position: relative; width: 65px; }
	.cn-explore::after, .nav-close::after { content: ''; background-image: url(../deltareserve/img/icon-arrow-vermillion.svg?v=0); background-position: center; background-repeat: no-repeat; display: inline-block; height: 10px; margin-left: 8px; width: 15px; }
	.cn-explore::after { transform: rotate(180deg); }
	.nav-close::before { background-color: var(--color-vermillion); bottom: 0; content: ''; display: block; height: 4px; position: absolute; width: 100%; }
	.nav-link-arrow { display: none; }

	/* Homepage */
	.hero--stamp-card { min-height: 311px; }

	/* Uncoveryour benefits page */
	
	.status-faster--headline { margin-bottom: 24px; margin-right: 30px; }
	.status-faster--content:nth-last-child(2n) { margin-right: 32px; }
	.status-faster--content:last-child { border-left: 1px solid var(--color-white); padding-left: 40px; }
	.status-faster--footer { margin-top: -105px; }

	.featured-benefit-reverse .fb-img, .featured-benefit .fb-text { margin-left: -78px; }
	.featured-benefit-reverse .fb-text { margin-left: 0; }

	.fb-text { border-top: 0; }
}

@media all and (max-width: 1024px) {
	/* Global */
	.show-tablet { display: block; }
	.hide-tablet { display: none; }

	/* Navigation */
	.card-nav { padding: 0 5px; }
	.nav-container { align-items: center; transform: translateX(0); }
	.nav-link { display: none; }
	.card-nav { height: 50px; }
	.cn-card { max-width: none; }
	.explore-close { bottom: 0; height: 44px; margin: auto; }
	.cn-explore { background-color: var(--color-vermillion); background-image: url(../deltareserve/img/icon-arrow-white.svg?v=0); }
	.nav-close { background-color: var(--color-vermillion); background-image: url(../deltareserve/img/icon-arrow-white.svg?v=0); background-size: 36%; margin-right: 5px; transform: rotate(180deg); }
	.cn-explore, .nav-close { background-position: center; background-repeat: no-repeat; border: 1px solid var(--color-plum); border-radius: 3px; height: 44px; width: 50px; }
	.cn-explore span, .nav-close span { height: 1px; position: absolute; overflow: hidden; top: -10px; width: 1px; }

	/* Uncoveryour benefits page */
	.status-faster { margin-left: auto; margin-right: auto; max-width: 600px; }
	.status-faster { padding-bottom: 160px; }
	.status-faster::before { bottom: 20px; left: 5%; }
	.status-faster--inner { grid-template-columns: none; }
	.status-faster--content:nth-last-child(2n) { margin-bottom: 32px; }
	.status-faster--content:last-child { border-top: 1px solid var(--color-white); margin-bottom: 30px; padding-top: 32px; }

	.more-to-explore { margin-inline: auto; max-width: 90%; width: 100%; }

	/* Setup & Payments page */
	.card-features { padding: 40px 25px; }
	
	.featured-benefit { display: block; margin-bottom: 40px; }
	.fb-img { margin: 0 auto; max-width: 600px; }
	.fb-featured1 { background-image: url(../deltareserve/img/benefits-featured-1-sm.jpg?v=0); }
	.fb-featured2 { background-image: url(../deltareserve/img/benefits-featured-2-sm.jpg?v=0); }
	.fb-featured3 { background-image: url(../deltareserve/img/benefits-featured-3-sm.jpg?v=0); }
	.fb-featured4 { background-image: url(../deltareserve/img/benefits-featured-4-sm.jpg?v=0); padding-bottom: 85%; } 
	.fb-featured5 { background-image: url(../deltareserve/img/benefits-featured-5-sm.jpg?v=0); }
	.fb-featured6 { background-image: url(../deltareserve/img/benefits-featured-6-sm.jpg?v=0); }
	.fb-featured7 { background-image: url(../deltareserve/img/benefits-featured-7-sm.jpg?v=0); }
	.fb-featured8 { background-image: url(../deltareserve/img/benefits-featured-8-sm.jpg?v=0); }
	.fb-featured9 { background-image: url(../deltareserve/img/benefits-featured-9-sm.jpg?v=0); padding-bottom: 85%; }
	.fb-text { margin: -150px auto 0; max-width: 575px; position: relative; width: 90%; z-index: 1; }
	.fb-link span:first-child { flex: 1; }

	.ob-col { margin: 0 auto; width: 90%; }
	.ob-col:first-child { margin-bottom: 40px;}
	.ob-col h3 img { transform: inherit; }
}

@media all and (max-width: 767px) {
	/* Homepage */
	.hero { background-image: url(../deltareserve/img/home-hero-sm.jpg?v=0); background-position: top center; height: 580px; max-height: 100%; }
	.hero--inner { padding-bottom: 0; }
	.hero--content { display: block; position:  relative; padding: 35px 0 0; }

	.hero--airplane { left: -200px; top: 80px; transform: initial; }
	
	.hero--stamp-card { position: absolute; top: -96px; right: 0; margin-top: initial; }
	.hero--stamp { max-height: 140px; max-width: 140px; }
	.hero--card { max-width: 107px; }
	.in-left { display: none; }
	.in-top { display: block; margin-left: 35px; }

	.card-benefits { grid-template-columns: auto; }
	.card-benefit { display: block; height: calc(100% - 50px); margin: 0 auto 30px; max-width: 335px; width: 100%; }
	.card-benefit--inner { height: auto; }
	.card-benefit--content { height: auto; }

	.mid { background-image: url(../deltareserve/img/home-mid-sm.jpg?v=0); }

	.membership-feature--inner { display: block; }
	.membership-feature--image img { margin-bottom: 40px; }
	.membership-feature--headline { text-align: center; }

	.quick-steps--content { gap: 60px; grid-template-columns: auto; }
	.quick-steps--content::after { height: 100%; right: 0; width: 2px; }

	/* Uncoveryour benefits */
	.more-offers--inner { gap: 30px; grid-template-columns: auto; }

	/* Setup & Payments page */
	.card-features--inner { grid-template-columns: none; margin: 0 auto; max-width: 600px; }
	.card-features--item { display: grid; gap: 24px; grid-template-columns: auto auto; justify-content: flex-start; }

	/* Components */
	.header--inner { background-position: 100% 135%; background-size: 40%; padding-top: 80px; }
	.ob-content, .ob-detail-content { background-color: transparent; border: 0; padding: 0; box-shadow: initial; }
	.ob-col h3 { border-left: 0; border-right: 0; background: transparent; }

	/* Not a member */
	.not-a-member { display: flex; flex-flow: column; gap: 32px; }
	.not-a-member--headline { font-size: 2.063rem; font-weight: var(--font-weight-semibold); line-height: 1.75rem; }

	.footer--airport-tracker-media svg { height: auto !important; width: 200% !important; }
	.footer--tagline { background-image: url(../deltareserve/img/footer-sm.jpg?v=0); }
	.footer--tagline-logo { max-width: 240px; }
	.footer--links { gap: 0; grid-template-columns: none; width: 90%; }
	.footer--link { padding-block: 15px; }
	.footer--link:not(:first-child)::before { display: block; height: 1px; margin-bottom: 15px; margin-right: 0; width: 100%; position: absolute; top: 0; }
}