.menu {
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: block;
    position: fixed;
    padding: 0;
    height: 30px;
    right: 20px;
    z-index: 9999;
    top: 12px;
}

.line {
    fill: none;
    stroke: black;
    stroke-width: 6;
    transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
        stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
}
.line1 {
    stroke-dasharray: 60 207;
    stroke-width: 6;
}
.line2 {
    stroke-dasharray: 60 60;
    stroke-width: 6;
}
.line3 {
    stroke-dasharray: 60 207;
    stroke-width: 6;
}
.opened .line1 {
    stroke-dasharray: 90 207;
    stroke-dashoffset: -134;
    stroke-width: 6;
}
.opened .line2 {
    stroke-dasharray: 1 60;
    stroke-dashoffset: -30;
    stroke-width: 6;
}
.opened .line3 {
    stroke-dasharray: 90 207;
    stroke-dashoffset: -134;
    stroke-width: 6;
}

.icon-desktop:before,
.icon-menu-close:before,
.icon-menu:before,
.icon-mobile:before,
.icon-submenu-down:before,
.icon-submenu-right:before,
.icon-world:before,
header h1:before,
.nav-button:before,
.nav-close:before,
.nav .nav-submenu > a:after,
.nav > ul > .nav-submenu > a:after {
	font-family: "FontAwesome";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	text-decoration: none;
	text-transform: none;
	vertical-align: top;
}

.icon-desktop:before {
	content: "\E001";
}

.nav-submenu, .nav-menu {
    text-align: center;
}


.nav-lock-scroll {
	overflow: hidden;
}

.nav-desktop {
    display: none;
}


.nav.mobile {
	display: none;
	position: fixed;
	top: 60px;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 900;
	overflow-x: hidden;
	overflow-y: auto;
}

.nav.mobile ul {
	display: block;
	position: relative;
	zoom: 1;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.nav.mobile a,
.nav.mobile a:hover,
.nav.mobile a:active,
.nav.mobile a:visited {
	display: block;
	position: relative;
}

.floatingNav {
    border-radius: 2px;
    box-shadow: 0px 1px 12px #cccccc;
}

.logo {
    height: 30px;
}

.logo-footer {
    height: 120px;
}

.social-icons {
    margin: 30px 0;
    display: flex;
    width: 80vw;
    justify-content: space-evenly;
    max-width: 900px;
}

.social-icons2 {
    padding: 0;
    margin-top: 100px;
    display: flex;
    justify-content: space-evenly;
}


header {
	display: flex;
	position: fixed;
    align-items: center;
    padding: 0 15px;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	height: 60px;
	background: white;
	color: black;
}

.typewrite {
    text-decoration: none;
}

.lottie {
    margin-left: auto;
    margin-right: auto;
    padding-left: 45px;
}

.container-scroll {
	width: 100%;
	height: 100%;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.field {
	display: flex;
	align-items: center;
	justify-content: space-around;
	width: 300px;
}

.mouse {
    margin-top: 30px;
	width: 30px;
	height: 60px;
	border: 3px solid rgb(240, 240, 240);
	border-radius: 60px;
	position: relative;
    display: none;
}

.mouse::before {
    content: '';
    width: 9px;
    height: 9px;
    position: absolute;
    top: 5px;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgb(240, 240, 240);
    border-radius: 50%;
    opacity: 1;
    animation: wheel 2s infinite;
    -webkit-animation: wheel 2s infinite;
}

@keyframes wheel {
	to {
		opacity: 0;
		top: 45px;
	}
}

@-webkit-keyframes wheel {
	to {
		opacity: 0;
		top: 45px;
	}
}



.nav.mobile {
	line-height: 44px;
	background: white;
	color: black;
}

.nav.mobile ul {
	border-radius: 0 0 6px 6px;
	background: white;
}

.nav.mobile ul ul {
	background: white;
}

.nav.mobile li {
    font-size: 37px;
    font-weight: 700;
    text-align: left;
	cursor: pointer;
}

.nav.mobile li:hover > a,
.nav.mobile li.nav-active > a {
	color: gray;
	background: white;
}

.nav-submenu > ul {
	margin-left: 10px;
}

.nav-submenu > a {
	padding-right: 30px !important;
}

.nav.mobile a,
.nav.mobile a:hover,
.nav.mobile a:active,
.nav.mobile a:visited {
	border-radius: 6px;
	padding: 0 20px;
	color: black;
	text-decoration: none;
}


nav ul li ul li {
    font-size: 20px !important;
    font-weight: 500 !important;
    margin-bottom: 0;
}

.nav-submenu > a:after {
	position: absolute;
	display: block;
	left: 200px;
	top: 0px;
	content: "\f078";
    font-size: 20px;
}



@media only screen and (min-width: 960px) {


    .menu ,.nav.mobile {
        display: none;
    }


    .center {
        text-align: center;
    }

    .desktop {
        display: grid;
    }

    .nav-desktop {
        display: flex;
        justify-content: space-around;
        align-items: center;
        position: relative;
        overflow: visible;
        right: 0;
        top: 0;
        cursor: pointer;
        color: #000;
    }
    .nav-desktop ul {
        display: flex;
        position: relative;
        zoom: 1;
        list-style-type: none;
        margin: 0;
        padding: 0;
    }

    .nav-desktop a,
    .nav-desktop a:hover,
    .nav-desktop a:active,
    .nav-desktop a:visited {
        border-radius: 6px;
        padding: 0 30px 1px;
        color: #000;
        text-decoration: none;
    }

    .nav li {
        position: relative;
        white-space: nowrap;
    }

    .nav > ul > li {
        display: inline-block;
    }

    .nav ul {
        display: block;
    }

    .nav ul ul {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 901;
    }

    .nav ul ul ul {
        top: 5px;
        left: 95%;
        z-index: 902;
    }

    .nav ul ul ul ul {
        z-index: 903;
    }

    .nav ul ul ul ul ul {
        z-index: 904;
    }

    .nav ul ul li.nav-left > ul {
        left: auto;
        right: 95%;
    }

    .nav-no-js .nav li:hover > ul {
        display: block;
    }

    body {
        padding: 0 !important;
    }

    header {
        position: sticky;
        justify-content: space-around;
        height: 70px;
        padding: 0 !important;
    }

    header h1:before {
        content: "\E001";
    }

    .nav-button {
        display: none;
    }

    .nav {
        padding: 0 !important;
    }

    .nav > ul > li {
        border-top: none;
    }

    .nav li > ul {
        box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.75);
    }

    .nav ul ul ul {
        border-radius: 0 6px 6px 6px;
    }

    .nav ul ul ul li:first-child {
        border-top: none;
    }

    .nav .nav-left > ul {
        border-radius: 6px 0 6px 6px;
    }

}

@media only screen and (max-width: 959px) {

    nav > ul {
        margin-top: 40px !important;
    }


    .nav-no-js .nav-button:hover + .nav,
    .nav-no-js .nav:hover,
    .nav-no-js .nav-button:hover + .nav + .nav-close,
    .nav-no-js .nav:hover + .nav-close {
        display: block;
    }

}

/* Clear floats */
  .row:after {
    content: "";
    display: table;
    clear: both
  }
  
  /* 2/3 column */
  .column-66 {
    float: left;
    width: 50%;
    padding-right: 30px;
  }
  
  /* 1/3 column */
  .column-33 {
    float: left;
    width: 50%;
    padding-left: 30px;
  }

  .column-34 {
      float: left;
      width: 60%;
      padding-right: 30px;
  }

  .column-64 {
    float: left;
    width: 40%;
    padding-right: 30px;
    }
  
  /* Add responsiveness - make the columns appear on top of each other instead of next to each other on small screens */
  @media screen and (max-width: 1000px) {
    .column-66,
    .column-33,
    .column-34,
    .column-64 {
      width: 100%;
      text-align: left;
      padding: 0;
    }
  }

