/* Footer rules extracted from the mirrored Lioré stylesheet for pages that
   do not load it (the About page). Values unchanged; generic helpers are
   scoped to .footer-main. The type rules at the end mirror typography.css. */
.w-inline-block {max-width: 100%;
  display: inline-block;}
.footer-main .container {z-index: 30;
  width: var(--page-container--width);
  max-width: var(--page-container--container-large);
  mix-blend-mode: normal;
  margin-left: auto;
  margin-right: auto;
  position: relative;}
.footer-main .margin-20 {margin-top: var(--page-margin--divider-small);}
.button-text {height: 20px;}
.button-text-wrapper {height: 22px;
  overflow: hidden;}
.button-line-first {background-color: #ffffff80;
  width: 100%;
  height: 1px;
  margin-top: 3px;
  position: relative;}
.button-line-overlay {z-index: 1;
  background-color: var(--button--button-color);
  width: 100%;
  height: 1px;
  position: absolute;}
.button-with-line {color: var(--colors--fourth-color);
  text-transform: capitalize;
  font-size: 17px;
  font-weight: 600;
  line-height: 22px;
  text-decoration: none;
  position: relative;}
.footer-main .page-title {font-size: var(--font--h1);
  line-height: var(--line-height--page-line-height);
  font-weight: var(--font-weight--600);
  letter-spacing: -1px;
  margin-top: 0;
  margin-bottom: 0;}
.footer-main .page-title.flex {justify-content: flex-start;
  align-items: flex-start;
  display: flex;}
.footer-main .page-title.flex.second {font-size: var(--font--h2);}
.footer-main .page-title.flex.third {opacity: .7;
  font-size: var(--font--h5);
  font-weight: var(--font-weight--500);
  letter-spacing: -.2px;}
.footer-main .grid-2-columns {grid-column-gap: 30px;
  grid-row-gap: 30px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;}
.footer-main .grid-2-columns._3-column {grid-template-columns: 1fr 1fr 1fr;}
.footer-main {z-index: 1;
  background-color: var(--color--second-color);
  flex-flow: column;
  justify-content: space-between;
  min-height: 100vh;
  padding: 10% 2% 30px;
  display: flex;
  position: relative;
  overflow: hidden;}
.footer-main .flex {grid-row-gap: 15px;
  flex-flow: column;
  display: flex;}
.footer-main .home-flex {grid-row-gap: 6px;
  flex-flow: column;
  justify-content: center;
  align-items: flex-start;
  margin-top: 15px;
  display: flex;}
@media screen and (max-width: 991px) {
.footer-main .grid-2-columns {flex-flow: column-reverse;}
.footer-main .grid-2-columns.for-footer {grid-row-gap: 60px;
    grid-template-columns: 1fr;}
.footer-main {grid-row-gap: 80px;
    min-height: auto;
    padding-top: 60px;}
}
@media screen and (max-width: 767px) {
.footer-main .grid-2-columns._3-column {grid-row-gap: 30px;
    grid-template-columns: 1fr 1fr;}
}
@media screen and (max-width: 479px) {
.footer-main .grid-2-columns {grid-row-gap: 15px;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    display: flex;}
.footer-main .grid-2-columns._3-column {grid-column-gap: 30px;
    grid-row-gap: 50px;
    grid-template-rows: auto;
    grid-template-columns: 1fr;
    grid-auto-columns: 1fr;
    display: grid;}
.footer-main {grid-row-gap: 50px;
    padding-bottom: 15px;}
.footer-smiley {width: 50%;}
}
.footer-main { font-family: "Poppins", sans-serif; font-weight: 400; }
.footer-main .page-title { font-weight: 300; letter-spacing: -0.035em; }
.footer-main .page-title.flex.second { font-weight: 400; letter-spacing: -0.025em; line-height: 1.08; }
.footer-main .page-title.flex.third { font-weight: 400; letter-spacing: 0; }
.footer-main .button-with-line { font-weight: 500; }
.footer-main p { margin: 0; }
