/**********************************************************
// Footer >> Main
**********************************************************/
.Footer {
	padding: 0 var(--20px);
	background: var(--Color-Dark-Gray);
	color: var(--Color-White);
	position: relative;
	}

.Footer-Inner {
	margin: auto;
	width: 100%;
	max-width: var(--1280px);
	position: relative;
	z-index: 50;
	}

/**********************************************************
// Footer >> Background
**********************************************************/
.Footer-BG {
	overflow: hidden;
	position: absolute;
	z-index: 10;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
	}

.Footer-BG:after {
    padding-bottom: 150%;
    content: '';
    display: block;
	}

.Footer-BG img {
	width: 100%;
	height: 100%;
	object-fit: cover;
    object-position: center center;
	}

/**********************************************************
// Footer >> Top
**********************************************************/
.Footer-Top {
	padding: var(--30px) 0;
	width: 100%;
	display: flex;
	align-items: center;
	gap: var(--30px);
	}

.Footer-Top-Left {
	margin: 0;
	width: 33%;
	}

.Footer-Top-Right {
	margin-left: auto;
	flex: 1;
	display: flex;
	align-items: flex-start;
	gap: var(--30px);
	}

.Footer-Top-Section {
	margin: 0 auto;
	width: 50%;
	max-width: var(--300px);
	}

.Footer-Top-Section h2 {
	margin-bottom: var(--10px);
	padding-bottom: var(--5px);
	line-height: 1.3em;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: var(--1px);
	font-weight: 700;
	font-size: var(--24px);
	border-bottom: var(--1px) dashed rgba(255, 255, 255, 0.15);
	}

/**********************************************************
// Footer >> Logo
**********************************************************/
.Footer-Logo {
	margin: auto;
	text-align: center;
	line-height: 0;
	font-size: 0;
	}

.Footer-Logo img {
	width: auto;
	height: auto;
	max-height: 8.125rem;
	}

/**********************************************************
// Footer >> Social
**********************************************************/
.Footer-Social {
	margin: var(--20px) auto 0 auto;
	text-align: center;
	}

.Footer-Social li {
	display: inline-block;
	vertical-align: top;
	}

.Footer-Social li a {
	width: var(--40px);
	height: var(--40px);
	border-radius: 100%;
	background: transparent;
	color: var(--Color-White);
	font-size: var(--24px);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition-property: background, color;
	transition-duration: 0.2s;
	transition-timing-function: ease-in-out;
	}

.Footer-Social li a:hover,
.Footer-Social li a:focus {
	background: var(--Color-Red);
	color: var(--Color-White);
	}

/**********************************************************
// Footer >> Hours
**********************************************************/
.Footer-Hours-Table {
	margin: auto;
	width: 100%;
	max-width: 13.75rem;
	display: table;
	}

.Footer-Hours-Row { display: table-row; }

.Footer-Hours-Row span {
	padding: var(--5px) 0;
	display: table-cell;
	}

.Footer-Hours-Row span:first-child {
	width: var(--50px);
	text-transform: uppercase;
	letter-spacing: var(--1px);
	font-family: monospace;
	}

/**********************************************************
// Footer >> Contact
**********************************************************/
.Footer-Contact-Info {
	margin: var(--15px) auto;
	padding: var(--10px) var(--20px);
	width: 100%;
	max-width: 15.625rem;
	border-radius: var(--30px);
	background: transparent;
	color: var(--Color-White);
	display: flex;
	align-items: center;
	gap: var(--10px);
	transition-property: background, color;
	transition-duration: 0.2s;
	transition-timing-function: ease-in-out;
	}

.Footer-Contact-Info > i {
	margin: 0;
	width: var(--50px);
	text-align: center;
	font-size: var(--30px);
	}

.Footer-Contact-Info > span {
	line-height: 1.3em;
	flex: 1;
	font-size: var(--16px);
	display: inline-block;
	}

a.Footer-Contact-Info:hover,
a.Footer-Contact-Info:focus {
	background: var(--Color-Red);
	color: var(--Color-White);
	}

/**********************************************************
// Footer >> Meta
**********************************************************/
.Footer-Meta {
	padding: var(--20px) 0;
	line-height: 1.5em;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: var(--1px);
	font-weight: 600;
	font-size: var(--12px);
	border-top: var(--1px) dashed rgba(255, 255, 255, 0.15);
	}

.Footer-Meta a {
	transition: 0.2s color ease-in-out;
	color: var(--Color-White);
	}

.Footer-Meta a:hover,
.Footer-Meta a:focus { color: var(--Color-Red); }

/**********************************************************
// Media Queries
**********************************************************/
@media /* 1024px */
all and (max-width: 64rem),
all and (max-device-width: 64rem)
{
	.Footer-Top {
		flex-direction: column;
		}

	.Footer-Top-Left {
		margin: auto;
		width: 100%;
		}

	.Footer-Top-Right {
		margin: auto;
		width: 100%;
		flex-direction: column-reverse;
		}

	.Footer-Top-Section { width: 100%; }
}

@media /* 768px */
all and (max-width: 48rem),
all and (max-device-width: 48rem)
{

}
