/*
 * Global site footer — matched to https://frankmoney.ca/
 * Dark charcoal bar with brand, link columns, disclaimer and legal links.
 */

body.frank .site-footer,
body.frank .elementor-location-footer .site-footer {
	background: #26282b;
	color: #f6f0e1;
	--padding-top: clamp(3rem, 6vw, 4rem);
	--padding-right: 0px;
	--padding-bottom: 2rem;
	--padding-left: 0px;
}

body.frank .footer-wrap {
	--width: min(1120px, calc(100% - 64px));
	--margin-left: auto;
	--margin-right: auto;
}

body.frank .footer-cols {
	display: grid;
	grid-template-columns: 1.6fr 1fr 1fr 1fr;
	--row-gap: 32px;
	--column-gap: 32px;
	--margin-bottom: 40px;
}

body.frank .site-footer :is(.footer-mark:where(:not(.elementor-widget)), .footer-mark:where(.elementor-widget) :where(a)) {
	display: inline-flex;
	color: #f6f0e1;
	text-decoration: none;
	line-height: 0;
}

body.frank .site-footer :is(.footer-mark:where(:not(.elementor-widget)), .footer-mark:where(.elementor-widget) :where(a)) img {
	height: 34px;
	width: auto;
	display: block;
	filter: brightness(0) invert(1);
}

body.frank .footer-tagline,
body.frank .footer-tagline-wrap p {
	font-size: 16px;
	line-height: 1.62;
	color: #9c948a;
	margin: 16px 0 0;
	max-width: 30ch;
}

body.frank .site-footer :is(.footer-heading:where(:not(.elementor-widget)), .footer-heading:where(.elementor-widget) :where(.elementor-heading-title)) {
	font-family: var(--frank-font-body);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: #9c948a;
	margin: 0 0 14px;
	line-height: 1.62;
}

body.frank .footer-links,
body.frank .footer-links-wrap ul {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 15px;
	line-height: 2;
}

body.frank .footer-links a,
body.frank .footer-links-wrap a {
	color: #f6f0e1;
	text-decoration: none;
}

body.frank .footer-links a:hover,
body.frank .footer-links-wrap a:hover {
	color: #f3b33c;
}

body.frank .footer-legal {
	border-top: 1px solid #3d3f42;
	--padding-top: 24px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	font-size: 13px;
	line-height: 1.7;
	color: #9c948a;
}

body.frank .footer-disclaimer p,
body.frank .footer-legal .footer-disclaimer p {
	margin: 0 0 16px;
	color: #9c948a;
	font-size: 13px;
	line-height: 1.7;
}

body.frank .footer-copy,
body.frank .footer-copy-wrap p {
	margin: 0;
	font-size: 13px;
	line-height: 1.7;
	color: #9c948a;
}

body.frank .footer-legal a,
body.frank .footer-copy a {
	color: #c9b9a6;
	text-decoration: underline;
	text-underline-offset: 3px;
}

body.frank .footer-legal a:hover,
body.frank .footer-copy a:hover {
	color: #f3b33c;
}

@media (max-width: 900px) {
	body.frank .footer-cols {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 560px) {
	body.frank .footer-wrap {
		--width: min(1120px, calc(100% - 40px));
	}

	body.frank .footer-cols {
		grid-template-columns: 1fr;
		--row-gap: 28px;
		--column-gap: 28px;
	}
}
