/* ------------------------------------------------------------------------------

  Rene Puura — Official Website
  Stylesheet
  
  1.  Global

      1.1 General
      1.2 Typography
      1.3 Fields
      1.4 Buttons
      1.5 Icons
      1.6 Loader
      1.7 Backgrounds
      1.8 Colors

  2.  Navbar

      2.1 Navbar Desktop
      2.2 Navbar Mobile
      2.3 Navbar Fixed
      2.4 Navbar White

  3.  Main

      3.1 Masthead
      3.2 Sections
      3.3 About
      3.4 Live Events
      3.5 Portfolio
      3.6 Contact



/*-------------------------------------------------------------------------------
  1. Global
-------------------------------------------------------------------------------*/



/* 1.1 General */



@import url('bootstrap.min.css');
@import url('magnific-popup.css');
@import url('owl.carousel.min.css');



html{
  -webkit-font-smoothing: antialiased;
}

body{
  font-family: 'Lato', sans-serif;
  font-size: 1rem;
  line-height: 1.625em;
  color:#767676;
  overflow-y: hidden;
}

::-webkit-scrollbar{
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-thumb {
  cursor: pointer;
  background: #D4F21B;
}

::selection{
  background-color:#D4F21B;
  color:#000;
}

-webkit-::selection{
    background-color:#D4F21B;
    color:#000;
}

::-moz-selection{
    background-color:#D4F21B;
    color:#000;
}



/* 1.2 Typography */



h1,
.h1{ 
  position: relative;
  font-family: 'Karla', sans-serif;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
}

@media (min-width: 576px){
  h1,
  .h1{
    font-size: 4rem;
  }
}

@media (min-width: 992px){
  h1,
  .h1{
    font-size: 5.725rem;
  }
}

h2,
.h2{ 
  position: relative;
  font-family: 'Karla', sans-serif;
  font-weight: 700;
  font-size: 2.7rem;
  line-height: 1.2;
  color: #000;
  margin:2rem 0;
}

@media (max-width: 767.98px){
  h2,
  .h2{
    font-size: 2rem;
  }

  .about-tagline{
    font-size: 1.525rem;
  }
}


h3,
.h3{ 
  font-family: 'Karla', sans-serif;
  font-weight: 700;
  font-size: 1.925rem;
  line-height: 1.25;
  color: #000;
  margin:1.5rem 0;
}

h4,
.h4{ 
  font-family: 'Karla', sans-serif;
  font-weight: 600;
  font-size: 1.525rem;
  line-height: 1.2;
  color: #000;
  margin:1.5rem 0;
}

h5,
.h5{ 
  font-family: 'Karla', sans-serif;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.2;
  color: #000;
  margin:1.2rem 0;
}

h6,
.h6{ 
  font-family: 'Karla', sans-serif;
  font-weight: 700;
  font-size: 0.9rem;
  letter-spacing: 1px;
  line-height: 1.2;
  color: #000;
  margin:1rem 0;
  text-transform: uppercase;
}


h1 a,
.h1 a,
h2 a,
.h2 a,
h3 a,
.h3 a,
h4 a,
.h4 a,
h5 a,
.h5 a,
h6 a,
.h6 a{
  color:inherit;
}

h1 a:hover,
.h1 a:hover,
h2 a:hover,
.h2 a:hover,
h3 a:hover,
.h3 a:hover,
h4 a:hover,
.h4 a:hover,
h5 a:hover,
.h5 a:hover,
h6 a:hover,
.h6 a:hover{
  text-decoration: none;
}

p{
  margin-bottom: 1rem;
}

ul{
  list-style: none;
  padding-left: 0;
}

a {
  color:#D4F21B;
  -webkit-transition: color .3s ease-out;
       -o-transition: color .3s ease-out;
          transition: color .3s ease-out;
}

a:hover,
a:focus {
  color:#D4F21B;
  outline: none;
}

a:focus{
  text-decoration: none;
}

.lead{
  line-height: 1.9;
  font-size: 1.125rem;
}

.size-sm{
  font-size: 0.875rem;
}


/* 1.3 Fields */


.form-group{
  margin-bottom: 2rem;
}

.form-control,
textarea.form-control{
  font-size: 1em;
  height: 3.625em;
  border-radius: 0;
  padding-left: 22px;
  color: #bbbbbb;
  background-color: transparent;
  border:0;
  border-bottom:1px solid rgba(255,255,255,0.6);
  -webkit-box-shadow:none;
          box-shadow:none;
      appearance: none;
      -webkit-appearance: none;
  -webkit-transition: all .15s;
       -o-transition: all .15s;
          transition: all .15s;
}

textarea.form-control{
  height: 7.9em;
  padding-top:1.1em;
  resize:none;
}

.form-control:focus{
  border-color:#D4F21B;
  outline: 0;
  -webkit-box-shadow:none;
          box-shadow:none;
          background-color: none;
}

.form-control::-moz-placeholder {
  color: #bbbbbb;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #bbbbbb;
}

.form-control::-webkit-input-placeholder {
  color: #bbbbbb;
}

label.error{
  border-color:#D4F21B;
  padding:9px 0 0 22px;
  font-size:0.9rem;
}

.mc-label{
  padding:9px 0 0 22px;
  font-size:0.9rem;
  color: #fff;
}



/* 1.4 Buttons */



.btn{
  font-family: 'Karla', sans-serif;
  position: relative;
  display: inline-block;
  border:0.2em solid #D4F21B;
  border-radius: 0;
  padding:1em 2.4em 1em;
  font-size: 0.875em;
  color:#000;
  white-space: nowrap;
  text-align: center;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none;
  background-color:#D4F21B;
  font-weight: 700;
  border-width: 1px;
  -webkit-transition: all .3s ease-out!important;
          transition: all .3s ease-out!important;
}

.btn:hover,
.btn:focus,
.btn:active{
  color: #000;
  background-color: #ecff73;
  border-color:#ecff73;
  -webkit-box-shadow:none;
  box-shadow: none;
  outline: none!important;
}

button:focus:not(:focus-visible){
  outline: none;
}

.btn-white{
  background-color: #fff;
  border-color: #fff;
  color: #343434;
}

.btn-white:hover{
  background: transparent;
  border-color: #fff;
  color: #fff;
}

.btn-b-white{
  background-color: transparent;
  border-color: #fff;
}

.btn-b-white:hover{
  background-color: #fff;
  color: #000;
}

.btn-bg-dark:hover,
.btn-bg-dark:focus{
  color: #fff;
  border-color:#fff;
}


/* 1.5 Icons */


.icon-play{
  position: absolute;
  width:5.15rem;
  height: 5.15rem; 
  left: 50%;
  top:50%;
  transform:translate(-50%,-50%);
  border:1px solid #fff;
  border-radius: 50%;
  transition:all 0.3s ease;
} 

.icon-play:before{
  position: absolute;
  top: 50%;
  left: 50%;
  margin:-6px 0 0 -5px;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 12px;
  border-color: transparent transparent transparent #fff;
}

.icon-play:hover{
  border:1px solid #D4F21B;
  background-color:#D4F21B; 
  color: #343434;
}

.icon-play:hover:before{
  border-color: transparent transparent transparent #000;
}


/* 1.6 Loader */



.loader{
  position:absolute;
  z-index: 10;
  z-index: 100;
  left: 0;
  width: 100%;
  top:0;
  height: 100%;
  background: #fff;
}

.spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.double-bounce1, .double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #D4F21B;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out;
}

.double-bounce2 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

@-webkit-keyframes sk-bounce {
  0%, 100% { -webkit-transform: scale(0.0) }
  50% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bounce {
  0%, 100% { 
    transform: scale(0.0);
    -webkit-transform: scale(0.0);
  } 50% { 
    transform: scale(1.0);
    -webkit-transform: scale(1.0);
  }
}



/* 1.7 Backgrounds */


.bg-light{
  background: #f5f5f5!important;
}

.bg-dark{
  background:#1d1d1d!important;
  color:#86878a;
}

.bg-dark .row-experience:nth-child(even){
  background-color:#272727;
}

.bg-dark .btn:hover,
.bg-dark .btn:focus{
  color: #fff
}

.bg-primary{
  background:#23a592!important;
  color:#fff;
}

.bg-dark .progress{
  background: #383838;
}



/* 1.8 Colors */



.text-dark{
  color:#000!important;
}

.text-white{
  color:#fff!important;
}

.text-gray{
  color:#767676!important;
}

.text-muted{
  color: #bbbbbb!important;
}

.text-primary{
  color:#D4F21B!important;
}

.text-highlight{
  background-color:#D4F21B;
  color:#000!important;
  padding:0.08em 0.12em;
  -webkit-box-decoration-break:clone;
  box-decoration-break:clone;
}

.text-lg{
  font-size:1.125rem;
}



/*-------------------------------------------------------------------------------
  2. Navbar
-------------------------------------------------------------------------------*/



.navbar{
  position: absolute;
  z-index: 10;
  width: 100%;
  padding: 0 1.5rem;
  border-bottom: 1px solid rgba(52,52,52,0.1);
  height:4.7rem;
}


@media(min-width: 992px){
  .navbar{
    padding: 0 3rem;
  }
}

.navbar,
.navbar a,
.navbar a:hover,
.navbar a:focus{
  color:#343434;
}

.toggler{
 position: absolute;
 right: 0;
 width:2rem;
 height: 2rem;
 padding:0;
 background: none;
 border:0;
}

.toggler:focus{
  outline: none;
}

.toggler-icon{
  display: block;
  border-top:2px solid #000;
  margin-top: 0.5rem;
}

.toggler-icon:first-child{
  margin-top: 0;
}

.navbar-brand{
  position: absolute;
  font-family: 'Karla', sans-serif;
  font-size:1.875rem;
  font-weight: 700;
  color:#fff;
  margin-right: 4rem;
  padding:0;
  line-height: 1;
}

.navbar-brand:hover,
.navbar-brand:focus{
  color:#fff;
}

@media (max-width: 1500px){
  .navbar-brand{
    position: static;
    float: left;
  }
  .navbar .container{
    width: auto;
  } 
}

@media (max-width: 767.98px){
  .navbar-brand{
    font-size: 1.5rem;
  }
}

.navbar ul{
  margin-bottom:0;
}

.navbar-desctop .phone,
.navbar-desctop .email{
  float: left;
  font-family: 'Karla', sans-serif;
  position: relative;
  top:0.3rem;
  margin-right: 4rem;
}

.navbar-bottom{
  position: absolute;
  left: 0;
  width: 100%;
  bottom:0;
  padding:0 1.5rem 3rem 1.5rem;
}

@media (min-width: 992px){
  .navbar-bottom{
    padding-left: 3rem;
    padding-right:3rem;
  }
}

.navbar-bottom{
  font-family: 'Karla', sans-serif;
  color: #000;
}

.navbar-bottom .social{
  position: relative;
  z-index: 10;
  float: left;
}

.navbar-bottom .copy{
  float: right;
  position: relative;
  z-index: 10;
}

.social-icons li{
  float: left;
  margin-right: 1.5rem;
}

.social-icons svg{
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  fill:#000;
  transition: all 0.3s ease;
}

.social-icons a:hover svg{
  fill:#D4F21B;
}

.navbar-bottom-white{
  color: #fff;
}

.navbar-bottom-white .social-icons svg{
  fill: #fff;
}



/* 2.1 Navbar Desktop */



.navbar-desctop:before{
  content:'';
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 0;
  background:#fff;
  transition: all 0.3s ease;
}

.navbar-desctop .position-relative.w-100{
  display: flex;
  align-items: center;
  height: 100%;
}

.navbar-nav-desctop{
  font-family: 'Montserrat', sans-serif;
  font-size:0.8rem;
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 0.05em;
  margin-top:0.3rem;
}

.nav-link{
  padding: 0;
}

.navbar-nav-desctop li a{
  color: #343434;
  transition:all 0.3s;
}

.navbar-nav-desctop li a:hover{
  text-decoration: none;
}

.navbar-nav-desctop > li{
  position: relative;
  float: left;
  margin-right: 2.1rem;
} 

.navbar-nav-desctop > li > a{
  display: flex;
  align-items: center;
}

.navbar-nav-desctop > li > .active,
.navbar-nav-desctop >  li:hover > a{
  color:#767676;
}

.navbar-nav-desctop li ul{
  opacity: 0;
  visibility: hidden;
  padding:0.7rem 1.8rem;
  position: absolute;
  top:85%;
  background:#1a1c26;
  color:#000;
  min-width: 12rem;
  margin-left: -1.5rem;
  transition:all 0.3s linear;
}

.navbar-nav-desctop li:hover ul{
  top:100%;
  opacity: 1;
  visibility: visible;
}

.navbar-nav-desctop li ul li{
  margin:1rem 0;
}

.navbar-nav-desctop li ul li a{
  opacity: 0.5;
  display: block;
}

.navbar-nav-desctop li ul .active a,
.navbar-nav-desctop li ul li:hover a{
  opacity: 1;
}



/* 2.2 Navbar Mobile */


.click-capture{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
  z-index: 99;
  background: rgba(0,0,0,0.3);
  transition: opacity 0.5s;
}

.navbar-mobile{
  display: block;
  align-items: baseline;
  flex-wrap: unset;
  padding:3.9rem 2.6rem 1.3rem 4.4rem;
  position: fixed;
  top:0;
  bottom:0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 110;
  background-color: #1b001d;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  display: -ms-flexbox;
  box-shadow:0 0 50px rgba(0,0,0,0.1);
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
  display: flex;
  flex-direction: column;
  -webkit-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  transition: all 0.6s ease;
}

.navbar-mobile .language{
  margin-top:0;
  font-size: 0.85rem;
}

.navbar-mobile .language li{
  float: left;
  color: #fff;
  margin-right: 1rem;
}

.navbar-mobile .language li a{
  color: #fff;
}

.navbar-mobile .language .active a,
.navbar-mobile .language li a:hover{
  color: #D4F21B;
  text-decoration: none;
}

.navbar-mobile .close{
  position: absolute;
  right: 1rem;
  top:0.5rem;
  font-size: 3rem;
  line-height: 1;
  color: #fff;
  transition:all 0.3s ease;
  cursor: pointer;
  opacity: 1;
}

.navbar-mobile .close svg{
  display: block;
  width: 3rem;
  height: 3rem;
}

.navbar-mobile .close:hover{
  opacity: 1;
  color:#D4F21B;
}

@media (min-width: 576px){
  .navbar-mobile{
    width: 50%;
    max-width: 32rem;
  }
}

.navbar-mobile-footer{
  margin-top: auto;
  color: #fff;
}

.navbar-nav-mobile{
  display: block;
  font-size:2.5vh;
  margin-top: 8vh;
  font-weight: 600;
}

.navbar-nav-mobile  li{
  margin-bottom: 4.4vmin;
}

.navbar-nav-mobile li a{
  color:#fff;
}

.navbar-nav-mobile li .active,
.navbar-nav-mobile  li a:hover,
.navbar-nav-mobile  li a:focus{
  color:#D4F21B;
}

.menu-is-open{
  overflow:hidden;
}

.menu-is-open .navbar-mobile{
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
}

.menu-is-open .click-capture{
  visibility: visible;
  opacity: 1;
}


/* 2.3 Navbar Fixed */



.navbar.fixed{
  position: fixed;
  z-index: 10;
  top:0;
  box-shadow:0 0 30px rgba(0,0,0,0.1);
}

.navbar.fixed:before{
  height: 100%;
}


/* 2.4 Navbar White */


.navbar-white{
  border-bottom: 1px solid rgba(255,255,255,0.1);
}

.navbar-white:not(.fixed) .phone,
.navbar-white:not(.fixed) .email,
.navbar-white:not(.fixed) a,
.navbar-white:not(.fixed) a:hover{
    color: #fff;
}

.navbar-white:not(.fixed) .navbar-nav-desctop li a{
  color: #fff;
}

.navbar-white:not(.fixed) .navbar-nav-desctop > .active > a,
.navbar-white:not(.fixed)  .navbar-nav-desctop > li > .active, 
.navbar-white:not(.fixed)  .navbar-nav-desctop > li:hover > a {
    color: #23a592;
}

.navbar-white:not(.fixed) .social-icons svg{
  fill: #fff;
}

.navbar-white:not(.fixed) .social-icons a:hover svg{
  fill: #23a592;
}

.navbar-white:not(.fixed) .toggler-icon{
  border-color: #fff;
}

.navbar-desctop.navbar-light{
  background: #fff;
}

.navbar-desctop.navbar-scrolled{
  background-color: rgba(12,8,28,0.55);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

body.color-ready .navbar-brand{
  -webkit-transition: color .25s ease .75s;
          transition: color .25s ease .75s;
}

body.color-ready.move-up .navbar-brand{
  -webkit-transition: color .25s ease;
          transition: color .25s ease;
}

body.color-ready.sliding .toggler-icon{
  -webkit-transition: border-color .25s ease .75s;
          transition: border-color .25s ease .75s;
}

body.color-ready.sliding.move-up .toggler-icon{
  -webkit-transition: border-color .25s ease;
          transition: border-color .25s ease;
}

body.color-ready.sliding .navbar-bottom,
body.color-ready.sliding .social-icons svg{
  -webkit-transition: color .35s ease, fill .35s ease;
          transition: color .35s ease, fill .35s ease;
}

body.color-ready.sliding.move-up .navbar-bottom,
body.color-ready.sliding.move-up .social-icons svg{
  -webkit-transition: color .35s ease .65s, fill .35s ease .65s;
          transition: color .35s ease .65s, fill .35s ease .65s;
}


/*-------------------------------------------------------------------------------
  3. Main
-------------------------------------------------------------------------------*/



/* 3.1 Masthead */



.masthead{
  position: relative;
  min-height: 100vh;
  background-size: cover;
  display: flex;
  align-items: center;
  padding:9rem 0 5rem 0;
  background-position: left top;
  background-size: cover;
}

.opener{
  position: relative;
  z-index: 1;
  width: 100%;
}

.opener .modal-content{
  background-color: rgba(255,255,255,0.9);
}

h1 + .line{
  margin-top:15vh;
  width: 25%;
  border-top:3px  solid #D4F21B;
  transition:all .3s ease;
}

#home:before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  pointer-events:none;
  background-image:linear-gradient(160deg, rgba(30,14,66,0.35), rgba(12,6,28,0.7) 70%), url('../images/rene-masthead-1920x1080.png');
  background-size:100% 100%, cover;
  background-position:center, center;
}



/* 3.2 Sections */



.section{
  position: relative;
  padding:9rem 0;
}

.section-sm{
  padding: 6rem 0;
}

.section h2{
  margin-top: 0;
}

.pp-section{
  background: #fff;
  background-position: 50%;
  background-size: cover;
  padding:8rem 0 6rem;
  height: 100vh;
  height: 100dvh;
}

.pp-easing{
  -webkit-transition-duration: 1s;
          transition-duration: 1s;
}

@media (max-width: 767.98px){
  .pp-easing{
    -webkit-transition-duration: .33s;
            transition-duration: .33s;
  }

  body.color-ready .navbar-brand,
  body.color-ready.move-up .navbar-brand{
    -webkit-transition: color .33s ease;
            transition: color .33s ease;
  }

  body.color-ready.sliding .toggler-icon,
  body.color-ready.sliding.move-up .toggler-icon{
    -webkit-transition: border-color .33s ease;
            transition: border-color .33s ease;
  }

  body.color-ready.sliding .navbar-bottom,
  body.color-ready.sliding.move-up .navbar-bottom,
  body.color-ready.sliding .social-icons svg,
  body.color-ready.sliding.move-up .social-icons svg{
    -webkit-transition: color .33s ease, fill .33s ease;
            transition: color .33s ease, fill .33s ease;
  }

  .navbar-mobile,
  .click-capture{
    -webkit-transition-duration: .33s;
            transition-duration: .33s;
  }
}

.section:not(#home) .intro{
  opacity: 0;
  transform:translateY(-40px);
  transition:all 0.7s;
}

.section:not(#home) .intro.animate{
  opacity: 1;
  transform:translateY(0);
}

.pp-scrollable{
  padding:0;
  overflow-x: hidden;
  scrollbar-width: none;
}

.pp-scrollable::-webkit-scrollbar{
  display: none;
}

.pp-scrollable .intro{
  width: 100%;
  height: 100%;
  white-space: nowrap;
}

.pp-scrollable .intro:before{
  content: '';
  display: inline-block;
  height: 100vh;
  height: 100dvh;
  vertical-align: middle;
}

.pp-scrollable .scroll-wrap{
  width: 100%;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding: 8rem 0 6rem;
  white-space: normal;
}

.progress-nav{
  position: fixed;
  z-index: 10;
  top: 50%;
  right:1.5rem;
  transform: translate(0,-50%);
}

@media(min-width: 992px){
  .progress-nav{
    right: 3rem;
  }
}

@media (max-width: 767.98px){
  .progress-nav{
    right: 0.25rem;
  }
}

.progress-nav li{
  position: relative;
  width: 3px;
  height:30px;
  -webkit-transition: background-color .3s cubic-bezier(.46,.03,.52,.96);
  transition: background-color .3s cubic-bezier(.46,.03,.52,.96);
  background-color: #000;
}

.progress-nav li:before{
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 3px;
  height: 0;
  content: '';
  transition:all .3s ease;
   background-color: #D4F21B;
}

.progress-nav li:before{
  height: 30px;
}

.progress-nav li.active ~ li:before {
    background-color: #101010;
}

.progress-nav-white li.active ~ li:before{
  background-color: #fff;
}



/* 3.3 About */



.experience-info{
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-60%);
  margin-top: -1.5rem;
  white-space: nowrap;
}

.experience-number{
  display: inline-block;
  font-size: 6rem;
  line-height: 1;
  font-family: 'Karla', sans-serif;
  color:#D4F21B;
  font-weight: 700;
}

.experience-text{
  display: inline-block;
  color: #000;
  line-height: 1.4;
  font-weight: 700;
  font-size: 1.2rem;
  position: relative;
  left: 1rem;
}

@media (max-width: 767.98px){
  .experience-info{
    transform: translateX(-50%);
  }
  .experience-number{
    font-size: 4rem;
  }
  .experience-text{
    font-size: 1rem;
    left: 0.75rem;
  }
}



/* 3.4 Live Events */



.row-experience{
  padding:2rem 0;
  border-top: 1px solid rgba(255,255,255,0.3);
}

.row-experience:first-child{
  padding-top:0;
  border-top:0;
}

.row-experience:last-child{
  padding-bottom:0;
}

.row-experience img{
  width: auto!important;
}

#live-events .row-experience{
  padding:1.6rem 0;
  border-top-color: rgba(0,0,0,0.1);
}

#live-events .event-date{
  display: flex;
  align-items: baseline;
}

#live-events .event-day{
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1;
  color: #D4F21B;
}

#live-events .event-month{
  margin-left: 0.65rem;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #000;
}

#live-events .event-name{
  margin: 0;
}

#live-events .event-ticket{
  display: inline-block;
  font-weight: 700;
  color: #000;
  text-decoration: none;
  box-shadow: inset 0 -0.55em 0 #D4F21B;
  transition: box-shadow 0.2s ease;
}

#live-events a.event-ticket:hover{
  box-shadow: inset 0 -1.6em 0 #D4F21B;
  color: #000;
}

#live-events .event-ticket-disabled{
  color: #bbbbbb;
  box-shadow: none;
  cursor: default;
}

.shows-heading{
  display: flex;
  align-items: center;
  gap: 1rem;
}

.shows-manage{
  width: 3rem;
  height: 3rem;
  border: 0;
  background: #D4F21B;
  color: #000;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  opacity: 0;
  transition: opacity .2s ease;
}

.shows-heading:hover .shows-manage,
.shows-manage:focus{
  opacity: 1;
}

.shows-manage:focus{
  outline: 2px solid #000;
  outline-offset: 2px;
}

.shows-admin{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 300;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  background: rgba(12,8,28,0.75);
}

.shows-admin[hidden]{
  display: none;
}

.shows-admin-box{
  position: relative;
  width: 100%;
  max-width: 780px;
  max-height: 88vh;
  overflow-y: auto;
  padding: 2.2rem 2rem;
  border: 1px solid #D4F21B;
  border-radius: 0;
  background: rgba(27,0,29,0.97);
  color: #fff;
}

.shows-admin-box h3{
  color: #fff;
}

.shows-admin-box input:focus{
  outline: none;
  border-bottom-color: #D4F21B;
}

.shows-admin-box input::placeholder{
  color: rgba(255,255,255,0.4);
}

.shows-admin-close{
  position: absolute;
  top: 0.4rem;
  right: 1rem;
  border: 0;
  background: none;
  font-size: 2.6rem;
  line-height: 1;
  color: #fff;
  cursor: pointer;
}

.shows-admin-lock-row{
  display: flex;
  gap: 0.8rem;
  margin-top: 1.5rem;
}

.shows-admin-lock-row input{
  flex: 1;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,0.6);
  background: transparent;
  color: #fff;
  padding: 0.75rem 0.2rem;
}

.shows-admin-error{
  display: none;
  margin-top: 1rem;
  color: #ff6b6b;
}

.shows-admin-row{
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.6rem;
}

.shows-admin-row input{
  width: 100%;
  min-width: 0;
  border: 0;
  border-bottom: 1px solid rgba(255,255,255,0.6);
  background: transparent;
  color: #fff;
  padding: 0.55rem 0.2rem;
  font-size: 0.95rem;
}

.shows-admin-row input.day{
  max-width: 4rem;
}

.shows-admin-row input.month{
  max-width: 7.5rem;
}

.shows-admin-row .remove{
  border: 0;
  background: none;
  padding: 0 0.3rem;
  font-size: 1.7rem;
  line-height: 1;
  color: #ff6b6b;
  cursor: pointer;
}

.shows-admin-actions{
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 1.5rem;
}

.shows-admin-actions .btn{
  padding: 0.9rem 1.4rem;
  font-size: 0.8rem;
}

.shows-admin-status{
  margin: 1rem 0 0;
  color: #D4F21B;
}

.shows-admin-status.error{
  color: #ff6b6b;
}

@media (max-width: 767.98px){
  .shows-admin{
    padding: 0;
  }

  .shows-admin-box{
    width: 100%;
    max-width: none;
    height: 100%;
    max-height: none;
    padding: 1.6rem 1.1rem;
  }

  .shows-admin-row{
    flex-wrap: wrap;
    row-gap: 0.3rem;
  }

  .shows-admin-row input{
    font-size: 1rem;
  }

  .shows-admin-row input.day{
    max-width: 3.5rem;
  }

  .shows-admin-row input.month{
    flex: 1 1 6rem;
    max-width: none;
  }

  .shows-admin-row input[data-field="name"]{
    order: 2;
    flex: 1 1 100%;
  }

  .shows-admin-row input[data-field="url"]{
    order: 3;
    flex: 1 1 100%;
  }

  .shows-admin-row .remove{
    order: 1;
    margin-left: auto;
  }

  .shows-admin-actions .btn{
    flex: 1 1 100%;
  }
}


.download-cv{
  display: inline-block;
  margin-top: 3.7rem;
  position: relative;
  z-index: 1;
}

.owl-dots{
  position: absolute;
  width: 100%;
  margin-top:3.5rem;
  text-align: center;
}

.owl-dot{
  display: inline-block;
  margin:0 0.35rem;
}

.owl-dot:focus{
  outline: none;
}

.owl-dots span{
  display: block;
  width: 20px;
  height:3px;
  background-color: #d6d6d6;
}

.owl-dot.active span{
  background-color: #D4F21B;
}

.owl-nav{
  font-family: 'Tahoma';
  position: absolute;
  right: 0;
  top: 0;
  margin-top: -8.6rem;
  font-size: 6rem;
}

.owl-prev{
  margin-right: 0.6rem;
}

.owl-next,
.owl-prev{
  opacity: 0.45;
  transition: all 0.3s;
}

.owl-prev:focus,
.owl-next:focus{
  outline: none;
}

.owl-prev:hover,
.owl-next:hover{
  opacity: 1!important;
  color:#D4F21B!important;
}

@media (max-width: 767.98px){
  .owl-nav{
    margin-top: -7rem;
  }
}



/* 3.5 Portfolio */



.project-wrap{
  width: 100%;
  position: relative;
  min-height: 100%;
}

.bg-changer{
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow:hidden;
}

.section-bg{
  position: absolute;
  left: 0;
  top:0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}

.bg-changer .section-bg{
  opacity: 0;
  will-change: opacity, transform;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-transition: opacity 0.5s 0.2s ease,  transform 5s 0.2s ease;
  -o-transition: opacity 0.5s 0.2s ease,  transform 5s 0.2s ease;
  transition: opacity 0.5s 0.2s ease, transform 5s 0.2s ease;
  background-color: #6f52b8;
  background-blend-mode: multiply;
  -webkit-filter: saturate(0.85) contrast(1.05) brightness(1.02);
  filter: saturate(0.85) contrast(1.05) brightness(1.02);
}

.bg-changer .section-bg:after{
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  pointer-events:none;
  background-image:
    radial-gradient(65% 85% at 10% 15%, rgba(214,45,255,0.32), transparent 65%),
    radial-gradient(60% 80% at 90% 20%, rgba(40,210,255,0.28), transparent 60%),
    linear-gradient(160deg, rgba(30,14,66,0.35), rgba(12,6,28,0.7) 70%);
  background-size:100% 100%, 100% 100%, 100% 100%;
  background-repeat:no-repeat;
}

.bg-changer .active{
  opacity: 1;
  -webkit-transform: scale(1.05);
  -ms-transform:scale(1.05);
  -o-transform: scale(1.05);
  transform: scale(1.05);
}

.bg-changer .section-bg:first-child{
  opacity: 1;
}

.row-project-box{
  margin-top: -30px;
}

.col-project-box{
  margin-top: 30px;
}

.project-box{
  display: block;
  padding-bottom: 30%;
  position: relative;
  border:1px solid rgba(255,255,255,0.5);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s  ease;
}

.project-box-inner{
  position: absolute;
  left: 0;
  top:0;
  width: 100%;
  height: 100%;
  padding:2.14rem 1.928rem;
}

.project-box h4{
  margin:0;
  color: #fff;
}

.project-category{
  color: #cccccc;
  margin-top: 0.5rem;
}

.project-box:hover{
  background: #D4F21B;
  text-decoration: none;
  border-color: transparent;
}

.project-box:hover h4{
  color: #000;
}

.project-box:hover .project-category{
  color:#666666;
}

@media (min-width: 768px){
  .project-box {
    padding-bottom: 75%;
  }
  .project-category{
    position: absolute;
    bottom:1.2rem;
  }
}



/* 3.6 Contact */



.message{
  margin-top: 2rem;
  display: none;
  padding: 1.2rem 1.5rem;
  border: 1px solid #fff;
  color: #fff;
}

#success-message{
  border-color:#D4F21B;
  color:#D4F21B;
  background:rgba(212,242,27,0.07);
}

#error-message,
#incomplete-message{
  border-color:#ff6b6b;
  color:#ff6b6b;
  background:rgba(255,107,107,0.07);
}

.instagram-link svg{
  width: 2rem;
  height: 2rem;
  fill:#fff;
  transition:fill .3s ease;
}

.instagram-link:hover svg{
  fill:#D4F21B;
}

@media (max-width: 767.98px){
  .section:not(#home) .intro{
    -webkit-transition-duration: .33s;
            transition-duration: .33s;
  }

  .progress-nav li,
  .progress-nav li:before{
    -webkit-transition-duration: .33s;
            transition-duration: .33s;
  }

  .navbar-desctop{
    -webkit-transition: background-color .33s ease;
            transition: background-color .33s ease;
  }

  .navbar-mobile a,
  .navbar-mobile .close{
    -webkit-transition-duration: .33s;
            transition-duration: .33s;
  }
}

