/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: MEDIA : 320px */
/* ///////////////////////////////////////////////////////////////////////////// FOOTER */
#id_footer {
  display: flex;
  justify-content: center;

  width: 100%;
  background-color: var(--black);
	overflow: hidden;

  transition: var(--duration-short);
}

.footer {
  padding: 4.375rem var(--global-padding) var(--global-padding) var(--global-padding);
  text-align: left;
  color: var(--white);
  min-width: var(--global-content-width-min); /* 250px / 100% */
	max-width: var(--global-content-width-max); /* 1440px / 90rem */
	width: 100%;
}

.footer-nav {
  display: flex;
	flex-direction: column;
	align-content: left;

  /* THIS MIN-WIDTH CONTAINS CONTENT AT WINDOW LEFT */
  min-width: 100%;
  width: 100%;
}

.footer-content {
  min-width: var(--global-content-width-min); /* 300px / 100%*/
  width: 100%;
}

.footer-content p {
  font-size: .8125rem;
  font-weight: 300;
  letter-spacing: .11em; /* 11% */
  text-align: left;
  padding-bottom: 1.5rem;
  margin: 0rem;
	width: 100%;
}

#id_footer_nav {
  flex-grow: 0;
  line-height: 2.375rem;
}

#id_footer_contact {
  flex-grow: 1;
  line-height: 1.875rem;
}

.footer-content p .title {
  color: var(--grey3);
  font-size: .625rem;
  text-transform: uppercase;
  letter-spacing: .22em; /* 22% */
}

#id_footer_contact p::first-line {
/* #id_footer_contact p .title::first-of-type { */
  line-height: 1.5rem;
}

#id_email,
#id_footer_contact {
	word-break: break-all;
}

.legal {
  padding-top: 1.25rem;
}

.legal p {
  color: var(--white);
  font-size: .625rem;
  font-weight: 200;
  line-height: 1rem;
  letter-spacing: .11em; /* 11% */
  width: 95%;
  min-width: var(--global-content-width-min); /* 250px / 100%*/
}

.legal p > a,
.footer-content p > a {
  position: relative;
  color: var(--white);
  text-decoration: none;
  transition: all var(--duration-short) ease-in-out;

  /*
  MULTILINE BUT LIMITED: UNDERLINE DOES NOT FADE AND ONLY ANIMATES IN ONE DIRECTION
  background: linear-gradient(var(--white), var(--white)) left bottom no-repeat;
  background-size: 0% .125rem;
  transform-origin: bottom right;
  transition: background var(--duration-short) ease-in-out 0s;
  transition: all var(--duration-short) ease-in-out;
  */
}

.legal p > a::before,
.footer-content p > a::before {
  content: "";
  position: absolute;
  width: 100%;
  height: .06rem;
  bottom: 0rem;
  left: 0;
	background-color: var(--white);
	transform: scaleX(0);
	transition-property: transform, background-color;
	transition-duration: var(--duration-short);
	transition-timing-function: ease-in-out;
  transform-origin: bottom right;
}

.legal p > a:hover::before,
.footer-content p > a:hover::before {
	background-color: var(--grey3);
  transform: scaleX(1);
  transform-origin: bottom left; /* IF OMITTED, TRANSITION RETURNS TO ORIGIN POINT */
}

.legal p > a:hover,
.legal p > a:focus,
.footer-content p > a:hover,
.footer-content p > a:focus {
  color: var(--grey3);
  /* text-decoration: none; */
  
  /*
  MULTILINE BUT LIMITED: UNDERLINE DOES NOT FADE AND ONLY ANIMATES IN ONE DIRECTION
  background: linear-gradient(var(--grey3), var(--grey3)) left bottom no-repeat;
  background-size: 100% .125rem;
  transform-origin: bottom left;
  */
}

.legal p > a.multiline,
.footer-content p > a.multiline {
	/* multi-line underline */
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

.legal p .linebreak {
  display: inline-block;
}

.text_align_center {
	text-align: center;
}

#id_instagram,
#id_facebook {
  margin-right: 0.6rem;
}

#id_instagram_svg,
#id_facebook_svg {
  padding: 0rem;
  margin-top: 0.625rem;
	width: 1.25rem;
	height: 1.25rem;
	vertical-align: text-bottom; /* ALTERS SVG Y PLACEMENT */
}

#id_instagram::before,
#id_instagram:hover::before,
#id_facebook::before,
#id_facebook:hover::before {
  display: none;
}

#id_instagram_svg path,
#id_facebook_svg path {
  transition: all var(--duration-short) ease-in-out;
	fill: var(--white);
	color: var(--white);
}

#id_instagram:hover #id_instagram_svg path,
#id_instagram:focus #id_instagram_svg path,
#id_facebook:hover #id_facebook_svg path,
#id_facebook:focus #id_facebook_svg path {
	fill: var(--grey3);
	color: var(--grey3);
}

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: MEDIA : 480px */
@media (min-width: 480px) {
	.legal p .linebreak {
		display: none;
	}
}

/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: MEDIA : 600px */
@media (min-width: 600px) {
	.footer {
		/* padding left adjusted for visual balance */
		padding: 4.375rem var(--global-padding) 1.875rem 1.875rem;
  }

	.footer-nav {
		flex-direction: row; /* !!! SWITCH FROM COLUMN TO ROW */
	}

	.footer-content {
		min-width: 15rem;
		width: 15rem;
	}
}
