@keyframes slide {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}
@font-face {
  font-family: "theseasons";
  src: url("../fonts/Fontspring-DEMO-theseasons-reg.otf");
}
.fonttest {
  font-family: "testfont";
}

body.loaded .fade-in {
  opacity: 1;
}

body.loaded .fly-left-slow, body.loaded .fly-left-slow-2 {
  opacity: 1;
  margin-left: 0%;
}

body.loaded .fly-right-slow {
  opacity: 1;
  margin-left: 0%;
}

body.loaded .fly-right-slow-2 {
  opacity: 1;
  margin-left: 0%;
}

body.loaded .fly-top, body.loaded .fly-top-2, body.loaded .fly-top-3 {
  opacity: 1;
  margin-top: 0;
}

body.loaded .fly-top-slow {
  opacity: 1;
  margin-top: 0%;
}

body.loaded .fly-top-slow-2 {
  opacity: 1;
  margin-top: 0%;
}

body.loaded #side-nav.is-active .fly-right {
  animation: 0.5s cubic-bezier(0.25, 0.01, 0.25, 1) 0s 1 slideInFromRight;
  opacity: 1;
  transform: translateX(0%);
}

.fade-in {
  opacity: 0;
  transition: all 2s 0.5s ease-out;
}

.fly-left-slow {
  opacity: 0;
  margin-left: -20%;
  transition: all 1.5s 1s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-left-slow-2 {
  opacity: 0;
  margin-left: -20%;
  transition: all 1.5s 1.5s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-right-slow {
  opacity: 0;
  margin-left: 20%;
  transition: all 1.5s 1s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-right-slow-2 {
  opacity: 0;
  margin-left: 20%;
  transition: all 1.5s 1.5s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-top {
  opacity: 0;
  margin-top: -300% !important;
  transition: margin 1s 0.5s cubic-bezier(0.25, 0.01, 0.25, 1), opacity 1s 1s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-top-2 {
  opacity: 0;
  margin-top: -300% !important;
  transition: margin 1.5s 1s cubic-bezier(0.25, 0.01, 0.25, 1), opacity 1.5s 1s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-top-3 {
  opacity: 0;
  margin-top: -300% !important;
  transition: margin 2s 1s cubic-bezier(0.25, 0.01, 0.25, 1), opacity 2s 1s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-top-slow {
  opacity: 0;
  margin-top: -20%;
  transition: all 1.5s 1s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

.fly-top-slow-2 {
  opacity: 0;
  margin-top: -20%;
  transition: all 1.5s 1.5s cubic-bezier(0.25, 0.01, 0.25, 1) !important;
}

* {
  font-family: "Inter", sans-serif;
  color: black;
  letter-spacing: 0.25px;
}

html {
  scroll-behavior: smooth;
}

body {
  overflow: hidden;
  scroll-behavior: smooth;
}

.display, .display * {
  font-family: "theseasons", sans-serif;
}

.has-border-right-gray {
  border-right: 1px solid rgba(255, 255, 255, 0.452);
}

input,
textarea,
button,
select,
a {
  -webkit-tap-highlight-color: transparent;
}

.is-red {
  color: #ce242b;
}

a.gray {
  color: #CCCCCC !important;
}
a.gray:hover {
  background-color: white !important;
  font-weight: 600;
}

.has-background-success {
  background-color: #10271c !important;
}

a.is-light {
  color: #000000 !important;
}
a.is-light:hover {
  background-color: transparent !important;
  color: #CCCCCC !important;
}
a.is-light:active {
  color: #CCCCCC !important;
  font-weight: 600 !important;
}

body {
  width: 100% !important;
  overflow-x: hidden;
  padding: 0;
  margin: 0;
}

.gray {
  color: #666 !important;
}

.light-gray {
  color: rgb(160, 160, 160) !important;
}

.has-background-danger {
  background-color: #ce242b !important;
  color: white;
}

.button,
.button::after {
  transition: all 0.25s ease-out 0.1s, color 0.35s ease-out, box-shadow 0.35s ease-out, opacity 0.2s ease-out;
}

.button {
  position: relative;
}

.button::before,
.button::after {
  content: "";
  position: absolute;
  z-index: -1;
}

.button.is-danger.is-hoverable {
  background: none;
  color: white;
  /* BUTTON 3 */
}
.button.is-danger.is-hoverable.navbar-item:hover {
  background: none;
  color: white !important;
}
.button.is-danger.is-hoverable::before {
  background-color: #ce242b;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
}
.button.is-danger.is-hoverable::after {
  opacity: 0;
  height: 100%;
  left: 40%;
  top: 0;
  width: 20%;
}
.button.is-danger.is-hoverable:hover:after {
  background-color: #a11d22;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  opacity: 1;
}

.darkest-gray {
  color: #000000;
}

.border-bottom-gray {
  border-bottom: 2px solid #4D4D4D;
}

.border-bottom-white {
  border-bottom: 0.15px solid rgba(255, 255, 255, 0.2666666667) !important;
}

.is-size-0 {
  font-size: 4rem !important;
  line-height: 1;
}

.is-size-1 {
  font-size: 3rem !important;
  line-height: 1;
}

.is-size-1.title {
  text-shadow: 0px 0px 9px rgba(255, 255, 255, 0.2941176471);
}

.is-size-2 {
  font-size: 2em !important;
  line-height: 1;
}

.is-size-2.has-text-weight-bold {
  font-size: 3rem !important;
}

.is-size-3.has-text-weight-bold {
  font-size: 2rem !important;
}

.work-item .has-text-weight-bold {
  font-weight: 900 !important;
}

.header {
  max-width: 1200px;
  margin: 0 auto;
}

#logo-container {
  padding: 2rem 0;
  padding-bottom: 0rem !important;
  transition: padding 0.5s ease;
}
#logo-container.minimize {
  padding: 0.8rem 0;
}

#nav-logo {
  margin-right: 4rem;
  margin-left: 1rem;
  transition: width 0.5s ease;
}
#nav-logo.minimize {
  width: 120px;
  margin-top: -20px;
}

#nav-logo2 {
  margin-right: 4rem;
  margin-left: 1rem;
  transition: width 0.5s ease;
}
#nav-logo2.minimize {
  width: 120px;
}

#navbarBurger {
  border: none;
  background-color: transparent !important;
  margin-top: 0.2rem;
  margin-right: 1rem;
  transition: width 0.5s ease;
  transition: margin 0.5s ease;
}
#navbarBurger:focus {
  border: none;
  outline: none !important;
}

nav.navbar {
  width: 100%;
  height: 70px;
  min-height: 1.5rem !important;
  z-index: 999;
}

#nav {
  background-color: transparent !important;
  transition: all 0.3s ease-in-out;
  height: 70px;
}

#nav-container.is-fixed-top {
  background-color: white !important;
}
#nav-container.is-fixed-top .navbar-brand img {
  filter: brightness(100%);
}
#nav-container.is-fixed-top * {
  color: rgb(23, 23, 23) !important;
}
#nav-container.is-fixed-top .underline:after {
  bottom: 20px;
  background: #575757;
}

.nav-container {
  width: 100% !important;
  z-index: 20 !important;
  background-color: transparent !important;
  transition: all 0.3s ease-in-out;
}
.nav-container * {
  color: white !important;
}
.nav-container .underline:after {
  bottom: 20px;
  background: #ffffff;
}
.nav-container .navbar-menu .navbar-item {
  height: 60px;
}
.nav-container .navbar-menu .navbar-dropdown .navbar-item {
  height: 40px;
}
.nav-container .navbar-brand img {
  filter: brightness(10000%);
}
.nav-container .navbar-brand .only-mobile {
  align-items: center;
}
.nav-container .navbar-start .navbar-item.dark-gray {
  color: #5052A2 !important;
  height: 70px !important;
}
.nav-container.is-fixed-top {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
}

.only-mobile {
  display: none !important;
}

.main-content {
  margin: 0 auto;
}

footer {
  background-image: url("../images/home/footer.jpg");
  background-repeat: no-repeat;
  background-position: top center !important;
  background-size: cover;
}
footer .footer-links {
  position: relative;
}
footer .footer-links a p {
  position: relative;
}
footer .footer-links a span.icon {
  margin-top: 10px;
}
footer .footer-links a span.ml-3 {
  margin-top: -10px;
}

.underline:after {
  background: none repeat scroll 0 0 transparent;
  bottom: 0;
  content: "";
  display: block;
  height: 2px;
  left: 0%;
  position: absolute;
  background: #0f0f0f;
  transition: width 0.3s ease 0s, left 0.3s ease 0s;
  width: 0;
}

.underline:hover:after {
  width: 100%;
  left: 0;
}

@media screen and (max-width: 1024px) {
  #nav {
    height: 70px !important;
  }

  .is-size-1 {
    font-size: 2rem !important;
  }

  .is-size-2 {
    font-size: 1.5rem !important;
  }

  .is-size-2.has-text-weight-bold {
    font-size: 2rem !important;
  }

  .is-size-3.has-text-weight-bold {
    font-size: 2rem !important;
  }

  .is-size-5 {
    font-size: 1rem !important;
  }

  nav.navbar {
    margin-right: 0;
    padding-right: 0 !important;
    position: relative;
    overflow-y: visible;
  }

  .navbar-menu {
    z-index: 20;
    margin-left: -15px;
  }
  .navbar-menu .navbar-item {
    height: 45px !important;
    padding-bottom: 0;
  }
  .navbar-menu .navbar-item .underline::after {
    bottom: 0px;
  }
  .navbar-menu .navbar-dropdown {
    background-color: white;
  }
  .navbar-menu .navbar-dropdown .navbar-item {
    height: 20px;
  }
}
@media screen and (max-width: 844) {
  footer {
    background-image: url("../images/home/footer-mobile.jpg");
  }
}
@media screen and (max-width: 768px) {
  .navbar-item {
    padding-left: 40px !important;
  }

  .is-size-0 {
    font-size: 2.5rem !important;
  }

  .is-size-1 {
    font-size: 2rem !important;
  }

  .is-size-2 {
    font-size: 1.5rem !important;
  }

  .is-size-4 {
    font-size: 1.25rem !important;
  }

  .is-size-5 {
    font-size: 1.25rem !important;
  }

  #logofolio {
    font-size: 3rem !important;
  }

  #nav {
    height: 65px !important;
  }

  .nav-container {
    width: 100%;
    height: 65px;
  }
  .nav-container.is-fixed-top {
    height: 65px;
  }

  #nav-logo {
    transition: width 0.5s ease;
    padding-bottom: 0 !important;
  }
  #nav-logo.minimize {
    width: 120px;
  }

  .only-mobile {
    display: inline !important;
  }

  nav.navbar {
    overflow-y: visible;
  }

  .navbar-menu {
    z-index: 20;
    margin-left: -15px;
  }

  .button.is-danger.is-hoverable {
    background: #ce242b;
    color: white;
  }

  .main-content {
    max-width: 90vw !important;
    z-index: 5;
  }

  footer {
    background-image: url("../images/home/footer-mobile.jpg");
  }

  .footer-links {
    flex-direction: column !important;
  }
  .footer-links .navbar-end {
    text-align: left;
  }
}
body::-webkit-scrollbar {
  width: 0.9rem;
}

body::-webkit-scrollbar-thumb {
  background: rgb(109, 109, 109);
  border-radius: 99vmax;
  border: 4px solid rgb(248, 238, 238);
}

body::-webkit-scrollbar-track {
  background: rgb(255, 255, 255);
}