html, body { overflow-x: visible; } /* overriding what's in dg.css, but not sure why it's there */

@font-face {
	font-family: 'NotoSans';
	src: url("../fonts/NotoSansRegular.woff") format("woff");
	font-weight: 400;
}

@font-face{
	font-family: 'NotoSans';
	src: url("../fonts/NotoSansMedium.woff") format("woff");
	font-weight: 500;
}

@font-face{
	font-family: 'NotoSans';
	src: url("../fonts/NotoSansBold.woff") format("woff");
	font-weight: 700;
}

@font-face {
	font-family: 'Biennale';
	src: url('../fonts/BiennaleSemiBold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-stretch: normal;
}

@font-face {
	font-family: 'Biennale';
	src: url('../fonts/BiennaleBold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-stretch: normal;
}

:root {
	--color-beige: #ebe6df;
	--color-black: #000;
	--color-black-light: #2D2926;
	--color-blue-darker: #00263a;
	--color-gray-lighter: #f7f7f7;
	--color-gray-light: #dbe2e9;
	--color-gray: #767676;
	--color-green: #006d68;
	--color-pink: #d25873;
	--color-accessibility-pink: #B5304D;
	--color-transparent: rgba(0, 0, 0, 0);
	--font-primary: 'NotoSans', sans-serif;
	--font-secondary: 'Biennale', 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;
}

body {
	background: linear-gradient(0deg, rgba(247,247,247,1) 8%, rgba(0, 38, 58, 1) 9%);
	color: var(--color-black-light);
	font-size: calc(1.5rem * .625);
	font-family: var(--font-primary);
	font-weight: var(--font-weight-medium);
	line-height: 1.4;
	margin: 0; 
}

h1 {
	color: var(--color-white);
	font-family: var(--font-secondary);
	font-size: clamp(calc(3.9rem * .625), 4.5vw, calc(6rem * .625));
	font-weight: var(--font-weight-bold);
	line-height: 1.1;
}

h2 {
	font-family: var(--font-secondary);
	font-size: calc(3.3rem * .625);
	font-weight: var(--font-weight-semibold);
	line-height: 1.2;
}

h3 {
	font-family: var(--font-secondary);
	font-size: calc(2.4rem * .625);
	font-weight: var(--font-weight-semibold);
}

h4 {
	font-size: calc(1.8rem * .625);
	font-weight: var(--font-weight-medium);
}

@layer normalize {
	a {
		color: var(--color-black-light);
		text-decoration: none;
	}
	
	a:focus,
	a:hover {
		color: var(--color-black-light);
		text-decoration: underline;
	}
	
	strong,
	.strong {
		font-weight: var(--font-weight-bold);
	}
}

[hidden]{
	/* display: none; */
	visibility: hidden;
}

/* Global */
.section-large {
	max-width: 1250px;
	width: 100%;
}

.bg-light-gray-color {
	background-color: var(--color-gray-lighter);
}

.bg-light-gray-color-opacity {
	background-color:rgba(219, 226, 233, .05);
}

.bg-gray-color {
	background-color: var(--color-gray-light);
}

.bg-beige-color {
	background-color: var(--color-beige);
}

.arrow-right {
	position: relative;
	padding-block: 0.75rem;
}

.arrow-right::after {
	background-image: url(../hiltonaspire/img/icon-arrow-pink.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);
	font-size: calc(1.5rem * .625);
	font-weight: var(--font-weight-bold);
	justify-content: center;
	line-height: 1.2;
	max-width: 100%;
	padding: 10px 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-accessibility-pink);
	border: 1px solid var(--color-accessibility-pink);
	color: var(--color-white);
	min-width: 105px;
	padding: 12.5px 25px;
}

.btn--primary:active {
	border-color: var(--color-black-light);
	color: var(--color-white);
	text-decoration: none;
}

.btn--primary:focus,
.btn--primary:hover {
	background-color: var(--color-green);
	border-color: var(--color-green);
	color: var(--color-white);
	text-decoration: none;
}

.btn--secondary {
	background: var(--color-transparent);
	border: 1px solid var(--color-accessibility-pink);
	color: var(--color-accessibility-pink);
	min-width: 105px;
	padding: 12.5px 25px;
}

.btn--secondary:active {
	color: var(--color-white);
	border-color: var(--color-blue-darker);
	text-decoration: none;
}

.btn--secondary:focus,
.btn--secondary:hover {
	background-color: var(--color-accessibility-pink);
	border-color: var(--color-accessibility-pink);
	color: var(--color-white);
	text-decoration: none;
}

.border-horizontal {
	border-bottom: 25px solid var(--color-white);
	border-top: 25px solid var(--color-white);
}

.border-horizontal-bottom {
	border-bottom: 25px solid var(--color-white);
}

.eyebrow {
	color: var(--color-white);
	font-size: calc(1.2rem * .625);
	font-weight: var(--font-weight-default);
	font-family: var(--font-primary);
	text-transform: uppercase;
	display: block;
}	

.flag {
	border: 1px solid var(--color-pink);
	color: var(--color-white);
	font-size: calc(1.2rem * .625);
	font-weight: var(--font-weight-default);
	line-height: 1.2;
	margin: 0 15px;
	padding: 0 5px;
	text-transform: uppercase;
}

.location {
	color: var(--color-white);
	font-size: calc(1.3rem * .625);
	font-weight: var(--font-weight-default);
	line-height: 1.2;
	margin-right: 10px;
	text-align: right;
}

.location::before {
	background-image: url(../hiltonaspire/img/icon-location.svg?v=0);
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: inline-block;
	height: 13px;
	margin-right: 5px;
	width: 10px;
}

.show-mobile { 
	display: none; 
}

.gs_reveal {
	opacity: 0;
	visibility: hidden;
	will-change: transform, opacity;

	@media (prefers-reduced-motion) {
		opacity: 1;
		visibility: visible;
	}
}


.whiteBG { padding: 10px 0 30px 0; }
.not-a-member { margin-bottom: 0; }
.nam-text { font-family: var(--font-secondary); color: var(--color-black-light); font-weight: var(--font-weight-default); }

/* Navigation */
.card-nav--container {
	position: sticky;
	top: 64px;
	z-index: 3;
}

.card-nav {
	align-items: center;
	background-color: var(--color-gray-light);
	border-radius: 5px;
	height: 46px;
	margin-top: 10px;
	padding: 0 15px 0 5px;
	width: 90%;
}

.cn-card { 
	background-image: url(../hiltonaspire/img/card-nav.png?v=1);
	color: var(--color-black-light);
	font-family: var(--font-primary-amex);
	font-size: calc(1.4rem * .625);
	font-weight: var(--font-weight-default);
	height: 45px;
}

.cn-card:active,
.cn-card:focus,
.cn-card:hover {
	color: var(--color-black-light);
	text-decoration: none;
}

.nav-container { 
	display: flex;
	flex: 1;
	flex-direction: row;
	justify-content: space-between;
	transform: translateX(-10px);
	max-width: 605px;
}

	.nav-link-applyNow { position: absolute !important; right: -105px; }

.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-black); 
	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-black); 
	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-black); 
	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; 
}

.nav-link:focus,
.nav-link:hover,
.cn-explore:focus,
.cn-explore:hover,
.nav-close:focus,
.nav-close:hover {
	color: inherit;
	text-decoration: none;
}

.explore-links {
	border-radius: 5px;
	max-width: 355px;
	transform: translateY(0);
	z-index: -1;
	width: 300px;
	display: none;
}

.explore-links-open {
	border: 0;
	transform: translateY(50px);
	display: block;
}

.explore-link:nth-child(-n+4) {
	background-color: var(--color-gray-light);
	background-image: none;
	color: var(--color-black-light);
	font-family: var(--font-primary);
	font-size: calc(1.5rem * .625);
	position: relative;
}

.explore-link:nth-child(-n+4)::after {
	background-image: url(../hiltonaspire/img/icon-arrow-pink.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-size: calc(1.3rem * .625);
	height: 44px;
}

.join-now {
	text-align: center;
	padding: .7em;
	border-radius: 0 0 5px 5px;
	border-top: 1px solid var(--color-blue-darker);
	position: relative;
}

	.join-now a { text-decoration: underline;}
	
	.join-now-close { position: absolute; width: 40px; height: 40px; border: none; cursor: pointer; right: 5px; top: 2px; background: none; font-size: 2em;}

	.card-nav-then-banner { border-radius: 5px 5px 0 0; position: relative; z-index: 5; }
	
	@media all and (max-width: 500px) {
		.join-now { font-size: .9em; text-align: left; padding: 1em 0 1em .7em; }
	}

/* Homepage */
.hero {
	margin: 55px 0;
	padding: 40px 25px;
	position: relative;
	background-image: url(../hiltonaspire/img/hero-home-dt-glow.jpg?v=0);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.hero--headline {
	padding-left: 5px;
	transform: translateY(-68px);
}

.hero--image {
	height: auto;
	max-width: 350px;
	width: 100%;
}

.hero--text {
	font-size: clamp(calc(1.8rem * .625), 1.5vw, calc(2.2rem * .625));
	line-height: 1.3;
	margin-left: 36px;
	max-width: 277px;
	text-wrap: balance;
	width: 100%;
}

.hero--container {
	aspect-ratio: 1200/550;
	background-image: url(../hiltonaspire/img/hero-home-dt.jpg?v=0);
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-bottom: 6px;
}

.hero--content {
	padding-bottom: 20px;
}

.card-benefits {
	display: grid;
	gap: clamp(10px,2.7vw,40px);
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 130px;
}

.card-benefit {
	cursor: pointer;
	position: relative;
}

.card-benefit:focus,
.card-benefit:hover {
	text-decoration: none;
}

.card-benefit:focus::before,
.card-benefit:hover::before {
	background-repeat: no-repeat;
	content: '';
	display: inline-block;
	position: absolute;
	transition: all .35s ease-in-out;
	z-index: -1;
}

.card-benefit:first-child::before, .card-benefit:first-child::before { background-image: url(../hiltonaspire/img/card-benefit-1-glow.jpg?v=0); }
.card-benefit:nth-child(2)::before, .card-benefit:nth-child(2)::before { background-image: url(../hiltonaspire/img/card-benefit-2-glow.jpg?v=0); }
.card-benefit:nth-child(3)::before, .card-benefit:nth-child(3)::before { background-image: url(../hiltonaspire/img/card-benefit-3-glow.jpg?v=0); }

.card-benefit:focus .card-benefit--footer,
.card-benefit:hover .card-benefit--footer {
	background-color: var(--color-gray-light);
	transition: color .2s, background-color .2s;
}

.card-benefit--container { 
	background-color: var(--color-white);
	border-radius: 10px;
	border: 1px solid var(--color-white);
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	text-align: center;
	text-decoration: none;
}

.card-benefit--image {
	margin-bottom: 25px;
	padding-bottom: 92%;
	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-blue-darker);
	font-family: var(--font-secondary);
	font-size: calc(2.4rem * .625);
	font-weight: var(--font-weight-semibold);
	line-height: 1.1;
	margin: 0 auto 25px;
	max-width: 245px;
	padding: 0 8px;
	width: 100%;
}

.card-benefit--footer {
	background-color: var(--color-gray-lighter);
	border-top: 1px solid rgba(0, 38, 58, 0.35);
	color: var(--color-blue-darker);
	padding: 12px;
}

.fts-bar {
	/* background-image: url(../hiltonaspire/img/pattern-fts.svg?v=0); */
	border-top: 1px solid rgba(38, 70, 88, 1);
	border-bottom: 1px solid rgba(38, 70, 88, 1);
	height: 118px;
	width: 100%;
}

.fts-bar .active { display: block; }

.membership-feature {
	padding: 80px 0 100px;
	/* background-image: url(../hiltonaspire/img/graphic-ribbon-dt.svg?v=0); */
	background-repeat: no-repeat;
	background-position: center bottom;
}

.membership-feature--container {
	color: var(--color-blue-darker);
	display: grid;
	gap: 80px;
	grid-template-columns: repeat(2, 1fr);
	margin: 0 auto;
	max-width: 790px;
	width: 100%;
}

.membership-feature--alt .membership-feature--container {
	max-width: 945px;
}

.membership-feature--content {
	align-self: center;
}

.membership-feature--image img {
	height: auto;
	margin: 0 auto;
	max-width: 355px;
	width: 100%;
}

.membership-feature--headline {
	margin-bottom: 35px;
}

.membership-feature--text {
	margin-bottom: 25px;
}

.membership-feature--text p:not(:last-child) {
	margin-bottom: 10px;
}

.quick-steps {
	margin: 0;
	padding-top: 40px;
	position: relative;
	text-align: center;
	width: 100%;
}

.quick-steps::after,
.quick-steps::before {
	background-color: rgba(0, 38, 58, .2);
	content: '';
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
}

.quick-steps::after {
	bottom: 0;
	height: 90%;
	width: 2px;
}

.quick-steps::before {
	height: 2px;
	max-width: 300px;
	width: 100%;
}

.quick-step {
	background-color: var(--color-gray-light);
	border: 2px solid var(--color-white);
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
	color: var(--color-black-light);
	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(../hiltonaspire/img/icon-external-link.svg?v=0);
	height: 16px;
	opacity: .6;
	right: 10px;
	top: 10px;
	width: 16px;
}

.quick-step::after {
	background-image: url(../hiltonaspire/img/icon-check-circle.svg?v=0);
	bottom: -24px;
	height: 48px;
	left: 0;
	margin: 0 auto;
	right: 0;
	width: 48px;
}

.quick-step h3 {
	font-family: var(--font-primary);
	font-size: calc(1.5rem * .625);
	font-weight: var(--font-weight-bold);
	margin-bottom: 10px;
}

.quick-step:not(:last-child) {
	margin-bottom: 65px;
}

.quick-step:focus,
.quick-step:hover {
	box-shadow: 0 13px 26px 0 rgb(0 0 0 / 20%);
	color: inherit;
	text-decoration: none;
	transform: translateY(-10px);
}

@media (prefers-reduced-motion) {
	.quick-step:hover,
	.quick-step:focus {
		transform: none;
	}
}

/* Travel Benefits page */
.offers {
	align-items: center;
	/* background-image: url(../hiltonaspire/img/graphic-ribbon-blue.svg?v=0);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover; */
	border-left: 25px solid var(--color-white);
	border-right: 25px solid var(--color-white);
	display: flex;
	justify-content: center;
	margin: 0 auto;
	max-width: 1200px;
	padding: 90px 10px 60px;
	width: 100%;
}

.offers--container {
	display: grid;
	gap: 25px;
	grid-auto-flow: dense;
	grid-template-columns: repeat(2, 1fr);
	margin: 0 auto;
	max-width: 745px;
	width: 100%;
}

.offers--headline {
	color: var(--color-blue-darker);
}

/* Hilton Honors Points page */
.rewards {
	display: grid;
	gap: 125px;
	grid-template-columns: repeat(2, 1fr);
	margin: 80px 0;
}

.rewards--img-container {
	background-size: cover;
	max-width: 587px;
	position: relative;
	width: 100%;
}

.rewards--img-container::before {
	background-image: url(../hiltonaspire/img/rewards-glow.jpg?v=0);
	background-repeat: no-repeat;
	content: '';
	display: inline-block;
	position: absolute;
	z-index: -1;
}

.rewards--img {
	aspect-ratio: 587/697;;
	background-image: url(../hiltonaspire/img/rewards.jpg?v=0);
	background-repeat: no-repeat;
	background-size: contain;
	border: 1px solid rgba(255, 255, 255, 0.35);
}

.rewards--img-container .location {
	margin-top: 6px;
}

.rewards--text {
	background: var(--color-blue-darker);
	border-radius: 31px;
	border: 1px solid rgba(219, 226, 233, .3);
	color: var(--color-white);
	padding: 40px;
	text-align: center;
}

.rewards--item:not(:first-of-type) {
	padding-top: 25px;
}

.rewards--item:not(:last-child) {
	border-bottom: 1px solid rgba(219, 226, 233, .3);
	padding-bottom: 35px;
}

.rewards--item h2 {
	font-size: calc(5.5rem * .625);
	font-weight: var(--font-weight-bold);
	margin-bottom: 20px;
}

.rewards--item h2 .text-small {
	font-size: calc(3.3rem * .625)
}

.rewards--item h2 .text-smaller {
	display: block;
	font-size: calc(1.8rem * .625);
	font-weight: var(--font-weight-medium);
}

.points--container img {
	height: auto;
	margin: 0 auto 40px;
	max-width: 180px;
	width: 100%;
}

.points--container p {
	margin-bottom: 10px;
	text-align: left;
}

.points--container p:last-child {
	margin-bottom: 40px;
}

.track-points--container {
	background: var(--color-white);
	border-bottom: 1px solid var(--color-pink);
	border-radius: 10px;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
	padding: 25px 15px;
	text-align: left;
}

.track-points--container h3 {
	border-bottom: 1px solid var(--color-gray-light);
	font-size: calc(1.8rem * .625);
	font-weight: var(--font-weight-medium);
	margin-bottom: 15px;
	padding-bottom: 15px;
}

/* Payments and protections page */
.card-features {
	color: var(--color-white);
	padding: 80px 0;
}

.card-features--container {
	display: grid;
	gap: 40px;
	grid-template-columns: repeat(3, 1fr);
}

.card-features--headline {
	margin-bottom: 40px;
	text-align: center;
}

.card-features--item img {
	height: auto;
	margin-bottom: 8px;
	max-width: 42px;
	width: 100%;
}

.card-features--item h3 {
	font-size: calc(1.8rem * .625);
	font-weight: var(--font-weight-medium);
	margin-bottom: 15px;
}

.card-features--item p:not(:last-child){
	margin-bottom: 10px;
}

.payments-and-benefits .featured-benefit {
	margin: 80px 0;
}

/* Componentes */
.header {
	padding-top: 25px;
	margin-bottom: 80px;
}

.two-columns {
	background-color: var(--color-white);
	border-left: 25px solid var(--color-white);
	border-right: 25px solid var(--color-white);
	display: grid;
	gap: 22px;
	grid-auto-flow: dense;
	grid-template-columns: repeat(2, 1fr);
	margin: 0 auto;
	max-width: 1200px;
	width: 100%;
}

.two-columns-reverse .two-columns--content {
	grid-row: 1;
}

.two-columns--image {
	align-items: flex-end;
	display: flex;
}

.two-columns--image img {
	height: auto;
	max-width: 588px;
	width: 100%;
}

.two-columns--content {
	padding: 80px 50px;
	text-align: center;
}

.two-columns--content h2 {
	color: var(--color-blue-darker);
	margin-bottom: 25px;
}

.two-columns--description {
	text-align: left;
}

.two-columns--description p {
	margin-bottom: 30px;
}

.featured-benefit {
	border: 0;
	display: grid;
	gap: 125px;
	grid-template-columns: repeat(2, 1fr);
}

.featured-benefit-reverse .fb-featured1 {
	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: 587px;
	padding: 0;
	position: relative;
	width: 100%;
}

.fb-img-glow::before { 
	background-repeat: no-repeat;
	content: ''; 
	display: inline-block; 
	position: absolute; 
	z-index: -1; 
}

.fb-img-glow1::before { background-image: url(../hiltonaspire/img/benefits-featured-1-glow.jpg?v=0); }
.fb-img-glow2::before { background-image: url(../hiltonaspire/img/benefits-featured-2-glow.jpg?v=0); }
.fb-img-glow3::before { background-image: url(../hiltonaspire/img/benefits-featured-3-glow.jpg?v=0); }
.fb-img-glow4::before { background-image: url(../hiltonaspire/img/benefits-featured-4-glow.jpg?v=0); }
.fb-img-glow5::before { background-image: url(../hiltonaspire/img/benefits-featured-5-glow.jpg?v=0); }
.fb-img-glow6::before { background-image: url(../hiltonaspire/img/benefits-featured-6-glow.jpg?v=0); }
.fb-img-glow7::before { background-image: url(../hiltonaspire/img/benefits-featured-7-glow.jpg?v=0); }

.fb-featured {
	aspect-ratio: 1/1;
	background-repeat: no-repeat;
	background-size: contain;
	border: 1px solid rgba(255, 255, 255, 0.35);
}

.fb-featured1 { background-image: url(../hiltonaspire/img/benefits-featured-1.jpg?v=0); }
.fb-featured2 { background-image: url(../hiltonaspire/img/benefits-featured-2.jpg?v=0); }
.fb-featured3 { background-image: url(../hiltonaspire/img/benefits-featured-3.jpg?v=0); }
.fb-featured4 { background-image: url(../hiltonaspire/img/benefits-featured-4.jpg?v=0); }
.fb-featured5 { background-image: url(../hiltonaspire/img/benefits-featured-5.jpg?v=0); }
.fb-featured6 { background-image: url(../hiltonaspire/img/benefits-featured-6.jpg?v=0); }
.fb-featured7 { background-image: url(../hiltonaspire/img/benefits-featured-7.jpg?v=0); }

.fb-img .location {
	margin-top: 6px;
}

.fb-text {
	max-width: 400px;
	width: 100%;
}

.fb-text-container {
	color: var(--color-white);
}

.fb-text-container:not(:first-of-type) {
	padding-top: 25px;
}

.fb-text-container:not(:last-child) {
	border-bottom: 1px solid rgba(219, 226, 233, 0.30);
	padding-bottom: 25px;
}

.fb-text-container h3 {
	font-size: calc(1.8rem * .625);
	font-weight: var(--font-weight-medium);
	margin-bottom: 15px;
}

.fb-text-container p:not(:last-child) {
	margin-bottom: 1em;
}

.fb-text-container a,
.fb-text-container a:focus,
.fb-text-container a:hover {
	color: var(--color-white);
}

.fb-head {
	background: none;
	border-radius: 0;
	color: var(--color-white);
	margin: 0 0 30px;
	padding: 0;
}

.fb-title,
.fb-detail {
	box-shadow: none;
	background: none;
	border-bottom: 1px solid rgba(219, 226, 233, 0.3);
}

.fb-title img,
.fb-detail img {
	transform: none;
}

.fb-link,
.fb-summary-heading {
	color: var(--color-white);
	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-white);
	text-decoration: none;
}

.fb-content,
.fb-detail-content {
	background: none;
	color: var(--color-white);
	padding: 0;
}

.fb-content p,
.fb-detail-content p {
	text-wrap: balance;
}

.fb-content p a,
.fb-detail-content p a {
	color: var(--color-white);
	text-decoration: underline;
}

.fb-content p a:focus,
.fb-content p a:hover,
.fb-detail-content p a:focus,
.fb-deetail-content p a:hover {
	color: var(--color-white);
}

.fb-content .arrow-right,
.fb-detail-content .arrow-right {
	display: inline-block;
	margin-bottom: 1em;
	color: #fff;
}

.fb-content .arrow-right:focus,
.fb-content .arrow-right:hover {
	color: var(--color-pink);
}

.fb-title-open img {
    transform: rotate(180deg);
}

.fb-title-open .fb-content {
	padding: 0;
}

.footer {
	margin: 0 auto;
	max-width: 1200px;
	padding: 60px 0 25px;
	width: 90%;
}

.footer--tagline {
	height: auto;
	margin: 0 auto 30px;
	max-width: 250px;
	width: 100%;
}

.footer--links {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, 1fr);
}

.terms {
	max-width: 1200px;
	padding: 26px 0 16px;
}

.terms-link {
	background: none;
	font-size: inherit;
	font-weight: var(--font-weight-medium);
	padding-left: 18px;
	position: relative;
}

.terms-link::before {
	background-image: url(../hiltonaspire/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-accessibility-pink); bottom: 0; content: ''; display: block; height: 4px; position: absolute; width: 100%; }	
	/* .nav-close { margin-right: 15px; } */
	.cn-explore, .nav-close { background-color: var(--color-gray-light); background-image: none; border: 0; padding: 0; position: relative; width: 65px; }
	.cn-explore::after, .nav-close::after { content: ''; background-image: url(../hiltonaspire/img/icon-arrow-accessible-pink.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-accessibility-pink); bottom: 0; content: ''; display: block; height: 4px; position: absolute; width: 100%; }
	.nav-link-arrow { display: none; }

	/* Homepage */
	.card-benefit:focus::before, .card-benefit:hover::before { background-size: contain; height: 130%; right: -15%; top: -10%; width: 130%; }

	/* Hilton Honors Points page */
	.rewards--img-container::before { background-size: contain; height: 130%; right: -15%; top: 0; width: 130%; }

	/* Components */
	.fb-img-glow::before { background-size: contain; height: 130%; right: -15%; top: 0; width: 130%; }
	
}

@media all and (max-width: 1024px) {
	/* Navigation */
	.card-nav { padding: 0 5px; }
	.nav-container { align-items: center; transform: translateX(0);}
	.nav-link { display: none; }
	.explore-close { bottom: 0; height: 40px; margin: auto; }
	.cn-explore { background-color: var(--color-pink); background-image: url(../hiltonaspire/img/icon-arrow-white.svg?v=0); }
	.nav-close { background-color: rgba(210, 88, 115, 0.20); background-image: url(../hiltonaspire/img/icon-arrow-accessible-pink.svg?v=0); background-size: 36%; margin-right: 5px; }
	.cn-explore, .nav-close { background-position: center; background-repeat: no-repeat; border: 1px solid var(--color-pink); border-radius: 3px; height: 44px; width: 50px; }
	.cn-explore span, .nav-close span { height: 1px; position: absolute; overflow: hidden; top: -10px; width: 1px; }

	/* Homepage */
	.hero--headline { transform: translateY(-47px); }

	.card-benefit:focus::before, .card-benefit:hover::before { background-size: cover; height: 120%; right: 0; top: -10%; width: 100%; }

	.quick-step { padding: 16px 10px 40px; }

	/* Travel Benefits page */
	.offers { padding: 90px 60px 60px; }

	/* Hilton Honors Points page */
	.rewards { display: block; margin: 25px 0; }
	.rewards--img-container { margin: 0 auto 25px; max-width: 600px; }
	.rewards--img-container::before { background-size: cover; height: 120%; right: 0; top: -10%; width: 100%; }
	.rewards--text-container { margin: 0 auto; max-width: 600px;  }

	/* Payments and protections page */
	.card-features--container { grid-template-columns: repeat(1, 1fr); margin: 0 auto; max-width: 600px; }
	
	/* Components */
	.two-columns--content { padding: 50px 20px; }

	.featured-benefit { display: block; margin-bottom: 40px; }
	.fb-img { margin: 0 auto; max-width: 600px; }
	.fb-img-glow::before { background-size: cover; height: 120%; right: 0; top: -10%; width: 100%; }
	.fb-text { margin: 0 auto; max-width: 600px; padding: 40px 20px; }
}

@media all and (min-width: 768px) {
	/* Homepage */
	.card-benefit .location { display: none; }
}

@media all and (max-width: 767px) {
	/* Global */
	.btn { margin: 5px 0; min-width: 100%; }
	.show-mobile { display: block; }
	.hide-mobile { display: none; }
	
	/* Homepage */
	.hero { margin-top: 70px; padding: 40px 0;}
	.hero--headline { padding-left: 0; transform: translateY(-93px); }
	.hero--container { aspect-ratio: 365/660; background-image: url(../hiltonaspire/img/hero-home-mb.jpg?v=0); margin-left: 20px; }
	.hero--content { margin: 0 auto; text-align: center; }

	.card-benefits { display: block; margin-bottom: 10px; }
	.card-benefit { display: block; height: calc(100% - 50px); margin: 0 auto 50px; max-width: 335px; width: 100%; }
	.card-benefit--container { height: auto; }
	.card-benefit--content { height: auto; }
	.card-benefit .location { margin-top: 8px; }

	/* Hilton Honors Points page */
	.rewards--img-container { margin: 0 -19px 25px; width: 100vw; }

	.fts-bar { background-size: cover; height: 76px; }

	/* .membership-feature { background-image: url(../hiltonaspire/img/graphic-ribbon-mb.svg?v=0); background-position: center; padding: 80px 0 40px; } */
	.membership-feature--container { display: block; }
	.membership-feature--image { margin-bottom: 40px; }
	.membership-feature--headline { text-align: center; }

	/* Components */
	.header { margin-bottom: 30px; }

	.two-columns { border: 0; display: block; }
	.two-columns-reverse .two-columns--image { grid-row: 1; }
	.two-columns-reverse .two-columns--content { grid-row: 2; }
	.two-columns--image { border-left: 20px solid var(--color-white); border-bottom: 20px solid var(--color-white); }
	.two-columns--content { padding: 50px 20px; }

	.offers { border-right: 0; padding: 40px 20px; }
	.offers--container { display: block; }
	.offers--headline, .offers--text { margin-bottom: 25px; }

	.footer--links { display: block; }
}
