/* ============================================================================= */
/* Imports and Root Variables */
/* ============================================================================= */
/* #region */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800;900&family=Playfair+Display:wght@400;500;600;700;800;900&display=swap");

:root {
	--nav-height: 100px;
	--nav-collapsed-height: 50px;
}
/* #endregion */

/* ============================================================================= */
/* General/Reset Styles */
/* ============================================================================= */
/* #region */
* {
	padding: 0;
	margin: 0;
	outline: none;
	list-style-type: none;
	text-decoration: none;
	box-sizing: border-box;
}

body,
html {
	/* overflow: unset !important; */
	overflow-x: hidden !important;
	/* margin-top: var(--nav-height) */
}

ol,
ul,
h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
i,
button,
strong,
u,
sub,
sup,
span,
textarea,
table tr td,
select,
input {
	padding: 0;
	margin: 0;
}
/* #endregion */

/* ============================================================================= */
/* Typography */
/* ============================================================================= */
/* #region */
body {
	background: #fff;
	font-family: "Montserrat", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 100%;
	font-family: "Playfair Display", serif;
}

h1,
h2 {
	font-size: 3.5rem;
	line-height: 130%;
}

h3,
h4 {
	font-size: 2.6rem;
	line-height: 120%;
}

h5,
h6 {
	font-size: 2rem;
	line-height: 120%;
}

p {
	font-size: 1rem;
	line-height: 120%;
}
/* #endregion */

/* ============================================================================= */
/* Links & Lists */
/* ============================================================================= */
/* #region */
a,
a:hover {
	color: #000;
	text-decoration: none;
}

ol,
ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
/* #endregion */

/* ============================================================================= */
/* Form Elements */
/* ============================================================================= */
/* #region */
select:focus-within,
textarea:focus-within,
input:focus-within,
.form-control:focus-within,
button:focus-within {
	box-shadow: none !important;
}
/* #endregion */

/* ============================================================================= */
/* Utilities */
/* ============================================================================= */
/* #region */
hr {
	border: none;
	display: block;
	width: 100%;
	height: 1px;
}

.media {
	display: flex;
	align-items: flex-start;
}

.media-body {
	flex: 1;
}

.pa-y4 {
	padding: 4rem 0;
}

.z1 {
	z-index: 100 !important;
}

.z0 {
	z-index: 0 !important;
}

.ml-2 {
	margin-left: 0.5rem;
}
/* #endregion */

/* ============================================================================= */
/* Common Components */
/* ============================================================================= */
/* #region */
.common-heading {
	font-size: 3.5rem;
	font-weight: 700;
	color: #8b9260;
	letter-spacing: -0.02em;
	line-height: 140%;
}

.common-para {
	font-size: 1rem;
	font-weight: 400;
	color: #161616;
	letter-spacing: -0.02em;
	line-height: 140%;
}

.common-button {
	font-size: 1rem;
	font-weight: 700;
	color: #ffffff;
	line-height: 110%;
	background: #c1865e;
	display: inline-block;
	letter-spacing: -0.02em;
	padding: 1.3rem 3.7rem;
	border-radius: 3rem;
	transition: all linear 0.3s;

	&:hover {
		background: #818952;
		color: #ffffff;
	}
}

.common-button-d {
	font-size: 1rem;
	font-weight: 700;
	line-height: 110%;
	background: white;
	color: #c1865e;
	border: 2px solid #c1865e;
	display: inline-block;
	letter-spacing: -0.02em;
	padding: 1.3rem 3.7rem;
	border-radius: 3rem;
	transition: all linear 0.3s;

	&:hover {
		background: #818952;
		color: #ffffff;
		border: 2px solid #818952;
	}
}
/* #endregion */

/* ============================================================================= */
/* Layout */
/* ============================================================================= */
/* #region */
header.primary-header {
	position: fixed !important;
	width: 100%;
	z-index: 999;
	top: 0;

	.navbar-brand img {
		max-height: var(--nav-height);
		transition: max-height 0.3s;
	}
}

header.primary-header.small {
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
	.navbar-brand img {
		--nav-height: var(--nav-collapsed-height);
	}
}

section {
	z-index: 0;
	background: white;
}
/* #endregion */

/* ============================================================================= */
/* Header */
/* ============================================================================= */
/* #region */
.header-section {
	padding-top: 1rem;
	background-color: #EEEFE8;

	.navbar-nav {
		.nav-item {
			.nav-link {
				font-size: 0.9rem;
				font-weight: 400;
				color: #161616;
				letter-spacing: -0.02em;
				line-height: 140%;
				margin-left: 2.5rem;
				transition: all linear 0.3s;
				position: relative;

				&:before {
					position: absolute;
					content: "";
					left: 15%;
					bottom: 0;
					width: 0%;
					height: 1px;
					transition: all linear 0.3s;
					background-color: #161616;
				}

				&:hover:before,
				&.active:before {
					width: 70%;
				}

				&.active {
					font-weight: 700;
				}
			}
		}
	}
}
/* #endregion */

/* ============================================================================= */
/* Hero */
/* ============================================================================= */
/* #region */
.hero-section {
	background-color: #ddc7b2;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-position: 50% 80%;
	position: relative;

	&:has(video) { background-color: inherit;}

	&:before {
		position: absolute;
		content: "";
		left: 0%;
		bottom: -275px;
		width: 16%;
		height: 60%;
		background-image: url("../images/bar-1.png");
		background-repeat: no-repeat;
		background-position: bottom left;
		background-size: contain;
	}



  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  justify-content: space-around;
  min-height: 100vh !important;

  .video-container {
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute !important;
    display: block;
    overflow: hidden;
    background-repeat: no-repeat;
    pointer-events: none;
  }
  
  video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    transform: translateX(-50%) translateY(-50%);
    object-fit: cover; /* Crucial for aspect ratio and filling */
    z-index: 1; /* Place video behind the overlay */
  }

  .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0); /* Semi-transparent overlay */
    color: white;
    z-index: 2; /* Place overlay above the video */
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  .image-overlay {
	position: absolute;
	top: calc(var(--nav-height) + 50px);
	right: 25px;
	z-index: 3;

	img {
		width: 100%;
		height: auto;
		object-fit: contain;
		filter: brightness(0) invert();
		opacity: 30%;
	}
  }
  
  .focus {
    position: relative;
    z-index: 3; /* Place content above the overlay */
    text-align: center;
    color: white;
  }
}

.hero-txt-wrap {
	.hero-social {
		text-align: right;

		ul {
			li {
				a {
					display: block;
					margin-top: 0.8rem;

					i {
						color: #616250;
						font-size: 0.9rem;
					}
				}
			}
		}
	}

	h1 {
		font-size: 5rem;
		font-weight: 700;
		color: #8B9260;
		letter-spacing: -0.02em;
		line-height: 140%;
		margin-bottom: 1rem;
		margin-top: -1rem;
		line-height: 100%;

		span {
			font-size: 4rem;
			display: block;
		}
	}

	p {
		font-size: 1.4rem;
		font-weight: 400;
		color: #ffffff;
		letter-spacing: -0.02em;
		line-height: 140%;
		position: relative;
	}

	.hero-bttn {
		margin-top: 3rem;

		a {
			background: #ffffff;
			color: #8b9260;

			&:hover {
				background: #8b9260;
				color: #ffffff;
			}
		}
	}
}

.hero-txt-wrap-2{
    display:flex;
    flex-direction:row;
    padding-left:20px;
}

.hero-txt-wrap-3{
    padding-left:20px;
}
/* #endregion */

/* ============================================================================= */
/* About */
/* ============================================================================= */
/* #region */
.about-section {
	position: relative;

	&:before {
		position: absolute;
		content: "";
		right: 0%;
		bottom: -75px;
		width: 45%;
		height: 60%;
		background-image: url("../images/bar-2.png");
		background-repeat: no-repeat;
		background-position: bottom right;
		background-size: contain;
	}
}

.about-txt {
	text-align: center;
	margin: 4rem 0;

	h2 {
		margin-bottom: 2rem;
	}

	p {
		font-size: 1rem;
		font-weight: 400;
		color: #161616;
		letter-spacing: -0.02em;
		line-height: 140%;
		width: 80%;
		margin: 0 auto;
		line-height: 160%;
	}
}
/* #endregion */

/* ============================================================================= */
/* Story */
/* ============================================================================= */
/* #region */
.story-section {
	background-image: url("../images/story-bg.png");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 96%;
	position: relative;

	&:before {
		position: absolute;
		content: "";
		left: 0%;
		bottom: -75px;
		width: 55%;
		height: 40%;
		background-image: url("../images/bar-3.png");
		background-repeat: no-repeat;
		background-position: bottom left;
		background-size: contain;
		z-index: -1 !important;
	}
}
/* #endregion */

/* ============================================================================= */
/* Benefits */
/* ============================================================================= */
/* #region */
.benifit-main-wrap {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	padding-top: 8rem;
	width: 80%;
	margin: 0 auto;
	position: relative;

	.benifit-item-txt {
		padding: 2rem;
		border: 2px solid #8b9260;
		text-align: center;

		h3 {
			font-size: 4rem;
			font-weight: 700;
			color: #8b9260;
			letter-spacing: -0.02em;
			line-height: 140%;
		}

		h5 {
			font-size: 1.5rem;
			font-weight: 700;
			color: #8b9260;
			letter-spacing: -0.02em;
			line-height: 140%;
			margin-bottom: 2rem;
			margin-top: 1rem;
		}

		p {
			width: 80%;
			margin: 0 auto;
			font-size: 1rem;
			font-weight: 400;
			color: #161616;
			letter-spacing: -0.02em;
			line-height: 140%;
		}

		&:nth-child(1),
		&:nth-child(2) {
			border-right: 0;
		}
	}
}
/* #endregion */

/* ============================================================================= */
/* Packages */
/* ============================================================================= */
/* #region */
.packages-section {
	position: relative;
}

/* Small Round Border */
.rbp {
	border-radius: 20px;
}

.packages-img {
	img {
		width: 100%;
		margin: 0 auto;
		display: block;
		-o-object-fit: cover;
		object-fit: cover;
		aspect-ratio: 16/9;
	}
}

.packages-txt {
	h4 {
		font-size: 2.4rem;
		font-weight: 700;
		color: #8b9260;
		letter-spacing: -0.02em;
		line-height: 140%;
		margin-bottom: 2rem;
	}

	p {
		font-size: 1.1rem;
		font-weight: 400;
		color: #161616;
		letter-spacing: -0.02em;
		line-height: 140%;
		width: 80%;
		margin-bottom: 2rem;
	}
}
/* #endregion */

/* ============================================================================= */
/* Customer Reviews */
/* ============================================================================= */
/* #region */
.customer-section {
	background-image: url("../images/testi.webp");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding: 3rem 0 8rem;
	position: relative;

	&:before {
		position: absolute;
		content: "";
		left: 0%;
		bottom: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(139, 146, 96, 0.468);
	}
}

.slider-arrows {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-left: 4rem;
	width: 100%;
	padding-right: 4rem;
	z-index: 99;

	a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		width: 2rem;
		height: 2rem;
		border-radius: 50%;
		background-color: #ffffff;

		i {
			font-size: 1rem;
			color: #161616;
		}
	}
}

.img-inline {
	max-width: 50%;
	margin-left: 20px;
}

.customer-review-txt {
	text-align: center;
	display: flex;
	flex-direction: column;
	background-color: rgba(255, 255, 255, 0.953);
	padding: 5rem 4rem;
	border-radius: 1rem;
	position: relative;
	width: 70%;
	margin: 0 auto;
	overflow: visible;
	margin-top: 5rem;

	.avatar {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		width: 100%;
		margin-top: 2rem;

		img {
			width: 150px;
			height: auto;
			-o-object-fit: cover;
			object-fit: cover;
		}
	}

	p {
		font-size: 1rem;
		font-weight: 400;
		color: #161616;
		letter-spacing: -0.02em;
		line-height: 140%;
		width: 60%;
		margin: 0 auto;
		margin-bottom: 1rem;
	}

	.review-customer-profile {
		h5 {
			font-size: 1rem;
			font-weight: 700;
			color: #161616;
			letter-spacing: -0.02em;
			line-height: 140%;
		}
	}
}
/* #endregion */

/* ============================================================================= */
/* FAQ Section */
/* ============================================================================= */
/* #region */
.faq-section {
	position: relative;

	&:before {
		position: absolute;
		content: "";
		right: 0%;
		top: 5px;
		width: 70%;
		height: 60%;
		background-image: url("../images/bar-6.png");
		background-repeat: no-repeat;
		background-position: bottom right;
		background-size: contain;
	}
}

.faq-ask-wrap {
	.accordion-body {
		padding: 0;
		background: transparent !important;
	}

	.accordion {
		.accordion-item {
			box-sizing: border-box;
			margin-bottom: 1.5rem;
			padding: 1.2rem 2rem;
			background: #ffffff;
			border-radius: 3rem;
			border: 1px solid #8b9260;

			button {
				font-size: 0.9rem;
				font-weight: 600;
				color: #161616;
				letter-spacing: -0.02em;
				line-height: 140%;
				background-color: transparent;
				padding: 0;
				font-family: "Montserrat", sans-serif;
			}

			p {
				font-size: 0.99rem;
				font-weight: 400;
				color: #161616;
				letter-spacing: -0.02em;
				line-height: 140%;
				width: 90%;
				margin-top: 1rem;
			}
		}
	}
}

.accordion-button {
	&::after {
		flex-shrink: 0;
		content: "+";
		background-image: none;
		transition: all linear 0.3s;
		font-size: 26px;
		color: #161616;
		transform: rotate(180deg);
	}

	&:not(.collapsed)::after {
		content: "-";
		background-image: none;
	}
}
/* #endregion */

/* ============================================================================= */
/* Contact Section */
/* ============================================================================= */
/* #region */
.contact-section {
	background-image: url("../images/contact-bg.png");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	position: relative;
	padding-top: 8rem;

	&:before {
		position: absolute;
		content: "";
		left: 0%;
		top: 37%;
		width: 100%;
		height: 60%;
		background-image: url("../images/footer-bg.png");
		background-repeat: no-repeat;
		background-position: bottom center;
		background-size: contain;
	}
}

.contact-form-wrap {
	margin-top: 4rem;
	position: relative;
	z-index: 999;

	.form-group {
		margin-bottom: 1.5rem;

		.form-control {
			font-size: 1rem;
			font-weight: 600;
			color: #161616;
			letter-spacing: -0.02em;
			line-height: 140%;
			border-radius: 0;
			border: 0;
			border-bottom: 2px solid #161616;
			padding-left: 0;
			background-color: transparent;
		}
	}
}
/* #endregion */

/* ============================================================================= */
/* Footer */
/* ============================================================================= */
/* #region */
.ftr-social {
	margin-top: 5rem;
	text-align: center;
	position: relative;
	z-index: 999;

	ul {
		display: flex;
		align-items: center;
		justify-content: center;

		li {
			a {
				display: block;
				margin: 0 0.5rem;

				i {
					font-size: 1.5rem;
					color: #161616;
				}
			}
		}
	}

	p {
		font-size: 0.8rem;
		font-weight: 400;
		color: #161616;
		letter-spacing: -0.02em;
		line-height: 140%;
		margin-top: 1rem;
	}
}
/* #endregion */

/* ============================================================================= */
/* Back to Top Button */
/* ============================================================================= */
/* #region */
#back-to-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	display: none;
	cursor: pointer;
	background-color: #8b9260;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	font-size: 1.5rem;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	z-index: 9999;
	transition: opacity 0.2s ease-in-out;

	i {
		font-size: 1rem;
		color: #ffffff;
	}
}
/* #endregion */

/* ============================================================================= */
/* Other Styles */
/* ============================================================================= */
/* #region */
.hero-section-second {
	background-color: #eeefe8;
}

.second-head-color {
	color: #8b9260;
}

.divider-line {
	position: absolute;
	bottom: 0;
	width: 2px;
	height: 5vh;
	background-color: #8b9260;
}

.sec-pad {
	padding: 120px 50px;
}

.mht {
	line-height: 28px;
}

.abimg {
	position: absolute;
	bottom: 0;
	right: 0;
	max-width: 400px;
	z-index: -1;
}

.abimg2 {
	position: absolute;
	top: -120px;
	left: 0;
	max-width: 200px;
	z-index: -1;
}

.pack-form {
	h2 {
		color: #8b9260 !important;
		font-weight: bold;
		font-size: 32px;
	}

	border: 2px solid #8b9260;
	border-top-left-radius: 30%;
	border-top-right-radius: 30%;
	padding-bottom: 10vh !important;
}

.pb {
	position: absolute;
	bottom: -4vh;
	left: 50%;
	transform: translateX(-50%);
}

.benifit-item-txt {
	h5 {
		min-height: 7.5vh;
	}
}

.mt-min {
	position: relative;
	z-index: 99;
	bottom: 2rem;

	a {
		background-color: #c1865e;
		color: #ffffff;
	}
}
/* #endregion */

/* ============================================================================= */
/* Media Queries */
/* ============================================================================= */
/* #region */
@media (max-width: 1550px) {
	.benifit-item-txt {
		h5 {
			min-height: 100px;
		}
	}
}

@media (max-width: 991px) {
    .hero-txt-wrap-2{
    display:flex;
    flex-direction:column;
    padding-left:0px;
}
.hero-txt-wrap-3{
    padding-left:0px;
}
	.packages-txt {
		text-align: center;
	}

	.packages-txt h4,
	.packages-txt p,
	.packages-txt a {
		margin-left: auto;
		margin-right: auto;
	}

	.common-button {
		margin-top: 1rem;
	}
}

.col-lg-6.packages-txt.pl-lg-5 {
    padding-left:50px;
}

@media (max-width: 700px) {
	.img-inline {
		max-width: 100%;
		margin-left: 0px;
		margin-top: 20px;
		margin-bottom: 20px;
	}
}

@media (max-width: 440px) {
	.benifit-item-txt {
		h5 {
			min-height: auto;
		}
	}

	.hero-text-wrap {
		text-align: left !important;
	}
}
/* #endregion */