/* FONT */
@import url('https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900');
@import url('https://fonts.googleapis.com/css?family=Montserrat|Raleway:200,300,400,600,700');
@import url('https://fonts.googleapis.com/css?family=Italianno');

/* GENERAL */
*,
*:after,
*::before {
	box-sizing: border-box;
	margin: 0px;
	padding: 0px;
}

body {
	background: #fff;
	font-size: 14px;
	font-family: 'Raleway', sans-serif;
	color: #252525;
	font-weight: 300;
}

p {
	line-height: 180%;
}

strong {
	color: #111;
}

.nomargin {
	margin: 0;
}

.nopadding {
	padding: 0;
}

a,
a:link {
	color: #555b39;
}

a:hover {
	opacity: 0.8;
}

.btn:hover {
	opacity: 0.8;
}

.btn.btn-more {
	background: #515459;
	color: #fff;
	border: none;
	padding-left: 30px;
	padding-right: 30px;
}

.font-italiano {
	font-family: 'Italianno', cursive;
}

.thumbnail {
	border-radius: 0;
	-webkit-border-radius: 0;
	padding: 0;
	border: none;
	background: none;
	opacity: 1;
	margin: 0;
}

.thumbnail:hover {
	opacity: 1;
}

.thumbnail.thumbnail-bg {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	margin: 0;
}

.section {
	position: relative;
}

.section-sm {
	padding: 15px 0;
}

.section-md {
	padding: 30px 0;
}

.section-lg {
	padding: 50px 0;
}

.section-xl {
	padding: 100px 0;
}

.preloader {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.85);
	z-index: 99999;
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
}

.preloader.out {
	opacity: 0;
	visibility: hidden;
	transition-delay: 1s;
}

.loader {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
	transition-delay: 0.8s;
}

.preloader.out .loader {
	transform: translate(-50%, -100%);
	-webkit-transform: translate(-50%, -100%);
	opacity: 0;
}

.preloader.out .loader:before {
	border-color: #fff;
	transition-delay: 0.2s;
}

.loader img {
	position: relative;
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
}

.loader:before {
	content: "";
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	width: 150px;
	height: 150px;
	background: #222;
	border: 5px solid rgba(255, 255, 255, 0.1);
	border-top: 5px solid #fff;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	animation: preloaderAnimation 1s linear infinite;
	-webkit-animation: preloaderAnimation 1s linear infinite;
	transition: all 500ms ease;
	-webkit-transition: all 500ms ease;
}

@keyframes preloaderAnimation {
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}

	100% {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

@-webkit-keyframes preloaderAnimation {
	0% {
		-webkit-transform: translate(-50%, -50%) rotate(0deg);
	}

	100% {
		-webkit-transform: translate(-50%, -50%) rotate(360deg);
	}
}

#intro-video-container {
	width: 100%;
	height: 100vh;
	overflow: hidden;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

#intro-video-container .enter-btn {
	display: inline-block;
	padding: 10px 15px;
	border-radius: 50px;
	color: #fff;
	font-weight: bold;
	font-size: 11px;
	z-index: 999;
	background: #c0392b;
	text-decoration: none;
	border: 2px solid #fff;
}

#intro-video-container:before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.4);
	z-index: 99;
	overflow: auto;
}

#intro-video {
	position: fixed;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: -1;
	transform: translateX(-50%) translateY(-50%);
	background-size: cover;
	transition: 1s opacity;
}

#intro-video-container .caption {
	position: absolute;
	top: 5%;
	color: #fff;
	z-index: 99;
	width: 100%;
	height: auto;
	text-align: center;
}

#intro-video-container .caption h2 {
	font-weight: bold;
	font-size: 30px;
	margin: 0;
}

#intro-video-container .caption p {
	font-size: 20px;
	font-weight: 200;
}

#intro-video-container .caption .footer {
	top: auto;
	left: auto;
	-webkit-transform: none !important;
	transform: none !important;
	width: 60%;
	padding: 0 5%;
	margin: 5% auto;
}

.logo img {
	width: 40rem;
	height: auto;
}

.kaki {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	text-align: center;
	background: green;
	z-index: 99;
}

.kaki p {
	color: white;
	margin: 0;
	font-size: 1.4rem;
	top: 50%;
	font-weight: bold !important;
	text-align: center;
}


/* CUSTOM MENU STYLE */
.menu_container {
	width: 100%;
	height: 100%;
	display: flex;
	margin: 0;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}

.menu-item {
	width: calc(100%/6) !important;
}

.menu {
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	position: relative;
	cursor: pointer;
}

.menu img {
	height: 35%;
	width: 35%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
}

.menu-item .title {
	white-space: nowrap;
	display: inline-block;
	background: #fff;
	color: #333;
	padding: 2px 15px;
	border-radius: 20px;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: bold;
	position: absolute;
	bottom: 0px;
	left: 50%;
	transform: translate(-50%, 0) scale(0);
	-webkit-transform: translate(-50%, 0) scale(0);
	opacity: 0;
	transition: 300ms ease;
	-webkit-transition: 300ms ease;
	z-index: 1000;
}

.menu-item:hover {
	opacity: 0.8;
}

.menu-item:hover .title {
	transform: translate(-50%, -25%) scale(1);
	-webkit-transform: translate(-50%, -25%) scale(1);
	opacity: 1;
}

.order {
	width: 330px;
	height: 50px;
	background-color: lightgrey;
	margin-top: 10px;
	text-align: center;
	line-height: 50px;
	font-size: x-large;
	font-family: Helvetica;
}


/* PENGATURAN ICON */

.parent-icon-model {
	width: 100%;
	height: 100%;
	display: grid;
	grid-template-columns: repeat(3, minmax(min(100%/3, max(64px, 100%/3)), 1fr));
}

.col-radio .icon {
	text-align: center;
	object-fit: cover;
	cursor: pointer;
}

.col-radio label {
	aspect-ratio: 1 / 1;
	margin: 5%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	position: relative;
}

.imgbgchk:checked+label>.tick_container {
	opacity: 1;
}

/*         aNIMATION */
.imgbgchk:checked+label>.icon {
	opacity: 0.3;
}

.tick_container {
	transition: .5s ease;
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	cursor: pointer;
	text-align: center;
}

.tick {
	background-color: #4CAF50;
	color: white;
	font-size: 16px;
	padding: 6px 12px;
	height: 40px;
	width: 40px;
	border-radius: 100%;
}

.menu-item{
	filter: drop-shadow(0px 0px 28px #000000);
}


/* STYLE MODEL ICON */
/* ICON 1 */
.icon-model-1 {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
}

.icon-model-1:before {
	background: #34495e;
	content: "";
	display: block;
	width: 70%;
	height: 70%;
	position: absolute;
	text-align: center;
	top: 0;
	left: 50%;
	transform: translate(-50%, 10%) rotate(45deg);
	-webkit-transform: translate(-50%, 10%) rotate(45deg);
	border-radius: 100px 10px 10px 10px;
}

/* ICON 2 */
.icon-model-2 {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
}

.icon-model-2:before {
	background: #34495e;
	content: "";
	display: block;
	width: 70%;
	height: 70%;
	position: absolute;
	text-align: center;
	top: 0;
	left: 50%;
	transform: translate(-50%, 22%) rotate(45deg);
	-webkit-transform: translate(-50%, 22%) rotate(45deg);
	border-radius: 10px 10px 10px 10px;
}

/* ICON 3 */
.icon-model-3 {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
}

.icon-model-3:before {
	background: #34495e;
	content: "";
	display: block;
	width: 80%;
	height: 80%;
	position: absolute;
	text-align: center;
	top: 0;
	left: 50%;
	transform: translate(-50%, 12%);
	-webkit-transform: translate(-50%, 12%);
	border-radius: 10px 10px 10px 10px;
}

/* ICON 4 */
.icon-model-4 {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
}

.icon-model-4 .menu img {
	height: 35%;
	width: 35%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -35%);
	-webkit-transform: translate(-50%, -35%);
}

.icon-model-4:before {
	background: #34495e;
	content: "";
	display: block;
	width: 90%;
	height: 90%;
	position: absolute;
	text-align: center;
	top: 0;
	left: 50%;
	transform: translate(-50%, 12%);
	-webkit-transform: translate(-50%, 12%);
	border-radius: 10px 10px 10px 10px;
	clip-path: polygon(50% 0%, 100% 40%, 80% 90%, 20% 90%, 0% 40%);
}


@media (max-width: 1200px) {
	#intro-video-container .caption {
		top: auto;
		left: auto;
		-webkit-transform: none !important;
		transform: none !important;
		width: 100%;
	}

	#intro-video-container .caption .logo {
		top: auto;
		left: auto;
		-webkit-transform: none !important;
		transform: none !important;
		width: 100%;
		padding: 0 5%;
	}

	#intro-video-container .caption .footer {
		top: auto;
		left: auto;
		-webkit-transform: none !important;
		transform: none !important;
		width: 80%;
		padding: 0 5%;
		margin: 10% auto;
	}

	.menu-item {
		width: calc(100%/4) !important;
	}

	.logo img {
		width: 70%;
		height: auto;
	}

	.kaki p {
		font-size: 1.2rem !important;
		margin: 0 1rem;
	}

}

@media (max-width: 767px) {
	#intro-video-container .caption {
		top: auto;
		left: auto;
		-webkit-transform: none !important;
		transform: none !important;
		width: 100%;
	}

	#intro-video-container .caption .logo {
		top: auto;
		left: auto;
		-webkit-transform: none !important;
		transform: none !important;
		width: 100%;
		padding: 0 5%;
	}

	#intro-video-container .caption .footer {
		top: auto;
		left: auto;
		-webkit-transform: none !important;
		transform: none !important;
		width: 100%;
		padding: 0 5%;
		margin: 10% auto;
	}



	.menu-item {
		width: calc(100%/3) !important;
	}

	.logo img {
		width: 80%;
		height: auto;
	}

	.kaki p {
		font-size: 1rem !important;
		margin: 0 1rem;
	}

}