/**********/
/* BUTTON */
/**********/
.btn {
  color: var(--base-ultra-light);
  background: var(--base);
  text-decoration: none;
  border-radius: 5rem;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  overflow: hidden;
  padding: 1rem 2rem 1rem 2rem;
  gap: var(--space-xs);
}
.btn-icon {
  padding: 0rem 0.5rem 0rem 2rem;
}
.btn-txt {
  overflow: hidden;
  font-size: var(--text-m);
  line-height: 1;
  /*text-transform: uppercase;*/
  white-space: nowrap;
  color: var(--base-ultra-light);
}
@media (max-width: 479px) {
  .btn-txt {
    font-size: var(--text-s);
  }
}
.btn-txt .btn-txt-wrap {
  display: block;
  text-shadow: 0px 1.2em 0px var(--base-ultra-light);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  -o-transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.btn:hover .btn-txt .btn-txt-wrap {
  -webkit-animation: moveUpInitial 0.25s forwards;
  animation: moveUpInitial 0.25s forwards;
}
@-webkit-keyframes moveUpInitial {
  to {
    -webkit-transform: translate3d(0, -1.2em, 0);
    transform: translate3d(0, -1.2em, 0);
  }
}
@keyframes moveUpInitial {
  to {
    -webkit-transform: translate3d(0, -1.2em, 0);
    transform: translate3d(0, -1.2em, 0);
  }
}
@-webkit-keyframes moveDown {
  0% {
    -webkit-transform: translate3d(0, -1.2em, 0);
    transform: translate3d(0, -1.2em, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes moveDown {
  0% {
    -webkit-transform: translate3d(0, -1.2em, 0);
    transform: translate3d(0, -1.2em, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes MoveUpEnd {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}
@keyframes MoveUpEnd {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}
.btn-icon_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 3.6rem;
  width: 3.6rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  border-radius: 50%;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.btn-icon_wrap svg {
  fill: var(--base-ultra-light);
  -webkit-transform: scale(1.3);
  -ms-transform: scale(1.3);
  transform: scale(1.3);
}
.btn-icon_wrap__arrow {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  -o-transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s cubic-bezier(0.16, 1, 0.3, 1), -webkit-transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.btn-icon_wrap__arrow-shadow {
  opacity: 0;
  position: absolute;
  -webkit-transform: translate3d(-1.5rem, 0, 0);
  transform: translate3d(-1.5rem, 0, 0);
}
.btn:hover .btn-icon_wrap__arrow:not(.btn:hover .btn-icon_wrap__arrow-shadow) {
  opacity: 0;
  -webkit-transform: translate3d(1.5rem, 0, 0);
  transform: translate3d(1.5rem, 0, 0);
}
.btn:hover .btn-icon_wrap__arrow-shadow {
  opacity: 1;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
/****************/
/* BUTTON ACCENT */
/****************/
.btn.btn-accent {
  background: var(--action);
}
.btn.btn-accent .btn-txt {
  color: var(--base);
}
.btn-accent .btn-txt .btn-txt-wrap {
  text-shadow: 0px 1.2em 0px var(--base);
}
.btn-accent .btn-icon_wrap svg {
  fill: var(--base);
  -webkit-transition: fill 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  -o-transition: fill 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: fill 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
/*****************/
/* BUTTON HOLLOW */
/*****************/
.btn.btn-hollow {
  background: transparent;
  border-width: 1px;
  border-style: solid;
  border-color: var(--base);
}
.btn-hollow .btn-txt {
  color: var(--base);
}
.btn-hollow .btn-txt .btn-txt-wrap {
  text-shadow: 0px 1.2em 0px var(--base);
}
.btn-hollow .btn-icon_wrap {
  background-color: transparent;
}
.btn-hollow .btn-icon_wrap svg {
  fill: var(--base);
  -webkit-transition: fill 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  -o-transition: fill 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: fill 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
/***********************/
/* BUTTON HOLLOW LIGHT */
/***********************/
.btn-hollow.btn-accent {
  border-color: var(--action);
}
.btn-hollow.btn-accent .btn-txt {
  color: var(--action);
}
.btn-hollow.btn-accent .btn-txt .btn-txt-wrap {
  text-shadow: 0px 1.2em 0px var(--action);
}
.btn-hollow.btn-accent .btn-icon_wrap svg {
  fill: var(--action);
}
/***************************/
/* BUTTON HOLLOW NO BORDER */
/***************************/
.btn.btn-no-border {
  border: none;
  padding: 0;
  gap: 1rem;
}
.btn.btn-no-border .btn-icon_wrap {
  height: 5.4rem;
  width: 5.4rem;
  border: 1px solid var(--base);
}
.btn.btn-accent.btn-no-border .btn-icon_wrap {
  border: 1px solid var(--action);
}
/************************************/
/* BUTTON HOLLOW NO BORDER ALTERNET */
/************************************/
.btn.btn-no-border-alt .btn-txt {
  text-transform: initial;
  font-weight: 700;
}
.btn.btn-no-border-alt .btn-icon_wrap {
  height: 2.6rem;
}
.btn.btn-no-border-alt {
  border: none;
  padding: 0;
  gap: 0;
  border-radius: 0;
}
.btn.btn-accent.btn-no-border-alt .btn-icon_wrap {
  border-width: 0px;
}
/************/
/* BTN PLAY */
/************/
.btn-play .btn-icon_wrap {
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
}
.btn-play .btn-icon_wrap svg {
  -webkit-transform: scale(0.5);
  -ms-transform: scale(0.5);
  transform: scale(0.5);
}
/*************************/
/* NAV LINKS & HAMBURGER */
/*************************/
/*.btn-hamburger {
  --animation-speed: 80ms;
  
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.5rem;
  background-color: var(--base-ultra-dark);
  padding: 1rem 2rem 1rem 2rem;
  border-radius: 50px;
  border: none;
  cursor: pointer;
  .line {
      -webkit-transition: y var(--animation-speed) ease-in var(--animation-speed), rotate var(--animation-speed) ease-in, opacity 0ms var(--animation-speed);
      -o-transition: y var(--animation-speed) ease-in var(--animation-speed), rotate var(--animation-speed) ease-in, opacity 0ms var(--animation-speed);
      transition: y var(--animation-speed) ease-in var(--animation-speed), rotate var(--animation-speed) ease-in, opacity 0ms var(--animation-speed);
      -webkit-transform-origin: center;
          -ms-transform-origin: center;
              transform-origin: center;
    }
    span {
        color: var(--base-ultra-light);
        font-size: var(---text-xs);
        line-height: 1;
    }
    &[aria-expanded="true"] .line {
        -webkit-transition: y var(--animation-speed) ease-in, rotate var(--animation-speed) ease-in var(--animation-speed), opacity 0ms var(--animation-speed);
        -o-transition: y var(--animation-speed) ease-in, rotate var(--animation-speed) ease-in var(--animation-speed), opacity 0ms var(--animation-speed);
        transition: y var(--animation-speed) ease-in, rotate var(--animation-speed) ease-in var(--animation-speed), opacity 0ms var(--animation-speed);
    }
    &[aria-expanded="true"] :is(.top, .bottom) {
        y: 47.5;
    }
    &[aria-expanded="true"] .top {
        rotate: 45deg;
    }
    &[aria-expanded="true"] .middle {
        opacity: 0;
    }
    &[aria-expanded="true"] .bottom {
        rotate: -45deg;
    }
    
    -webkit-transition: background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    -o-transition: background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    transition: background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.btn-hamburger:hover {
    background-color: var(--base-light-trans-10);
}*/
/* NAV MENU LINKS */
.fr-brx-nav-alpha > nav:not(.bricks-mobile-menu-wrapper) > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.2rem;
}
.fr-brx-nav-alpha a, .fr-brx-nav-alpha a:hover {
  color: var(--base-ultra-light);
}
.fr-brx-nav-alpha a {
  display: block;
  padding: 1rem 2rem 1rem 2rem;
  border-radius: 50px;
  background-color: transparent;
  -webkit-transition: background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  -o-transition: background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transition: background-color 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.fr-brx-nav-alpha a:hover {
  background-color: var(--base-light-trans-10);
}
/*.btn-hamburger .nav-link-txt,*/
.fr-brx-nav-alpha a .nav-link-txt {
  display: block;
  overflow: hidden;
  line-height: 1;
  white-space: nowrap;
}
/*.btn-hamburger .nav-link-txt span,*/
.fr-brx-nav-alpha a .nav-link-txt span {
  display: block;
  text-shadow: 0px 1.2em 0px var(--base-ultra-light);
  -webkit-transition: cubic-bezier(0.16, 1, 0.3, 1);
  -o-transition: cubic-bezier(0.16, 1, 0.3, 1);
  transition: cubic-bezier(0.16, 1, 0.3, 1);
}
/*.btn-hamburger:hover .nav-link-txt span,*/
.fr-brx-nav-alpha a:hover .nav-link-txt span {
  -webkit-animation: moveUpInitial 0.25s forwards;
  animation: moveUpInitial 0.25s forwards;
}
/**********************/
/* LINKS UNDERLINE FX */
/**********************/
.bw-btn__wrap .bw-btn__txt {
  display: inline-block;
  position: relative;
  color: var(--base-ultra-light);
  margin-right: 1rem;
  -webkit-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.bw-btn:hover .bw-btn__txt {
  margin-right: 1.5rem;
}
.bw-btn .bw-btn__txt:after {
  content: "";
  position: absolute;
  width: 100%;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: var(--base-ultra-light);
  -webkit-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  transform-origin: bottom right;
  -webkit-transition: -webkit-transform 0.25s ease-out;
  transition: -webkit-transform 0.25s ease-out;
  -o-transition: transform 0.25s ease-out;
  transition: transform 0.25s ease-out;
  transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
}
.bw-btn:hover .bw-btn__txt:after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transform-origin: bottom left;
  -ms-transform-origin: bottom left;
  transform-origin: bottom left;
  background-color: var(--base-ultra-light);
}
