/**
 * Single aircraft template — content blocks, specs, and gallery.
 *
 * Shared section rhythm: 60px desktop / 40px mobile between sections.
 */

.aircraft-single {
	--aircraft-section-pad: 2.75rem; /* 60px */
	/* Tracks container: 67.5 @ 85rem, same ratio @ 105rem */
	--aircraft-content-max: var(--container-narrow-max);
	--aircraft-content-outer: calc(var(--aircraft-content-max) + (2 * var(--container-gutter)));
}

/* Align shared partials used on this template with the same rhythm + content width. */
.aircraft-single .page-title {
	--page-title-pad-block: var(--aircraft-section-pad);
	--page-title-content-max: var(--aircraft-content-outer);
}

.aircraft-single .image-background-content {
	--ibc-pad-block: var(--aircraft-section-pad);
}

.aircraft-single .faq {
	--faq-pad-block: var(--aircraft-section-pad);
}

/* —— Title & description —— */

.aircraft-content-block {
	--acb-pad-block: var(--aircraft-section-pad, 1.75rem);
	--acb-content-max: var(--aircraft-content-max);
	--acb-gap: 1.8125rem; /* 29px */
	--acb-headline-pad-end: 2rem; /* 32px */
	--acb-headline-size: var(--type-h2-size); /* → 38px */
	--acb-body-size: 1rem;
	--acb-body-line: 1.5;
	--acb-images-pad-block: 1.875rem; /* 30px */
	--acb-images-gap: 1.3125rem; /* 21px */
	--acb-media-radius: 0.75rem; /* 12px */
	--acb-media-ratio: 530 / 428;

	padding: var(--acb-pad-block) 0;
	color: var(--color-navy);
	background-color: var(--color-white);
}

.aircraft-content-block__inner {
	display: flex;
	flex-direction: column;
	gap: var(--acb-gap);
	width: 100%;
	max-width: var(--aircraft-content-outer);
	margin-inline: auto;
	padding-inline: var(--container-gutter);
	box-sizing: border-box;
}

.aircraft-content-block__header {
	display: flex;
	align-items: center;
	width: 100%;
	padding-block-end: var(--acb-headline-pad-end);
	border-bottom: 1px solid var(--color-light-outline);
}

.aircraft-content-block__headline {
	margin: 0;
	flex: 1 0 0;
	min-width: 0;
	font-family: var(--font-family-display);
	font-size: var(--acb-headline-size);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--color-navy);
	overflow-wrap: break-word;
}

.aircraft-content-block__description {
	width: 100%;
	font-family: var(--font-family-sans);
	font-size: var(--acb-body-size);
	font-weight: 400;
	line-height: var(--acb-body-line);
	color: var(--color-navy);
	overflow-wrap: break-word;
}

.aircraft-content-block__description > *:first-child {
	margin-block-start: 0;
}

.aircraft-content-block__description > *:last-child {
	margin-block-end: 0;
}

.aircraft-content-block__description p {
	margin-block: 0 1em;
}

.aircraft-content-block__description p:last-child {
	margin-block-end: 0;
}

.aircraft-content-block__images {
	display: grid;
	gap: var(--acb-images-gap);
	width: 100%;
	margin: 0;
	padding-block: var(--acb-images-pad-block) 0;
	box-sizing: border-box;
}

.aircraft-content-block__images--count-1 {
	grid-template-columns: minmax(0, 1fr);
}

.aircraft-content-block__images--count-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.aircraft-content-block__figure {
	margin: 0;
	width: 100%;
	aspect-ratio: var(--acb-media-ratio);
	border-radius: var(--acb-media-radius);
	overflow: hidden;
}

.aircraft-content-block__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* —— Specs & details —— */

.aircraft-specs-block {
	--asb-pad-block: var(--aircraft-section-pad, 3.75rem);
	--asb-content-max: var(--aircraft-content-max);
	--asb-gap: 1.875rem; /* 30px */
	--asb-headline-pad-end: 2rem; /* 32px */
	--asb-headline-size: var(--type-h2-size); /* → 38px */
	--asb-body-size: 1rem;
	--asb-body-line: 1.5;
	--asb-details-gap: 2rem; /* 32px */
	--asb-row-gap: 1.3125rem; /* 21px */
	--asb-media-radius: 0.75rem; /* 12px */
	--asb-media-ratio: 555 / 448;

	padding-block: var(--asb-pad-block);
	color: var(--color-navy);
	background-color: var(--color-white);
}

.aircraft-specs-block__inner {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: var(--asb-gap);
	width: 100%;
	max-width: var(--aircraft-content-outer);
	margin-inline: auto;
	padding-inline: var(--container-gutter);
	box-sizing: border-box;
}

.aircraft-specs-block__header {
	display: flex;
	align-items: center;
	width: 100%;
	padding-block-end: var(--asb-headline-pad-end);
	border-bottom: 1px solid var(--color-light-outline);
}

.aircraft-specs-block__headline {
	margin: 0;
	flex: 1 0 0;
	min-width: 0;
	font-family: var(--font-family-display);
	font-size: var(--asb-headline-size);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--color-navy);
	overflow-wrap: break-word;
}

.aircraft-specs-block__intro,
.aircraft-specs-block__closing {
	width: 100%;
	font-family: var(--font-family-sans);
	font-size: var(--asb-body-size);
	font-weight: 400;
	line-height: var(--asb-body-line);
	color: var(--color-navy);
	overflow-wrap: break-word;
}

.aircraft-specs-block__intro > *:first-child,
.aircraft-specs-block__closing > *:first-child,
.aircraft-specs-block__details > *:first-child {
	margin-block-start: 0;
}

.aircraft-specs-block__intro > *:last-child,
.aircraft-specs-block__closing > *:last-child,
.aircraft-specs-block__details > *:last-child {
	margin-block-end: 0;
}

.aircraft-specs-block__intro p,
.aircraft-specs-block__closing p {
	margin-block: 0 1em;
}

.aircraft-specs-block__intro p:last-child,
.aircraft-specs-block__closing p:last-child {
	margin-block-end: 0;
}

.aircraft-specs-block__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
	align-items: stretch;
	gap: var(--asb-row-gap);
	width: 100%;
}

.aircraft-specs-block:not(.aircraft-specs-block--has-image) .aircraft-specs-block__row {
	grid-template-columns: minmax(0, 1fr);
}

.aircraft-specs-block__details {
	min-width: 0;
	font-family: var(--font-family-sans);
	font-size: var(--asb-body-size);
	font-weight: 400;
	line-height: var(--asb-body-line);
	color: var(--color-navy);
	overflow-wrap: break-word;
}

.aircraft-specs-block__details p {
	margin-block: 0 var(--asb-details-gap);
}

.aircraft-specs-block__details p:last-child {
	margin-block-end: 0;
}

.aircraft-specs-block__details strong {
	font-weight: 700;
}

.aircraft-specs-block__details ul,
.aircraft-specs-block__details ol {
	margin-block: 0 var(--asb-details-gap);
	padding-inline-start: 1.5rem;
}

.aircraft-specs-block__details ul:last-child,
.aircraft-specs-block__details ol:last-child {
	margin-block-end: 0;
}

.aircraft-specs-block__details li {
	margin-block: 0;
}

.aircraft-specs-block__details li + li {
	margin-block-start: 0;
}

.aircraft-specs-block__media {
	position: relative;
	min-width: 0;
	height: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: var(--asb-media-radius);
	box-sizing: border-box;
}

.aircraft-specs-block__image {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* Image-only row has no text column to match — keep the design ratio. */
.aircraft-specs-block__row:not(:has(.aircraft-specs-block__details)) .aircraft-specs-block__media {
	position: static;
	height: auto;
}

.aircraft-specs-block__row:not(:has(.aircraft-specs-block__details)) .aircraft-specs-block__image {
	position: static;
	aspect-ratio: var(--asb-media-ratio);
	height: auto;
}

/* —— Gallery (Figma 2267:12217) ——
 * Edge-to-edge peeking cards (~621×465), 25px gap, 12px radius.
 * Side slides intentionally overflow the viewport.
 */

.aircraft-gallery {
	--ag-pad-block: var(--aircraft-section-pad, 3.75rem);
	--ag-pad-inline: 0.625rem; /* 10px */
	--ag-intro-gap: 1.8125rem; /* 29px */
	--ag-headline-pad-end: 2rem; /* 32px */
	--ag-headline-size: var(--type-h2-size); /* → 38px */
	--ag-body-size: 1rem;
	--ag-body-line: 1.5;
	--ag-slide-gap: 1.5625rem; /* 25px — mirrored in Swiper breakpoints */
	--ag-media-radius: 0.75rem; /* 12px */
	--ag-media-ratio: 621 / 465;
	--ag-slide-w: 38.8125rem; /* 621px */

	padding-block: var(--ag-pad-block);
	color: var(--color-navy);
	background-color: var(--color-white);
	overflow: hidden;
}

.aircraft-gallery__intro {
	display: flex;
	flex-direction: column;
	gap: var(--ag-intro-gap);
	width: 100%;
	max-width: var(--aircraft-content-outer);
	margin-inline: auto;
	margin-block-end: var(--ag-intro-gap);
	padding-inline: var(--container-gutter);
	box-sizing: border-box;
}

.aircraft-gallery:not(:has(.aircraft-gallery__swiper)) .aircraft-gallery__intro {
	margin-block-end: 0;
}

.aircraft-gallery__block {
	display: flex;
	flex-direction: column;
	gap: var(--ag-intro-gap);
	min-width: 0;
}

.aircraft-gallery__header {
	display: flex;
	align-items: center;
	width: 100%;
	padding-block-end: var(--ag-headline-pad-end);
	border-bottom: 1px solid var(--color-light-outline);
}

.aircraft-gallery__headline {
	margin: 0;
	flex: 1 0 0;
	min-width: 0;
	font-family: var(--font-family-display);
	font-size: var(--ag-headline-size);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--color-navy);
	overflow-wrap: break-word;
}

.aircraft-gallery__description {
	width: 100%;
	font-family: var(--font-family-sans);
	font-size: var(--ag-body-size);
	font-weight: 400;
	line-height: var(--ag-body-line);
	color: var(--color-navy);
	overflow-wrap: break-word;
}

.aircraft-gallery__description > *:first-child {
	margin-block-start: 0;
}

.aircraft-gallery__description > *:last-child {
	margin-block-end: 0;
}

.aircraft-gallery__description p {
	margin-block: 0 1em;
}

.aircraft-gallery__description p:last-child {
	margin-block-end: 0;
}

.aircraft-gallery__swiper {
	width: 100%;
	margin-inline: 0;
	padding-inline: var(--ag-pad-inline);
	box-sizing: border-box;
	overflow: visible;
}

.aircraft-gallery__slide {
	width: var(--ag-slide-w);
	max-width: 85vw;
	height: auto;
	box-sizing: border-box;
}

.aircraft-gallery__figure {
	margin: 0;
	width: 100%;
	aspect-ratio: var(--ag-media-ratio);
	border-radius: var(--ag-media-radius);
	overflow: hidden;
}

.aircraft-gallery__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

@media (max-width: 63.9375rem) {
	.aircraft-gallery {
		--ag-slide-w: 28rem; /* ~448px — ~1.5–2 peeks */
	}

	.aircraft-gallery__slide {
		max-width: 72vw;
	}
}

@media (max-width: 56.25rem) {
	.aircraft-specs-block__row {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--asb-gap);
	}

	.aircraft-specs-block__media {
		position: static;
		order: -1;
		height: auto;
	}

	.aircraft-specs-block__image {
		position: static;
		aspect-ratio: var(--asb-media-ratio);
		height: auto;
	}
}

@media (max-width: 47.9375rem) {
	.aircraft-single {
		--aircraft-section-pad: 2.5rem; /* 40px */
	}

	.aircraft-gallery {
		--ag-slide-w: 18.75rem; /* 300px */
		--ag-headline-pad-end: 1.5rem;
		--ag-intro-gap: 1.5rem;
	}

	.aircraft-gallery__slide {
		max-width: 82vw;
	}

	.aircraft-content-block {
		--acb-headline-pad-end: 1.5rem;
		--acb-gap: 1.5rem;
		--acb-images-pad-block: 1.5rem;
	}

	.aircraft-content-block__images--count-2 {
		grid-template-columns: minmax(0, 1fr);
	}

	.aircraft-specs-block {
		--asb-headline-pad-end: 1.5rem;
		--asb-gap: 1.5rem;
	}
}
