.txt-white, .txt-white *{
	color: white !important
} 

@-webkit-keyframes snowflakes-fall {
	0% {
		top: -10%
	}

	100% {
		top: 100%
	}
}

@-webkit-keyframes snowflakes-shake {

	0%,
	100% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}

	50% {
		-webkit-transform: translateX(80px);
		transform: translateX(80px)
	}
}

@keyframes snowflakes-fall {
	0% {
		top: -10%
	}

	100% {
		top: 100%
	}
}

@keyframes snowflakes-shake {

	0%,
	100% {
		transform: translateX(0)
	}

	50% {
		transform: translateX(80px)
	}
}

.snowflake {
	color: #fff;
	font-size: 1em;
	font-family: Arial, sans-serif;
	text-shadow: 0 0 3px #000;
	position: fixed;
	top: -10%;
	z-index: 9999;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	cursor: default;
	-webkit-animation-name: snowflakes-fall, snowflakes-shake;
	-webkit-animation-duration: 10s, 3s;
	-webkit-animation-timing-function: linear, ease-in-out;
	-webkit-animation-iteration-count: infinite, infinite;
	-webkit-animation-play-state: running, running;
	animation-name: snowflakes-fall, snowflakes-shake;
	animation-duration: 10s, 3s;
	animation-timing-function: linear, ease-in-out;
	animation-iteration-count: infinite, infinite;
	animation-play-state: running, running;
}

.snowflake:nth-of-type(0) {
	left: 1%;
	-webkit-animation-delay: 0s, 0s;
	animation-delay: 0s, 0s
}

.snowflake:nth-of-type(1) {
	left: 10%;
	-webkit-animation-delay: 1s, 1s;
	animation-delay: 1s, 1s
}

.snowflake:nth-of-type(2) {
	left: 20%;
	-webkit-animation-delay: 6s, .5s;
	animation-delay: 6s, .5s
}

.snowflake:nth-of-type(3) {
	left: 30%;
	-webkit-animation-delay: 4s, 2s;
	animation-delay: 4s, 2s
}

.snowflake:nth-of-type(4) {
	left: 40%;
	-webkit-animation-delay: 2s, 2s;
	animation-delay: 2s, 2s
}

.snowflake:nth-of-type(5) {
	left: 50%;
	-webkit-animation-delay: 8s, 3s;
	animation-delay: 8s, 3s
}

.snowflake:nth-of-type(6) {
	left: 60%;
	-webkit-animation-delay: 6s, 2s;
	animation-delay: 6s, 2s
}

.snowflake:nth-of-type(7) {
	left: 70%;
	-webkit-animation-delay: 2.5s, 1s;
	animation-delay: 2.5s, 1s
}

.snowflake:nth-of-type(8) {
	left: 80%;
	-webkit-animation-delay: 1s, 0s;
	animation-delay: 1s, 0s
}

.snowflake:nth-of-type(9) {
	left: 90%;
	-webkit-animation-delay: 3s, 1.5s;
	animation-delay: 3s, 1.5s
}

.snowflake:nth-of-type(10) {
	left: 25%;
	-webkit-animation-delay: 2s, 0s;
	animation-delay: 2s, 0s
}

.snowflake:nth-of-type(11) {
	left: 65%;
	-webkit-animation-delay: 4s, 2.5s;
	animation-delay: 4s, 2.5s
}

#music-toggle {
	position: fixed;
	bottom: 15px;
	left: 15px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: #fff;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9999;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

#music-toggle:hover {
	transform: scale(1.1);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

#music-toggle img {
	width: 25px;
	height: 25px;
	pointer-events: none;
}
.vibrating {
	animation: pulse 1.2s infinite, rotate 4s linear infinite, glow 2s ease-in-out infinite;
	box-shadow: 0 0 15px rgba(139, 0, 0, 0.6), 0 0 25px rgba(139, 0, 0, 0.4);
}

@keyframes pulse {
	0% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.05) rotate(1deg);
	}

	100% {
		transform: scale(1) rotate(-1deg);
	}
}

@keyframes rotate {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes glow {
	0% {
		box-shadow: 0 0 10px rgba(139, 0, 0, 0.2), 0 0 20px rgba(139, 0, 0, 0.2);
	}

	50% {
		box-shadow: 0 0 20px rgba(139, 0, 0, 0.6), 0 0 30px rgba(139, 0, 0, 0.5);
	}

	100% {
		box-shadow: 0 0 10px rgba(139, 0, 0, 0.2), 0 0 20px rgba(139, 0, 0, 0.2);
	}
}


.home-sec-1 .bg{
	background-size: auto 100% !important;
	background-origin: content-box;
	background-position: 50% 50%;
	background-repeat: repeat !important;
	background-attachment: scroll;
}
.banner-title *{
	font-family: var(--dan-bold);    
	line-height: 1.6;
	color: #F6C17F !important;
	text-shadow: 1px 1px 10px #111 !important;
}

.home-sec-2 .col-btn .col-inner{
	display: flex;
	gap: 15px;
	flex-wrap: wrap;
	justify-content: center
}
.home-sec-2 .col-btn .col-inner a{
	width: max-content;
	background-color: #797171;
	border-radius: 8px;
	padding: 8px 15px;
}
.home-sec-2 .col-btn .col-inner img{
	height: 35px;
	width: auto;
	filter: brightness(0) invert(1);
}
.home-sec-2 .col-btn .icon-box-img{
	width: 35px !important
}
.home-sec-2 .col-btn .icon-box{
	align-items: center
}
.home-sec-2 .col-txt p{
	font-size: 20px;
}
.home-sec-2 .col-btn .col-inner a:hover{
	background-color: var(--theme-color2);
}
#main .home-sec-2{
	padding: 50px 0
}
.home-sec-3 .icon-box-text p{
	font-size: 20px;
	margin-bottom: 0
}
.home-sec-3 .icon-box-text h2{
	font-family: var(--dan-bold);
    font-size: 45px;
    line-height: 1.6;
}
.home-sec-3 .icon-box .icon-box-img{
	order: 1
}
.home-sec-3 .icon-box .icon-box-text {
    padding-right: 1em;
    padding-left: 0;
}
.home-sec-3 .info-giadinh{
	margin-top: 15px;
}
.home-sec-3 .txt-gt p{
	text-align: justify
}
.home-sec-3 .img-bot{
	margin: auto
}
.home-sec-3 .row1 img{
	object-position: 50% 20%;
}
.home-sec-3 .row2 img{
	object-position: 50% 20%;
}
#main .home-sec-3, #main .home-sec-4, #main .home-sec-5, #main .home-sec-6, #main .home-sec-7, #main .home-sec-9{
	padding-top: 60px 
}

.home-sec-4 .row-story > .large-8 > .col-inner{
	background-color: rgb(255, 255, 255);
	border-radius: 5px;
	box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
	padding: 30px;
}
.home-sec-4 .row-story > .large-8 > .col-inner > .img{
	margin: auto
} 
.txt-title h2{
	font-size: 65px;
	font-family: var(--dan-bold);
	color: #BC8453;
	margin-bottom: 0
}
.home-sec-4 .row-story > .large-8 > .col-inner > .text > p, .home-sec-5 .col1 p, .home-sec-6 .col1 p, .home-sec-7 .txt-content p, .home-sec-8 .col1 p{
	font-size: 20px;
	margin-bottom: 30px;
	color: #BC8453;
}
.home-sec-4 .row-time-line .large-4{
	position: relative
}
.home-sec-4 .row-time-line .large-4:before{
	content: '';
	position: absolute;
	height: 100%;
	width: 2px;
	background-color: #000;
	right: 15%;
	top: 0
}
.home-sec-4 .row-time-line .large-4:after{
	content: '';
    position: absolute;
    width: 50px;
    height: 2px;
    right: 6%;
    top: 50px;
    background: #000;
}
.home-sec-4 .row-time-line p{
	font-size: 18px;
	margin-bottom: 0
}
.home-sec-4 .row-time-line h3{
	font-size: 32px;
	font-family: var(--dan-bold);
	margin-bottom: 5px;
	color: var(--theme-color)
}
.home-sec-4 .row-time-line .img {
	border-radius: 8px;
	overflow: hidden;
}

.swiper {
	width: 100%;
	padding-top: 50px;
	padding-bottom: 50px;
}

.swiper-slide {
	background-position: center;
	background-size: cover;
	width: 500px;	
}

.swiper-slide img {
	display: block;
	width: 100%;
}
.col-album{
	overflow: hidden
}
.swiper-button-next, .swiper-button-prev{
	background: none !important
}

.swiper-button-next i, .swiper-button-prev i{
	font-size: 30px;
	color: var(--theme-color)
}
.swiper-button-next i:hover, .swiper-button-prev i:hover{
	color: var(--theme-color2)
}

.invitation {  
    text-align: center;
    line-height: 1.6;
}

.invitation-time {
    font-size: 16px;
    font-family: var(--semi);
    margin: 0;
}

.invitation-lunar {
    font-size: 14px;
    margin: 0;
}

.invitation-place {
    font-size: 16px;
    font-family: var(--semi);
    margin-top: 10px;
}

.invitation-address {
    font-size: 14px;
    margin: 0;
}

.home-sec-6 .box-image{
	border-radius: 10px 10px 0 0;
	overflow: hidden
}
.home-sec-6 .box-text{
	padding: 30px;
	border: 1px dashed #BB6A07;
	border-radius: 0 0 10px 10px;
}
.home-sec-6 .box-text h3{
	font-size: 24px;
}
.btn1{
	margin-bottom: 0;
	background-color: #987289;
	font-size: 16px;
	transition: .3s;
	font-weight: 100;
	font-family: var(--semi)
}
.btn1:hover{
	box-shadow: none;
	transform: scale(1.1)
}
.ux-timer > span{
	box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 5px 0px, rgba(0, 0, 0, 0.1) 0px 0px 1px 0px;
}

.home-sec-7 .col-inner{
	padding: 70px 70px 50px;
	position: relative;
	border-top-left-radius: 600px;
    border-top-right-radius: 600px;
	overflow: hidden
}
.home-sec-7 .col-inner:before{
	content:'';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
	background-image: url(/wp-content/uploads/2025/10/BING6304.webp);
	opacity: .3;
	z-index: -1
}
.home-sec-7 .txt-title h2, .home-sec-7 .txt-content p{
	color: black
}
.home-sec-7 .col-inner > .img img{
	filter: brightness(0%);
}
.home-sec-7 .box {
	padding: 30px;
	background-color: white;
	border-radius: 15px;
	border: 1px dashed
}
.home-sec-7 .box h4{
	font-size: 22px;
	color: var(--theme-color)
}
.home-sec-7 .stack{
	gap: 30px;
	padding: 0 60px;
	margin: 100px 0 20px;
}
.btn-box-qr{
	display: flex;
	gap: 30px;
	justify-content: center;
    margin-top: 30px;
}
.btn-box-qr p{
	margin: 0
}
.btn-box-qr .btn1{
	border-radius: 8px;
	margin: 0
}
.home-sec-8 .large-5 p{
	font-size: 20px;
}
.home-sec-8 .large-5 .img {
	border-radius: 10px;
	overflow: hidden
}
.home-sec-9 p{
	margin: 30px 0 0;
	font-size: 32px;
	font-family: var(--dan-bold)
}

@media(max-width: 900px){
	.home-sec-1 .banner-layers{
		overflow: hidden
	}
	.banner-title *{
		font-size: 30px !important
	}
	.home-sec-3 .icon-box-text h2{
		font-size: 28px
	}
	.home-sec-3 .icon-box .icon-box-img{
		width: 100px !important
	}
	.home-sec-3 .row2 .col:first-child{
		order: 1
	}
	.home-sec-4 .row-time-line .large-4:after, .home-sec-4 .row-time-line .large-4:before{
		display: none
	}
	.txt-title h2{
		font-size: 36px;
	}
	.swiper{
		padding: 0
	}
	.swiper-slide{
		width: 80vw
	}
	.swiper-button-next, .swiper-button-prev{
		text-align: right
	}
	.home-sec-5 .col1 p, .home-sec-6 .col1 p, .home-sec-7 .txt-content p, .home-sec-8 .col1 p{
		margin-bottom: 0
	}
	.home-sec-7 .stack {
		gap: 30px;
		padding: 0;
		margin: 30px 0 20px;
		flex-wrap: wrap;
	}
	.home-sec-7 .col-inner{
		padding: 70px 20px 50px;
	}
	.btn-box-qr{
		gap: 10px;
		margin-top: 15px;
	}
	.home-sec-7 .box{
		padding: 30px 20px;
	}
	.home-sec-7 .box-text.text-center{
		padding-bottom: 0
	}
	.home-sec-4 .row-time-line .img{
		margin: auto;
	}
	.home-sec-4 .row-time-line .col-inner{
		text-align: center
	}
	.home-sec-4 .row-time-line .col:has(.img) {
		padding-bottom: 15px;
	}
	.home-sec-4 .row-time-line h3{
		line-height: 1.4;
	}
}