  :root {
	--footer-base-color: var(--wp--preset--color--base);
	--footer-pixel-color: var(--wp--preset--color--base-2);
	--footer-pixel-size: 2.8571vw;
  }
  
  .footer {
	padding-top: 5rem;
	position: relative;
	overflow: hidden;
  }
  
  .footer-component {
	  background-color: var(--footer-pixel-color);
  }
  
  .footer-blocks-component {
	position: relative;
  }
  
  .w-layout-hflex {
	  flex-direction: row;
	  align-items: flex-start;
	  display: flex
  ;
  }
  
  .footer-block {
	  width: var(--footer-pixel-size);
	  min-width: var(--footer-pixel-size);
	  height: var(--footer-pixel-size);
  }
  
  .footer-block.bg-teal {
	  background-color: var(--footer-pixel-color);
  }
  
  .footer-block {
	transition: background-color 1000ms ease;
  }

  /* Footer Anchor*/
  .footer_anchor {
    background-color: var(--footer-base-color);
    color: var(--wp--preset--color--contrast);
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    width: 3.4375rem;
    min-width: 3.4375rem;
    height: 3.4375rem;
    display: flex;
    position: fixed;
    inset: -3rem 0% auto auto;
    z-index: 999;
    right: 1.5rem;
    bottom: 1.5rem;
	top: auto;
	outline: none !important;
}

.footer_anchor .button-elements_icon {
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 20px;
    display: flex;
}

/* Footer Email */
  .footer-email {
	display: flex;
	align-items: center;
	overflow: hidden;
	cursor: pointer;
  }
  
  .footer-email .footer-email-icon {
	flex-shrink: 0;
	margin-right: 0.5em;
  }
  
  /* hidden state */
  .footer-email .footer-email-text {
	max-width: 0;
	opacity: 0;
	transform: translateX(-10px);
	overflow: hidden;
	white-space: nowrap;
	transition: all 0.4s ease;
  }
  
  /* visible on hover */
  .footer-email:hover .footer-email-text {
	max-width: 300px;
	opacity: 1;
	transform: translateX(0);
  }