.social
{
	display: flex;
	gap: 15px;
	justify-content: center;
	padding: var(--section-padding) var(--central-padding);
}

.social a
{
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;

	transition: background 0.2s linear;
}

.social a > img
{
	transition: filter 0.2s linear;
	filter: brightness(1000%);
}

.social .facebook
{
	background: #3a5795;
}

.social .instagram
{
	background: #754c24;
}

.siteFooter .has-grey-background-color
{
	color: #ccc;
	padding: var(--section-padding) var(--central-padding);
}

.siteFooter h2
{
	font-size: 1em;
}

.siteFooter a:is(:not(.button))
{
	color: inherit;
	text-decoration: none;
}

.siteFooter .copyright
{
	text-align: center;
	padding-top: var(--section-padding);
	grid-area: copy;
}

#productsMenu
{
	grid-area: products;
}

.siteFooter dl + .button
{
	margin-top: 20px;
}

#productsMenu > ul
{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 0 20px;
}

.siteFooter .contact
{
	grid-area: contact;
}

@media (min-width: 600px)
{
	.siteFooter .has-grey-background-color
	{
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0 30px;
		grid-template-areas: "products contact" "products info" "products service" "accept copy"
	}
}

@media (min-width: 900px)
{
	.siteFooter .has-grey-background-color
	{
		grid-template-columns: 1fr 1fr 1fr;
		grid-template-areas: "products info contact" "products servce accept" "copy copy copy";
	}
}

@media (min-width: 1100px)
{
	.siteFooter .has-grey-background-color
	{
		grid-template-columns: 1fr 1fr 1fr 1fr;
		grid-template-areas: "products products info contact" "products products servce accept" "copy copy copy copy";
	}
}

@media (hover: hover)
{
	.siteFooter .social
	{
		gap: 5px;
	}

	.siteFooter a:hover
	{
		text-decoration: underline;
	}

	.siteFooter .social a:not(:hover) > img
	{
		filter: brightness(100%);
	}

	.siteFooter .social a:not(:hover)
	{
		background: transparent;
	}
}
