/**
 * Feature Cards 6 Component Styles
 * Contains headline, subheadline, card grid, and form
 */

.section-blog {
	width: 100%;
	background: var(--color-bg-light-green);
	position: relative;
	padding: 0;
	margin: 0;
}

.section-blog__inner {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	padding: 0 32px;
}

/* Headline */
.section-blog__headline {
	/* Typography handled by .typog-h2 */
	text-align: center;
	margin: 0;
	padding-top: 110px;
}

/* Subheadline */
.section-blog__subheadline {
	/* Typography handled by .text-subtitle-bold */
	text-align: center;
	margin: 24px auto 0;
	max-width: 600px;
}

/* Cards Grid */
.section-blog__cards-wrapper {
	position: relative;
	width: fit-content; /* Shrink to content width */
	max-width: 100%;
	margin: 48px auto 0;
	display: flex;
	align-items: center;
}

/* Position buttons absolutely to overlap 50% beyond margins */
.section-blog__carousel-btn {
	position: absolute;
	z-index: 10;
	width: 58px;
	height: 58px;
	flex-shrink: 0;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	transition: opacity 0.2s ease;
}

.section-blog__carousel-btn:first-child {
	left: 0;
	transform: translateX(-50%); /* Center button on left edge */
}

.section-blog__carousel-btn:last-child {
	right: 0;
	transform: translateX(50%); /* Center button on right edge */
}

.section-blog__cards {
	width: 100%;
	display: flex;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
	/* Hide scrollbar on desktop */
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* IE and Edge */
}

.section-blog__cards::-webkit-scrollbar {
	display: none; /* Chrome, Safari, Opera */
}

/* Navigation Buttons */

.section-blog__carousel-btn:hover:not(.is-disabled) {
	opacity: 0.8;
}

.section-blog__carousel-btn.is-disabled {
	display: none;
}

.section-blog__carousel-btn img {
	width: 100%;
	height: 100%;
	display: block;
}

.section-blog__cards-container {
	display: flex;
	flex-direction: row;
	gap: 40px;
	padding-bottom: 16px;
	min-width: min-content;
	justify-content: center;
}

/* Wrapper link for feature-card-6 */
.feature-card-6-link {
	text-decoration: none;
	color: inherit;
	display: block;
	flex: 0 0 auto;
}

.feature-card-6-link:focus {
	outline: 2px solid var(--color-teal);
	outline-offset: 2px;
	border-radius: 30px;
}

.feature-card-6 {
	flex: 0 0 auto;
	width: 335px;
	background: var(--color-bg-white);
	border: 1px solid var(--color-border-light);
	border-radius: 30px;
	overflow: hidden;
	box-shadow: 0px 6px 12px var(--color-shadow-medium), 0px 4px 8px var(--color-shadow-light);
	display: flex;
	flex-direction: column;
}

.feature-card-6__image {
	width: 100%;
	height: 240px;
	overflow: hidden;
	border-radius: 16px 16px 0px 0px;
	background: var(--color-bg-light-gray);
	/* CSS handles rounded corners - images should be square/rectangular */
}

.feature-card-6__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 0;
	transition: transform 0.3s ease-out;
	/* Remove any rounded corners from image - CSS container handles it */
}

/* Hover effect: scale image */
.feature-card-6-link:hover .feature-card-6__image img {
	transform: scale(1.1);
}

.feature-card-6__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-self: stretch;
	gap: 32px;
	padding: 24px;
}

.feature-card-6__text {
	display: flex;
	flex-direction: column;
	align-self: stretch;
	gap: 8px;
}

.feature-card-6__title {
	/* Typography handled by .text-subtitle-bold */
	margin: 0;
	text-align: left;
}

.feature-card-6__description {
	/* Typography handled by .text-body */
	margin: 0;
	text-align: left;
}

.feature-card-6__read-more {
	/* Typography handled by .text-button */
	text-decoration: none;
	text-align: left;
	transition: color 0.2s ease;
	display: block;
}

/* Change "Read more" color on card hover */
.feature-card-6-link:hover .feature-card-6__read-more {
	color: var(--color-teal);
}

/* Form Section */
.section-blog__form-section {
	margin-top: 80px;
	padding-bottom: 110px;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 48px;
	max-width: 848px; /* 400px + 48px gap + 400px */
	margin-left: auto;
	margin-right: auto;
	justify-content: center;
}

.section-blog__form-headline {
	/* Typography handled by .text-heading-serif */
	margin: 0;
	text-align: left;
	flex: 1;
	max-width: 400px;
}

.section-blog__form {
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
	max-width: 400px;
}

.section-blog__form-fields {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.section-blog__form-field {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.section-blog__label {
	display: none; /* Labels hidden, using placeholders instead */
}

.section-blog__input {
	width: 100%;
	max-width: 400px;
	padding: 12px 16px;
	/* Typography handled by .text-form-input */
	background: var(--color-bg-white);
	border: 1px solid var(--color-border-medium);
	border-radius: 10px;
	outline: none;
	transition: border-color 0.2s ease;
}

.section-blog__input:focus {
	border-color: var(--color-teal-border);
}

.section-blog__input::placeholder {
	color: var(--color-gray-dark);
}

.section-blog__submit {
	width: fit-content;
	max-width: 400px;
	padding: 12px 50px;
	/* Typography handled by .text-button */
	background: var(--color-bg-teal);
	color: var(--color-primary-text);
	border: none;
	border-radius: 7px;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.section-blog__submit:hover {
	background: var(--color-bg-teal);
}

.section-blog__submit:active {
	background: var(--color-bg-teal);
}

/* Mobile Styles */
@media (max-width: 1023px) {
	.section-blog__inner {
		padding: 0 24px;
	}
	
	.section-blog__headline {
		/* Typography responsive handled by .typog-h2 */
		padding-top: 64px;
	}
	
	.section-blog__subheadline {
		/* Typography responsive handled by .text-subtitle-bold */
		margin-top: 16px;
		padding: 0 16px;
	}
	
	.section-blog__cards-wrapper {
		margin-top: 32px;
		gap: 0;
	}

	.section-blog__carousel-btn {
		display: none; /* Hide navigation buttons on mobile */
	}

	.section-blog__cards {
		/* Hide scrollbar on mobile - touch scrolling still works */
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE and Edge */
	}

	.section-blog__cards::-webkit-scrollbar {
		display: none; /* Chrome, Safari, Opera */
	}
	
	.section-blog__cards-container {
		flex-direction: column;
		gap: 16px;
		padding-bottom: 0;
	}
	
	.feature-card-6 {
		width: 100%;
		min-width: 0;
	}
	
	.section-blog__form-section {
		margin-top: 48px;
		padding-bottom: 100px;
		flex-direction: column;
		gap: 20px;
	}
	
	.section-blog__form-headline {
		/* Typography responsive handled by .text-heading-serif */
		min-width: 0;
		width: 100%;
	}
	
	.section-blog__form {
		width: 100%;
	}
	
	.section-blog__form-fields {
		width: 100%;
		max-width: 100%;
	}
	
	.section-blog__input {
		max-width: 100%;
	}
	
	.section-blog__submit {
		max-width: 100%;
		width: 100%;
	}
}

