footer.footer {
	background-color: var(--footer-background);
	min-width: var(--min-width);
	color: var(--footer-color);
}
footer.footer .footer-grid {
	display: grid;
	place-content: start stretch;
	border-top: solid 3px var(--color-5);
}
footer.footer .footer-logo {
	max-height: 100%;
}
footer.footer h1 {
	font-size: var(--footer-h1-font-size);
	font-weight: var(--footer-h1-font-weight);
	margin: var(--footer-h1-margin-t) 0 var(--footer-h1-margin-b) 0;
	color: var(--footer-h1-color);
	line-height: 100%;
}
footer.footer address {
	font-style: normal;
}
footer.footer address > *:last-child {
	margin-bottom: 0;
}
footer.footer h2 {
	font-size: var(--footer-h2-font-size);
	font-weight: var(--footer-h2-font-weight);
	margin-bottom: var(--footer-h2-margin);
	color: var(--footer-h2-color);
	line-height: 100%;
}
footer.footer p {
	font-size: var(--footer-p-font-size);
	font-weight: var(--footer-p-font-weight);
	margin-bottom: var(--footer-p-margin);
	line-height: 180%;
}
footer.footer a {
	color: var(--footer-link-color);
	font-weight: var(--footer-link-font-weight);
}
footer.footer a:hover {
	color: var(--footer-link-color-hover);
}
footer.footer .font-size-low {
font-size: var(--footer-low-font-size) !important;
}

section.map {
line-height: 0;
}

section.map > * {
width: 100%;
height: 40vh;
min-height: var(--map-min-height);
}

@media (min-width: 1200px){
footer.footer .footer-grid {
	grid-template: auto auto var(--footer-social-size) / 0.9fr 1.1fr;
	row-gap: var(--footer-row-gap);
	column-gap: var(--footer-column-gap);
}
footer.footer .e1 {
	grid-area: 1 / 1 / 2 / 2;
	place-self: start start;
	text-align: left;
}
footer.footer .e2 {
	grid-area: 2 / 1 / 3 / 2;
	place-self: start start;
	text-align: left;
}
footer.footer .e3 {
	grid-area: 1 / 2 / 4 / 3;
	place-self: start stretch;
	text-align: left;
}
footer.footer .e4 {
	grid-area: 3 / 1 / 4 / 2;
	place-self: start start;
}
}
@media (min-width: 576px) and (max-width: 1199px){
footer.footer .footer-grid {
	grid-template: auto var(--footer-social-size) auto / 1fr 1fr;
	row-gap: var(--footer-row-gap);
	column-gap: var(--footer-column-gap);
}
footer.footer .e1 {
	grid-area: 1 / 1 / 2 / 2;
	place-self: start center;
	text-align: center;
}
footer.footer .e2 {
	grid-area: 1 / 2 / 2 / 3;
	place-self: start center;
	text-align: center;
}
footer.footer .e3 {
	grid-area: 3 / 1 / 4 / 3;
	place-self: start stretch;
	text-align: center;
}
footer.footer .e4 {
	grid-area: 2 / 1 / 3 / 3;
	place-self: start center;
}
}
@media (max-width: 575px){
footer.footer .footer-grid {
	grid-template: auto auto var(--footer-social-size) auto / 1fr;
	row-gap: var(--footer-row-gap);
	column-gap: var(--footer-column-gap);
}
footer.footer .e1 {
	grid-area: 1 / 1 / 2 / 2;
	place-self: start center;
	text-align: center;
}
footer.footer .e2 {
	grid-area: 2 / 1 / 3 / 2;
	place-self: start center;
	text-align: center;
}
footer.footer .e3 {
	grid-area: 4 / 1 / 5 / 2;
	place-self: start stretch;
	text-align: center;
}
footer.footer .e4 {
	grid-area: 3 / 1 / 4 / 2;
	place-self: start center;
}
}

footer.footer .footer-menu ul {
	list-style: none;
}
footer.footer .footer-menu li {
	margin-bottom: 1em;
}
footer.footer .footer-menu li:last-child {
	margin-bottom: 0;
}
footer.footer .footer-menu li a {
	font-size: var(--footer-menu-font-size);
	font-weight: var(--footer-menu-font-weight);
	color: var(--footer-menu-color);
}
footer.footer .footer-menu li a:hover, footer.footer .footer-menu li.current a:hover {
	color: var(--footer-menu-color-hover)
}
footer.footer .footer-menu li.current a {
	font-weight: var(--footer-menu-current-font-weight);
	color: var(--footer-menu-current-color);
}
footer.footer .footer-menu li span {
	font-size: calc(var(--footer-menu-font-size) + 1px);
	font-weight: var(--footer-menu-span-font-weight);
	cursor: default;
	color: var(--footer-menu-span-color);
}

footer.footer .footer-address-grid {
	display: grid;
	margin-bottom: var(--footer-address-margin);
}
footer.footer .footer-address-grid:last-child {
	margin-bottom: 0;
}
footer.footer .footer-address-grid > *:last-child {
	margin-bottom: 0;
}
footer.footer .footer-address-grid p {
	line-height: 150%;
}
@media (min-width: 576px){
footer.footer .footer-address-grid {
	grid-template: auto auto / var(--footer-address-icon-width) auto;
	column-gap: var(--footer-address-icon-gap);
	place-items: start start;
}
footer.footer .footer-address-grid > div:first-child {
	grid-area: 1 / 1 / 3 / 2;
}
}
@media (max-width: 575px){
footer.footer .footer-address-grid {
	grid-template: auto auto auto / 1fr;
	place-items: start center;
}
footer.footer .footer-address-grid > div:first-child > img {
	width: var(--footer-address-icon-width);
}
}

footer.footer .footer-social {
	display: grid;
	grid-auto-flow: column;
	column-gap: var(--footer-social-gap);
	place-items: center center;
}
footer.footer .footer-social > a {
	display: grid;
	place-items: center center;
}
footer.footer .footer-social img {
	height: var(--footer-social-size);
	display: block;
	line-height: 0;
	transition: transform var(--transition-duration) var(--transition-timing) 0s;
}
footer.footer .footer-social a:hover img {
	transform: scale(1.1);
}

aside.footer {
	background-color: var(--color-2);
}
aside.footer .aside-footer-grid {
	display: grid;
	font-weight: var(--aside-footer-font-weight);
	color: var(--aside-footer-color);
}
aside.footer .aside-footer-grid a:hover {
	color: var(--aside-footer-color-hover);
}
@media (min-width: 576px){
aside.footer .aside-footer-grid {
	grid-template: 1fr / 50% 50%;
}
aside.footer .aside-footer-grid > *:first-child {
	place-self: center start;
	grid-area: 1 / 1 / 2 / 2;
}
aside.footer .aside-footer-grid > *:last-child {
	place-self: center end;
	grid-area: 1 / 2 / 2 / 3;
}
}
@media (max-width: 575px){
aside.footer .aside-footer-grid {
	grid-template: auto auto / 1fr;
	place-items: start center;
	text-align: center;
}
}