.c-offcanvas {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.c-offcanvas,
.c-offcanvas-content-wrap,
.c-offcanvas-bg.c-offcanvas-bg--reveal,
.c-offcanvas-bg.c-offcanvas-bg--push {
  -webkit-transition: -webkit-transform 300ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: -webkit-transform 300ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: transform 300ms cubic-bezier(0.4, 0, 0.6, 1);
  transition: transform 300ms cubic-bezier(0.4, 0, 0.6, 1), -webkit-transform 300ms cubic-bezier(0.4, 0, 0.6, 1);
}

.c-offcanvas.is-open {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  visibility: visible;
}

/**
 * Offcanvas-content-wrap
*/
.c-offcanvas-content-wrap {
  z-index: 3;
}

/**
 * Offcanvas Panel
*/
.c-offcanvas {
  position: fixed;
  min-height: 100%;
  max-height: none;
  top: 0;
  display: block;
  background: #fff;
  overflow-x: hidden;
  overflow-y: auto;
}

.c-offcanvas--opening {
  -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
}

.c-offcanvas.is-closed {
  max-height: 100%;
  overflow: hidden;
  visibility: hidden;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.c-offcanvas--overlay {
  z-index: 1080;
}

.c-offcanvas--reveal {
  z-index: 2;
}

/**
 * Offcanvas BG-Overlay
*/
.c-offcanvas-bg {
  position: fixed;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 1079;
  left: -100%;
  background-color: transparent;
  -webkit-transition: background-color 400ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
  transition: background-color 400ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
}

.c-offcanvas-bg.is-animating,
.c-offcanvas-bg.is-open {
  left: 0;
  background-color: rgba(0, 0, 0, 0.68);
  visibility: visible;
}

.c-offcanvas-bg.is-closed {
  visibility: hidden;
}

.c-offcanvas-bg--closing.is-animating {
  background: transparent;
}

/**
 * Position Left
 *
*/
.c-offcanvas--left {
  height: 100%;
  width: 20em;
  -webkit-transform: translate3d(-20em, 0, 0);
  transform: translate3d(-20em, 0, 0);
}

/**
 *  Position Right
 *
*/
.c-offcanvas--right {
  height: 100%;
  width: 20em;
  right: 0;
  -webkit-transform: translate3d(20em, 0, 0);
  transform: translate3d(20em, 0, 0);
}

/**
 * Position Top
 *
*/
.c-offcanvas--top {
  left: 0;
  right: 0;
  top: 0;
  height: 12.5em;
  min-height: auto;
  width: 100%;
  -webkit-transform: translate3d(0, -12.5em, 0);
  transform: translate3d(0, -12.5em, 0);
}

/**
 * Position Bottom
 *
*/
.c-offcanvas--bottom {
  top: auto;
  left: 0;
  right: 0;
  bottom: 0;
  height: 12.5em;
  min-height: auto;
  width: 100%;
  -webkit-transform: translate3d(0, 12.5em, 0);
  transform: translate3d(0, 12.5em, 0);
}

/**
 * Reveal
 *
*/
.c-offcanvas-content-wrap {
  z-index: 3;
}

.c-offcanvas-content-wrap--reveal.c-offcanvas-content-wrap--left.is-open {
  -webkit-transform: translate3d(20em, 0, 0);
  transform: translate3d(20em, 0, 0);
}

.c-offcanvas-content-wrap--reveal.c-offcanvas-content-wrap--right.is-open {
  -webkit-transform: translate3d(-20em, 0, 0);
  transform: translate3d(-20em, 0, 0);
}

.c-offcanvas--reveal {
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.c-offcanvas-bg.c-offcanvas-bg--reveal.c-offcanvas-bg--left.is-open {
  -webkit-transform: translate3d(20em, 0, 0);
  transform: translate3d(20em, 0, 0);
}

.c-offcanvas-bg.c-offcanvas-bg--reveal.c-offcanvas-bg--right.is-open {
  -webkit-transform: translate3d(-20em, 0, 0);
  transform: translate3d(-20em, 0, 0);
}

/**
 * Push
 *
*/
.c-offcanvas--push {
  z-index: 6;
}

.c-offcanvas--push--opening {
  -webkit-transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.c-offcanvas-content-wrap {
  z-index: 3;
}

.c-offcanvas-content-wrap--push.c-offcanvas-content-wrap--left.is-open {
  -webkit-transform: translate3d(20em, 0, 0);
  transform: translate3d(20em, 0, 0);
}

.c-offcanvas-content-wrap--push.c-offcanvas-content-wrap--right.is-open {
  -webkit-transform: translate3d(-20em, 0, 0);
  transform: translate3d(-20em, 0, 0);
}

.c-offcanvas-bg.c-offcanvas-bg--push.c-offcanvas-bg--left.is-open {
  -webkit-transform: translate3d(20em, 0, 0);
  transform: translate3d(20em, 0, 0);
}

.c-offcanvas-bg.c-offcanvas-bg--push.c-offcanvas-bg--right.is-open {
  -webkit-transform: translate3d(-20em, 0, 0);
  transform: translate3d(-20em, 0, 0);
}

body {
  overflow-x: hidden;
}

*:focus {
  outline: 2px dotted;
  outline-offset: 2px;
}

.c-button.is-clicked {
  -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.23), 0 3px 10px rgba(0, 0, 0, 0.16);
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.23), 0 3px 10px rgba(0, 0, 0, 0.16);
}

.c-button--ripple {
  margin: 0 0.5em;
  border-color: #212121;
  overflow: hidden;
  position: relative;
  color: #fafafa;
  background-color: #212121;
  background-repeat: repeat-x;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#393939), to(#212121));
  background-image: linear-gradient(#393939, #212121);
  -webkit-transition: color 0.1s, background-color 0.2s, -webkit-box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 0.1s, background-color 0.2s, -webkit-box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 0.1s, background-color 0.2s, box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  transition: color 0.1s, background-color 0.2s, box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

.c-button--blue {
  background-image: -webkit-gradient(linear, left top, left bottom, from(#0099cc), to(#006e92));
  background-image: linear-gradient(#0099cc, #006e92);
}

.c-button--lg {
  font-size: 1.2em;
  padding: 0.7em 1.6em;
}

.o-ripple--light {
  background: rgba(247, 247, 247, 0.25);
}

.o-ripple--gradient {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 191, 255, 0.56)), to(rgba(2, 55, 72, 0.1)));
  background-image: linear-gradient(rgba(0, 191, 255, 0.56), rgba(2, 55, 72, 0.1));
}

.u-link-image {
  position: relative;
  overflow: hidden;
  display: inline-block;
  padding: 0;
}

.c-button--ripple .c-button__text--visible-on-active,
.c-button--ripple.is-clicked .c-button__text {
  display: none;
}

.c-button--ripple.is-clicked .c-button__text--visible-on-active {
  display: inherit;
}

.o-ripple--gradient {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 191, 255, 0.56)), to(rgba(2, 55, 72, 0.1)));
  background-image: linear-gradient(rgba(0, 191, 255, 0.56), rgba(2, 55, 72, 0.1));
}

.offcanvas-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  height: 100%;
  padding: 30px;
}

.offcanvas-inner .js-offcanvas-close {
  display: none;
}

.offcanvas-top {
  padding: 15px 0;
  width: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin-bottom: 15px;
}

.offcanvas-content {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 100%;
}

.offcanvas-content > .opalelementor-nav-menu > li {
  display: block;
}

.offcanvas-content > .opalelementor-nav-menu > li > a {
  padding-left: 0;
  position: relative;
  text-transform: uppercase;
}

.offcanvas-content > .opalelementor-nav-menu > li > a:after {
  content: "";
  width: 0;
  height: 1px;
  bottom: 0;
  position: absolute;
  left: auto;
  right: 0;
  z-index: -1;
  -webkit-transition: width 0.6s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
  transition: width 0.6s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
  background: rgba(0, 0, 0, 0.1);
}

.offcanvas-content > .opalelementor-nav-menu > li > a.highlighted:after,
.offcanvas-content > .opalelementor-nav-menu > li > a:hover:after {
  width: 100%;
  left: 0;
  right: auto;
  background: currentColor;
}

.offcanvas-content > .opalelementor-nav-menu > li > a .sub-arrow {
  position: absolute;
  right: 0;
}

.offcanvas-content > .opalelementor-nav-menu > li > a .sub-arrow:before {
  content: "";
}

.offcanvas-content .opalelementor-nav-menu--dropdown {
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transition: height 0s ease 0.4s;
  transition: height 0s ease 0.4s;
}

.offcanvas-bottom {
  margin-top: 30px;
  width: 100%;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding: 15px 0;
}

.offcanvas-bottom a {
  display: block;
  text-transform: uppercase;
}

.js-offcanvas {
  opacity: 0;
  visibility: hidden;
}

.js-offcanvas.is-open {
  opacity: 1;
  visibility: visible;
}
