/**
 * Dining, beverage menu — one section of the design.
 *
 * The statement and its button on the left, three pictures on the right, and
 * behind all of it the picture the band carries with the file's veil over it.
 */

.custom-dining-beverage {
	position: relative;
	width: 100%;
	padding: 90px calc( 51px + max( 0px, calc( ( 100% - 1440px ) / 2 ) ) ) 90px calc( 48px + max( 0px, calc( ( 100% - 1440px ) / 2 ) ) );
	box-sizing: border-box;
	overflow: hidden;
}

.custom-dining-beverage__picture,
.custom-dining-beverage__veil {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.custom-dining-beverage__picture img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.custom-dining-beverage__veil {
	background-image:
		linear-gradient( 0deg, rgba( 102, 102, 102, 0 ) 1.1037%, #d8d0c2 57.837% ),
		linear-gradient( rgba( 0, 0, 0, 0.33 ), rgba( 0, 0, 0, 0.33 ) );
}

.custom-dining-beverage__row {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 74px;
	width: 100%;
}

.custom-dining-beverage__column {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	flex: 0 0 auto;
	width: 390px;
	min-height: 785px;
}

.custom-dining-beverage__words {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	width: 100%;
}

.custom-dining-beverage__heading {
	margin: 0;
	padding: 0;
	color: inherit;
	text-transform: uppercase;
}

.custom-dining-beverage__body {
	margin: 0;
	white-space: pre-wrap;
}

.custom-dining-beverage__button,
.custom-dining-beverage__button:hover,
.custom-dining-beverage__button:focus,
.custom-dining-beverage__button:active {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 24px;
	border: 0;
	border-radius: 24px;
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
	transition:
		background-color 300ms ease-in-out,
		color 300ms ease-in-out,
		opacity 300ms ease-in-out;
}

/* The three pictures, two above and one across the width of them. */
.custom-dining-beverage__gallery {
	display: grid;
	grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	grid-template-rows: repeat( 2, minmax( 0, 1fr ) );
	gap: 20px;
	flex: 0 0 auto;
	width: 880px;
	height: 785px;
}

.custom-dining-beverage__tile {
	position: relative;
	overflow: hidden;
}

.custom-dining-beverage__tile--one {
	border-top-left-radius: 50px;
	border-bottom-right-radius: 50px;
}

.custom-dining-beverage__tile--two {
	border-top-right-radius: 50px;
	border-bottom-left-radius: 50px;
}

.custom-dining-beverage__tile--wide {
	grid-column: 1 / span 2;
	border-radius: 24px;
}

.custom-dining-beverage__tile img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

@media ( prefers-reduced-motion: reduce ) {
	.custom-dining-beverage__button {
		transition: none;
	}
}

/* Tablet and mobile — the file draws one of them (11167:8699): the words
   over the pictures rather than beside them, 16 in from either edge, the
   band 34 deep above and 54 below, the pictures 320 deep in two columns 8
   apart. Tablet is not drawn and takes the same figures. */
@media ( max-width: 1024px ) {
	.custom-dining-beverage {
		padding: 34px 16px 54px;
	}

	.custom-dining-beverage__row {
		flex-direction: column;
		align-items: center;
		gap: 36px;
	}

	.custom-dining-beverage__column {
		align-items: center;
		gap: 24px;
		width: 100%;
		min-height: 0;
	}

	.custom-dining-beverage__words {
		gap: 16px;
	}

	.custom-dining-beverage__button,
	.custom-dining-beverage__button:hover,
	.custom-dining-beverage__button:focus,
	.custom-dining-beverage__button:active {
		padding: 8px 16px;
	}

	/* 358 across and 320 deep in the file — held as that shape, so on tablet
	   the tiles keep the proportion drawn rather than flattening. */
	.custom-dining-beverage__gallery {
		gap: 8px;
		width: 100%;
		height: auto;
		aspect-ratio: 358 / 320;
	}

	.custom-dining-beverage__tile--one {
		border-top-left-radius: 20px;
		border-bottom-right-radius: 20px;
	}

	.custom-dining-beverage__tile--two {
		border-top-right-radius: 20px;
		border-bottom-left-radius: 20px;
	}

	.custom-dining-beverage__tile--wide {
		border-radius: 10px;
	}
}
