/* ==========================================================================
   AICS Custom Overrides
   - Unifies typography site-wide (fixes irregular/mixed fonts on hero & pages)
   - Adds styling for the redesigned Clients section
   ========================================================================== */

/* ---- 1. Unified Typography ----
   The base template mixed four different font families (Poppins, Open Sans,
   Lora, Montserrat) across headings, quotes and highlighted text, which made
   the first page look inconsistent. We standardize on two families used
   consistently everywhere: Poppins for headings/emphasis, Open Sans for body copy. */

body,
p,
li,
a,
span,
div,
input,
textarea,
button {
	font-family: 'Open Sans', sans-serif;
}

h1, h2, h3, h4, h5, h6,
.sec-title h2,
.sec-title .title,
.banner-carousel .content-box h1,
.banner-carousel .content-box h2,
.call-to-action h2,
.services-section .service-block .inner-box h3,
.approach-block h3,
.testimonial-block .text,
blockquote,
.main-footer .footer-widget h2,
.btn-style-one,
.btn-style-two,
.btn-style-three {
	font-family: 'Poppins', sans-serif;
}

/* Remove leftover serif/alternate treatment so quotes & captions match the rest of the site */
.testimonial-block .text,
.testimonials-section blockquote,
q,
cite,
.quote-text {
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
}

/* ---- 2. Clients Section (redesigned) ---- */
.clients-section .clients-intro {
	max-width: 780px;
	margin: 0 auto 40px;
	text-align: center;
	color: #797979;
	font-size: 16px;
	line-height: 1.8;
}

.clients-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 24px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.clients-grid .client-badge {
	flex: 0 1 220px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 110px;
	padding: 20px 22px;
	background: #ffffff;
	border: 1px solid #ececec;
	border-radius: 6px;
	box-shadow: 0 6px 20px rgba(0,0,0,0.05);
	transition: all 300ms ease;
	text-align: center;
}

.clients-grid .client-badge:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 28px rgba(0,0,0,0.09);
	border-color: #fbd848;
}

.clients-grid .client-badge .name {
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 17px;
	color: #242424;
	line-height: 1.35;
}

/* ---- 3. Recent Work Gallery (projects.html) ---- */
.work-gallery-section {
	position: relative;
	padding: 100px 0 70px;
}

.work-gallery-section .sec-title {
	margin-bottom: 45px;
}

.work-gallery-section .sec-title p {
	max-width: 760px;
	margin: 14px auto 0;
	color: #797979;
	font-size: 16px;
	line-height: 1.8;
}

.work-gallery-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.work-gallery-grid .work-item {
	position: relative;
	overflow: hidden;
	border-radius: 6px;
	box-shadow: 0 6px 20px rgba(0,0,0,0.08);
	flex: 0 1 calc(33.333% - 14px);
}

@media only screen and (max-width: 991px) {
	.work-gallery-grid .work-item {
		flex: 0 1 calc(50% - 10px);
	}
}

@media only screen and (max-width: 599px) {
	.work-gallery-grid .work-item {
		flex: 0 1 100%;
	}
}

.work-gallery-grid .work-item a {
	display: block;
	position: relative;
}

.work-gallery-grid .work-item img {
	display: block;
	width: 100%;
	height: 260px;
	object-fit: cover;
	transition: transform 500ms ease;
}

.work-gallery-grid .work-item:hover img {
	transform: scale(1.08);
}

.work-gallery-grid .work-item .caption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 14px 18px;
	background: linear-gradient(to top, rgba(0,0,0,0.78), rgba(0,0,0,0));
	color: #ffffff;
	font-family: 'Poppins', sans-serif;
	font-weight: 500;
	font-size: 15px;
	opacity: 0;
	transform: translateY(8px);
	transition: all 300ms ease;
}

.work-gallery-grid .work-item:hover .caption {
	opacity: 1;
	transform: translateY(0);
}


