/* Form bands (ATV_Forms::section): compact white bands on the page grid, H2 and form in one column. */
.atv-form-section .atv-form-section__title {
	margin-block-end: var(--spacing-m);
}

/* Forms keep a readable width: inputs never stretch across the 1200px grid. */
.atv-form {
	max-width: 40rem;
}

/* Checkbox lists (volunteer interests): 2–3 columns inside the form width. */
.atv-form__options {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(11rem, 100%), 1fr));
	gap: var(--spacing-2-xs) var(--spacing-m);
}

.atv-form__options .hds-checkbox {
	margin: 0;
}

.atv-volunteer__lead {
	margin: 0 0 var(--spacing-m);
	font-size: var(--fontsize-body-l);
	max-width: 40rem;
}

.atv-form .hds-text-input,
.atv-form .hds-fieldset,
.atv-form .atv-form__consent {
	margin-bottom: var(--spacing-s);
}

.atv-form .hds-button:focus-visible,
.atv-form .hds-link:focus-visible,
.atv-form .hds-checkbox__input:focus-visible + .hds-checkbox__label {
	outline: 3px solid var(--color-focus-outline);
	outline-offset: 2px;
}

.atv-hp {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.atv-contact__grid {
	display: grid;
	gap: var(--spacing-layout-m);
}

.atv-contact__aside {
	padding: var(--spacing-m);
	background: var(--color-black-5);
}

.atv-contact__aside p {
	margin: 0 0 var(--spacing-xs);
}

.atv-contact__aside p:last-child {
	margin-bottom: 0;
}

.atv-contact__note {
	color: var(--color-black-60);
	font-size: var(--fontsize-body-s);
}

.atv-contact__map iframe {
	width: 100%;
	min-height: 16rem;
	border: 0;
}

.atv-form__row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--spacing-xs);
	align-items: flex-end;
}

.atv-form__row .hds-text-input {
	flex: 1 1 12rem;
	margin-bottom: 0;
}

.atv-newsletter-cta {
	padding-block: var(--spacing-m) var(--spacing-layout-l);
}

.atv-newsletter-cta .atv-section__title {
	margin: 0 0 var(--spacing-m);
}

.atv-form .hds-notification {
	margin-bottom: var(--spacing-m);
}

.atv-contact > .hds-notification,
.atv-volunteer > .hds-notification,
.atv-newsletter > .hds-notification {
	margin-bottom: var(--spacing-m);
}

@media (min-width: 992px) {
	.atv-contact__grid {
		grid-template-columns: minmax(0, 1.4fr) minmax(16rem, 0.8fr);
		align-items: start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.atv-form *,
	.atv-form *::before,
	.atv-form *::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

.atv-socio-form {
	scroll-margin-top: var(--spacing-layout-l);
}

.atv-form__help {
	margin: 0 0 var(--spacing-xs);
	color: var(--color-black-60);
	font-size: var(--fontsize-body-s);
}
