/**
 * Case Study Hero Section
 *
 * Hero section with background image, client logo, headline, and info cards.
 * Responsive across 5 breakpoints: 1400px, 1024px, 768px, 600px, 400px
 */

.case-study-hero {
	position: relative;
	width: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 144px 20px 26px 20px;
}

/* Teal overlay (90% opacity) */
.case-study-hero__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(1, 168, 148, 0.9);
	z-index: 1;
}

/* Bottom gradient overlay (fades from teal to transparent) */
.case-study-hero__overlay::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 47%;
	background: linear-gradient(0deg, #00A894 13.74%, rgba(0, 168, 148, 0.00) 92.13%);
	bottom: 0;
	left: 0;
}

/* Container */
.case-study-hero__container {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 917px;
	margin: 0 auto;
}

/* Content wrapper */
.case-study-hero__content {
	display: flex;
	flex-direction: column;
	gap: 24px;
	align-items: flex-start;
}

/* Client Badge (logo + name) */
.case-study-hero__client-badge {
	display: flex;
	align-items: center;
	gap: 12px;
}

.case-study-hero__logo-circle {
	width: 68px;
	height: 68px;
	border-radius: 50%;
	background-color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	flex-shrink: 0;
}

.case-study-hero__logo-circle img {
	max-width: 57px;
	max-height: 29px;
	width: auto;
	height: auto;
	object-fit: contain;
}

.case-study-hero__client-name {
	font-family: 'Avenir Next', sans-serif;
	font-weight: 700; /* Bold */
	font-size: 14px;
	line-height: normal;
	color: #ffffff;
}

/* Headings */
.case-study-hero__headings {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
}

.case-study-hero__headline {
	font-family: 'Avenir Next', sans-serif;
	font-weight: 700; /* Bold */
	font-size: 48px;
	line-height: normal;
	color: #ffffff;
	margin: 0;
}

.case-study-hero__subheadline {
	font-family: 'Avenir Next', sans-serif;
	font-weight: 400; /* Regular */
	font-size: 36px;
	line-height: normal;
	color: #ffffff;
	margin: 0;
}

/* Info Cards */
.case-study-hero__info-cards {
	width: 100%;
	background-color: rgba(255, 255, 255, 0.8);
	border-radius: 20px;
	padding: 0;
}

.case-study-hero__info-cards-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 16px;
}

.case-study-hero__info-card {
	flex: 1;
	min-width: 0; /* Allow flex items to shrink */
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.case-study-hero__info-label {
	font-family: 'Avenir Next', sans-serif;
	font-weight: 600; /* Demi Bold */
	font-size: 16px;
	line-height: normal;
	color: #121c66;
}

.case-study-hero__info-text {
	font-family: 'Avenir Next', sans-serif;
	font-weight: 400; /* Regular */
	font-size: 16px;
	line-height: normal;
	color: #121c66;
}

/* Dividers between cards */
.case-study-hero__info-divider {
	width: 1px;
	height: 78px;
	background-color: rgba(18, 28, 102, 0.2);
	flex-shrink: 0;
}

/* ========================================
   RESPONSIVE BREAKPOINTS
   ======================================== */

/* 1400px - Large Desktop */
@media (max-width: 1400px) {

	.case-study-hero__headline {
		font-size: 44px;
	}

	.case-study-hero__subheadline {
		font-size: 32px;
	}
}

/* 1024px - Tablet Landscape */
@media (max-width: 1024px) {

	.case-study-hero__headline {
		font-size: 40px;
	}

	.case-study-hero__subheadline {
		font-size: 28px;
	}

	.case-study-hero__info-label,
	.case-study-hero__info-text {
		font-size: 15px;
	}
}

/* 768px - Tablet Portrait */
@media (max-width: 768px) {
	.case-study-hero {
		min-height: auto;
		padding: 50px 20px;
	}

	.case-study-hero__headline {
		font-size: 36px;
	}

	.case-study-hero__subheadline {
		font-size: 24px;
	}

	/* Stack info cards vertically */
	.case-study-hero__info-cards-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.case-study-hero__info-card {
		width: 100%;
	}

	/* Hide dividers on mobile since cards are stacked */
	.case-study-hero__info-divider {
		display: none;
	}
}

/* 600px - Mobile */
@media (max-width: 600px) {
	.case-study-hero {
		padding: 40px 20px;
	}

	.case-study-hero__content {
		gap: 20px;
	}

	.case-study-hero__headline {
		font-size: 32px;
	}

	.case-study-hero__subheadline {
		font-size: 22px;
	}

	.case-study-hero__logo-circle {
		width: 56px;
		height: 56px;
	}

	.case-study-hero__logo-circle img {
		max-width: 48px;
		max-height: 24px;
	}

	.case-study-hero__client-name {
		font-size: 13px;
	}

	.case-study-hero__info-label,
	.case-study-hero__info-text {
		font-size: 14px;
	}
}

/* 400px - Small Mobile */
@media (max-width: 400px) {
	.case-study-hero {
		padding: 30px 16px;
	}

	.case-study-hero__headline {
		font-size: 28px;
	}

	.case-study-hero__subheadline {
		font-size: 20px;
	}

	.case-study-hero__logo-circle {
		width: 48px;
		height: 48px;
	}

	.case-study-hero__logo-circle img {
		max-width: 40px;
		max-height: 20px;
	}

	.case-study-hero__info-cards-inner {
		padding: 12px;
	}

	.case-study-hero__info-label,
	.case-study-hero__info-text {
		font-size: 13px;
	}
}

/* ========================================
   SIDEBAR CLEARANCE (Above 1200px)
   ======================================== */

/* Push content right to clear sidebar when it's visible */
@media (min-width: 1201px) {
	.case-study-hero__container {
		margin-left: max(
			calc((100vw - 917px) / 2),
			218px
		);
		margin-right: auto;
	}
}

/* Restore centered layout when sidebar is hidden */
@media (max-width: 1200px) {
	.case-study-hero__container {
		margin-left: auto;
		margin-right: auto;
	}
}
