#home {
	position: relative;
}

body[data-topintro-menu=false] #home,
body[data-topintro-menu=false] #home .intro.centered-vertical {
	height: 100vh;
}
body.menu-open[data-topintro-menu=true] #home,
body.menu-open[data-topintro-menu=true] #home .intro.centered-vertical {
	height: calc(100vh - 88px);
}
body.menu-open.withtopnav[data-topintro-menu=true] #home,
body.menu-open.withtopnav[data-topintro-menu=true] #home .intro.centered-vertical {
	height: calc(100vh - 132px);
}
body.menu-open.main-navbar-top[data-topintro-menu=true] #home,
body.menu-open.main-navbar-top[data-topintro-menu=true] #home .intro.centered-vertical {
	height: calc(100vh - 125px);
}
body.menu-open.main-navbar-top.withtopnav[data-topintro-menu=true] #home,
body.menu-open.main-navbar-top.withtopnav[data-topintro-menu=true] #home .intro.centered-vertical {
	height: calc(100vh - 169px);
}
body.menu-close[data-topintro-menu=true] #home,
body.menu-close[data-topintro-menu=true] #home .intro.centered-vertical {
	height: calc(100vh - 64px);
}

/* body.menu-open[data-topintro-menu] .page-wrapper > main > section.full-page:first-child {
	transform: translateY(-8.8rem);
	margin-bottom: -8.8rem;
}
body.menu-open.withtopnav[data-topintro-menu] .page-wrapper > main > section.full-page:first-child {
	transform: translateY(-13.2rem);
	margin-bottom: -13.2rem;
}
body.menu-open.main-navbar-top[data-topintro-menu] .page-wrapper > main > section.full-page:first-child {
	transform: translateY(-12.5rem);
	margin-bottom: -12.5rem;
}
body.menu-open.main-navbar-top.withtopnav[data-topintro-menu] .page-wrapper > main > section.full-page:first-child {
	transform: translateY(-16.9rem);
	margin-bottom: -16.9rem;
}
body.menu-close[data-topintro-menu] .page-wrapper > main > section.full-page:first-child {
	transform: translateY(-6.4rem);
	margin-bottom: -6.4rem;
} */

.intro.centered-vertical {
	display: table;
	width: 100%;
}

.intro.centered-vertical > div {
	display: table-cell;
	vertical-align: middle;
}

.intro {
	font-family: 'Montserrat', sans-serif;
	position: relative;
	z-index: 101;
}

.topintro-center .intro-title,
.topintro-center .intro-1,
.topintro-center .intro-2,
.topintro-center .buttons {
	text-align: center;
}

.topintro-left .intro-title,
.topintro-left .intro-1,
.topintro-left .intro-2,
.topintro-left .buttons {
	text-align: left;
}

.topintro-right .intro-title,
.topintro-right .intro-1,
.topintro-right .intro-2,
.topintro-right .buttons {
	text-align: right;
}

.intro .intro-1,
.intro .intro-2 {
	font-size: 2.1rem;
	line-height: 1.2;
	letter-spacing: 0.25px;
}

.intro .intro-title {
	font-size: 4rem;
	line-height: 1.2;
	font-weight: 700;
}

.intro .intro-1 + .intro-title {
	padding-top: 1.5rem;
}

.intro .intro-1 + .intro-2 {
	padding-top: 2.5rem;
}

.intro .intro-title + .intro-2 {
	padding-top: 4rem;
}

.intro .intro-title + .buttons {
	padding-top: 4.9rem;
}

.intro .intro-1 + .buttons,
.intro .intro-2 + .buttons {
	padding-top: 5rem;
}

.topintro-left .buttons > .btn:not(:nth-last-child(1)) {
    margin-right: 2.8rem;
}

.topintro-right .buttons > .btn:not(:nth-last-child(1)),
.topintro-center .buttons > .btn:not(:nth-last-child(1)) {
    margin-right: 0;
}

.topintro-right .buttons > .btn:not(:nth-child(1)) {
    margin-left: 2.8rem;
}

.topintro-center .buttons > .btn {
    margin-left: 1.4rem;
    margin-right: 1.4rem!important;
}

.to-down-button {
	position: absolute;
	bottom: 3rem;
	left: 50%;
	width: 2.4rem;
	height: 2.1rem;
	transform: translate(-50%, 0%);
	text-align: center;
	display: block;
	cursor: pointer;
	z-index: 110;
    animation: bounceforscroll 1.5s linear 0s infinite;
}

@keyframes bounceforscroll {
	0%   {
		transform: translate(-50%, 5%);
    }
    50%   {
		transform: translate(-50%, -50%);
    }
    100%  {
		transform: translate(-50%, 5%);
    }
}

.to-down-button::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	border-top: 2.1rem solid;
	border-left: 1.2rem solid;
	border-right: 1.2rem solid;
	transition: border-top-color 0.2s linear;
}

@media (max-width: 480px) {
	.intro .intro-title {
		font-size: 3.6rem;
	}
	.intro .intro-1 + .intro-2 {
		padding-top: 2rem;
	}
	.intro .intro-title + .intro-2 {
		padding-top: 3.7rem;
	}
	.intro .intro-title + .buttons {
		padding-top: 4.6rem;
	}
	.intro .intro-1 + .buttons,
	.intro .intro-2 + .buttons {
		padding-top: 4.5rem;
	}
	.topintro-left .buttons > .btn:not(:nth-last-child(1)) {
	    margin-right: 1.4rem;
	}
	.topintro-right .buttons > .btn:not(:nth-child(1)) {
	    margin-left: 1.4rem;
	}
	.topintro-center .buttons > .btn {
	    margin-left: 0.7rem;
	    margin-right: 0.7rem!important;
	}
	.to-down-button {
		bottom: 1.5rem;
	}
}