/**
 * Still Water Stay request (sw-inquiry): Figma "V1 Hero band · <cabin>" + "Plan your stay",
 * states inquiry · filled · error · success, at 1440, 834 and 390.
 *
 * Band 800 / 560 / 440 under the ink 35% layer: the photo caption top right (24 from the top),
 * the title (56/64, 36/44 on phones, 760 wide) and its line at the foot (72 / 48 / 32 above the
 * bottom). Then the back link and, 32 under it, the form beside the pale stay card (672.8 + 40 +
 * 487.2 at 1440, the same split at 834, one column 40 apart at 390). Fields, buttons and note
 * 20 apart; buttons 300 wide (the primary one full width on phones, PLAN.md B3 Q10i). Ready:
 * the pale confirmation card (photo 320 wide beside the details, above them on phones) and,
 * 32 under it, two 240 buttons 32 apart.
 */

.sw-inquiry {
	--sw-inquiry-card: var(--sw-c-pale);
}

/* ------------------------------------------------------------------ */
/* Photo band                                                         */
/* ------------------------------------------------------------------ */

.sw-inquiry__band {
	position: relative;
	display: flex;
	min-height: 800px;
	overflow: hidden;
	background: var(--sw-c-ink);
	color: var(--sw-c-white);
}

.sw-inquiry__band-media {
	position: absolute;
	inset: 0;
}

.sw .sw-inquiry__band-img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

.sw-inquiry__band-inner {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 24px;
	padding-top: 24px;
	padding-bottom: 72px;
}

.sw-inquiry__credit {
	align-self: flex-end;
	text-align: right;
}

.sw-inquiry__band-copy {
	max-width: 760px;
}

.sw-inquiry__title {
	margin: 0;
	color: var(--sw-c-white);
	font-family: var(--sw-serif);
	font-size: var(--sw-fs-h1);
	line-height: var(--sw-lh-h1);
	font-weight: 400;
}

.sw-inquiry__intro {
	margin-top: 16px;
	color: var(--sw-c-white);
	font-size: var(--sw-fs-body);
	line-height: var(--sw-lh-body);
}

/* ------------------------------------------------------------------ */
/* Back link, layout, form                                            */
/* ------------------------------------------------------------------ */

.sw-inquiry__back {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin-bottom: 32px;
	color: var(--sw-heading);
	text-decoration: none;
}

.sw-inquiry__layout {
	display: grid;
	grid-template-columns: minmax(0, 672.8fr) minmax(0, 487.2fr);
	gap: 40px;
	align-items: start;
}

.sw-inquiry__form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}

.sw-inquiry__alert {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.sw-inquiry__buttons {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
}

.sw-inquiry__form .sw-inquiry__button {
	width: 300px;
	max-width: 100%;
}

/* ------------------------------------------------------------------ */
/* Stay card and confirmation                                         */
/* ------------------------------------------------------------------ */

.sw-inquiry__card {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 24px;
	background: var(--sw-inquiry-card);
}

.sw-inquiry__photo {
	height: 480px;
	overflow: hidden;
	background: var(--sw-c-line);
}

.sw .sw-inquiry__photo img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

.sw-inquiry__card--ready {
	flex-direction: row;
	gap: 24px;
}

.sw-inquiry__card--ready .sw-inquiry__photo {
	flex: none;
	width: 320px;
}

.sw-inquiry__details {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}

.sw-inquiry__rate {
	color: var(--sw-heading);
	font-size: var(--sw-fs-body);
	line-height: var(--sw-lh-body);
	font-weight: 600;
}

.sw-inquiry__lines {
	color: var(--sw-heading);
}

.sw-inquiry__buttons--ready {
	gap: 32px;
	margin-top: 32px;
}

.sw-inquiry__buttons--ready .sw-inquiry__button {
	width: 240px;
	max-width: 100%;
}

/* ------------------------------------------------------------------ */
/* Tablet (834) and phone (390)                                       */
/* ------------------------------------------------------------------ */

@media (max-width: 1024px) {
	.sw-inquiry__band {
		min-height: 560px;
	}

	.sw-inquiry__band-inner {
		padding-bottom: 48px;
	}

	.sw-inquiry__band-copy {
		max-width: none;
	}

	.sw-inquiry__photo {
		height: 360px;
	}
}

@media (max-width: 767px) {
	.sw-inquiry__band {
		min-height: 440px;
	}

	.sw-inquiry__band-inner {
		padding-bottom: 32px;
	}

	.sw-inquiry__layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.sw-inquiry__photo {
		height: 300px;
	}

	.sw-inquiry__card--ready {
		flex-direction: column;
	}

	.sw-inquiry__card--ready .sw-inquiry__photo {
		width: 100%;
	}

	/* The primary buttons run the full 350; "Fill sample details" keeps its 300 (Q10i). */
	.sw-inquiry__form .sw-inquiry__button:not(.sw-inquiry__button--sample),
	.sw-inquiry__buttons--ready .sw-inquiry__button {
		width: 100%;
	}
}
