.rpp-footer {
	background: var(--rpp-color-charcoal);
	color: rgba(255, 255, 255, 0.82);
	padding-top: var(--rpp-space-7);
}

.rpp-footer a {
	color: rgba(255, 255, 255, 0.82);
}

.rpp-footer a:hover {
	color: var(--rpp-color-gold);
}

.rpp-footer__grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1.1fr 1.3fr;
	gap: var(--rpp-space-5);
	padding-bottom: var(--rpp-space-6);
}

.rpp-footer__heading {
	margin: 0 0 var(--rpp-space-3);
	color: var(--rpp-color-inverse);
	font-family: var(--rpp-font-sans);
	font-size: var(--rpp-fs-eyebrow);
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.rpp-footer__place {
	margin: var(--rpp-space-2) 0 var(--rpp-space-3);
	color: rgba(255, 255, 255, 0.7);
}

.rpp-social {
	display: flex;
	gap: 10px;
}

.rpp-social a {
	width: 36px;
	height: 36px;
	display: grid;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 50%;
	color: var(--rpp-color-inverse);
}

.rpp-social a:hover {
	border-color: var(--rpp-color-gold);
	color: var(--rpp-color-gold);
}

.rpp-footer__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 10px;
}

.rpp-footer__contact {
	display: grid;
	gap: 12px;
}

.rpp-footer__contact-item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.rpp-footer__contact-item svg {
	color: var(--rpp-color-gold);
	margin-top: 3px;
}

.rpp-newsletter p {
	margin-bottom: var(--rpp-space-2);
	font-size: var(--rpp-fs-meta);
}

.rpp-newsletter__row {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.rpp-newsletter input[type="email"] {
	width: 100%;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: #161616;
	color: var(--rpp-color-inverse);
	font-family: inherit;
	font-size: 0.9375rem;
}

.rpp-footer__bottom {
	border-top: 1px solid var(--rpp-color-gold);
	padding: var(--rpp-space-3) 0;
	display: flex;
	justify-content: space-between;
	gap: var(--rpp-space-2);
	align-items: center;
	font-size: var(--rpp-fs-meta);
}

.rpp-footer__legal {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
	list-style: none;
	margin: 0;
	padding: 0;
}

@media (max-width: 1100px) {
	.rpp-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 640px) {
	.rpp-footer__grid,
	.rpp-footer__bottom {
		grid-template-columns: 1fr;
		display: grid;
	}

	.rpp-footer__bottom {
		text-align: left;
	}
}
