
/************************************/
/***  01. Global Variables        ***/
/************************************/
:root{
	--primary-color			: var(--color-navy);
	--secondery-color		: var(--color-background);
	--text-color			: var(--body-color);
	--accent-color			: var(--color-gold);
	--white-color			: #FFFFFF;
	--divider-color			: #e8edf3;
	--error-color			: rgb(230, 87, 87);
	--default-font			: var(--font-family);
}

.about-us p { line-height: 1.7em; margin-bottom: 1.6em; color: var(--primary-color); }

.about-us h1, .about-us h2, .about-us h3, .about-us h4, .about-us h5, .about-us h6 {
	margin: 0;
	font-weight: 700;
	line-height: 1.1em;
	color: var(--primary-color);
}

.about-us figure { margin: 0; }
.about-us a { text-decoration: none; color: inherit; }
.about-us a:hover, .about-us a:focus { text-decoration: none; outline: 0; }

.container{
	max-width: 1500px;
	margin: 0 auto;
	padding: 0 15px;
}
.row{ display: flex; flex-wrap: wrap; margin: 0 -15px; }
.row.align-items-center{ align-items: center; }
.col-lg-6{ width: 100%; padding: 0 15px; }
@media (min-width: 992px){ .col-lg-6{ width: 50%; } }

.image-anime{ position: relative; overflow: hidden; display: block; }
.image-anime:after{
	content: "";
	position: absolute;
	width: 200%;
	height: 0%;
	left: 50%;
	top: 50%;
	background-color: rgba(255,255,255,.3);
	transform: translate(-50%,-50%) rotate(-45deg);
	z-index: 1;
	pointer-events: none;
}
.image-anime:hover:after{
	height: 250%;
	transition: all 600ms linear;
	background-color: transparent;
}

.reveal-up{
	animation: fadeInUp 0.7s ease-out both;
}
@keyframes fadeInUp{
	from{ opacity: 0; transform: translateY(30px); }
	to{ opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce){
	.reveal-up{ animation: none; }
}



/************************************/
/***  05. About Us css            ***/
/************************************/
.about-us{
	background-color: var(--secondery-color);
	padding: var(--section-pad-y, 60px) 0;
}

.about-us-images{
	position: relative;
	padding-right: 100px;
	padding-bottom: 180px;
	margin-right: 30px;
}

.about-img-1 figure,
.about-img-2 figure{ display: block; }

.about-img-1 img{
	width: 100%;
	object-fit: cover;
	aspect-ratio: 1 / 0.76;
}

.about-img-2{
	position: absolute;
	width: 100%;
	max-width: 65%;
	bottom: 0;
	right: 0;
}
.about-img-2 img{
	width: 100%;
	object-fit: cover;
	aspect-ratio: 1 / 0.76;
}

.experience-counter{
	position: absolute;
	top: 0;
	left: 0;
	height: 152px;
	width: 152px;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
	align-items: center;
	background-color: var(--accent-color);
	border: 6px solid var(--white-color);
	transform: translate(-50%, -6px);
	border-radius: 50%;
}
.experience-counter h3{
	font-size: 34px;
	color: var(--white-color);
	text-align: center;
	width: 100%;
	margin-bottom: 5px;
}
.experience-counter p{
	font-weight: 600;
	line-height: 1.4em;
	text-transform: capitalize;
	color: var(--white-color);
	text-align: center;
	margin-bottom: 0;
}


.feedback-counter{
	position: absolute;
	top: 0;
	right: 0;
	transform: rotate(-180deg) translate(20px, -20px);
	writing-mode: vertical-rl;
	display: flex;
	align-items: center;
}
.feedback-counter p{
	font-size: 16px;
	font-weight: 500;
	color: var(--white-color);
	height: 60px;
	width: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--accent-color);
	border-radius: 50%;
	margin: 0 0 15px 0;
	transition: all 0.3s ease-in-out;
}
.feedback-counter:hover p{ background-color: var(--primary-color); }
.feedback-counter h3{
	font-size: 18px;
	font-weight: 500;
	text-transform: capitalize;
	width: calc(100% - 75px);
}

@media (min-width: 992px) {
	.about-us .row.align-items-center {
		align-items: stretch;
	}
	.about-us .col-lg-6 {
		display: flex;
	}
	.about-us-images {
		flex: 1;
		display: flex;
		flex-direction: column;
		padding-bottom: 0;
	}
	.about-img-1 {
		flex: 1;
		padding-bottom: 200px; 
	}
	.about-img-1 figure {
		height: 100%;
	}
	.about-img-1 img {
		height: 100%;
		aspect-ratio: unset;
	}
	.about-img-2 img {
		aspect-ratio: 1 / 0.9;
	}
}

.about-us-content-body{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: 80px;
}
.about-us-content-body::before{
	content: '';
	position: absolute;
	right: 50%;
	top: 0;
	bottom: 0;
	transform: translateX(-50%);
	border: 1px solid var(--divider-color);
	width: 1px;
	height: 100%;
}

.about-us-content-info{ width: calc(50% - 40px); }

.about-us-content-list{ margin-bottom: 40px; }
.about-us-content-list ul{ padding: 0; margin: 0; list-style: none; }
.about-us-content-list ul li{
	position: relative;
	font-weight: 500;
	color: var(--primary-color);
	text-transform: capitalize;
	padding-left: 30px;
	margin-bottom: 15px;
}
.about-us-content-list ul li:last-child{ margin-bottom: 0; }
.about-us-content-list ul li::before{
	content: '\f058';
	position: absolute;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-size: 20px;
	line-height: normal;
	color: var(--accent-color);
	display: inline-block;
	top: 2px;
	left: 0;
}

.about-us-contact-list{ width: calc(50% - 40px); }

.about-contact-item{ display: flex; align-items: center; margin-bottom: 40px; }
.about-contact-item:last-child{ margin-bottom: 0; }

.about-contact-item .icon-box{
	width: 40px;
	height: 40px;
	background-color: var(--accent-color);
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 15px;
	flex-shrink: 0;
	transition: all 0.3s ease-in-out;
}
.about-contact-item:hover .icon-box{ background-color: var(--primary-color); }
.about-contact-item .icon-box figure{ display: block; border-radius: 50%; overflow: hidden; }
.about-contact-item .icon-box img{ max-width: 40px; border-radius: 50%; }
.about-contact-item .icon-box i{ font-size: 18px; color: var(--white-color); }

.about-contact-content{ width: calc(100% - 55px); }
.about-contact-content h3{ font-size: 20px; text-transform: capitalize; }
.about-contact-content p{
	font-weight: 500;
	color: var(--primary-color);
	text-transform: capitalize;
	margin-bottom: 0;
}

/************************************/
/***  Section Title (eyebrow/h2)  ***/
/************************************/
.section-title{ margin-bottom: 40px; }
.about-us-content .section-title:last-child { margin-bottom: 0; }

.section-title h3{
	display: inline-flex;
	align-items: center;
	gap: 12px;
	position: relative;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6em;
	text-transform: capitalize;
	color: var(--accent-color);
	padding-left: 0;
	padding-bottom: 0;
	margin-bottom: 20px;
}
.section-title h3::before{
	content: '';
	display: inline-block;
	width: 30px;
	height: 2px;
	background: currentColor;
}

.section-title h2{
	font-size: 28px;
	font-weight: 700;
	letter-spacing: -0.02em;
	margin-bottom: 0;
}
.section-title h2 span{ color: inherit; }
.section-title p{ margin-top: 30px; margin-bottom: 0; }

/************************************/
/***  Responsive                  ***/
/************************************/
.about-dot-shape{
	display: block;
	position: absolute;
	width: 102px;
	height: 102px;
	pointer-events: none;
	left: 30px;
	bottom: 30px;
	z-index: 2;
}
@media (max-width: 1199px){
	.about-us-images{ padding-right: 60px; margin-right: 0; }
	.section-title h2{ font-size: 34px; }
	.feedback-counter{
		transform: rotate(-180deg) translate(-10px, -20px);
	}
	.about-dot-shape{
		width: 95px;
		height: 95px;
		left: 20px;
		bottom: 20px;
	}
}

@media (max-width: 991px){
	.about-us{ padding: 50px 0; overflow: hidden; }
	.about-us-images{ margin: 0 0 30px 0; padding-right: 90px; padding-bottom: 120px; }

	.experience-counter{ height: 137px; width: 137px; }
	.experience-counter h3{ font-size: 28px; }

	.feedback-counter{
		right: 0;
		transform: rotate(-180deg) translate(0px, 0px);
		width: 90px;
		justify-content: center;
	}
	.feedback-counter p{ height: 46px; width: 46px; font-size: 13px; margin: 0 0 12px 0; }
	.feedback-counter h3{ font-size: 18px; width: auto; }

	.about-us-content-list{ margin-bottom: 30px; }
	.about-contact-item{ margin-bottom: 30px; }

	.about-dot-shape{
		width: 85px;
		height: 85px;
		left: 15px;
		bottom: 15px;
	}
}
@media (min-width: 768px) and (max-width: 991px){
	.about-us-images{
		max-width: 100%;
		margin: 0 0 50px 0;
		padding-right: 100px;
		padding-bottom: 140px;
	}
}
@media (max-width: 767px){
	.section-title{ margin-bottom: 30px; }
	.section-title h2{ font-size: 26px; }

	.about-us-images{
		background-image: none;
		padding: 10px 85px 150px 0;
	}

	.feedback-counter{
		right: 0;
		transform: rotate(-180deg) translate(0, 0);
		width: 65px;
		justify-content: center;
	}
	.feedback-counter p{ font-size: 12px; height: 44px; width: 44px; margin: 0 0 8px 0; }
	.feedback-counter h3{ font-size: 14px; width: auto; }

	.about-img-1{ max-width: 100%; }
	.about-img-2{
		max-width: 68%;
		bottom: 0;
		margin-left: 0;
	}
	.about-dot-shape{
		display: block;
		width: 75px;
		height: 75px;
		left: 10px;
		bottom: 10px;
		transform: none;
	}
	.about-img-1 img{ aspect-ratio: 1 / 1.15; min-height: unset; }
	.about-img-2 img{ aspect-ratio: 1 / 1.15; min-height: unset; }

	.experience-counter{ height: 102px; width: 102px; }
	.experience-counter h3{ font-size: 22px; }
	.experience-counter p{ font-size: 12px; line-height: 1.1em; }

	.about-us-content-body{ gap: 0px; }
	.about-us-content-body::before{ display: none; }

	.about-us-content-info{
		width: 100%;
		border-bottom: 1px solid var(--divider-color);
		padding-bottom: 15px;
		margin-bottom: 15px;
	}

	.about-us-content-list{ margin-bottom: 20px; }
	.about-us-content-list ul li{ margin-bottom: 10px; }
	.about-us-content-list ul li::before{ font-size: 18px; top: 3px; }

	.about-us-contact-list{ width: 100%; }
	.about-contact-item{ margin-bottom: 20px; }
	.about-contact-content h3{ font-size: 18px; }
}
