.sh-footer {
	display: flex;
	flex-direction: column;
	width: 100%;
	padding-top: 4rem;
	padding-bottom: 3.25rem;
	background-color: var(--clr-clam);
}

.sh-footer,
.sh-footer p,
.sh-footer a {
	font-size: 1rem !important;
	line-height: 1.5em !important;
}

.sh-footer__inner {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: var(--cw-lg);
	margin: 0 auto;
}

.sh-footer__widget {
	width: 100%;
	display: flex;
	flex-direction: column;
}

@media only screen and (min-width: 768px) {
	.sh-footer__widget--logo      { order: 1; }
	.sh-footer__widget--contact   { order: 2; }
	.sh-footer__widget--copyright { order: 3; }
	.sh-footer__widget--socials   { order: 4; }

	.sh-footer__widget--logo {
		position: absolute;
		top: 0;
		left: 50%;
		width: auto;
		max-width: 100%;
		transform: translate(-50%, 0);
	}

	.sh-footer__widget--contact,
	.sh-footer__widget--copyright {
		width: 50% !important;
		max-width: 50% !important;
		margin-bottom: 4rem;
	}
	
	.sh-footer__widget--copyright {
		text-align: right;
		align-items: flex-end;
	}
	.sh-footer__widget--copyright .sh-copyright {
		justify-content: flex-end;
	}
	.sh-footer__widget--copyright .sh-copyright__company {
		text-wrap: pretty;
		max-width: 16em;
	}
	.sh-footer__widget--copyright .sh-copyright__links {
		width: 100%;
		justify-content: flex-end;
	}
	

	.sh-footer__widget--socials {
		width: 100%;
		max-width: 100%;
		align-items: center;
	}
	.sh-footer__widget--desc,
	.sh-footer__widget--menu {
		padding-right: 2rem;
	}
}

@media only screen and (max-width: 1239px) and (min-width: 768px) {
	.sh-footer__widget--logo      { order: 1; }
	.sh-footer__widget--contact   { order: 2; }
	.sh-footer__widget--socials   { order: 3; }
	.sh-footer__widget--copyright { order: 4; }
	
	.sh-footer__widget--logo {
		position: relative;
		width: 100%;
		max-width: 100%;
		transform: none;
		top: unset;
		left: unset;
		justify-content: center;
		align-items: center;
		margin-bottom: 4rem;
	}
	.sh-footer__widget--contact,
	.sh-footer__widget--copyright {
		width: 40% !important;
		max-width: 40% !important;
		margin-bottom: 0;
	}
	
	.sh-footer__widget--socials {
		width: 20% !important;
		max-width: 20% !important;
		margin-bottom: 0;
	}
}

@media only screen and (max-width: 767px) {
	.sh-footer {
		padding-bottom: 2rem;
	}
	.sh-footer__widget {
		align-items: center !important;
		text-align: center !important;
		justify-content: center !important;
	}
	.sh-footer__widget:not(.sh-footer__widget--logo):not(.sh-footer__widget--socials) {
		padding-top: 2rem;
		margin-top: 2rem;
		border-top: thin solid rgba(0, 0, 0, .15);
	}
	.sh-footer__widget--logo {
		order: -3;
	}
	.sh-footer__widget--socials {
		order: -2;
		padding-top: 2rem;
	}
	.sh-footer__widget--contact {
		order: -1;
	}
	.sh-copyright {
		justify-content: center !important;
	}
}

/* ===========================================
Logo
=========================================== */

.sh-footer__logo {
	width: 26rem;
	max-width: 100%;
	height: auto;
	display: inline-block;
	vertical-align: top;
	overflow: visible !important;
	fill: var(--clr-mineral);
}

@media only screen and (min-width: 1240px) {
	.sh-footer__logo {
		margin-top: .35rem;
	}
}

/* ===========================================
Widget Titles
=========================================== */

footer .sh-footer__title {
	font-size: var(--fs-1);
	font-weight: 600;
	color: var(--clr-black);
}

/* ===========================================
Footer Links
=========================================== */

.site-footer a {
	color: var(--clr-black);
    background-image: linear-gradient(var(--clr-black), var(--clr-black)) !important;
	background-position: 0 90% !important;
    background-size: 0% 1px !important;
}

.site-footer a:is(:hover,:focus-visible) {
	color: var(--clr-black);
    background-size: 100% 1px !important;
}

/* ===========================================
Nav Menus
=========================================== */

footer ul:not(.sh-socials)>li:not(:last-child) {
	margin-bottom: .4em !important;
}

footer ul:not(.sh-socials)>li a:not(:hover) {
	color: var(--clr-black);
}

/* ===========================================
   Contact
=========================================== */

.sh-footer__widget--contact {
	align-items: flex-start;
}

/* ===========================================
   Socials
=========================================== */

footer .sh-socials__link {
	border-color: var(--clr-mineral);
	background-image: none !important;
}

footer .sh-socials__icon {
	fill: var(--clr-mineral);
}

footer .sh-socials__link:is(:hover,:focus-visible) {
	border-color: var(--clr-mineral);
	background-color: var(--clr-mineral);
}

footer .sh-socials__link:is(:hover,:focus-visible) .sh-socials__icon {
	fill: var(--clr-clam);
}

/* ===========================================
Copyright
=========================================== */

.sh-copyright,
.sh-copyright__links {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.sh-copyright a:not(:hover) {
	color: var(--clr-black);
}

.sh-copyright__sep {
	display: inline-block;
	margin: -.15em .5em 0;
	height: 1em;
	border-right: thin solid var(--clr-black);
}

@media only screen and (max-width: 1023px) {
	.sh-copyright__credits {
		width: 100%;
		margin-top: .35rem;
	}

	.sh-copyright__links+.sh-copyright__sep {
		display: none;
	}
}

@media only screen and (max-width: 767px) {
	.sh-copyright__company {
		width: 100%;
	}
	.sh-copyright__company+.sh-copyright__sep {
		display: none;
	}
}