/* -------------------------------------------------------------------------
   Hotelia — pages.css
   Hero banner and page/template specific layouts.
   ---------------------------------------------------------------------- */

/* Hero ------------------------------------------------------------------ */

.hero {
	position: relative;
	min-height: 560px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--hotelia-color-primary);
	background-size: cover;
	background-position: center;
	color: var(--hotelia-color-white);
	text-align: center;
}

.hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(15, 20, 16, 0.55) 0%, rgba(15, 20, 16, 0.75) 100%);
}

.hero__content {
	position: relative;
	z-index: 1;
	max-width: 720px;
}

.hero__title {
	color: var(--hotelia-color-white);
}

.hero__subtitle {
	font-size: 1.15rem;
	opacity: 0.9;
	margin-bottom: 28px;
}

.is-front-page .hero {
	min-height: 720px;
}

/* Home intro -------------------------------------------------------------- */

.home-intro {
	max-width: 760px;
	text-align: center;
	margin: 72px auto 0;
}

/* Page header (default page.php) ------------------------------------------- */

.page-header {
	margin: 48px 0 32px;
}

.page-header .page-title {
	margin-bottom: 0;
}

.page-header__image img {
	width: 100%;
	aspect-ratio: 16 / 7;
	object-fit: cover;
	margin-bottom: 40px;
}

.page-intro {
	max-width: 760px;
	margin: 0 auto 48px;
	text-align: center;
}

.page-content-wrap {
	margin-bottom: 64px;
}

/* Single room --------------------------------------------------------------- */

.single-room__header {
	margin: 40px auto 24px;
	text-align: center;
}

.single-room__hero img {
	width: 100%;
	max-height: 560px;
	object-fit: cover;
}

.single-room__body {
	display: grid;
	grid-template-columns: 1.8fr 1fr;
	gap: 56px;
	padding: 56px 0;
}

.single-room__amenities,
.single-room__gallery {
	margin-top: 40px;
}

@media (max-width: 900px) {
	.single-room__body {
		grid-template-columns: 1fr;
	}

	.booking-box {
		position: static;
	}
}

/* Single venue (restaurant / spa service) ------------------------------------ */

.single-venue__header {
	margin: 40px auto 24px;
	text-align: center;
}

.single-venue__hero img {
	width: 100%;
	max-height: 480px;
	object-fit: cover;
}

.single-venue__body {
	display: grid;
	grid-template-columns: 1.8fr 1fr;
	gap: 56px;
	padding: 56px 0;
}

@media (max-width: 900px) {
	.single-venue__body {
		grid-template-columns: 1fr;
	}
}

/* Blog / archive index -------------------------------------------------------- */

.site-main.container .page-header {
	text-align: left;
}

/* 404 / search ----------------------------------------------------------------- */

.error-404,
.no-results {
	max-width: 640px;
	margin: 72px auto;
	text-align: center;
}

/* Comments ----------------------------------------------------------------------- */

.comments-area {
	max-width: 760px;
	margin: 48px auto;
}

.comment-list {
	margin-bottom: 32px;
}

.comment-list .comment {
	border-bottom: 1px solid var(--hotelia-color-border);
	padding: 20px 0;
}
