HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/marisrental/boldt.tech/resources/sass/site/6-Organisms/_organisms.overlayMenu.scss
// Component settings: Overlay menu
// ------------------------------------------

$o-overlay-menu: (
  'color':            palette(text, 100),
  'bgcolor':          palette(dark),
  'shader-color':     rgba(0, 0, 0, 0.6),
  'move-speed':       400ms,
  'opacity-speed':    200ms,
);

// ------------------------------------------


.o-overlay-menu {
  z-index: 60;
  opacity: 0;
  position: fixed;
  display: block;
  height: 100vh;
  width: 100%;
  left: 0;
  top: 0;
  background-color: map-get($o-overlay-menu, 'bgcolor');

  // When it disappears out of view
  transform: translateX(-120vw);
  transition-property: transform, opacity;
  transition-duration: map-get($o-overlay-menu, 'move-speed'), map-get($o-overlay-menu, 'opacity-speed');
  transition-delay: 0s, map-get($o-overlay-menu, 'move-speed');
  transition-timing-function: cubic-bezier(0.5, 0.15, 0.1, 1), linear;

  // When it comes into view
  .is-overlay-menu-active & {
    opacity: 1;
    transform: none;
    transition-delay: map-get($o-overlay-menu, 'opacity-speed'), 0s;
  }

  // Shader
  &::before {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    right: -120vw;
    width: 120vw;
    height: 100%;
    background: map-get($o-overlay-menu, 'shader-color');
    pointer-events: none;
    opacity: 0;
    transition-property: opacity;
    transition-duration: map-get($o-overlay-menu, 'opacity-speed');
    transition-delay: map-get($o-overlay-menu, 'move-speed');
    transition-timing-function: linear;

    .is-overlay-menu-active & {
      opacity: 1;
      transition-delay: 0s;
    }
  }

  // Diagonal shape on the right
  &::after {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    right: -20%;
    width: 20%;
    height: 100%;
    background: linear-gradient(-86deg, transparent 50%, map-get($o-overlay-menu, 'bgcolor') 50%);
  }
}

.o-overlay-menu__bar {
  @include contain;
  @include flex(center space-between);
  padding-top: 50px;
  padding-bottom: 50px;
  margin-right: 0;

  @include mq(null, 800){
    width: calc(100% / 10 * 9);
    padding-right: 20px;
  }
}

.o-overlay-menu__img {
  height: 48px;
}

.o-overlay-menu__toggle {
  transform: rotate(-0.5turn);
  transition: transform 600ms ease-out;
  transition-delay: 200ms;

  .is-overlay-menu-active & {
    transform: none;
  }
}

.o-overlay-menu__nav {
  @include contain;

  @include mq(null, 800){
    width: calc(100% / 10 * 8);
  }
}

.o-overlay-menu__list {
  margin-bottom: 30px;
  list-style: none;

  &.service {
    p {
      margin-bottom: 10px;
    }

    .c-button {
      color: palette(action);

      svg {
        margin-right: 10px;
      }
    }
  }
}

.o-overlay-menu__item {
  @include owl(30px);

  a {
    text-decoration: none;
  }

  .c-button {
    display: inline-flex;
  }
}

.o-overlay-menu__link {
  @include font-size(large);
  display: block;
  color: map-get($o-overlay-menu, 'color');
  text-decoration: none;
  opacity: 0.7;
  transition: opacity 200ms linear;

  &:hover {
    opacity: 1;
  }

  &.is-active {
    opacity: 1;
    position: relative;
    font-weight: 600;
  }
}