/* ==================== [ Root CSS Start ] ==================== */
/* ==================== [ Core Colors ] ==================== */
:root {
	--white: #ffffff;
	--black: #000000;
	--transparent: #0000;
}

/* ==================== [ Brand / Theme ] ==================== */
:root {
	--primary: #3D8A46;
	--dark-primary: #20582D;
	--warning: #F7A200;
	--secondary: #757575;
	--dark: #0E1218;
	--light: #F6F6F6;
	--border: #DDDDDD;
	--header-bg: #EDEDED;
	--body: var(--white);
}

/* ==================== [ Fonts ] ==================== */
:root {
	--font-primary: "Outfit", sans-serif;
	--font-secondary: "Lexend Deca", sans-serif;
}

/* ==================== [ Layout / Container ] ==================== */
:root {
	--container: 1620px;
	--container-padding: 20px;
	--row-gutter-space: 30px;
}

/* ==================== [ Typography – Common ] ==================== */
:root {
	--a-color: var(--black);
	--a-hover-color: var(--primary);

	--marker-color: var(--primary);

	--blockquote-border-color: var(--primary);
	--blockquote-bg: var(--light);

	--pre-bg: var(--light);
	--pre-color: var(--black);
}

/* ==================== [ Table ] ==================== */
:root {
	--table-border: var(--border);

	--table-th-bg: var(--primary);
	--table-th-color: var(--white);

	--table-td-bg: var(--transparent);
	--table-td-color: var(--black);
}

/* ==================== [ Font Sizes ] ==================== */
:root {
	--fs-12: 12px;
	--fs-14: 14px;
	--fs-16: 16px;
	--fs-18: 18px;
	--fs-20: 20px;
	--fs-22: 22px;
	--fs-24: 24px;
	--fs-28: 28px;
	--fs-30: 30px;
	--fs-32: 32px;
	--fs-35: 35px;
	--fs-40: 40px;
	--fs-48: 48px;
}

/* ==================== [ Margins ] ==================== */
:root {
	--spacing-50: 50px;
}

/* ==================== [ Headings ] ==================== */
:root {
	--heading-color: var(--black);
	--heading-strong-color: var(--warning);
	--heading-font-family: var(--font-secondary);
	--heading-mb: 20px;
	--heading-fw: 600;

	--h1-fs: 200px;
	--h1-lh: 210px;

	--h2-fs: 60px;
	--h2-lh: 100%;

	--h3-fs: 50px;
	--h3-lh: 100%;

	--h4-fs: 30px;
	--h4-lh: 100%;

	--h5-fs: 26px;
	--h5-lh: 100%;

	--h6-fs: 20px;
	--h6-lh: 30px;
}

/* ==================== [ Root CSS End ] ==================== */

/* ==================== [ Brand Global CSS Start ] ==================== */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	scroll-behavior: smooth;
}

body {
	color: var(--secondary);
	font-family: var(--font-primary);
	font-size: var(--fs-16);
	font-style: normal;
	font-weight: 300;
	line-height: 150%;
	background: var(--body);
	overflow-x: hidden;
}

/* ==================== [ Brand Global CSS End ] ==================== */

/* ==================== [ Typography Start ] ==================== */
figure {
	margin: 0;
}

strong,
b {
	font-weight: 600 !important;
}

a,
input,
button,
textarea {
	outline: none;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
textarea:-webkit-autofill:active,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus,
select:-webkit-autofill:active {
	-webkit-box-shadow: 0 0 0 1000px var(--transparent) inset !important;
	-webkit-text-fill-color: var(--secondary) !important;
	transition: background-color 5000s ease-in-out 0s;
}

input:autofill,
textarea:autofill,
select:autofill {
	background-color: var(--transparent) !important;
	color: var(--secondary) !important;
}

a {
	color: var(--a-color);
	word-break: break-word;
	transition: all 0.3s ease-in-out;
}

a:hover {
	color: var(--a-hover-color);
}

p {
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
	line-height: inherit;
	margin-bottom: 20px;
}

ol,
ul {
	margin-bottom: 20px;
	padding-left: 20px;
}

ol ol,
ol ul,
ul ol,
ul {
	margin-top: 10px;
	margin-bottom: 10px;
}

ol li,
ul li {
	font-family: inherit;
	font-weight: inherit;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
}

ol li::marker,
ul li::marker {
	color: var(--marker-color);
}

ul li:has(> ul),
ul li:has(> ol) {
	list-style-type: none;
}

blockquote {
	padding: 16px 16px 16px 24px;
	border-left: 5px solid var(--blockquote-border-color);
	margin-bottom: 20px;
	background-color: var(--blockquote-bg);
	font-size: inherit;
	line-height: inherit;
	color: inherit;
}

pre {
	background-color: var(--pre-bg);
	padding: 16px;
	overflow: auto;
	font-family: inherit;
	border-radius: 12px;
	position: relative;
	color: var(--pre-color);
}

pre code {
	font-size: inherit;
	font-weight: inherit;
	font-family: inherit;
	line-height: inherit;
}

table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 16px;
	font-size: inherit;
}

th,
td {
	border: 1px solid var(--table-border);
	padding: 8px 12px;
	text-align: left;
}

th {
	background-color: var(--table-th-bg);
	font-weight: 600;
	font-size: inherit;
	color: var(--table-th-color);
}

td {
	background-color: var(--table-td-bg);
	font-weight: 400;
	font-size: inherit;
	color: var(--table-td-color);
}

:is(h1, h2, h3, h4, h5, h6) strong {
	color: var(--heading-strong-color);
}

h1,
.h1>* {
	color: var(--heading-color);
	font-family: var(--heading-font-family);
	font-size: var(--h1-fs);
	line-height: var(--h1-lh);
	font-weight: var(--heading-fw);
	margin-bottom: var(--heading-mb);
}

h2,
.h2>* {
	color: var(--heading-color);
	font-family: var(--heading-font-family);
	font-size: var(--h2-fs);
	line-height: var(--h2-lh);
	font-weight: var(--heading-fw);
	margin-bottom: var(--heading-mb);
}

h3,
.h3>* {
	color: var(--heading-color);
	font-family: var(--heading-font-family);
	font-size: var(--h3-fs);
	line-height: var(--h3-lh);
	font-weight: var(--heading-fw);
	margin-bottom: var(--heading-mb);
}

h4,
.h4>* {
	color: var(--heading-color);
	font-family: var(--heading-font-family);
	font-size: var(--h4-fs);
	line-height: var(--h4-lh);
	font-weight: var(--heading-fw);
	margin-bottom: var(--heading-mb);
}

h5,
.h5>* {
	color: var(--heading-color);
	font-family: var(--heading-font-family);
	font-size: var(--h5-fs);
	line-height: var(--h5-lh);
	font-weight: var(--heading-fw);
	margin-bottom: var(--heading-mb);
}

h6,
.h6>* {
	color: var(--heading-color);
	font-family: var(--heading-font-family);
	font-size: var(--h6-fs);
	line-height: var(--h6-lh);
	font-weight: var(--heading-fw);
	margin-bottom: var(--heading-mb);
}

hr {
	margin-block: 20px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
}

textarea {
	resize: none;
}

.typography {
	padding-block: 120px;
}

.typography img {
	max-width: 300px;
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
	object-fit: cover;
	object-position: center;
	margin-bottom: 20px;
}

.typography img.align-left {
	margin-right: 40px;
	float: left;
}

.typography img.align-right {
	margin-left: 40px;
	float: right;
}

.typography img.align-center {
	margin-inline: auto;
	display: block;
}

/* ==================== [ Typography End ] ==================== */

/* ==================== [ Common Start ] ==================== */
.row {
	margin-inline: calc(var(--row-gutter-space) / -2);
	row-gap: var(--row-gutter-space);
}

.row>* {
	padding-inline: calc(var(--row-gutter-space) / 2);
}

.img-cover * {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* ==================== [ Common End ] ==================== */

/* ==================== [ Common Heading Start ] ==================== */
/* ==================== [ Common Heading End ] ==================== */

/* ==================== [ Button Start ] ==================== */
.btn {
	position: relative;
	width: fit-content;
	padding: 0 0 0 20px;
	text-align: center;
	font-family: var(--font-primary);
	font-weight: 500;
	font-size: var(--fs-16);
	line-height: 20px;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	border-radius: 10px;
	border: 0 !important;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	z-index: 3;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
}

.btn .box {
	position: relative;
	display: flex !important;
	align-items: center;
	padding: 15px 20px 15px 10px;
	margin-left: 10px;
	transition: all 0.3s ease-in-out;
	height: calc(100% + 30px);
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

.btn .box::before {
	box-shadow: inset 6px 0px 2.5px 0px rgba(0, 0, 0, 0.20);
	position: absolute;
	content: "";
	top: 0;
	right: 100%;
	width: 22px;
	height: 100%;
	clip-path: inset(4px 0 4px 0);
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	z-index: -2;
}

.btn .box img {
	margin-bottom: 0;
	transform: rotate(0);
	transition: all 0.3s ease-in-out;
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	-ms-transform: rotate(0);
	-o-transform: rotate(0);
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

.btn:is(:hover, :focus-visible, :active, .active) .box::before {
	right: 100%;
	height: 100%;
}

.btn:is(:hover, :focus-visible, :active, .active) .box img {
	transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	-moz-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
	-o-transform: rotate(225deg);
}

.btn-primary {
	color: var(--white);
	background: var(--transparent) !important;
	border-color: var(--primary);
}

.btn-primary::before {
	z-index: -1;
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: calc(100% - 34px);
	height: 100%;
	background-color: var(--primary);
	transition: all 0.3s ease-in-out;
	border-radius: 10px 0 0 10px;
	-webkit-border-radius: 10px 0 0 10px;
	-moz-border-radius: 10px 0 0 10px;
	-ms-border-radius: 10px 0 0 10px;
	-o-border-radius: 10px 0 0 10px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

.btn-primary::after {
	z-index: -1;
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	width: 44px;
	height: 100%;
	background-color: var(--primary);
	transition: all 0.3s ease-in-out;
	border-radius: 0 10px 10px 0;
	-webkit-border-radius: 0 10px 10px 0;
	-moz-border-radius: 0 10px 10px 0;
	-ms-border-radius: 0 10px 10px 0;
	-o-border-radius: 0 10px 10px 0;
}

.btn-primary .box::before {
	background-color: var(--warning);
}

.btn-primary:is(:hover, :focus-visible, :active, .active) {
	background-color: var(--transparent);
}

.btn-primary:is(:hover, :focus-visible, :active, .active)::before {
	width: calc(100% - 74px);
}

.btn-primary:is(:hover, :focus-visible, :active, .active)::after {
	width: 54px;
}

.btn-primary .box img {
	filter: brightness(0) invert(1);
	-webkit-filter: brightness(0) invert(1);
}

.btn-primary:is(:hover, :focus-visible, :active, .active) .box {
	margin-left: 40px;
	padding-left: 20px;
}



/* Warning */

.btn-warning {
	color: var(--black);
	background: var(--transparent) !important;
	border-color: var(--warning);
}

.btn-warning::before {
	z-index: -1;
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: calc(100% - 34px);
	height: 100%;
	background-color: var(--warning);
	transition: all 0.3s ease-in-out;
	border-radius: 10px 0 0 10px;
	-webkit-border-radius: 10px 0 0 10px;
	-moz-border-radius: 10px 0 0 10px;
	-ms-border-radius: 10px 0 0 10px;
	-o-border-radius: 10px 0 0 10px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

.btn-warning::after {
	z-index: -1;
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	width: 44px;
	height: 100%;
	background-color: var(--warning);
	transition: all 0.3s ease-in-out;
	border-radius: 0 10px 10px 0;
	-webkit-border-radius: 0 10px 10px 0;
	-moz-border-radius: 0 10px 10px 0;
	-ms-border-radius: 0 10px 10px 0;
	-o-border-radius: 0 10px 10px 0;
}


.btn-warning .box::before {
	background-color: var(--primary);
}

.btn-warning:is(:hover, :focus-visible, :active, .active) {
	background-color: var(--transparent);
}

.btn-warning:is(:hover, :focus-visible, :active, .active)::before {
	width: calc(100% - 74px);
}

.btn-warning:is(:hover, :focus-visible, :active, .active)::after {
	width: 54px;
}

.btn-warning .box img {
	filter: brightness(1) invert(0);
	-webkit-filter: brightness(1) invert(0);
}

.btn-warning:is(:hover, :focus-visible, :active, .active) .box {
	margin-left: 40px;
	padding-left: 20px;
}


/* ==================== [ Button End ] ==================== */

/* ==================== [ Error 404 Start ] ==================== */
.error-404 {
	padding: 80px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100dvh;
}

.error-404 .heading {
	text-align: center;
}

.error-404 .action * {
	width: fit-content;
	margin: 0 auto;
}

/* ==================== [ Error 404 End ] ==================== */

/* ==================== [ Extra Common Start ] ==================== */
.container-fluid,
.container {
	padding-inline: var(--container-padding);
	margin-inline: auto;
}

.swiper-linear .swiper-wrapper {
	transition-timing-function: linear !important;
}

.swiper-tools {
	display: flex;
	align-items: center;
	gap: 15px;
}

.swiper-button {
	width: 50px;
	height: 50px;
	background-color: var(--primary);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

.swiper-button:hover {
	background-color: var(--warning);
}

/* ==================== [ Extra Common End ] ==================== */


/* ==================== [ Header Start ] ==================== */
.header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9;
}

.header::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 34px;
	background-color: var(--header-bg);
}

.header .navbar {
	padding: 0;
}

.header .header-group {
	position: relative;
	margin-inline: auto;
	padding: 10px 24px;
	display: grid;
	grid-template-columns: 1fr 54px 1fr;
	align-items: center;
	gap: 30px;
	z-index: 1;
	transition: all 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6);
}

.header .header-group>* {
	text-wrap: nowrap;
}

.header .header-group .box {
	position: absolute;
	top: 0;
	left: 50%;
	width: 100%;
	height: 100%;
	background-color: var(--header-bg);
	z-index: -1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
}

.header .header-group .box::before {
	pointer-events: none;
	position: absolute;
	content: "";
	right: calc(100% - 1px);
	bottom: 0;
	width: 115px;
	height: 42px;
	background-image: url('data:image/svg+xml,<svg width="116" height="42" viewBox="0 0 116 42" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(%23clip0_91_25)"> <path d="M0 0L212.25 0V1L169.94 30.3865C159.053 37.9477 146.115 42 132.86 42H112.319C99.1081 42 86.2108 37.9745 75.3454 30.4597L49.4359 12.5403C38.5704 5.02552 25.6731 1 12.4622 1H0V0Z" fill="%23EDEDED"/> </g> <defs> <clipPath id="clip0_91_25"> <rect width="116" height="42" fill="white"/> </clipPath> </defs> </svg> ');
	background-repeat: no-repeat;
	background-size: contain;
}

.header .header-group .box::after {
	pointer-events: none;
	position: absolute;
	content: "";
	left: calc(100% - 1px);
	bottom: 0;
	width: 115px;
	height: 42px;
	background-image: url('data:image/svg+xml,<svg width="116" height="42" viewBox="0 0 116 42" fill="none" xmlns="http://www.w3.org/2000/svg"> <g clip-path="url(%23clip0_91_26)"> <path d="M116 0L-96.25 0V1L-53.9397 30.3865C-43.0532 37.9477 -30.1151 42 -16.8603 42H3.68091C16.8919 42 29.7892 37.9745 40.6546 30.4597L66.5641 12.5403C77.4296 5.02552 90.3269 1 103.538 1H116V0Z" fill="%23EDEDED"/> </g> <defs> <clipPath id="clip0_91_26"> <rect width="116" height="42" fill="white" transform="matrix(-1 0 0 1 116 0)"/> </clipPath> </defs> </svg> ');
	background-repeat: no-repeat;
	background-size: contain;
}

.header .header-group .navbar-brand {
	margin: 0;
	padding: 0;
	max-width: 54px;
}

.header .header-group .navbar-nav {
	display: flex;
	align-items: center;
	gap: 20px;
}

.header .header-group .navbar-nav .nav-link {
	padding: 0;
	margin: 0;
	font-weight: 400;
	font-size: var(--fs-16);
	color: var(--black);
	opacity: 0.8;
}

.header .header-group .navbar-nav .nav-item:is(:hover, :focus-visible, :active, .active, .current-menu-item) .nav-link {
	color: var(--primary);
}

.header.scroll .header-group .navbar-nav .nav-link {
	animation: hideMenu 0.6s linear forwards;
}

.header .header-group .navbar-nav .nav-link,
.header.scroll .header-group:hover .navbar-nav .nav-link {
	animation: showMenu 1s linear forwards;
	-webkit-animation: showMenu 1s linear forwards;
}

@keyframes hideMenu {
	0% {
		opacity: 1;
		visibility: visible;
	}

	100% {
		opacity: 0;
		visibility: hidden;
	}
}

@keyframes showMenu {
	0% {
		opacity: 0;
		visibility: hidden;
	}

	40% {
		opacity: 0;
		visibility: hidden;
	}

	100% {
		opacity: 1;
		visibility: visible;
	}
}

.header.scroll .header-group .box {
	animation: boxHide 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6) 0.5s forwards;
}

.header .header-group .box,
.header.scroll .header-group:hover .box {
	animation: boxShow 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6) forwards;
}

@keyframes boxHide {
	0% {
		width: 100%;
	}

	100% {
		width: 94px;
	}
}

@keyframes boxShow {
	0% {
		width: 94px;
	}

	100% {
		width: 100%;
	}
}


/* ==================== [ Header End ] ==================== */

/* ==================== [ Floating Menu Start ] ==================== */
.floating-menu {
	display: none;
}

/* ==================== [ Floating Menu End ] ==================== */

/* ==================== [ Home Banner Start ] ==================== */
.home-banner {
	background: linear-gradient(180deg, #EDEDED 0%, #FFFFFF 100%);
	padding: 34px 20px 20px;
}

.home-banner .home-banner-container {
	background: linear-gradient(201.66deg, var(--dark-primary) 31.46%, var(--primary) 87.68%);
	border-radius: 14px;
	-webkit-border-radius: 14px;
	-moz-border-radius: 14px;
	-ms-border-radius: 14px;
	-o-border-radius: 14px;
	display: flex;
	align-items: stretch;
	overflow: hidden;
	position: relative;
}

.home-banner .left-content {
	width: 50%;
	background: url("../images/svgs/home-banner-bg-shapes.svg") no-repeat center;
	background-size: cover;
	height: 900px;
	padding: 20px;
	padding-right: 50px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.home-banner .right-content {
	width: 50%;
	background: url("../images/thumb/home-banner-bg.jpg") no-repeat center left;
	background-size: cover;
	height: 900px;
}

.home-banner .left-content .content {
	width: 100%;
	max-width: 800px;
}

.home-banner .left-content .content .disc {
	max-width: 334px;
	font-weight: 300;
	font-size: var(--fs-20);
	line-height: 30px;
	color: var(--white);
	margin-bottom: 150px;
}

.home-banner .left-content .content .title {
	margin-left: auto;
	width: fit-content;
}

.home-banner .left-content .content .title * {
	font-weight: 500;
	font-size: var(--fs-35);
	line-height: 35px;
	text-transform: uppercase;
	text-align: end;
	color: var(--white);
}

.home-banner .left-content .content .action {
	margin-left: auto;
	width: fit-content;
}

.home-banner .branding {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: fit-content;
	text-wrap: nowrap;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
}

.home-banner .branding::before {
	position: absolute;
	content: "";
	top: -99px;
	/* -99px, viewport: 991px -> -92px, viewport: 1920px */
	left: clamp(-60px, -35.20px + -1.29vw, -48px);
	/* -48px, viewport: 991px -> -60px, viewport: 1920px */
	width: clamp(113px, 69.26px + 4.41vw, 154px);
	/* 113px, viewport: 991px -> 154px, viewport: 1920px */
	height: clamp(164px, 100.00px + 6.46vw, 224px);
	/* 164px, viewport: 991px -> 224px, viewport: 1920px */
	background: url("../images/thumb/banner-title-wheat.png") no-repeat center;
	background-size: contain;
	transform: rotate(6.07deg);
}

.home-banner .branding>* {
	font-weight: 600;
	color: var(--white);
	line-height: 75%;
	text-transform: uppercase;
	font-size: clamp(90px, -6.01px + 9.69vw, 180px);
	/* 90px, viewport: 991px -> 180px, viewport: 1920px */
	font-weight: 600;
	margin-bottom: 0;
}

/* ==================== [ Home Banner End ] ==================== */

/* ==================== [ About Us Start ] ==================== */
.about-us {
	position: relative;
	padding: 150px 20px 0 20px;
}

.about-us .about-container {
	position: relative;
}

.about-us .about-container::before {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 100%;
	height: 70px;
	background-color: var(--light);
	border-radius: 20px 20px 0 0;
	-webkit-border-radius: 20px 20px 0 0;
	-moz-border-radius: 20px 20px 0 0;
	-ms-border-radius: 20px 20px 0 0;
	-o-border-radius: 20px 20px 0 0;
	z-index: -1;
}

.about-us .about-flex {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
}

.about-us .left-content {
	flex-shrink: 0;
}

.about-us .left-content .title {
	margin-bottom: var(--spacing-50);
}

.about-us .left-content .title * {
	margin-bottom: 0;
}

.about-us .left-content .image {
	max-width: 400px;
	width: 100%;
	aspect-ratio: 400/540;
	overflow: hidden;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
}

.about-us .right-content {
	max-width: 1090px;
}

.about-us .right-content .disc {
	margin-bottom: 40px;
}

.about-us .right-content .disc * {
	margin-bottom: 0;
	font-size: var(--fs-30);
	font-weight: 400;
	color: var(--dark);
	line-height: 40px;
}

/* ==================== [ About Us End ] ==================== */

/* ==================== [ Our Services Start ] ==================== */
.our-services {
	position: relative;
	padding-inline: 20px;
}

.our-services .services-container {
	position: relative;
	padding: 30px 0 80px;
	overflow: hidden;
	background-color: var(--light);
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
}

.our-services .services-container::before {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: url("../images/thumb/our-services-bg.png") no-repeat center;
	background-size: cover;
	opacity: 0.1;
	z-index: 0;
}

.our-services .heading-container {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: var(--spacing-50);
	position: relative;
	z-index: 1;
}

.our-services .services-container .heading {
	text-align: end;
}

.our-services .services-container .heading .title * {
	margin-bottom: 10px;
}

.our-services .services-container .heading .disc * {
	max-width: 724px;
	margin-bottom: 0;
	margin-left: auto;
}

.our-services .servicesSlider {
	overflow: visible;
}

.our-services .servicesSlider .swiper-slide {
	width: auto;
}

.our-services .servicesSlider .swiper-slide .card {
	padding: 30px;
	max-width: 450px;
	width: 100%;
	background-color: var(--white);
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
}

.our-services .servicesSlider .swiper-slide .card .image {
	margin-bottom: 20px;
	width: 100%;
	aspect-ratio: 390 / 250;
	overflow: hidden;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	-ms-border-radius: 15px;
	-o-border-radius: 15px;
}

.our-services .servicesSlider .swiper-slide .card .content .title * {
	font-weight: 500;
	margin-bottom: 10px;
	text-decoration: none;
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

.our-services .servicesSlider .swiper-slide .card .content .title *:hover {
	color: var(--primary);
}

.our-services .servicesSlider .swiper-slide .card .content .disc * {
	color: var(--secondary);
	margin-bottom: 20px;
}

.our-services .servicesSlider .swiper-slide .card .content .action * {
	font-weight: 600;
	text-decoration: underline;
	text-transform: uppercase;
	color: var(--primary);
}

.our-services .servicesSlider .swiper-slide .card .content .action *:hover {
	color: var(--warning);
}

/* ==================== [ Our Services End ] ==================== */

/* ==================== [ Our Vision, Mission Start ] ==================== */
.vision-mission {
	position: relative;
	padding: 150px 20px 0;
	overflow-x: clip;
}

.vision-mission .vision-mission-wrapper {
	position: relative;
}

.vision-mission .vision-mission-wrapper::before {
	position: absolute;
	content: "";
	top: 0;
	right: 23.72%;
	max-width: 471px;
	width: 100%;
	aspect-ratio: 471 / 757;
	background: url("../images/svgs/vision-mission-bg.svg") no-repeat center;
	background-size: cover;
	z-index: -1;
}

.vision-mission .vision-mission-wrapper::after {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	width: 100%;
	height: 160px;
	background: linear-gradient(180deg, #1D5029 0%, #21572D 100%);
	z-index: -1;
	border-radius: 20px 20px 0 0;
	-webkit-border-radius: 20px 20px 0 0;
	-moz-border-radius: 20px 20px 0 0;
	-ms-border-radius: 20px 20px 0 0;
	-o-border-radius: 20px 20px 0 0;
}

.vision-mission .vision-mission-container {
	display: flex;
	align-items: center;
	gap: 20px;
}

.vision-mission .content {
	max-width: 955px;
	width: 100%;
}

.vision-mission .content .heading {
	margin-bottom: 60px;
}

.vision-mission .content .heading .title * {
	margin-bottom: 20px;
}

.vision-mission .content .heading .disc * {
	margin-bottom: 0;
}

.vision-mission .content .part-group {
	max-width: 768px;
	display: flex;
	align-items: stretch;
	gap: 40px;
	margin-inline: auto;
}

.vision-mission .content .part-group>* {
	height: auto;
}

.vision-mission .content .part-group .part {
	width: 100%;
}

.vision-mission .content .part-group .part .title * {
	color: var(--primary);
	margin-bottom: 20px;
}

.vision-mission .content .part-group .part .disc * {
	margin-bottom: 0;
}

.vision-mission .content .part-group .seprator {
	width: 1px;
	background-color: var(--border);
}

.vision-mission .image {
	max-width: 557px;
	width: 100%;
	aspect-ratio: 557 / 831;
}

/* ==================== [ Our Vision, Mission End ] ==================== */

/* ==================== [ Why Choose Us Start ] ==================== */
.why-choose-us {
	position: relative;
	padding: 0 20px;
}

.why-choose-us .choose-wrapper {
	position: relative;
	padding: 30px 0 80px;
	background: linear-gradient(180deg, #21572D 0%, #3C8845 100%);
	border-radius: 0 0 20px 20px;
	-webkit-border-radius: 0 0 20px 20px;
	-moz-border-radius: 0 0 20px 20px;
	-ms-border-radius: 0 0 20px 20px;
	-o-border-radius: 0 0 20px 20px;
}

.why-choose-us .heading {
	position: relative;
	text-align: center;
	max-width: 750px;
	margin-inline: auto;
	margin-bottom: var(--spacing-50);
}

.why-choose-us .heading .title *:not(strong) {
	color: var(--white);
	margin-bottom: 20px;
}

.why-choose-us .heading .disc * {
	color: var(--white);
	margin-bottom: 0;
}

.why-choose-us .card-group {
	display: flex;
	align-items: stretch;
	gap: 20px;
}

.why-choose-us .card-group .card {
	position: relative;
	height: auto;
	border-radius: 20px;
	padding: 25px;
	border: 1px solid rgba(221, 221, 221, 0.30);
	background-color: rgba(255, 255, 255, 0.05);
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
}

.why-choose-us .card-group .card .title * {
	margin-bottom: 20px;
	color: var(--white);
	font-weight: 500;
}

.why-choose-us .card-group .card .disc * {
	margin-bottom: 0;
	color: var(--white);
}

.why-choose-us .card-group .card .icon {
	position: absolute;
	bottom: 0;
	right: 0;
	opacity: 0;
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
}

.why-choose-us .card-group .card:hover .icon {
	opacity: 1;
}

/* ==================== [ Why Choose Us End ] ==================== */