
/* font */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cairo+Play:wght@200..1000&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Courgette&display=swap');
/* variable */
:root {     
    --alt-font: 'Bebas Neue', sans-serif;
    --primary-font: 'Raleway', sans-serif;
    --title-font:"Cairo Play", sans-serif;
    --mobile-title-font:"Courgette", cursive;
    --base-color: #000000;
    --yellow: #ffd40c;
    --dark-gray: #0f0f14;
    --medium-gray:#5d5d64;
    --red:#E43D12;
} 

.title-font {
  font-family: var(--title-font);
}

.the-mobile-title {
  font-family: var(--mobile-title-font) !important;
  font-weight: 500;
  color: var(--red) !important;
  visibility: hidden;
}

.the-mobile-title{
  visibility: hidden;
}

.modern-side-menu .the-mobile-title{
  visibility: visible;
  padding:10px 60px;
}


.bg-section {
  background-color: var(--base-color) !important;
}

/* reset */
body {
    font-size: 17px;
    font-weight: 500;
    background-color: var(--base-color) !important;
}

/*page loader*/
.page-loader {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    background-color: var(--base-color) !important;
  }

  body {
    overflow: hidden;
  }
 
  .loader {
    --blade: #fff;
    --shape: #E43D12;
    --dot: #fff;
    --paper: #eef0fd;
    width: 360px;
    height: 100px;
    position: relative;
  }
  .loader .scissor {
    --o: 32;
    left: -26px;
    top: -60px;
    width: 50px;
    height: 84px;
    z-index: 1;
    position: absolute;
    transform-origin: 25px 46px;
  }
  .loader .scissor > div {
    top: 0;
    height: 84px;
    position: absolute;
    display: flex;
    align-items: flex-end;
  }
  .loader .scissor > div:before, .loader .scissor > div:after {
    content: "";
    position: absolute;
  }
  .loader .scissor > div:before {
    width: 4px;
    height: 46px;
    top: 0;
    background: var(--blade);
  }
  .loader .scissor > div:after {
    width: 2px;
    height: 2px;
    top: 45px;
    z-index: 2;
    border-radius: 1px;
    background: var(--dot);
  }
  .loader .scissor > div svg {
    display: block;
    position: relative;
    z-index: 1;
    width: 28px;
    height: 40px;
    color: var(--shape);
  }
  .loader .scissor > div:nth-child(1) {
    left: 0;
    transform-origin: 25px 46px;
    transform: rotate(calc(var(--o) * 1deg));
  }
  .loader .scissor > div:nth-child(1):before {
    right: 1px;
    border-radius: 4px 0 0 0;
  }
  .loader .scissor > div:nth-child(1):after {
    right: 2px;
  }
  .loader .scissor > div:nth-child(2) {
    right: 0;
    transform-origin: 3px 46px;
    transform: rotate(calc(var(--o) * -1deg));
  }
  .loader .scissor > div:nth-child(2):before {
    left: 1px;
    border-radius: 0 4px 0 0;
  }
  .loader .scissor > div:nth-child(2):after {
    left: 2px;
  }
  .loader span {
    display: block;
    position: absolute;
    border-radius: 50%;
    background: var(--paper);
  }
  .loader .paper {
    --before-top-y: 50;
    --before-bottom-x: 0;
    --before-middle-y: 50;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -26px 0 0 -38px;
    width: 56px;
    height: 56px;
    transform: rotateZ(-28deg);
  }
  .loader .paper:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: var(--paper);
    -webkit-clip-path: polygon(0 calc(var(--before-top-y) * 1%), calc(var(--before-bottom-x) * 1%) 100%, 100% calc(var(--before-middle-y) * 1%));
    clip-path: polygon(0 calc(var(--before-top-y) * 1%), calc(var(--before-bottom-x) * 1%) 100%, 100% calc(var(--before-middle-y) * 1%));
  }
  .loader .paper div {
    --cut-before-o: 1;
    --cut-before-x: 0;
    --cut-before-y: 0;
    --cut-before-r: 0;
    --cut-before-b: 0;
    --cut-after-o: 0;
    --cut-after-x: 0;
    --cut-after-y: 0;
    --cut-after-r: 0;
    --cut-after-b: 0;
  }
  .loader .paper div:before, .loader .paper div:after {
    --c: 0%;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 49%;
    background: var(--paper);
    -webkit-clip-path: polygon(var(--c) 0, 0 100%, 100% 100%);
    clip-path: polygon(var(--c) 0, 0 100%, 100% 100%);
  }
  .loader .paper div:before {
    opacity: var(--cut-before-o);
    transform: translate(calc(var(--cut-before-x) * 1px), calc(var(--cut-before-y) * 1px)) rotate(calc(var(--cut-before-r) * 1deg));
    filter: blur(calc(var(--cut-before-b) * 1px));
  }
  .loader .paper div:after {
    --c: 100%;
    opacity: var(--cut-after-o);
    transform: translate(calc(var(--cut-after-x) * 1px), calc(var(--cut-after-y) * 1px)) rotate(calc(var(--cut-after-r) * 1deg));
    filter: blur(calc(var(--cut-after-b) * 1px));
  }
  
/* end preloader */
.cover-background{
  background-image: url('../images/carte.jpg');    
  background-size: auto;
  background-repeat: no-repeat;
}

.bg-orange{
    background-color: var(--orange);
}

.maslilivideo {
    object-fit: cover;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index:-3;
}

.headervideo {
    position: fixed;
    width: 100vw;
    height: 100vh;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
 }

 @keyframes fadeOut {
  0%, 80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeIn {
  0%, 80% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fade-out-title {
  animation: fadeOut 30s linear forwards;
}

.fade-in-title {
  animation: fadeIn 30s linear forwards;
}

 .headervideo span {
    color: var(--green);
    font-family: var(--title-font);
    font-weight: 400;
    font-style: normal;
    font-size: 20vw;
    text-align: center; 
    /*background-color: rgba(256,256,256, 0.4);*/   
  }

.masliliabout {
    background: rgba(0,0,0, 0.4);
    color: white;
    position: fixed;
    width: 100%;
    bottom: 0px;
    padding: 1rem;
    p {
      margin: 0.3rem auto;
      text-align: center;
    }
}

.navbar-toggler {
  font-size: 24px;
  width: 40px;
  height: 20px;
}

.navbar-toggler-line{
    background:var(--red) !important;
}

.left-modern-sidebar .toggle-icon {
  position: absolute;
  top: 50%;
  left: 25%;
  z-index: 9;
  -webkit-transform: translate(-12px, -50%);
  transform: translate(-12px, -50%);
}

.contact p{
    margin-bottom:0px !important;
}

a.contact:link, a.contact:visited{
    color: var(--white) !important;
}

a.contact:hover{
    color: var(--red) !important;
}

/* primary font */
.primary-font {
    font-family: var(--primary-font) !important;
}
/* section */
section {
    padding-top: 0px;
    padding-bottom: 50px;
}
/* icon */
.icon-double-large {
    font-size: 70px;
}
/* header */
.navbar-nav .nav-item .nav-link:hover{
    color: red !important;
}
.left-modern-menu .left-modern-header .navbar-brand img {
    max-height: 40px;
}
.menu-item-list .nav-link {
    font-size: 30px;
    font-family: var(--title-font);
    line-height: 30px;
    padding: 7px 20px 0 0;
}
.left-modern-menu .left-modern-header .modern-side-menu {
    padding: 75px 0;
    border-left: 1px solid #18181e;
}
.left-modern-menu .left-modern-header .modern-side-menu .mCustomScrollBox .mCSB_container {
    padding: 0;
}
.menu-item-list .menu-item {
    border-bottom: 1px solid #18181e;
    padding: 10px 60px;
}
.menu-item-list .menu-item:last-child {
    border-bottom: 0;
}
.menu-item-list .active .nav-link {
    opacity: 1; 
    color: var(--red);
}
.menu-item-list .nav-link:hover {
    opacity: 1;
    color: var(--red);
}
/* letter spacing */
.ls-15px {
    letter-spacing: 15px;
}
/* margin top bottom */
.mt-minus-30px {
    margin-top: -30px;
}
.mt-minus-50px {
    margin-top: -50px;
}
/* font size */
.fs-460 {
    font-size: 460px;
}
/* word break normal */
.word-break-normal {
    word-break: normal;
}
/* text color */
.text-black-russian-gray {
    color: #1d1d23;
}
/* bg color */
.bg-black-russian-gray {
    background-color: #1d1d23;
}
.bg-payne-gray {
    background-color: #45454a;
}
/* portfolio creative */
.portfolio-creative .portfolio-box .portfolio-title::after {
    letter-spacing: 0;
    font-size: 145px;
    top: 0;
}
.portfolio-creative .portfolio-box .portfolio-title::before {
    top: 20px; 
}
.portfolio-creative .grid-item .popup-vimeo {
    display: block;
}
.portfolio-creative .portfolio-box i {
    margin-left: 3px;
}
/* tracklist style */
.tracklist-style:hover {
    background-color: #17171d;
}
/* countdown style 03 */
.countdown-style-03 .countdown-box {
    width: 90px;
    margin: 0 5px;
    text-align: left;
}
.countdown-style-03 .countdown-box .number {
    color: var(--white);
    font-size: 63px;
    line-height: 65px;
    font-weight: 400;
    letter-spacing: 1px;
}
.countdown-style-03 .countdown-box span {
    font-size: 14px;
    line-height: 16px;
    font-weight: 700;
    position: relative;
    top:-14px;
}
/* swiper number pagination progress */
.swiper-number-pagination-progress .swiper-pagination-wrapper .swiper-pagination-progress {
    background-color: #212128;
}
.swiper-number-pagination-progress .swiper-pagination-wrapper .number-prev, .swiper-number-pagination-progress .swiper-pagination-wrapper .number-next {
    color: var(--white); 
}
.services-box-style-01 .icon-box {
    margin-top: 0;
}
/* stack box */
.stack-box {
    height: 200vh;
}
/* footer */
.footer-navbar a {
    color: var(--white);
    text-transform: uppercase;
    font-size: 15px;
    padding: 0 30px;
}
footer {
    padding-top: 100px;
    padding-bottom: 100px;
}
.playicon {
    bottom: 50px;
}
/* media query responsive */
@media (max-width: 1600px){
    section {
        padding-top: 0px;
        padding-bottom: 110px;
    }
}
@media (max-width: 1399px) {
    .fs-460 {
        font-size: 370px;
    }
}
@media (max-width: 1199px) {
    
    .fs-460 {
        font-size: 270px;
    }
    section {
        padding-bottom: 95px;
    }
}
@media (max-width: 991px) {

      .countdown-style-03 .countdown-box {
        width: 85px;
    }
    .countdown-style-03 .countdown-box .number {
        font-size: 60px;
        line-height: 62px;
    }
}
@media (max-width: 767px) {
  .cover-background {
    background-image: url('../images/carte_m.jpg');
    background-size: 100% auto;   
  }
  .the-mobile-title {
    flex-grow: 1;
    text-align: center;
    visibility: visible;
  }
  .modern-side-menu .the-mobile-title{
    visibility: hidden;
  } 
    section {
        padding-top: 50px;
        padding-bottom: 70px;
    }
    .mt-minus-50px {
        margin-top: -10px;
    }
    .menu-item-list .menu-item {
        padding: 10px 35px;
    }
    .menu-item-list .nav-link {
        font-size: 30px;
        line-height: 34px;
    }
    .left-modern-menu .left-modern-header .modern-side-menu {
        padding: 40px 0;
    }
}
@media (max-width: 575px) {
    .cover-background {
        background-image: url('../images/carte_m.jpg');   
        background-size: 100% auto;     
    }

    .the-mobile-title {
      flex-grow: 1;
      text-align: center;
      visibility: visible;
    }

    .modern-side-menu .the-mobile-title{
      visibility: hidden;
    } 

    .playicon {
        bottom: -10px;
    }
    .video-icon-box{
        width: 30px;
        height: 30px;
    }
    .countdown-style-03 .countdown-box {
        width: 45%;
    }
    .countdown-style-03 .countdown-box .number {
        text-align: center;
    }
    .countdown-style-03 .countdown-box span {
        text-align: center;
        width: 100%;
        display: block;
        margin-top: 5px;
    }
}

/* Mobile title effect*/

.the-mobile-title,
.mobile-title {
  &::before,
  &::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
  }
}

.the-mobile-title {
  /* Can be anything light-colored */
  --spotlight-color: orange;
  height:100%;
  overflow: hidden;
  position: relative;

  /* Shimmer animation */
  &::before {
    animation: shimmer 5s infinite linear;
    background: 
      radial-gradient(circle, var(--spotlight-color), transparent 25%) 0 0 / 25% 25%,
      radial-gradient(circle, var(--spotlight-color), black 25%) 50% 50% / 12.5% 12.5%;
    inset-block-start: -100%;
    inset-inline-start: -100%;
    mix-blend-mode: color-dodge;
    z-index: 3;
  }

  /* Extra filter to boost colors and contrast */
  &::after {
    backdrop-filter: brightness(90%) contrast(150%);
    z-index: 4;
  }
}

@keyframes shimmer {
  100% {
    transform: translate3d(50%, 50%, 0);
  }
}

.mobile-title {
  /* Mask colors */
  /* Should be black and white */
  --background-color: black;
  --text-color: white;

  /* Text color */
  /* Can be anything */
  --angle: 5deg;
  --color-1: hsl(163, 100%, 51%);
  --color-2: hsl(295, 88%, 32%);
  --color-3: hsl(59, 100%, 50%);

  /* Fuzzy white outline text */
  color: transparent;
  text-shadow: 
      0 0 0.03em var(--background-color),
      0 0 0.03em var(--text-color);

  /* Improve contrast of outline */
  &::before {
    backdrop-filter: brightness(150%) contrast(200%);
    z-index: 1;
  }

  /* Add text color */
  &::after {
    background: linear-gradient(var(--angle), var(--color-1), var(--color-2), var(--color-3));
    mix-blend-mode: color-dodge;
    z-index: 2;
  }
}