@font-face {
    font-family: 'TikTok Sans ExtraBold';
    src: url('fonts/TikTokSans-ExtraBold.eot');
    src: url('fonts/TikTokSans-ExtraBold.eot?#iefix') format('embedded-opentype'),
        url('fonts/TikTokSans-ExtraBold.woff2') format('woff2'),
        url('fonts/TikTokSans-ExtraBold.woff') format('woff'),
        url('fonts/TikTokSans-ExtraBold.ttf') format('truetype'),
        url('fonts/TikTokSans-ExtraBold.svg#TikTokSans-ExtraBold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TikTok Sans Bold';
    src: url('fonts/TikTokSans-Bold.eot');
    src: url('fonts/TikTokSans-Bold.eot?#iefix') format('embedded-opentype'),
        url('fonts/TikTokSans-Bold.woff2') format('woff2'),
        url('fonts/TikTokSans-Bold.woff') format('woff'),
        url('fonts/TikTokSans-Bold.ttf') format('truetype'),
        url('fonts/TikTokSans-Bold.svg#TikTokSans-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TikTok Sans Black';
    src: url('fonts/TikTokSans-Black.eot');
    src: url('fonts/TikTokSans-Black.eot?#iefix') format('embedded-opentype'),
        url('fonts/TikTokSans-Black.woff2') format('woff2'),
        url('fonts/TikTokSans-Black.woff') format('woff'),
        url('fonts/TikTokSans-Black.ttf') format('truetype'),
        url('fonts/TikTokSans-Black.svg#TikTokSans-Black') format('svg');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TikTok Sans Light';
    src: url('fonts/TikTokSans-Light.eot');
    src: url('fonts/TikTokSans-Light.eot?#iefix') format('embedded-opentype'),
        url('fonts/TikTokSans-Light.woff2') format('woff2'),
        url('fonts/TikTokSans-Light.woff') format('woff'),
        url('fonts/TikTokSans-Light.ttf') format('truetype'),
        url('fonts/TikTokSans-Light.svg#TikTokSans-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TikTok Sans Regular';
    src: url('fonts/TikTokSans-Regular.eot');
    src: url('fonts/TikTokSans-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/TikTokSans-Regular.woff2') format('woff2'),
        url('fonts/TikTokSans-Regular.woff') format('woff'),
        url('fonts/TikTokSans-Regular.ttf') format('truetype'),
        url('fonts/TikTokSans-Regular.svg#TikTokSans-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TikTok Sans Medium';
    src: url('fonts/TikTokSans-Medium.eot');
    src: url('fonts/TikTokSans-Medium.eot?#iefix') format('embedded-opentype'),
        url('fonts/TikTokSans-Medium.woff2') format('woff2'),
        url('fonts/TikTokSans-Medium.woff') format('woff'),
        url('fonts/TikTokSans-Medium.ttf') format('truetype'),
        url('fonts/TikTokSans-Medium.svg#TikTokSans-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'TikTok Sans SemiBold';
    src: url('fonts/TikTokSans-SemiBold.eot');
    src: url('fonts/TikTokSans-SemiBold.eot?#iefix') format('embedded-opentype'),
        url('fonts/TikTokSans-SemiBold.woff2') format('woff2'),
        url('fonts/TikTokSans-SemiBold.woff') format('woff'),
        url('fonts/TikTokSans-SemiBold.ttf') format('truetype'),
        url('fonts/TikTokSans-SemiBold.svg#TikTokSans-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face{
	font-family: 'FontAwesome';
	src: url('fonts/fontawesome-webfont.eot?v=4.7.0');
	src: url('fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),
		url('fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),
		url('fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),
		url('fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),
		url('fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
	font-weight: normal;
	font-style:normal;
}

html, body{
	padding: 0px;
	margin: 0px;
	width: 100%;
	height: 100%;
	background-color: #000;
}
.body-landing{
	overflow: hidden;
}

button,
input,
textarea{
	outline: none;
}

.err{
	position: relative;
	display: block;
	color: red;
	display: none;
	font-family: 'TikTok Sans Regular';
	font-size: 14px;
	margin-top:5px;
}

.swal-sm {
	width: 350px !important;
	font-size: 14px;
}

.swal-sm .swal2-popup {
  padding-top: 2.5em !important;
}

.swal-sm .swal2-title {
  	font-size: 16px !important;
}

.swal-sm .swal2-html-container {
  	font-size: 14px !important;
}

.swal-sm .swal2-confirm,
.swal-sm .swal2-cancel {
	padding: 4px 12px !important;
	font-size: 14px !important;
	border-radius: 4px !important;
}

/* Ukuran ikon swal2 (success, error, warning, dll) */
.swal-sm .swal2-icon {
	width: 50px !important;
	height: 50px !important;
	margin-top: 30px !important;
	margin-bottom: 10px !important;
}

/* Success icon (centang) penyesuaian */
.swal-sm .swal2-icon.swal2-success .swal2-success-line-tip,
.swal-sm .swal2-icon.swal2-success .swal2-success-line-long {
	height: 3px !important;
	background-color: #4ba319;
}

.swal-sm .swal2-icon.swal2-success .swal2-success-line-tip {
	top: 26px !important;
	left: 8px !important;
	width: 18px !important;
	transform: rotate(45deg);
}

.swal-sm .swal2-icon.swal2-success .swal2-success-line-long {
	top: 22px !important;
	right: 3px !important;
	width: 30px !important;
	transform: rotate(-45deg);
}

/* Lingkaran icon success */
.swal-sm .swal2-icon.swal2-success .swal2-success-ring {
	width: 50px !important;
	height: 50px !important;
	border-width: 4px !important;
}

/* Error icon (X) penyesuaian */
.swal-sm .swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
	top: 23px !important;
	width: 30px !important;
	height: 3px !important;
	background-color: #e93c3c;
}

.swal-sm .swal2-icon.swal2-error .swal2-x-mark-line-left {
	left: 10px !important;
	transform: rotate(45deg);
}

.swal-sm .swal2-icon.swal2-error .swal2-x-mark-line-right {
	right: 10px !important;
	transform: rotate(-45deg);
}


	.text-error,
	.text-error:focus{
		border: solid 1px red;
	}
	.frame-text-input{
		position: relative;
		display: block;
	}
	.text-success{
		position: relative;
		display: block;
		border: solid 1px green !important;
		padding-right: 50px;
	}
		.icon-success{
			position: absolute;
			display: none;
			font-size: 24px;
			z-index: 9;
			right: 10px;
			top: 5px;
			color: green;
		}
	
	.header {
		position: fixed;
		display: block;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 1000;
		background: transparent;
		transition: all 0.3s ease;
	}
		.header-content {
			display: flex;
			align-items: center;
			padding: 10px;
		}
		.header-content.scrolled {
			background: #000;
		}

			.logo {
				position: relative;
				width: 100px;
				margin: 0;
			}

			.btn-regis {
				background-color: #ea0641;
				color: #fff;
				border: none;
				padding: 0.6rem 1.5rem;
				border-radius: 30px;
				font-family: 'TikTok Sans Medium';
				font-size: .8rem;
				cursor: pointer;
				margin-left: auto;
			}
			.btn-regis:hover {
				background-color: #fff;
				color: #ea0641;
			}


	.body{
		position: relative;
		display: block;
		width: 100%;
		min-height: 80%;
		left: 50%;
		transform: translateX(-50%);
		background-color: #000;
		font-family: 'TikTok Sans Regular';
		font-size: 14px;
		padding-top: 50px;
	}

		.parallax-wrapper {
			position: relative;
			width: 100%;
			height: 30vh; /* base mobile height */
			overflow: hidden;
			isolation: isolate; /* ensure stacking context */
		}
			.parallax-bg {
				position: absolute;
				inset: 0;
				width: 100%;
				height: 100%;
				pointer-events: none;
			}
				.parallax-layer {
					position: absolute;
					top: 0;
					left: 50%;
					transform: translateX(-50%);
					width: 100%; /* a bit wider to avoid gaps when translating */
					height: 110%;
					background-repeat: no-repeat;
					background-position: center top;
					background-size: 100% auto;
					will-change: transform;
				}

				/* Mobile default images */
				.mobile-paralax-1 { background-image: url('../../images/mobile-parallax1.png'); z-index: 1; }
				.mobile-paralax-2 { background-image: url('../../images/mobile-parallax2.png'); z-index: 2; }
				.mobile-paralax-3 { background-image: url('../../images/mobile-parallax3.png'); z-index: 3; }

				/* Prepare desktop layers (hidden on mobile by Bootstrap d-none d-md-block, but keep explicit rule for safety) */
				.desktop-paralax-1,
				.desktop-paralax-2,
				.desktop-paralax-3 { display: none; }

		.content{
			position: relative;
			display: block;
			width: 100%;
		}
			.segment-countdown{
				position: relative;
				display: flex;
				flex-direction: column; /* Mobile: stack vertically */
				align-items: center;
				background-color: #fc074f;
				margin-bottom: 50px;
				background-image: linear-gradient(135deg, rgba(255,255,255,0) 0%,  rgba(255,255,255,0.55) 35%, rgba(255,255,255,0.12) 60%, transparent 100%);
			}
				.countdown-left,
				.countdown-right {
					width: 100%;
				}
				.countdown-left {
					padding-top: 10px;
					text-align: center;
				}
					.countdown-left img{
						width: 70%;
					}
				.countdown-right {
					padding : 20px 10px;
					padding-top: 10px;
				}
					.countdown-timer {
						display: flex;
						justify-content: center;
						align-items: center;
					}
						.countdown-box {
							display: flex;
							flex-direction: column;
							align-items: center;
							margin: 0 10px;
						}
							.countdown-number {
								display: flex;
								gap: 3px;
							}
								.box-digit {
									font-size: 24px;
									text-align: center;
									width: 25px;
									background-color: #fff;
									color: #000;
									font-family: 'TikTok Sans SemiBold';
									border-radius: 5px;
								}
							.countdown-label {
								font-size: 12px;
								color: white;
								font-family: 'TikTok Sans SemiBold';
							}
						.countdown-separator {
							font-size: 24px;
							padding-bottom: 25px;
							color: #fff;
							font-family: 'TikTok Sans Bold';
						}

			.segment-jadwal{
				position: relative;
				display: block;
				width: 82%;
				left: 50%;
				transform: translateX(-50%);
				color: #fff;
				margin-bottom: 50px;
			}
				.isi-jadwal{
					display: flex;
					flex-direction: column;
				}
					.jadwal-left,
					.jadwal-right {
						width: 100%;
					}
					.jadwal-left{
						margin-bottom: 30px;
					}
						.jadwal-left img{
							width: 100%;
						}
					.jadwal-right {
						text-align: left;
						font-family: 'TikTok Sans Light';
						font-size: 15px;
						line-height: 20px;
					}

			.segment-map{
				position: relative;
				display: block;
				width: 80%;
				left: 50%;
				transform: translateX(-50%);
				margin-bottom: 50px;
			}
				.img-map-left{
					position: absolute;
					display: block;
					width: 50px;
					left: -25px;
					bottom: -20px;
				}
				.img-map-right{
					position: absolute;
					display: block;
					width: 50px;
					right: -25px;
					top: -20px;
				}
				.segment-map iframe{
					position: relative;
					display: block;
					width: 100%;
					height: 250px;
					border-radius: 10px;
				}

			.segment-media{
				position: relative;
				display: block;
				width: 100%;
				text-align: center;
				margin-bottom: 50px;
				padding: 30px 0px;
				background-color: #232323;
			}
				.segment-media img{
					width: 80%;
				}

			.segment-dresscode{
				position: relative;
				display: block;
				width: 100%;
				text-align: center;
				margin-bottom: 50px;
				color: #fff;
			}
				.judul-dresscode{
					font-family: 'TikTok Sans Bold';
					font-size: 24px;
					margin-bottom: 20px;
				}
				.img-dresscode{
					width: 100%;
					text-align: center;
				}
					.img-dresscode img{
						width: 60%;
						margin-bottom: 30px;
					}
				.desc-dresscode{
					position: relative;
					display: block;
					width: 82%;
					left: 50%;
					transform: translateX(-50%);
					font-family: 'TikTok Sans Regular';
					font-size: 14px;
					margin-bottom: 50px;
				}
					.sub-desc{
						font-family: 'TikTok Sans Bold';
						font-size: 14px;
						color: #f1204a;
					}
				.frame-dresscode{
					position: relative;
					display: block;
					width: 100%;
					text-align: center;
					left: 50%;
					transform: translateX(-50%);
				}
					.img-dresscode-left{
						position: absolute;
						display: block;
						width: 60px;
						left: 0px;
						top: -50px
					}
					.img-dresscode-right{
						position: absolute;
						display: block;
						width: 70px;
						right: 0px;
						top: -50px;
					}
					.img-dresscode-bottom{
						position: absolute;
						display: block;
						width: 60px;
						bottom: -30px;
						left: 50%;
						transform: translateX(-50%);
					}
					.box-dresscode{
						position: relative;
						display: inline-block;
						width: 100%;
					}
						.box-dresscode img{
							width: 100%;
							margin: 0px 10px;
						}

			.segment-register{
				position: relative;
				display: block;
				width: 82%;
				left: 50%;
				transform: translateX(-50%);
				margin-bottom: 50px;
				background-color: #232323;
				border-radius: 20px;
				padding: 30px 20px;
				font-size: 0px;
			}
				.register-left{
					position: relative;
					display: inline-block;
					width: 100%;
					font-family: 'TikTok Sans Regular';
					font-size: 16px;
					color: #fff;
					margin-bottom: 50px;
				}
					.judul-register{
						font-family: 'TikTok Sans Bold';
						font-size: 24px !important;
						margin-bottom: 20px;
						color: #fff;
					}
				.register-right{
					position: relative;
					display: inline-block;
					width: 100%;
				}
					/* Floating label + underline inputs (scoped) */
					.segment-register .mb-3.floating{
						position: relative;
						padding-top: 18px; /* space for floating label */
					}
						.segment-register .mb-3.floating > label{
							position: absolute;
							left: 0;
							top: 35px; /* vertically center-ish before focus */
							transform: translateY(-50%);
							font-family: 'TikTok Sans Regular';
							font-size: 16px;
							color: rgba(255,255,255,0.8);
							transition: all .18s ease;
							pointer-events: none;
						}
						.segment-register .mb-3.floating > .form-control{
							background: transparent;
							border: none;
							border-bottom: 1px solid rgba(255,255,255,0.35);
							border-radius: 0;
							padding: 12px 0 8px 0;
							color: #fff;
							box-shadow: none;
						}
							.segment-register .mb-3.floating > .form-control:focus{
								outline: none;
								box-shadow: none;
							}
						.segment-register .mb-3.floating.focused > label,
						.segment-register .mb-3.floating.filled > label{
							top: 25px;
							transform: translateY(-100%);
							font-size: 16px;
						}
							/* For non-focused but filled state, keep subtler color */
							.segment-register .mb-3.floating.filled:not(.focused) > label{
								color: rgba(255,255,255,0.8);
							}

					.btn-submit {
						background-color: #ea0641;
						color: #fff;
						border: none;
						padding: 0.6rem 1.5rem;
						border-radius: 30px;
						font-family: 'TikTok Sans Medium';
						font-size: .9rem;
						cursor: pointer;
						margin-left: auto;
					}
					.btn-submit:hover {
						background-color: #fff;
						color: #ea0641;
					}

					#survey{
						position: relative;
						display: block;
						width: 100%;
						font-family: 'TikTok Sans Regular';
						font-size: 16px;
						color: #fff;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 14px;
						}
							.isi-jawaban{
								display: flex;
								flex-wrap: wrap;
								gap: 10px;
							}
								.pilihan{
									flex: 1 1 20%;
									max-width: 20%;
									box-sizing: border-box;
								}

			.box-thanks{
				position: relative;
				display: block;
				width: 80%;
				left: 50%;
				transform: translateX(-50%);
				margin-bottom: 50px;
				font-family: 'TikTok Sans Regular';
				font-size: 16px;
				color: #fff;
			}

	.footer{
		position: relative;
		display: block;
		width: 100%;
		text-align: center;
	}
		.footer img{
			width: 35%;
			margin-bottom: 50px;
		}
				

	

/*Tablet / iPad / Laptop Portraid*/
@media only screen
and (min-width: 601px) {
			.logo {
				width: 120px;
			}

	.body{
		font-size: 14px;
		padding-top: 50px;
	}

		.parallax-wrapper {
			height: 45vh;
		}
				/* Desktop default images */
				.desktop-paralax-1 { background-image: url('../../images/parallax1.png'); z-index: 1; display: block; }
				.desktop-paralax-2 { background-image: url('../../images/parallax2.png'); z-index: 2; display: block; }
				.desktop-paralax-3 { background-image: url('../../images/parallax3.png'); z-index: 3; display: block; }

				/* Hide mobile layers on desktop */
				.mobile-paralax-1,
				.mobile-paralax-2,
				.mobile-paralax-3 { display: none; }

			.segment-countdown{
				flex-direction: row; /* Desktop: side by side */
				margin-bottom: 80px;
				background-image: linear-gradient(135deg, rgba(255,255,255,0) 0%,  rgba(255,255,255,0.55) 25%, rgba(255,255,255,0.12) 50%, transparent 100%);
			}
				.countdown-left {
					width: 45%;
					padding-top: 0px;
					text-align: right;
				}
					.countdown-left img{
						width: 90%;
					}
				.countdown-right {
					width: 55%;
				}
				.countdown-right {
					padding : 20px 10px;
				}

			.segment-jadwal{
				width: 90%;
				margin-bottom: 80px;
			}
				.isi-jadwal{
					flex-direction: row;
				}
					.jadwal-left,
					.jadwal-right {
						width: 50%;
						display: flex;
						align-items: center;
					}
					.jadwal-left{
						padding-right: 30px;
						margin-bottom: 0px;
					}

			.segment-map{
				width: 80%;
				margin-bottom: 80px;
			}
				.img-map-left{
					width: 70px;
					left: -40px;
					bottom: -10px;
				}
				.img-map-right{
					width: 70px;
					right: -50px;
					top: -20px;
				}
				.segment-map iframe{
					position: relative;
					display: block;
					width: 100%;
					height: 250px;
					border-radius: 10px;
				}

			.segment-media{
				margin-bottom: 80px;
				padding: 50px 0px;
			}
				.segment-media img{
					width: 60%;
				}

			.segment-dresscode{
				margin-bottom: 80px;
			}
				.judul-dresscode{
					font-size: 32px;
					margin-bottom: 20px;
				}
					.img-dresscode img{
						width: 40%;
						margin-bottom: 50px;
					}
				.desc-dresscode{
					width: 80%;
					font-size: 14px;
					margin-bottom: 50px;
				}
					.sub-desc{
						font-size: 14px;
					}
					.img-dresscode-left{
						width: 70px;
						top: -60px
					}
					.img-dresscode-right{
						width: 80px;
						top: -50px;
					}
					.img-dresscode-bottom{
						width: 70px;
						bottom: -30px;
					}

			.segment-register{
				width: 80%;
				margin-bottom: 80px;
				border-radius: 20px;
				padding: 50px 60px;
			}
				.register-left{
					width: 100%;
					font-size: 16px;
					margin-bottom: 50px;
				}
					.judul-register{
						font-size: 26px !important;
						margin-bottom: 20px;
					}
				.register-right{
					width: 100%;
				}
					.btn-submit {
						padding: 0.6rem 1.5rem;
						border-radius: 30px;
						font-size: 1rem;
					}

					#survey{
						font-size: 16px;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 14px;
						}
								.pilihan{
									flex: 1 1 15%;
									max-width: 15%;
								}

			.box-thanks{
				position: relative;
				display: block;
				width: 80%;
				left: 50%;
				transform: translateX(-50%);
				margin-bottom: 50px;
				font-family: 'TikTok Sans Regular';
				font-size: 16px;
				color: #fff;
			}

		.footer img{
			width: 25%;
			margin-bottom: 80px;
		}
}


/*Tablet / iPad / Laptop Landscape*/
@media only screen
and (min-width: 1024px) {
		.header-content {
			padding: 20px 50px;
		}
			.logo {
				width: 120px;
			}
			.btn-regis {
				padding: 0.6rem 1.5rem;
				border-radius: 30px;
				font-size: 1rem;
			}

	.body{
		font-size: 14px;
		/*padding-top: 50px;*/
	}

		.parallax-wrapper {
			height: 75vh;
		}
			.segment-countdown{
				flex-direction: row; /* Desktop: side by side */
				margin-bottom: 80px;
			}
				.countdown-left {
					width: 46%;
					text-align: center;
				}
					.countdown-left img{
						width: 75%;
					}
				.countdown-right {
					width: 54%;
				}
				.countdown-right {
					padding : 20px 10px;
				}
							.countdown-number {
								gap: 5px;
							}
								.box-digit {
									font-size: 36px;
									width: 35px;
								}
							.countdown-label {
								font-size: 16px;
							}
						.countdown-separator {
							font-size: 36px;
							padding-bottom: 25px;
						}

			.segment-jadwal{
				width: 80%;
				margin-bottom: 80px;
			}
					.jadwal-left{
						padding-right: 80px;
						margin-bottom: 0px;
					}
					.jadwal-right{
						font-size: 17px;
						line-height: 22px;
					}

			.segment-map{
				width: 70%;
				margin-bottom: 80px;
			}
				.img-map-left{
					width: 70px;
					left: -40px;
					bottom: -10px;
				}
				.img-map-right{
					width: 70px;
					right: -50px;
					top: -20px;
				}
				.segment-map iframe{
					height: 300px;
					border-radius: 20px;
				}

			.segment-media{
				margin-bottom: 80px;
				padding: 50px 0px;
			}
				.segment-media img{
					width: 50%;
				}

			.segment-dresscode{
				margin-bottom: 80px;
			}
				.judul-dresscode{
					font-size: 42px;
					margin-bottom: 20px;
				}
					.img-dresscode img{
						width: 35%;
						margin-bottom: 50px;
					}
				.desc-dresscode{
					width: 80%;
					font-size: 16px;
					margin-bottom: 50px;
				}
					.sub-desc{
						font-size: 16px;
					}
					.img-dresscode-left{
						width: 90px;
						top: -80px
					}
					.img-dresscode-right{
						width: 100px;
						top: -70px;
					}
					.img-dresscode-bottom{
						width: 90px;
						bottom: -30px;
					}

			.segment-register{
				width: 90%;
				margin-bottom: 80px;
				border-radius: 20px;
				padding: 50px;
			}
				.register-left{
					width: 40%;
					font-size: 18px;
					margin-bottom: 50px;
					padding-right: 30px;
					vertical-align: top;
				}
					.judul-register{
						font-size: 32px !important;
						line-height: 36px;
						margin-bottom: 20px;
					}
				.register-right{
					width: 60%;
				}
					/* Floating label + underline inputs (scoped) */
					.segment-register .mb-3.floating{
						padding-top: 18px; /* space for floating label */
					}
						.segment-register .mb-3.floating > label{
							top: 35px; /* vertically center-ish before focus */
							font-size: 16px;
						}
						.segment-register .mb-3.floating.focused > label,
						.segment-register .mb-3.floating.filled > label{
							top: 25px;
							font-size: 16px;
						}
							
					.btn-submit {
						padding: 0.7rem 1.8rem;
						border-radius: 30px;
						font-size: 1.2rem;
					}

					#survey{
						font-size: 18px;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 16px;
						}

			.box-thanks{
				position: relative;
				display: block;
				width: 80%;
				left: 50%;
				transform: translateX(-50%);
				margin-bottom: 50px;
				font-family: 'TikTok Sans Regular';
				font-size: 16px;
				color: #fff;
			}

		.footer img{
			width: 20%;
			margin-bottom: 80px;
		}
}


/*Laptop / Desktop*/
@media only screen
and (min-width: 1280px) {
		.header-content {
			padding: 20px 50px;
		}
			.logo {
				width: 120px;
			}
			.btn-regis {
				padding: 0.6rem 1.5rem;
				border-radius: 30px;
				font-size: 1rem;
			}

	.body{
		font-size: 16px;
		/*padding-top: 50px;*/
	}

		.parallax-wrapper {
			height: 92vh;
		}
			.segment-countdown{
				flex-direction: row; /* Desktop: side by side */
				margin-bottom: 80px;
			}
				.countdown-left {
					width: 48%;
				}
					.countdown-left img{
						width: 70%;
					}
				.countdown-right {
					width: 52%;
				}
				.countdown-right {
					padding : 20px 10px;
				}
								.box-digit {
									font-size: 36px;
									width: 35px;
								}
							.countdown-label {
								margin-top: 5px;
								font-size: 18px;
							}
						.countdown-separator {
							font-size: 36px;
							padding-bottom: 35px;
						}

			.segment-jadwal{
				width: 80%;
				margin-bottom: 80px;
			}
					.jadwal-left{
						padding-right: 100px;
						margin-bottom: 0px;
					}
					.jadwal-right{
						font-size: 20px;
						line-height: 25px;
					}

			.segment-map{
				width: 65%;
				margin-bottom: 80px;
			}
				.img-map-left{
					width: 80px;
					left: -50px;
					bottom: -10px;
				}
				.img-map-right{
					width: 80px;
					right: -50px;
					top: -20px;
				}
				.segment-map iframe{
					height: 350px;
					border-radius: 20px;
				}

			.segment-media{
				margin-bottom: 80px;
				padding: 50px 0px;
			}
				.segment-media img{
					width: 45%;
				}

			.segment-dresscode{
				margin-bottom: 120px;
			}
				.judul-dresscode{
					font-size: 52px;
					margin-bottom: 20px;
				}
					.img-dresscode img{
						width: 30%;
						margin-bottom: 50px;
					}
				.desc-dresscode{
					width: 80%;
					font-size: 20px;
					margin-bottom: 50px;
				}
					.sub-desc{
						font-size: 20px;
					}
					.img-dresscode-left{
						width: 110px;
						top: -90px
					}
					.img-dresscode-right{
						width: 120px;
						top: -80px;
					}
					.img-dresscode-bottom{
						width: 120px;
						bottom: -50px;
					}

			.segment-register{
				width: 80%;
				margin-bottom: 100px;
				border-radius: 20px;
				padding: 60px;
			}
				.register-left{
					width: 45%;
					font-size: 18px;
					margin-bottom: 50px;
					padding-right: 30px;
					vertical-align: top;
				}
					.judul-register{
						font-size: 36px !important;
						line-height: 40px;
						margin-bottom: 20px;
					}
				.register-right{
					width: 55%;
				}
					/* Floating label + underline inputs (scoped) */
					.segment-register .mb-3.floating{
						padding-top: 20px; /* space for floating label */
					}
						.segment-register .mb-3.floating > label{
							top: 37px; /* vertically center-ish before focus */
							font-size: 16px;
						}
						.segment-register .mb-3.floating.focused > label,
						.segment-register .mb-3.floating.filled > label{
							top: 25px;
							font-size: 16px;
						}

					.btn-submit {
						padding: 0.7rem 1.8rem;
						border-radius: 30px;
						font-size: 1.2rem;
					}

					#survey{
						font-size: 20px;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 18px;
						}

			.box-thanks{
				font-size: 20px;
			}

		.footer img{
			width: 20%;
			margin-bottom: 100px;
		}
}


/*Desktop 1366*/
@media only screen
and (min-width: 1366px) {
		.header-content {
			padding: 20px 50px;
		}
			.logo {
				width: 120px;
			}
			.btn-regis {
				padding: 0.6rem 1.5rem;
				border-radius: 30px;
				font-size: 1rem;
			}

	.body{
		font-size: 16px;
		padding-top: 0px;
	}

		.parallax-wrapper {
			height: 95vh;
		}
			.segment-countdown{
				flex-direction: row; /* Desktop: side by side */
				margin-bottom: 80px;
			}
				.countdown-left {
					width: 45%;
				}
					.countdown-left img{
						width: 70%;
					}
				.countdown-right {
					width: 55%;
				}
				.countdown-right {
					padding : 20px 10px;
				}
								.box-digit {
									font-size: 46px;
									width: 45px;
								}
							.countdown-label {
								margin-top: 5px;
								font-size: 18px;
							}
						.countdown-separator {
							font-size: 46px;
							padding-bottom: 35px;
						}

			.segment-jadwal{
				width: 80%;
				margin-bottom: 80px;
			}
					.jadwal-left{
						padding-right: 100px;
						margin-bottom: 0px;
					}
					.jadwal-right{
						font-size: 21px;
						line-height: 26px;
					}

			.segment-map{
				width: 65%;
				margin-bottom: 80px;
			}
				.img-map-left{
					width: 80px;
					left: -50px;
					bottom: -10px;
				}
				.img-map-right{
					width: 80px;
					right: -50px;
					top: -20px;
				}
				.segment-map iframe{
					height: 350px;
					border-radius: 20px;
				}

			.segment-media{
				margin-bottom: 80px;
				padding: 50px 0px;
			}
				.segment-media img{
					width: 45%;
				}

			.segment-dresscode{
				margin-bottom: 120px;
			}
				.judul-dresscode{
					font-size: 52px;
					margin-bottom: 20px;
				}
					.img-dresscode img{
						width: 30%;
						margin-bottom: 50px;
					}
				.desc-dresscode{
					width: 80%;
					font-size: 20px;
					margin-bottom: 50px;
				}
					.sub-desc{
						font-size: 20px;
					}
					.img-dresscode-left{
						width: 110px;
						top: -90px
					}
					.img-dresscode-right{
						width: 120px;
						top: -80px;
					}
					.img-dresscode-bottom{
						width: 120px;
						bottom: -50px;
					}

			.segment-register{
				width: 80%;
				margin-bottom: 100px;
				border-radius: 20px;
				padding: 60px;
			}
				.register-left{
					width: 45%;
					font-size: 18px;
					margin-bottom: 50px;
					padding-right: 30px;
					vertical-align: top;
				}
					.judul-register{
						font-size: 36px !important;
						line-height: 40px;
						margin-bottom: 20px;
					}
				.register-right{
					width: 55%;
				}
					/* Floating label + underline inputs (scoped) */
					.segment-register .mb-3.floating{
						padding-top: 20px; /* space for floating label */
					}
						.segment-register .mb-3.floating > label{
							top: 37px; /* vertically center-ish before focus */
							font-size: 16px;
						}
						.segment-register .mb-3.floating.focused > label,
						.segment-register .mb-3.floating.filled > label{
							top: 25px;
							font-size: 16px;
						}

					.btn-submit {
						padding: 0.7rem 1.8rem;
						border-radius: 30px;
						font-size: 1.2rem;
					}

					#survey{
						font-size: 18px;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 16px;
						}

			.box-thanks{
				font-size: 20px;
			}

		.footer img{
			width: 20%;
			margin-bottom: 100px;
		}
}


/*Desktop MAC*/
@media only screen
and (min-width: 1440px) {
		.header-content {
			padding: 20px 50px;
		}
			.logo {
				width: 150px;
			}
			.btn-regis {
				padding: 0.7rem 1.7rem;
				border-radius: 30px;
				font-size: 1.2rem;
			}

	.body{
		font-size: 16px;
		/*padding-top: 50px;*/
	}

		.parallax-wrapper {
			height: 90vh;
		}
			.segment-countdown{
				flex-direction: row; /* Desktop: side by side */
				margin-bottom: 100px;
			}
				.countdown-left {
					width: 45%;
				}
					.countdown-left img{
						width: 70%;
					}
				.countdown-right {
					width: 55%;
				}
				.countdown-right {
					padding : 20px 10px;
				}
								.box-digit {
									font-size: 52px;
									line-height: 70px;
									width: 45px;
								}
							.countdown-label {
								margin-top: 5px;
								font-size: 20px;
							}
						.countdown-separator {
							font-size: 52px;
							padding-bottom: 45px;
						}						

			.segment-jadwal{
				width: 78%;
				margin-bottom: 100px;
			}
					.jadwal-left{
						padding-right: 120px;
						margin-bottom: 0px;
					}
					.jadwal-right{
						font-size: 22px;
						line-height: 27px;
					}

			.segment-map{
				width: 65%;
				margin-bottom: 100px;
			}
				.img-map-left{
					width: 100px;
					left: -60px;
					bottom: -10px;
				}
				.img-map-right{
					width: 100px;
					right: -60px;
					top: -20px;
				}
				.segment-map iframe{
					height: 350px;
					border-radius: 20px;
				}

			.segment-media{
				margin-bottom: 80px;
				padding: 50px 0px;
			}
				.segment-media img{
					width: 40%;
				}

			.segment-dresscode{
				margin-bottom: 120px;
			}
				.judul-dresscode{
					font-size: 52px;
					margin-bottom: 20px;
				}
					.img-dresscode img{
						width: 25%;
						margin-bottom: 50px;
					}
				.desc-dresscode{
					width: 80%;
					font-size: 20px;
					margin-bottom: 50px;
				}
					.sub-desc{
						font-size: 20px;
					}
					.img-dresscode-left{
						width: 130px;
						top: -110px
					}
					.img-dresscode-right{
						width: 150px;
						top: -100px;
					}
					.img-dresscode-bottom{
						width: 130px;
						bottom: -50px;
					}

			.segment-register{
				width: 80%;
				margin-bottom: 100px;
				border-radius: 20px;
				padding: 60px;
			}
				.register-left{
					width: 45%;
					font-size: 20px;
					margin-bottom: 50px;
					padding-right: 30px;
					vertical-align: top;
				}
					.judul-register{
						font-size: 38px !important;
						line-height: 42px;
						margin-bottom: 20px;
					}
				.register-right{
					width: 55%;
				}
					/* Floating label + underline inputs (scoped) */
					.segment-register .mb-3.floating{
						padding-top: 20px; /* space for floating label */
					}
						.segment-register .mb-3.floating > label{
							top: 37px; /* vertically center-ish before focus */
							font-size: 18px;
						}
						.segment-register .mb-3.floating.focused > label,
						.segment-register .mb-3.floating.filled > label{
							top: 25px;
							font-size: 18px;
						}

					.btn-submit {
						padding: 0.7rem 1.8rem;
						border-radius: 30px;
						font-size: 1.2rem;
					}

					#survey{
						font-size: 20px;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 18px;
						}

			.box-thanks{
				font-size: 20px;
				margin-bottom: 100px;
			}

		.footer img{
			width: 20%;
			margin-bottom: 100px;
		}
}


/*Desktop Full HD MAC*/
@media only screen
and (min-width: 1680px) {
		.header-content {
			padding: 20px 50px;
		}
			.logo {
				width: 180px;
			}
			.btn-regis {
				padding: 0.7rem 1.7rem;
				border-radius: 30px;
				font-size: 1.2rem;
			}

	.body{
		font-size: 18px;
		/*padding-top: 50px;*/
	}

		.parallax-wrapper {
			height: 90vh;
		}
			.segment-countdown{
				flex-direction: row; /* Desktop: side by side */
				margin-bottom: 100px;
			}
				.countdown-left {
					width: 45%;
				}
					.countdown-left img{
						width: 70%;
					}
				.countdown-right {
					width: 55%;
				}
				.countdown-right {
					padding : 20px 10px;
				}
							.countdown-number {
								gap: 10px;
							}
								.box-digit {
									font-size: 62px;
									line-height: 80px;
									width: 55px;
									border-radius: 10px;
								}
							.countdown-label {
								margin-top: 5px;
								font-size: 20px;
							}
						.countdown-separator {
							font-size: 62px;
							padding-bottom: 45px;
						}

			.segment-jadwal{
				width: 78%;
				margin-bottom: 100px;
			}
					.jadwal-left{
						padding-right: 120px;
						margin-bottom: 0px;
					}
					.jadwal-right{
						font-size: 25px;
						line-height: 30px;
					}

			.segment-map{
				width: 65%;
				margin-bottom: 100px;
			}
				.img-map-left{
					width: 130px;
					left: -80px;
					bottom: -10px;
				}
				.img-map-right{
					width: 130px;
					right: -80px;
					top: -20px;
				}
				.segment-map iframe{
					height: 350px;
					border-radius: 20px;
				}

			.segment-media{
				margin-bottom: 80px;
				padding: 50px 0px;
			}
				.segment-media img{
					width: 40%;
				}

			.segment-dresscode{
				margin-bottom: 120px;
			}
				.judul-dresscode{
					font-size: 62px;
					margin-bottom: 20px;
				}
					.img-dresscode img{
						width: 25%;
						margin-bottom: 50px;
					}
				.desc-dresscode{
					width: 80%;
					font-size: 20px;
					margin-bottom: 50px;
				}
					.sub-desc{
						font-size: 20px;
					}
					.img-dresscode-left{
						width: 150px;
						top: -120px
					}
					.img-dresscode-right{
						width: 180px;
						top: -110px;
					}
					.img-dresscode-bottom{
						width: 150px;
						bottom: -50px;
					}

			.segment-register{
				width: 80%;
				margin-bottom: 100px;
				border-radius: 20px;
				padding: 100px;
			}
				.register-left{
					width: 45%;
					font-size: 22px;
					margin-bottom: 50px;
					padding-right: 100px;
					vertical-align: top;
				}
					.judul-register{
						font-size: 40px !important;
						line-height: 44px;
						margin-bottom: 30px;
					}
				.register-right{
					width: 55%;
				}
					/* Floating label + underline inputs (scoped) */
					.segment-register .mb-3.floating{
						padding-top: 20px; /* space for floating label */
					}
						.segment-register .mb-3.floating > label{
							top: 37px; /* vertically center-ish before focus */
							font-size: 18px;
						}
						.segment-register .mb-3.floating > .form-control{
							font-size: 18px;
						}
						.segment-register .mb-3.floating.focused > label,
						.segment-register .mb-3.floating.filled > label{
							top: 25px;
							font-size: 18px;
						}

					.btn-submit {
						padding: 0.7rem 1.8rem;
						border-radius: 30px;
						font-size: 1.2rem;
					}

					#survey{
						font-size: 18px;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 18px;
						}

			.box-thanks{
				font-size: 20px;
				margin-bottom: 100px;
			}

		.footer img{
			width: 20%;
			margin-bottom: 100px;
		}
}


/*Desktop Full HD*/
@media only screen
and (min-width: 1920px) {
		.header-content {
			padding: 20px 50px;
		}
			.logo {
				width: 200px;
			}
			.btn-regis {
				padding: 0.8rem 2rem;
				border-radius: 30px;
				font-size: 1.5rem;
			}

	.body{
		font-size: 20px;
		/*padding-top: 50px;*/
	}

		.parallax-wrapper {
			height: 98vh;
		}
			.segment-countdown{
				flex-direction: row; /* Desktop: side by side */
				margin-bottom: 150px;
			}
				.countdown-left {
					width: 45%;
				}
					.countdown-left img{
						width: 70%;
					}
				.countdown-right {
					width: 55%;
				}
				.countdown-right {
					padding : 20px 10px;
				}
								.box-digit {
									font-size: 72px;
									line-height: 80px;
									width: 60px;
									border-radius: 10px;
								}
							.countdown-label {
								margin-top: 5px;
								font-size: 24px;
							}
						.countdown-separator {
							font-size: 72px;
							padding-bottom: 55px;
						}						

			.segment-jadwal{
				width: 78%;
				margin-bottom: 150px;
			}
					.jadwal-left{
						padding-right: 150px;
						margin-bottom: 0px;
					}
					.jadwal-right{
						font-size: 29px;
						line-height: 34px;
					}

			.segment-map{
				width: 63%;
				margin-bottom: 150px;
			}
				.img-map-left{
					width: 180px;
					left: -120px;
					bottom: -10px;
				}
				.img-map-right{
					width: 160px;
					right: -100px;
					top: -40px;
				}
				.segment-map iframe{
					height: 450px;
					border-radius: 50px;
				}

			.segment-media{
				margin-bottom: 150px;
				padding: 50px 0px;
			}
				.segment-media img{
					width: 42%;
				}

			.segment-dresscode{
				margin-bottom: 200px;
			}
				.judul-dresscode{
					font-size: 84px;
					margin-bottom: 20px;
				}
					.img-dresscode img{
						width: 28%;
						margin-bottom: 80px;
					}
				.desc-dresscode{
					width: 70%;
					font-size: 28px;
					line-height: 36px;
					margin-bottom: 120px;
				}
					.sub-desc{
						font-size: 28px;
					}
					.img-dresscode-left{
						width: 250px;
						top: -220px
					}
					.img-dresscode-right{
						width: 300px;
						top: -210px;
					}
					.img-dresscode-bottom{
						width: 250px;
						bottom: -100px;
					}

			.segment-register{
				width: 80%;
				margin-bottom: 100px;
				border-radius: 80px;
				padding: 120px;
			}
				.register-left{
					width: 45%;
					font-size: 22px;
					line-height: 30px;
					margin-bottom: 50px;
					padding-right: 100px;
					vertical-align: top;
				}
					.judul-register{
						font-size: 62px !important;
						line-height: 70px;
						margin-bottom: 30px;
					}
				.register-right{
					width: 55%;
				}
					/* Floating label + underline inputs (scoped) */
					.segment-register .mb-3.floating{
						padding-top: 20px; /* space for floating label */
					}
						.segment-register .mb-3.floating > label{
							top: 37px; /* vertically center-ish before focus */
							font-size: 20px;
						}
						.segment-register .mb-3.floating.focused > label,
						.segment-register .mb-3.floating.filled > label{
							top: 25px;
							font-size: 20px;
						}

					.btn-submit {
						padding: 0.7rem 1.8rem;
						border-radius: 30px;
						font-size: 1.2rem;
					}

					#survey{
						font-size: 20px;
						padding-top: 50px;
					}
						.isi-survey{
							font-size: 20px;
						}

			.box-thanks{
				font-size: 20px;
				margin-bottom: 100px;
			}

		.footer img{
			width: 20%;
			margin-bottom: 100px;
		}
}

@media print {
	html, body{
		color: #000;
		background-color: #fff;
		font-family: 'Inter Regular';
	}
		.box-cetak{
			position: relative;
			display: block;
		}
			.nama-cetak{
				position: relative;
				display: block;
				font-size: 20px;
				line-height: 20px;
				font-family: 'Inter Bold';
				text-align: left;
				padding-top: 39%;
				padding-left: 2%;
				margin-bottom: 5px;
			}
			.comp-cetak{
				position: relative;
				display: block;
				font-size: 14px;
				line-height: 16px;
				font-family: 'Inter Regular';
				text-align: left;
				padding-left: 2%;
				margin-bottom: 10px;
			}
			.qr-cetak{
				position: relative;
				display: block;
			}
				.qr-cetak img{
					width: 28%;
				}
}