@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Poppins:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Ubuntu:ital,wght@0,400;0,500;1,500&display=swap');

:root {

	/*========== Colors ==========*/
	/* favorite color */
	--hue-color: 349;

	--primary-color: hsl(var(--hue-color), 69%, 61%);
	--primary-color-lighter: hsl(var(--hue-color), 92%, 85%);
	--second-color: hsl(350, 43%, 43%);
	--title-color: hsl(var(--hue-color), 8%, 15%);
	--text-color: hsl(var(--hue-color), 8%, 45%);
	--text-color-light: hsl(var(--hue-color), 8%, 65%);
	--body-color: hsl(var(--hue-color), 60%, 95%);
	--scroll-bar-color: hsl(var(--hue-color), 12%, 90%);
	--scroll-thumb-color: hsl(var(--hue-color), 12%, 80%);

	--zindex: 1000;
	--noindex: 900;

	--wrap-bg: -webkit-linear-gradient( -90deg, rgb(6,66,66) 0%, rgb(86,255,235) 100%);
}

html {
	scroll-behavior: smooth;
	overflow-y: scroll;
	overflow-x: hidden;
}

button,
input {
	border: none;
	outline: none;
}

 ::-webkit-scrollbar {
	width: 0.5rem;
	background-color: var(--body-color);
	border-radius: 0.5rem;
	-webkit-border-radius: 0.5rem;
	-moz-border-radius: 0.5rem;
	-ms-border-radius: 0.5rem;
	-o-border-radius: 0.5rem;
}

 ::-webkit-scrollbar-track {
	width: 0.5rem;
	background-color: var(--body-color);
	border-radius: 0.5rem;
	-webkit-border-radius: 0.5rem;
	-moz-border-radius: 0.5rem;
	-ms-border-radius: 0.5rem;
	-o-border-radius: 0.5rem;
}

 ::-webkit-scrollbar-thumb {
	background-color: var(--primary-color-lighter);
	border-radius: 0.5rem;
	-webkit-border-radius: 0.5rem;
	-moz-border-radius: 0.5rem;
	-ms-border-radius: 0.5rem;
	-o-border-radius: 0.5rem;
}
::-webkit-scrollbar-thumb:hover {
	background-color: var(--second-color);
	border-radius: 0.5rem;
	-webkit-border-radius: 0.5rem;
	-moz-border-radius: 0.5rem;
	-ms-border-radius: 0.5rem;
	-o-border-radius: 0.5rem;
}
@-webkit-keyframes fall {
	0% {
		opacity: 0.9;
		top: 0
	}

	100% {
		opacity: 0.2;
		top: 100%
	}
}

@keyframes fall {
	0% {
		opacity: 0.9;
		top: 0
	}

	100% {
		opacity: 0.2;
		top: 100%
	}
}

@-webkit-keyframes blow-soft-left {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: -50%
	}
}

@keyframes blow-soft-left {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: -50%
	}
}

@-webkit-keyframes blow-medium-left {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: -100%
	}
}

@keyframes blow-medium-left {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: -100%
	}
}

@-webkit-keyframes blow-soft-right {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: 50%
	}
}

@keyframes blow-soft-right {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: 50%
	}
}

@-webkit-keyframes blow-medium-right {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: 100%
	}
}

@keyframes blow-medium-right {
	0% {
		margin-left: 0
	}

	100% {
		margin-left: 100%
	}
}

@-webkit-keyframes sway-0 {
	0% {
		-webkit-transform: rotate(-5deg)
	}

	40% {
		-webkit-transform: rotate(28deg)
	}

	100% {
		-webkit-transform: rotate(3deg)
	}
}

@keyframes sway-0 {
	0% {
		-ms-transform: rotate(-5deg);
		transform: rotate(-5deg)
	}

	40% {
		-ms-transform: rotate(28deg);
		transform: rotate(28deg)
	}

	100% {
		-ms-transform: rotate(3deg);
		transform: rotate(3deg)
	}
}

@-webkit-keyframes sway-1 {
	0% {
		-webkit-transform: rotate(10deg)
	}

	40% {
		-webkit-transform: rotate(43deg)
	}

	100% {
		-webkit-transform: rotate(15deg)
	}
}

@keyframes sway-1 {
	0% {
		-ms-transform: rotate(10deg);
		transform: rotate(10deg)
	}

	40% {
		-ms-transform: rotate(43deg);
		transform: rotate(43deg)
	}

	100% {
		-ms-transform: rotate(15deg);
		transform: rotate(15deg)
	}
}

@-webkit-keyframes sway-2 {
	0% {
		-webkit-transform: rotate(15deg)
	}

	40% {
		-webkit-transform: rotate(56deg)
	}

	100% {
		-webkit-transform: rotate(22deg)
	}
}

@keyframes sway-2 {
	0% {
		-ms-transform: rotate(15deg);
		transform: rotate(15deg)
	}

	40% {
		-ms-transform: rotate(56deg);
		transform: rotate(56deg)
	}

	100% {
		-ms-transform: rotate(22deg);
		transform: rotate(22deg)
	}
}

@-webkit-keyframes sway-3 {
	0% {
		-webkit-transform: rotate(25deg)
	}

	40% {
		-webkit-transform: rotate(74deg)
	}

	100% {
		-webkit-transform: rotate(37deg)
	}
}

@keyframes sway-3 {
	0% {
		-ms-transform: rotate(25deg);
		transform: rotate(25deg)
	}

	40% {
		-ms-transform: rotate(74deg);
		transform: rotate(74deg)
	}

	100% {
		-ms-transform: rotate(37deg);
		transform: rotate(37deg)
	}
}

@-webkit-keyframes sway-4 {
	0% {
		-webkit-transform: rotate(40deg)
	}

	40% {
		-webkit-transform: rotate(68deg)
	}

	100% {
		-webkit-transform: rotate(25deg)
	}
}

@keyframes sway-4 {
	0% {
		-ms-transform: rotate(40deg);
		transform: rotate(40deg)
	}

	40% {
		-ms-transform: rotate(68deg);
		transform: rotate(68deg)
	}

	100% {
		-ms-transform: rotate(25deg);
		transform: rotate(25deg)
	}
}

@-webkit-keyframes sway-5 {
	0% {
		-webkit-transform: rotate(50deg)
	}

	40% {
		-webkit-transform: rotate(78deg)
	}

	100% {
		-webkit-transform: rotate(40deg)
	}
}

@keyframes sway-5 {
	0% {
		-ms-transform: rotate(50deg);
		transform: rotate(50deg)
	}

	40% {
		-ms-transform: rotate(78deg);
		transform: rotate(78deg)
	}

	100% {
		-ms-transform: rotate(40deg);
		transform: rotate(40deg)
	}
}

@-webkit-keyframes sway-6 {
	0% {
		-webkit-transform: rotate(65deg)
	}

	40% {
		-webkit-transform: rotate(92deg)
	}

	100% {
		-webkit-transform: rotate(58deg)
	}
}

@keyframes sway-6 {
	0% {
		-ms-transform: rotate(65deg);
		transform: rotate(65deg)
	}

	40% {
		-ms-transform: rotate(92deg);
		transform: rotate(92deg)
	}

	100% {
		-ms-transform: rotate(58deg);
		transform: rotate(58deg)
	}
}

@-webkit-keyframes sway-7 {
	0% {
		-webkit-transform: rotate(72deg)
	}

	40% {
		-webkit-transform: rotate(118deg)
	}

	100% {
		-webkit-transform: rotate(68deg)
	}
}

@keyframes sway-7 {
	0% {
		-ms-transform: rotate(72deg);
		transform: rotate(72deg)
	}

	40% {
		-ms-transform: rotate(118deg);
		transform: rotate(118deg)
	}

	100% {
		-ms-transform: rotate(68deg);
		transform: rotate(68deg)
	}
}

@-webkit-keyframes sway-8 {
	0% {
		-webkit-transform: rotate(94deg)
	}

	40% {
		-webkit-transform: rotate(136deg)
	}

	100% {
		-webkit-transform: rotate(82deg)
	}
}

@keyframes sway-8 {
	0% {
		-ms-transform: rotate(94deg);
		transform: rotate(94deg)
	}

	40% {
		-ms-transform: rotate(136deg);
		transform: rotate(136deg)
	}

	100% {
		-ms-transform: rotate(82deg);
		transform: rotate(82deg)
	}
}

.sakura {
	/* background: -webkit-linear-gradient(120deg, rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.9));
	background: linear-gradient(120deg, rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.9)); */
	background: url(../assets/img/star2.png);
	background-size: 100% 100%;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

body {
	font-family: 'Poppins', sans-serif;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

body.light-mode {
	background-image: linear-gradient(315deg, #fee2f8 0%, #dcf8ef 74%);
}

body.dark-mode {
	background-image: linear-gradient(62deg, #8EC5FC 0%, #E0C3FC 100%);
}

img {
	max-width: 100%;
	height: auto;
}

@media (max-width:768px) {
	img {
		max-width: 30%;
	}
}

@media (min-width:768px) {
	img {
		max-width: 20%;
	}
}

@media (min-width:1200px) {
	img {
		max-width: 25%;
	}
}


.top-right-decoration {
	z-index: var(--zindex);
	position: fixed;
	top: 0;
	right: 0;
	display: block;
}

.top-left-decoration {
	z-index: var(--zindex);
	position: fixed;
	bottom: 0;
	left: 0;
	display: block;
	transform: rotate(-180deg);
}

.title h1 {
	font-family: 'Dancing Script', cursive;
	font-weight: bold;
	font-style: normal;
	font-size: 35px;
	/* margin: 20px 0; */
	color: var(--primary-color);
}

.title h2 {
	font-family: 'Dancing Script', cursive;
	font-weight: bold;
	font-style: normal;
	margin: 0;
	padding: 0;
	/* font-size: 14px; */
	color: #e25c67;
	line-height: 1;
}

.dance-med {
	font-family: 'Dancing Script', cursive;
	font-weight: bolder;
	font-style: normal;
	font-size: 32px;
	color: black;
	margin: 16px;
	text-align: center;
}

.title h3 {
	font-weight: 300;
	/* text-transform: uppercase; */
	/* letter-spacing: 5px; */
	font-size: 30px;
	color: var(--primary-color);
	/* margin-top: 5px; */
}

.title p {
	color: var(--primary-color);
	margin: 30px 0 20px;
	/* text-transform: uppercase; */
	letter-spacing: 3px;
	font-size: 16px;
}

.wrap {
	height: 100vh;
	width: 100%!important;
	/* display: flex!important;
	align-items: center!important;
	justify-content: center!important; */
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	color: black;
    /* background-image: -webkit-linear-gradient( -90deg, rgb(6,66,66) 0%, rgb(86,255,235) 100%); */
	text-align: center;
	background-size: cover; /* Ensures the image covers the container without distortion */
    background-position: center; /* Centers the image */
    background-repeat: no-repeat;
}


.mouse-animation > .scroll-animation {
    width: 0.25rem;
    height: 0.625rem;
    animation: scroll 3s linear infinite;
}
.mouse-animation {
    height: 2rem;
    box-sizing: content-box;
}


.title,
.functions {
	margin-bottom: 3.5rem;
}

#time {
	width: auto;
	height: auto;
	padding: 20px;
	background-color: var(--primary-color-lighter);
	border-radius: 20px;
	font-size: 16px;
	margin-bottom: 4rem;
}

.venue {
	width: auto;
	height: auto;
	background-color: var(--primary-color);
	border-radius: .75rem;
	text-align: center;
	color: #fff;
	padding: 1rem 1.75rem;
	margin-right: 8px;
	font-weight: 600;
	transition: .3s;
}

.venue:hover {
	background-color: var(--second-color);
	color: var(--title-color);
}

.venue a {
	text-decoration: none;
	color: #fff;
}

.container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border-radius: 10px;
	overflow: hidden;
}

.table_container {
	display: grid;
	grid-template-columns: 1fr;
	border-radius: 10px;
	overflow: hidden;
}

.block {
	width: 180px;
	height: 160px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #fff;
}

.days {
	background: linear-gradient(90deg, #D0637C, #DD868C);
}

.hours {
	background: linear-gradient(90deg, #FB943C, #F8C457);
}

.minutes {
	background: linear-gradient(90deg, #E1C7E4, #EAD1E4);
}

.seconds {
	background-color: #7BDFF2;
}

.date {
	color: var(--second-color);
	font-weight: 900;
}

.place {
	color: var(--second-color);
	font-weight: 900;
}

.CTA,
.CTA a {
	color: black;
	text-align: center;
	font-size: 16px;
	margin: 24px;

}

.CTA a:hover {
	padding: 0.1rem;
	color: var(--title-color);
	border-radius: 10px;
}

.phone {
	color: var(--second-color);
}

.end-msg {
	width: auto;
	height: auto;
	padding: 12px;
	background: linear-gradient(90deg, #b33a46, #9b313c);
	border-radius: 20px;
	font-size: 14px;
	color: #fff;
	font-size: 24px;
}

a {
	text-decoration: none;
}

.happiness {
	z-index: var(--noindex);
	color: var(--second-color);
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 24px;
}

.music {
	display: none;
}

.actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	font-size: 12px;
	letter-spacing: 0pt;
	align-items: center;
	justify-content: center;
	margin-left: 8px;
}

.footer {
	z-index: var(--zindex);
	font-size: 0.6rem;
	font-weight: 600;
	color: black!important;

}

.footer span {
	color: black!important;

}


/*=============== BUTTONS ===============*/
.button {
	display: flex;
	gap: 0.6rem;
	color: #fff;
	background-color: var(--primary-color);
	padding: 1rem 1.75rem;
	border-radius: .5rem;
	font-weight: 600;
	transition: .3s;
}

.button:hover {
	background-color: var(--second-color);
	color: var(--title-color);
}

.d-block {
	display: block !important;
}

.loading {
	display: none;
	text-align: center;
	padding: 15px;
}

.loading:before {
	content: "";
	display: inline-block;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	margin: 0 10px -6px 0;
	border: 3px solid #eee;
	border-top-color: var(--primary-color);
	animation: animate-loading 1s linear infinite;
}

@keyframes animate-loading {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

.font-esthetic {
    font-family: Sacramento, cursive !important;
}

.venueDetails{
	width: 100%;
	color: black;
	/* background-image : -webkit-linear-gradient( -90deg, rgb(17, 129, 129) 0%, rgb(86,255,235) 100%); */
	/* border: 3PX solid; */
	width: 100%;
	padding: 10PX;

}

.venueContainer{
	border: 1px solid grey;
}

.timer{
	width: 350px;
}

.title-section {
    text-align: center;
    background-image: url('../assets/img/rounded-frame.png'); 
    background-size: contain; /* Ensures the image scales to fit inside */
    background-position: center; /* Centers the image */
    background-repeat: no-repeat; /* Prevents the image from repeating */
    height: 300px; /* Sets the height of the section */
    padding: 20px; /* Adds some padding around the content */
	display: flex;
	justify-content: center;
	align-items: center;
	padding:100px;
}

.inner-title-section{
	margin-left: 30px!important;
	text-align: center;
}

.view-map-btn{
	color: black;
}

.img-center-crop {
    width: 14rem;
    height: 14rem;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
}
.brideAndGroomSection{
	color: black;
	/* background-image: -webkit-linear-gradient( 90deg, rgb(17, 129, 129) 0%, rgb(86,255,235) 100%); */
	width: 100%;
}
.audio-icon{
	width: 35px;
	height: 35px;
}
#button-music{
	border: 2px solid var(--primary-color-lighter)!important;
	color: var(--primary-color);
	font-size: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.transform-middle-y{
	transform: translateY(120%) !important;
}

.bottomSection{
	color: black;
	text-align: center;
	/* background-image: -webkit-linear-gradient( 90deg, rgb(6,66,66) 0%, rgb(86,255,235) 100%); */
}

.page-container {
  position: relative; /* ensures absolute child is relative to this */
}

.main-house {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 350px;
  background-image: url('../assets/img/house-min.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  animation: fadeInTop 1.5s ease-in-out forwards;
}

@keyframes fadeInTop {
  0% {
    opacity: 0;
    transform: translateY(-50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInBottom {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.content {
  position: relative; /* ensures it stays above the background */
  padding: 20px;
  color: #333;
}

.calendar-container {
  text-align: center;
  border-radius: 6px;
  max-width: 220px; /* smaller width */
  margin: auto;
  margin-top: -10px;
  z-index: 1;
  animation: fadeInBottom 1s ease-in forwards;
}

.month {
  font-size: 12px;
  font-weight: 500;
  color: #333;
  margin-left: 5px;
  margin-bottom: 8px;
  letter-spacing: 0.3px;
}

.day-date-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 10px;
}

.day {
  font-size: 10px;
  color: #333;
  position: relative;
}

.day::before,
.day::after {
	width: 55px;
  content: '';
  position: absolute;
  left: -6px;
  right: -6px;
  height: 1px;
  background-color: #333;
}

.day::before { top: -5px; }
.day::after { bottom: -5px; }

.date {
  font-size: 30px; /* was 60px */
  font-weight: 500;
  color: #333;
  line-height: 1;
}

.time {
  font-size: 10px;
  color: #333;
  position: relative;
}

.time::before,
.time::after {
	width: 55px;
  content: '';
  position: absolute;
  left: -6px;
  right: -6px;
  height: 1px;
  background-color: #333;
}

.time::before { top: -5px; }
.time::after { bottom: -5px; }

.year {
  font-size: 12px;
  color: #333;
  margin-top: 15px;
  letter-spacing: 0.5px;
  margin-left: 11px;
}
