@import url("https://fonts.googleapis.com/css?family=Titillium+Web:400,900&display=swap");
@import url("https://fonts.googleapis.com/css?family=Rajdhani:400,500,600,700&display=swap");

*,
:after,
:before {
	margin: 0;
	padding: 0;
	border: none;
	outline: none;
	box-sizing: border-box
}

:after,
:before {
	display: block
}

ol,
ul {
	list-style: none
}

a {
	text-decoration: none
}

select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}

.grid-limit {
	width: 95%;
	max-width: 1184px;
	margin: 0 auto
}

.grid {
	display: grid;
	grid-gap: 56px 16px;
	-ms-flex-pack: center;
	justify-content: center
}

.grid-3 {
	grid-template-columns: repeat(auto-fit, 284px)
}

.grid-4 {
	grid-template-columns: repeat(auto-fit, 384px)
}

@media screen and (max-width:479px) {
	.grid-4 {
		grid-template-columns: 100%
	}
}

::-moz-selection {
	color: #fff;
	background-color: #23d2e2
}

::selection {
	color: #fff;
	background-color: #23d2e2
}

body {
	font-size: 16px;
	background-color: #fff;
	overflow-x: hidden
}

a,
h1,
h2,
h3,
h4,
h5,
h6,
p {
	font-family: Rajdhani, sans-serif;
	line-height: 1em
}

a,
h1,
h2,
h3,
h4,
h5,
h6 {
	color: #3e3f5e
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 700
}

p {
	color: #7d7e9e
}

figure>img {
	width: 100%;
	height: 100%
}

.icon-logo-vikinger {
	fill: #fff;
	width: 28px;
	height: 40px
}

.button {
	display: inline-block;
	height: 54px;
	border-radius: 12px;
	background-color: #3e3f5e;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	line-height: 54px;
	text-align: center;
	cursor: pointer;
	box-shadow: 3px 5px 10px 0 rgba(62, 63, 94, .2);
	transition: background-color .2s ease-in-out
}

.button:hover {
	background-color: #23d2e2
}

.button.small {
	height: 42px;
	padding: 0 15px;
	font-size: 1rem;
	line-height: 42px !important;
	margin-top: 28px;
}

.button.tiny {
	height: 32px;
	font-size: .875rem;
	line-height: 32px;
	border-radius: 8px
}

.button.primary {
	background-color: #23d2e2;
	box-shadow: 4px 7px 12px 0 rgba(35, 210, 226, .2)
}

.button.primary:hover {
	background-color: #1bc5d4
}

.button.secondary {
	background-color: #7750f8;
	box-shadow: 4px 7px 12px 0 rgba(119, 80, 248, .2)
}

.button.secondary:hover {
	background-color: #603fd0
}

.button.tertiary {
	background-color: #615dfa;
	box-shadow: 4px 7px 12px 0 rgba(97, 93, 250, .2)
}

.button.tertiary:hover {
	background-color: #5753e4
}

.button.void {
	background-color: transparent;
	border: 1px solid #fff;
	box-shadow: none;
	transition: background-color .2s ease-in-out, border-color .2s ease-in-out
}

.button.void:hover {
	background-color: #3e3f5e;
	border-color: #3e3f5e
}

.logo {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border-radius: 16px;
	background-color: #615dfa
}

.logo .logo-icon {
	width: 18px;
	height: 27px
}

.logo.void {
	width: auto;
	height: auto;
	background-color: transparent
}

.logo.void .logo-icon {
	width: 28px;
	height: 40px
}

.branding {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center
}

.branding .branding-image {
	margin-right: 16px;
	width: 170px;
}

.branding .branding-title {
	color: #fff;
	font-family: "Microsoft YaHei";
	font-size: 1.5rem;
	font-weight: 900;
}

.architecture-item-list {
	display: -ms-flexbox;
	display: flex;
	background-color: #f8f8fb;
	overflow-x: hidden
}

.architecture-item-list .architecture-item {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 240px;
	position: relative
}

.architecture-item-list .architecture-item .architecture-image,
.architecture-item-list .architecture-item .architecture-image-hover {
	position: absolute;
	transition: opacity .2s ease-in-out, visibility .2s ease-in-out
}

.architecture-item-list .architecture-item .architecture-image-hover,
.architecture-item-list .architecture-item:hover .architecture-image {
	opacity: 0;
	visibility: hidden
}

.architecture-item-list .architecture-item:hover .architecture-image-hover {
	opacity: 1;
	visibility: visible
}

.demo-box .demo-box-cover {
	height: 180px;
	border-radius: 12px;
	box-shadow: 5px 9px 40px 0 rgba(216, 218, 254, .8);
	transition: transform .2s ease-in-out
}

.demo-box .demo-box-cover:hover {
	transform: translateY(-6px)
}

.demo-box .demo-box-title {
	margin-top: 24px;
	color: #3e3f5e;
	font-size: 1rem;
	font-weight: 700;
	text-align: center
}

.demo-box .demo-box-actions {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 26px;
	display: none
}

.demo-box .demo-box-actions .button {
	width: 80px;
	margin-right: 12px
}

.demo-box .demo-box-actions .button:last-child {
	margin-right: 0
}

.feature-item {
	padding: 0 24px 0 70px;
	position: relative
}

.feature-item .feature-item-image {
	position: absolute;
	top: 4px;
	left: 0
}

.feature-item .feature-item-title {
	font-size: 1.5rem
}

.feature-item .feature-item-text {
	margin-top: 18px;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.5555555556em
}

.feature-box {
	padding: 46px 32px 40px 110px;
	border-radius: 12px;
	position: relative;
	box-shadow: 0 0 40px 0 rgba(94, 92, 154, .12)
}

.feature-box.feature-box-no-image {
	padding-left: 28px
}

.feature-box .feature-box-image {
	margin-right: 20px;
	position: absolute;
	top: 40px;
	left: 28px;
	width: 70px;
}

.feature-box .feature-box-title {
	font-size: 1.25rem
}

.feature-box .feature-box-text {
	margin-top: 16px;
	font-size: 1rem;
	line-height: 1.5em;
	font-weight: 500
}

.feature-box .feature-box-text .bold {
	font-weight: 700
}

.feature-box .feature-box-text .bold.red {
	color: #fd4350
}

.log-box {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-align: center;
	align-items: center;
	padding: 36px 60px 28px 122px;
	border-radius: 12px;
	position: relative;
	box-shadow: 0 0 40px 0 rgba(94, 92, 154, .12)
}

.log-box+.log-box {
	margin-top: 16px
}

.log-box .log-box-image {
	position: absolute;
	top: 28px;
	left: 28px
}

.log-box .log-box-info-spaced {
	margin-right: 12px
}

.log-box .log-box-title-wrap {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center
}

.log-box .log-box-title-wrap .log-box-status {
	margin: 1px 8px 0 0
}

.log-box .log-box-title-wrap a {
	display: inline-block;
	width: 30px;
	height: 30px;
	border: 2px solid #eee;
	padding: 5px;
	margin: 0 5px;
	border-radius: 15px;
}

.log-box .log-box-title-wrap a img {
	width: 100%;

}

.log-box .log-box-title {
	margin-top: 4px;
	font-size: 1.25rem
}

.log-box .log-box-text {
	margin-top: 8px;
	font-size: 1rem;
	line-height: 1.5em;
	font-weight: 500
}

.circle {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background-color: #3e3f5e
}

.circle.primary {
	background-color: #23d2e2
}

.image-box-list {
	display: -ms-flexbox;
	display: flex
}

.image-box-list>:first-child {
	margin-right: 16px
}

.image-box-list .image-box {
	width: 100%;
	height: auto
}

.image-box {
	transition: transform .2s ease-in-out
}

.image-box:hover {
	transform: translateY(-12px)
}

@media screen and (max-width:1365px) {
	.architecture-item-list {
		display: none
	}
}

@media screen and (max-width:960px) {
	.log-box {
		display: block;
		padding: 28px
	}

	.log-box .log-box-image {
		position: static
	}

	.log-box .log-box-info {
		margin-top: 16px
	}
}

@media screen and (max-width:680px) {
	.image-box-list {
		display: block
	}

	.image-box-list>:first-child {
		margin-right: 0
	}

	.image-box-list>:last-child .image-box {
		margin-top: 16px
	}

	.image-box {
		transition: none
	}

	.image-box:hover {
		transform: none
	}
}

@media screen and (max-width:479px) {
	.feature-item {
		width: 90%;
		padding: 0;
		margin: 0 auto;
		text-align: center
	}

	.feature-item .feature-item-image {
		position: static
	}

	.feature-item .feature-item-title {
		margin-top: 26px
	}

	.feature-box {
		width: 90%;
		margin: 0 auto;
		padding: 64px 28px 32px
	}

	.feature-box.feature-box-no-image {
		padding-top: 40px
	}

	.feature-box .feature-box-image {
		margin-right: 0;
		top: -30px;
		left: 50%;
		margin-left: -30px
	}

	.feature-box .feature-box-text,
	.feature-box .feature-box-title {
		text-align: center
	}
}

.navigation-wrap {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1
}

.navigation-wrap.sticky {
	position: fixed;
	background-color: #fff;
	box-shadow: 0 0 80px 0 rgba(94, 92, 154, .1);
	animation: a .3s ease-in-out forwards
}

.navigation-wrap.sticky .branding .branding-title,
.navigation-wrap.sticky .menu .menu-item-link {
	color: #3e3f5e
}

.navigation {
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-align: center;
	align-items: center;
	height: 100px
}

.menu,
.navigation {
	display: -ms-flexbox;
	display: flex
}

.menu .menu-item-link {
	display: block;
	padding: 0 20px;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	line-height: 100px;
	transition: transform .2s ease-in-out
}

.menu .menu-item-link:hover {
	transform: translateY(-4px)
}

@keyframes a {
	0% {
		opacity: 0;
		transform: translateY(-20px)
	}

	to {
		opacity: 1;
		transform: translate(0)
	}
}

@media screen and (max-width:1260px) {
	.navigation {
		padding: 0 20px
	}

}


.navigation .menu_move {
	display: none;
	width: 200px;
	background-color: #eee;
	border-radius: 5px;
	padding: 10px;
	position: absolute;
	right: 40px;
	top: 80px;
}

.navigation .menu_move .menu-item {
	padding: 10px 5px 2px 5px;
	border-bottom: 1px solid #adafca;
	font-weight: 600;
}

.menu_move_bat {
	display: none;
	position: absolute;
	right: 40px;
	top: 40px;
	width: 30px;
	height: 30px;
	cursor: pointer;
}

.menu_move_bat p {
	display: block;
	width: 30px;
	height: 3px;
	border-radius: 3px;
	background-color: #000000;
	margin-top: 4px;
}


@media screen and (max-width:900px) {
	.navigation .menu {
		display: none
	}

	.menu_move_bat {
		display: block;
	}
}

.banner-wrap {
	background: url(../img/banner-bg.jpg) no-repeat 0 100%, url(../img/banner-bg.jpg) no-repeat right 52px bottom, url(../img/banner-bg.jpg) no-repeat 50%;
	background-size: auto, auto, auto, cover
}

.banner {
	min-height: 1080px
}

.banner .banner-info {
	width: 564px;
	padding-top: 240px;
	margin: 0 auto;
	position: relative
}

.banner .banner-pretitle,
.banner .banner-text,
.banner .banner-title {
	color: #fff
}

.banner .banner-pretitle,
.banner .banner-title {
	text-align: center;
	text-transform: uppercase
}

.banner .banner-pretitle {
	font-size: 1.5rem;
	font-weight: 500
}

.banner .banner-title {
	margin-top: 38px;
	font-family: Titillium Web, sans-serif;
	font-size: 5.5rem;
	font-weight: 900;
	line-height: .8em
}

.banner .banner-text {
	width: 530px;
	margin: 36px auto 0;
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.3333333333em;
	text-align: center
}

.banner .banner-text .bold {
	font-weight: 700s
}

.banner .action-list {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 80px
}

.banner .action-list .button {
	width: 180px
}

.banner .action-list .button:first-child {
	margin-right: 16px
}

@media screen and (max-width:1919px) {
	.banner-wrap {
		background: url(../img/banner-bg.jpg) no-repeat 50%;
		background-size: cover
	}

	.banner {
		min-height: auto
	}

	.banner .banner-info {
		width: 530px;
		margin: 0 auto;
		padding: 180px 0 120px;
		text-align: center
	}

	.banner .banner-info .banner-image {
		top: 70px;
		left: 34px
	}

	.banner .banner-text {
		margin: 36px auto 0
	}
}

@media screen and (max-width:680px) {
	.banner .banner-info {
		width: 100%;
		padding-top: 220px
	}

	.banner .banner-info .banner-image {
		left: 50%;
		margin-left: -78px
	}

	.banner .banner-title {
		font-size: 3.75rem
	}

	.banner .banner-text {
		width: 100%
	}
}

.section {
	padding: 30px 0 30px
}

.section .section-info {
	width: 584px;
	margin: 0 auto 30px;
	text-align: center
}

.section .section-pretitle {
	color: #adafca;
	font-size: 1.125rem;
	font-weight: 500;
	text-transform: uppercase
}

.section .section-title {
	margin-top: 16px;
	font-size: 3.875rem;
	font-weight: 700;
	line-height: .9677419355em
}

.section .section-text {
	margin-top: 40px;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.5555555556em
}

.section .section-text a {
	color: #3e3f5e;
	font-weight: 700;
	transition: color .2s ease-in-out
}

.section .section-text a:hover {
	color: #23d2e2
}

.section .section-image {
	width: 100%;
	height: auto
}

.section .section-button {
	display: block;
	width: 276px;
	margin: 60px auto 0
}

.promo-section {
	display: -ms-flexbox;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-align: center;
	align-items: center;
}

.promo-section.inverted .promo-section-info {
	padding: 0 84px 0 0;
	-ms-flex-order: 2;
	order: 2
}

.promo-section.inverted .promo-section-info-1 {
	padding: 0 84px 0 0;
	-ms-flex-order: 2;
	order: 2
}
.promo-section.inverted .promo-section-info-2 {
	padding: 0 84px 0 0;
	-ms-flex-order: 2;
	order: 2
}

.promo-section.inverted .promo-section-image {
	margin: 0 0 0 -32px;

}

.promo-section .promo-section-info {
	padding-left: 84px;
	width: 50%;
	float: right;
	margin-top: 150px;
}

.promo-section .promo-section-info-1 {
	padding-left: 84px;
	width: 50%;
	float: left;
	margin-top: 50px;
}
.promo-section .promo-section-info-2 {
	padding-left: 84px;
	width: 50%;
	float: right;
	margin-top:100px;
}
.promo-section .promo-section-info-3 {
	padding-left: 84px;
	width: 50%;
	float: left;
	margin-top: 80px;
}

.promo-section .promo-section-pretitle {
	color: #adafca;
	font-size: 1.125rem;
	font-weight: 500;
	text-transform: uppercase
}

.promo-section .promo-section-title {
	margin-top: 16px;
	font-size: 2.875rem;
	font-weight: 700;
	line-height: .9565217391em
}

.promo-section .promo-section-text {
	margin-top: 38px;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.5555555556em
}

.promo-section .promo-section-text+.promo-section-text {
	margin-top: 30px
}

.promo-section .promo-section-text .bold {
	color: #3e3f5e;
	font-weight: 700
}

.promo-section .promo-section-image {
	margin: 0 -32px 0 0;
	width: 50%;
	padding: 50px;
	float: left;
}

.promo-section .promo-section-image-1 {
	margin: 0 -32px 0 0;
	width: 50%;
	padding: 50px;
	float: right;
}
.HOW_OCEANPARK_WORKS_tit {
	width: 50%;
	float: left;
	padding: 10px;
}

.HOW_OCEANPARK_WORKS_tit-p {
	width: 50%;
	float: right;
	padding: 10px;
}

.HOW_OCEANPARK_WORKS_list{
	width: 100%;
}

.HOW_OCEANPARK_WORKS_list a {
	display: inline-block;
	width: 33.33%;
	height: auto;
	text-align: center;
	float: left;
	margin: 60px auto;
	padding: 0 20px;
}

.HOW_OCEANPARK_WORKS_list a img {
	display: block;
	width: 80px;
	margin: 10px auto;
}

.HOW_OCEANPARK_WORKS_list a h3 {
	margin-top: 50px;
}

.HOW_OCEANPARK_WORKS_list a p {
	margin-top: 20px;
	text-align: left;
}

@media screen and (max-width:1365px) {
	.promo-section {
		display: block
	}

	.promo-section.inverted .promo-section-info {
		padding: 0
	}
	.promo-section.inverted .promo-section-info-1 {
		padding: 0
	}
	.promo-section.inverted .promo-section-info-2 {
		padding: 0
	}

	.promo-section.inverted .promo-section-image {
		margin: 0 auto
	}

	.promo-section .promo-section-info {
		width: 50%;
		margin: 0 auto 30px;
		padding: 0;
		float: right;
		padding: 30px;
		margin-top: 10%;
	}
	.promo-section .promo-section-info-1{
		width: 50%;
		margin: 0 auto 30px;
		padding: 0;
		float: left;
		padding: 30px;
		margin-top: 0;
	}
	.promo-section .promo-section-info-2{
		width: 50%;
		margin: 0 auto 30px;
		padding: 0;
		float: right;
		padding: 30px;
		margin-top: 0;
	}
	.promo-section .promo-section-info-3{
		width: 50%;
		margin: 0 auto 30px;
		padding: 0;
		float: left;
		padding: 30px;
		margin-top: 0;
	}

	.promo-section .promo-section-image {
		display: block;
		margin: 0 auto
	}
	.promo-section .promo-section-image-1 {
		display: block;
		margin: 0 auto
	}
	.promo-section .promo-section-image-2 {
		display: block;
		margin: 0 auto
	}
}

@media screen and (max-width:960px) {
	.section {
		padding: 96px 0 32px
	}

	.section .section-info {
		width: 90%;
		margin-bottom: 96px
	}

	.section .section-title {
		font-size: 2.5rem
	}

	.promo-section {
		padding-top: 30px
	}

	.promo-section .promo-section-info {
		width: 90%;
		text-align: center;
		float: inherit;
	}
	.promo-section .promo-section-info-1 {
		width: 90%;
		text-align: center;
		float: inherit;
	}
	.promo-section .promo-section-info-2 {
		width: 90%;
		text-align: center;
		float: inherit;
	}
	.promo-section .promo-section-info-3 {
		width: 90%;
		text-align: center;
		float: inherit;
	}

	.promo-section .promo-section-title {
		font-size: 2.5rem
	}

	.promo-section .promo-section-image {
		width: 90%;
		height: auto;
		float: inherit;
		padding: 20px;
		margin-bottom: 40px;
	}
	.promo-section .promo-section-image-1 {
		width: 90%;
		height: auto;
		float: inherit;
		padding: 20px;
		margin-bottom: 40px;
	}


	.HOW_OCEANPARK_WORKS_tit {
		width: 100%;
		float: inherit;
		padding: 10px;
	}

	.HOW_OCEANPARK_WORKS_tit-p {
		width: 100%;
		float: inherit;
		padding: 10px;
	}

	.HOW_OCEANPARK_WORKS_list a {
		display: inline-block;
		width: 100%;
		height: auto;
		text-align: center;
		float: left;
		margin: 30px auto;
		padding: 0 20px;
	}
}


.promo-section-wrap {
	overflow: hidden;
	margin-top: 30px;
}
