/**
 * PPWR Brochure landingstemplate (Figma 25_KIVO).
 * Scope: .ppwr-brochure-page
 */

.ppwr-brochure-page {
	--ppwr-bg: #f4f6f8;
	--ppwr-red: #e30613;
	--ppwr-green: #2d7a3a;
	--ppwr-border: #dbe1e7;
	--ppwr-muted: #757575;
	--ppwr-ink: #000;
}

.ppwr-hero {
	background: var(--ppwr-bg);
	padding: 3.5rem 0;
}

.ppwr-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 38rem;
	gap: 4rem;
	align-items: start;
}

/* Mobiele afbeelding bovenaan (alleen < 992px) */
.ppwr-hero__media-mobile {
	display: none;
}

/* ---------------------------------------------------------------- Content */
.ppwr-hero__content {
	min-width: 0;
}

.ppwr-hero__eyebrow {
	font-size: 1.375rem;
	line-height: 1.5rem;
	color: var(--ppwr-ink);
	margin: 0 0 1rem;
}

.ppwr-hero__title {
	font-size: 3.75rem;
	line-height: 1.05;
	font-weight: 700;
	color: var(--ppwr-ink);
	margin: 0 0 1.5rem;
}

.ppwr-hero__intro {
	max-width: 43rem;
}

.ppwr-hero__intro p {
	font-size: 1rem;
	line-height: 1.5rem;
	color: var(--ppwr-ink);
	margin: 0 0 1rem;
}

.ppwr-hero__checklist {
	margin-top: 1rem;
}

.ppwr-hero__list-intro {
	font-size: 1rem;
	line-height: 1.5rem;
	color: var(--ppwr-ink);
	margin: 0 0 .75rem;
}

.ppwr-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: .5rem;
}

.ppwr-list__item {
	display: flex;
	align-items: flex-start;
	gap: .625rem;
	font-size: 1rem;
	line-height: 1.5rem;
	color: var(--ppwr-ink);
}

.ppwr-list__item .ppwr-check {
	flex: 0 0 auto;
	width: 16px;
	height: 16px;
	margin-top: .1875rem;
}

.ppwr-badge {
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	margin: 2rem 0 0;
	padding: .5rem .75rem;
	background: var(--ppwr-green);
	color: #fff;
	border-radius: 6px;
	font-size: .875rem;
	line-height: 1.25rem;
}

.ppwr-badge__icon {
	flex: 0 0 auto;
	width: 16px;
	height: 16px;
}

/* ------------------------------------------------------------------- Card */
.ppwr-card {
	background: #fff;
	border: 1px solid var(--ppwr-border);
	border-radius: 8px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
	overflow: hidden;
}

.ppwr-card__media {
	height: 14.5rem;
}

.ppwr-card__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ppwr-card__body {
	padding: 1.25rem 1.5rem 1.5rem;
}

.ppwr-card__title {
	font-size: 2rem;
	line-height: 1.2;
	font-weight: 700;
	color: var(--ppwr-ink);
	margin: 0 0 1.25rem;
}

/* -------------------------------------------------- Gravity Forms styling */
.ppwr-card__form .gform_wrapper {
	margin: 0;
}

.ppwr-card__form .gform_required_legend {
	display: none;
}

.ppwr-card__form .gform_fields {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

.ppwr-card__form .gfield {
	margin: 0;
	padding: 0;
}

.ppwr-card__form .gfield_label {
	font-size: 1rem;
	line-height: 1.5rem;
	font-weight: 600;
	color: var(--ppwr-ink);
	margin: 0 0 .5rem;
}

.ppwr-card__form .gfield_required {
	color: var(--ppwr-red);
}

.ppwr-card__form input[type="text"],
.ppwr-card__form input[type="email"],
.ppwr-card__form input[type="tel"],
.ppwr-card__form select,
.ppwr-card__form textarea {
	width: 100%;
	height: 2.875rem;
	padding: 0 .8125rem;
	border: 1px solid var(--ppwr-border);
	border-radius: 8px;
	background-color: #fff;
	color: var(--ppwr-ink);
	font-size: 1rem;
	font-family: inherit;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.ppwr-card__form textarea {
	height: auto;
	min-height: 5.5rem;
	padding: .625rem .8125rem;
}

.ppwr-card__form input::placeholder {
	color: var(--ppwr-muted);
	opacity: 1;
}

.ppwr-card__form input:focus,
.ppwr-card__form select:focus,
.ppwr-card__form textarea:focus {
	outline: none;
	border-color: var(--ppwr-red);
}

/* Custom select-chevron */
.ppwr-card__form select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right .9375rem center;
	padding-right: 2.5rem;
}

/* Naam (voornaam + achternaam) naast elkaar */
.ppwr-card__form .ginput_complex.ginput_container--name {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: .75rem;
}

.ppwr-card__form .ginput_complex.ginput_container--name > span {
	min-width: 0;
	padding: 0;
}

.ppwr-card__form .ginput_complex .gfield_label {
	display: none;
}

/* Consent / privacy */
.ppwr-card__form .gfield--type-consent .ginput_container_consent {
	display: flex;
	align-items: flex-start;
	gap: .5rem;
}

.ppwr-card__form .gfield--type-consent input[type="checkbox"] {
	flex: 0 0 auto;
	width: 1rem;
	height: 1rem;
	margin: .1875rem 0 0;
	accent-color: var(--ppwr-red);
}

.ppwr-card__form .gfield_consent_label,
.ppwr-card__form .gfield--type-consent label {
	font-size: .8125rem;
	line-height: 1.35rem;
	font-weight: 400;
	color: var(--ppwr-ink);
	margin: 0;
}

.ppwr-card__form .gfield_consent_label a {
	color: var(--ppwr-ink);
	text-decoration: underline;
}

/* Submit-knop = rode pil met witte pijl-cirkel */
.ppwr-card__form .gform_footer {
	margin: 1.25rem 0 0;
	padding: 0;
	display: flex;
	justify-content: flex-end;
}

.ppwr-card__form .gform_footer input[type="submit"],
.ppwr-card__form .gform_footer button {
	display: inline-flex;
	align-items: center;
	min-height: 3.125rem;
	margin: 0;
	padding: .4375rem 3.25rem .4375rem 1.3125rem;
	background-color: var(--ppwr-red);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36' fill='none'%3E%3Cpath d='M18 36C27.9411 36 36 27.9411 36 18C36 8.05887 27.9411 0 18 0C8.05887 0 0 8.05887 0 18C0 27.9411 8.05887 36 18 36Z' fill='white'/%3E%3Cpath d='M11.0769 17.199H20.4437L16.8056 13.5942L17.9488 12.4615L23.5385 18L17.9488 23.5385L16.8056 22.4058L20.4437 18.8011H11.0769V17.199Z' fill='black'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right .4375rem center;
	background-size: 36px 36px;
	color: #fff;
	border: 1px solid var(--ppwr-red);
	border-radius: 30px;
	font-size: 1rem;
	font-weight: 600;
	font-family: inherit;
	line-height: 1.5rem;
	cursor: pointer;
	transition: background-color .15s ease;
}

.ppwr-card__form .gform_footer input[type="submit"]:hover,
.ppwr-card__form .gform_footer button:hover {
	background-color: #c2050f;
}

/* GF validatie/bevestiging netjes binnen de kaart */
.ppwr-card__form .gform_confirmation_message {
	font-size: 1rem;
	line-height: 1.5rem;
	color: var(--ppwr-ink);
}

.ppwr-card__form .validation_message {
	font-size: .8125rem;
	color: var(--ppwr-red);
}

/* --------------------------------------------------------------- Responsive */
@media (max-width: 991px) {
	.ppwr-hero {
		padding: 2rem 0 2.5rem;
	}

	.ppwr-hero__grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
		align-items: stretch;
	}

	/* DOM-volgorde = afbeelding, content, formulierkaart */
	.ppwr-hero__media-mobile {
		display: block;
		height: 11rem;
		border-radius: 8px;
		overflow: hidden;
	}

	.ppwr-card__media {
		display: none;
	}

	.ppwr-hero__title {
		font-size: 2.5rem;
	}

	.ppwr-hero__intro {
		max-width: none;
	}
}

@media (max-width: 480px) {
	.ppwr-hero__title {
		font-size: 2.125rem;
	}

	.ppwr-card__form .ginput_complex.ginput_container--name {
		grid-template-columns: 1fr;
	}

	.ppwr-card__form .gform_footer {
		justify-content: stretch;
	}

	.ppwr-card__form .gform_footer input[type="submit"],
	.ppwr-card__form .gform_footer button {
		width: 100%;
		justify-content: flex-start;
	}
}
