/* ------------------------------------------------------ Footer
------------------------------------------------------ */
footer { position: relative; background-color: var(--quinary); color: white; }
footer a { color: white; text-decoration: none; }
footer a:hover { color: var(--highlight); text-decoration: none; }
footer ul { margin: 0; padding: 0; list-style: none; }
footer .footer-main { padding-left: var(--padding); padding-right: var(--padding); padding-top: calc(var(--section_space) + 50px); padding-bottom: calc(var(--section_space) + 50px); }
@media (max-width: 1079px) { footer .footer-main { padding-left: var(--padding-tablet); padding-right: var(--padding-tablet); } }
@media (max-width: 699px) { footer .footer-main { padding-left: var(--padding-mobile); padding-right: var(--padding-mobile); } }
@media (max-width: 1079px) { footer .footer-main { padding-top: calc(var(--section_space) + 20px); padding-bottom: calc(var(--section_space) + 20px); } }
@media (max-width: 699px) { footer .footer-main { padding-top: calc(var(--section_space) + 0px); padding-bottom: calc(var(--section_space) + 0px); } }
@media (max-width: 699px) { footer .footer-main { padding-top: var(--section_space); padding-bottom: var(--section_space); } }
@media (max-width: 699px) and (max-width: 1079px) { footer .footer-main { padding-top: calc(var(--section_space) - 15px); padding-bottom: calc(var(--section_space) - 15px); } }
@media (max-width: 699px) and (max-width: 699px) { footer .footer-main { padding-top: calc(var(--section_space) - 25px); padding-bottom: calc(var(--section_space) - 25px); } }

footer .footer-main .wrap { max-width: var(--wrap-regular); margin-left: auto; margin-right: auto; }
footer .footer-main .wrap .inner { display: flex; width: 100%; }
@media (max-width: 1079px) { footer .footer-main .wrap .inner { display: block; } }
footer .footer-main .wrap .inner > div { padding-right: 2em; flex: 1; }
@media (max-width: 1079px) { footer .footer-main .wrap .inner > div { padding-top: calc(var(--section_space) - 45px); padding-bottom: calc(var(--section_space) - 45px); width: 100%; } }
@media (max-width: 1079px) and (max-width: 699px) { footer .footer-main .wrap .inner > div { padding-top: calc(var(--section_space) - 50px); padding-bottom: calc(var(--section_space) - 50px); } }

footer .footer-main .wrap .inner > div:last-child { margin-left: auto; padding-right: 0; }
footer .footer-main .wrap .inner > div .title { font-size: 1.5em; font-weight: var(--font-weight-bold); margin-bottom: 0.8em; display: block; }
footer .footer-main .wrap .inner > div ul li { margin-bottom: 8px; }
footer .footer-main .wrap .inner .footer-logo a { width: 180px; height: 49px; display: inline-block; }
footer .footer-main .wrap .inner .footer-logo a svg, footer .footer-main .wrap .inner .footer-logo a img { width: 100%; height: auto; }
footer .footer-main .wrap .inner .footer-logo .tagline { line-height: 120%; margin-top: 20px; }
footer .footer-main .social-links { margin-top: 1.8em; }
footer .footer-main .social-links ul { list-style: none; padding: 0; margin: 0; }
footer .footer-main .social-links ul li { margin-right: 0.5em; }
footer .footer-main .social-links ul li a { background-color: white; width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; color: var(--quinary); border-radius: 40px; }
footer .footer-main .social-links ul li a:hover { background: var(--highlight); color: white; }
footer .disclaimers { background-color: rgba(0, 0, 0, 0.05); font-size: 0.9em; padding-left: var(--padding); padding-right: var(--padding); line-height: 60px; }
@media (max-width: 1079px) { footer .disclaimers { padding-left: var(--padding-tablet); padding-right: var(--padding-tablet); } }
@media (max-width: 699px) { footer .disclaimers { padding-left: var(--padding-mobile); padding-right: var(--padding-mobile); } }
footer .disclaimers .wrap { max-width: var(--wrap-regular); margin-left: auto; margin-right: auto; }
footer .disclaimers .wrap .inner { margin-left: -15px; margin-right: -15px; display: flex; align-items: center; }
@media (max-width: 1079px) { footer .disclaimers .wrap .inner { display: block; text-align: center; } }
footer .disclaimers .navigation ul { display: flex; }
@media (max-width: 1079px) { footer .disclaimers .navigation ul { flex-wrap: wrap; justify-content: center; } }
footer .disclaimers .navigation ul li { display: flex; }
footer .disclaimers .navigation ul li a { padding: 0 15px; line-height: 60px; height: 60px; }
footer .disclaimers .copyright { margin-left: auto; padding: 0 15px; }
@media (max-width: 1079px) { footer .disclaimers .social-links ul { justify-content: center; } }
footer .disclaimers .social-links ul li a { height: 60px; width: 60px; }
