/*
 * Footer CSS: quiet studio footer and copyright area.
 */

.sl-site-footer {
	background: #141311;
	color: #fff;
}

.sl-site-footer p,
.sl-site-footer a {
	color: rgba(255, 255, 255, 0.72);
}

.sl-footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 0.8fr 0.8fr;
	gap: 60px;
	padding: 82px 0;
}

.sl-footer-logo {
	margin-bottom: 22px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.sl-site-footer a {
	display: block;
	margin-bottom: 10px;
	transition: color 180ms ease;
}

.sl-site-footer a:hover {
	color: #fff;
}

.sl-footer-menu {
	display: grid;
	gap: 8px;
}

.sl-footer-bottom {
	padding: 20px 24px;
	text-align: center;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.sl-footer-bottom p {
	margin: 0;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/*
 * Elementor footer page styling.
 * The content is editable in Pages > Studio Lune Footer, while these classes
 * keep the same quiet black studio footer mood on the front end.
 */

.sl-site-footer--elementor {
	background: #141311;
}

.sl-site-footer--elementor .elementor {
	background: transparent;
}

.sl-el-footer-main {
	background: #141311;
	color: #fff;
	padding: 86px 11vw 78px;
	width: 100%;
}

.sl-el-footer-main .elementor-container {
	display: grid;
	grid-template-columns: minmax(260px, 1.35fr) minmax(180px, 0.8fr) minmax(170px, 0.8fr);
	gap: clamp(34px, 4vw, 58px);
	width: 100%;
	max-width: 1480px;
	margin: 0 auto;
}

.sl-el-footer-main .elementor-column {
	width: auto !important;
	min-width: 0;
}

.sl-el-footer-main .elementor-widget-wrap {
	align-content: flex-start;
}

.sl-el-footer-main .elementor-heading-title {
	color: #fff !important;
	font-family: var(--sl-font-sans);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.18em;
	line-height: 1.35;
	text-transform: uppercase;
}

.sl-el-footer-main .sl-el-footer-kicker .elementor-heading-title {
	color: rgba(255, 255, 255, 0.92) !important;
	font-family: var(--sl-font-serif);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.14em;
}

.sl-el-footer-main .elementor-widget-text-editor,
.sl-el-footer-main .elementor-widget-text-editor p,
.sl-el-footer-main .elementor-widget-text-editor a {
	color: rgba(255, 255, 255, 0.72);
	font-size: 18px;
	line-height: 1.75;
}

.sl-el-footer-main .elementor-widget-text-editor p {
	margin: 0 0 12px;
}

.sl-el-footer-main a {
	color: rgba(255, 255, 255, 0.74);
	text-decoration: none;
	transition: color 180ms ease;
}

.sl-el-footer-main a:hover {
	color: #fff;
}

.sl-el-footer-nav .elementor-button-wrapper {
	text-align: left;
}

.sl-el-footer-nav .elementor-button {
	display: inline-block;
	padding: 0;
	background: transparent !important;
	color: rgba(255, 255, 255, 0.74) !important;
	border: 0;
	border-radius: 0;
	font-family: var(--sl-font-sans);
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.8;
	text-transform: none;
}

.sl-el-footer-nav .elementor-button-text {
	white-space: nowrap;
}

.sl-el-footer-nav .elementor-button:hover,
.sl-el-footer-nav .elementor-button:focus {
	color: #fff !important;
}

.sl-el-footer-bottom {
	background: #141311;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding: 22px 24px;
	text-align: center;
}

.sl-el-footer-bottom .elementor-widget-text-editor,
.sl-el-footer-bottom .elementor-widget-text-editor p {
	margin: 0;
	color: rgba(255, 255, 255, 0.82);
	font-family: var(--sl-font-sans);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.12em;
	line-height: 1.5;
	text-transform: uppercase;
}

@media (max-width: 900px) {
	.sl-el-footer-main {
		padding: 64px 28px 58px;
	}

	.sl-el-footer-main .elementor-container {
		grid-template-columns: 1fr;
		gap: 34px;
	}
}
