/* Menu page - built on top of space.css (site-header / site-nav / site-footer / reservation-button / content-container / content-narrow / handwritten-heading / textured / eyebrow / capacity-grid / cta-band) */

.hero-banner {
	height: 640px;
	overflow: hidden
}

.hero-banner img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.quick-nav {
	background: #902014;
	display: grid;
	grid-template-columns: repeat(3,1fr)
}

.quick-nav a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 66px;
	color: #fff;
	font: 500 20px/1 "Inter",sans-serif;
	letter-spacing: 2px;
	text-align: center;
	border-left: 1px solid #fff;
	text-decoration: none
}

.quick-nav a:first-child {
	border-left: 0
}

.handwritten-heading.party {
	color: #a34534
}

.handwritten-heading.lunch {
	color: #7c8662
}

.handwritten-heading.dinner {
	color: #d0a35e
}

.content-container h2.headline {
	font: 500 26px/36px "Kiwi Maru",sans-serif;
	margin: 8px 0 0;
	color: #222;
	text-align: center
}

.content-container h2.headline.theme-light {
	color: #fff
}

.lead-copy {
	max-width: 636px;
	margin: 16px auto 0;
	text-align: left;
	line-height: 28px
}

.lead-copy.theme-light {
	color: #fff
}

.section-block {
	padding: 60px 40px;
	scroll-margin-top: 64px
}

#ldinner {
	display: block;
	height: 1px;
	scroll-margin-top: 64px
}

.cta-band .reservation-button-large {
	background: #fff;
	color: #902014;
	border: 1px solid #902014
}

.cta-band .reservation-button-large img {
	filter: none
}

.section-block.textured {
	padding-top: 60px;
	padding-bottom: 80px
}

.course-list {
	display: flex;
	flex-direction: column;
	gap: 60px;
	padding-top: 60px
}

.course {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: start
}

@media(min-width:1201px) {
	.course {
		gap: 60px
	}
}

.course-media {
	height: 546px;
	border-radius: 2px;
	overflow: hidden
}

.course-media img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.course-name {
	color: #902014;
	font: 700 32px "Noto Sans JP",sans-serif;
	margin: 0
}

.course-copy {
	color: #332929;
	font-size: 18px;
	line-height: 28px;
	margin: 6px 0 0
}

.course-copy b {
	font-weight: 900;
	color: #222
}

.course-price {
	border-bottom: 1px solid #eee;
	padding: 20px 0;
	margin: 0;
	color: #902014;
	font: 700 24px "Noto Sans JP",sans-serif
}

.course-price span {
	font-size: 16px
}

.course-menu-list {
	list-style: none;
	margin: 8px 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px
}

.course-menu-list li {
	border-bottom: 1px solid #f0f0f0;
	padding: 4px 0;
	font-size: 16px;
	color: #332929
}

.course-note {
	background: #f5f5f5;
	border: 1px solid #ddd;
	padding: 12px 16px;
	color: #666;
	font-size: 13.6px;
	margin-top: 8px
}

.drink-freeflow {
	padding-top: 40px
}

.drink-freeflow h3 {
	font: 700 24px "Noto Sans JP",sans-serif;
	color: #332929;
	margin: 0 0 8px
}

.drink-freeflow>p.menu-note {
	margin: 0 0 16px;
	line-height: 28px
}

.drink-plan h4 {
	font: 400 16px "Noto Sans JP",sans-serif;
	color: #332929;
	margin: 16px 0 8px
}

.pill-list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0;
	padding: 16px 0 20px
}

.pill-list li {
	border: 1px solid #332929;
	padding: 8px 16px;
	font-size: 16px;
	color: #332929
}

.pill-list.theme-light li {
	border-color: #fff;
	color: #fff
}

.menu-actions {
	display: flex;
	gap: 30px;
	justify-content: center;
	padding: 40px 0 20px;
	flex-wrap: wrap
}

.menu-details-button {
	width: 500px;
	max-width: 100%;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: #fff;
	border-radius: 2px;
	box-shadow: 0 2px 2px #34271f1a;
	font: 500 14px "Zen Maru Gothic",sans-serif;
	letter-spacing: 1.12px;
	text-decoration: none
}

.menu-details-button.red-bg {
	background: #902014
}

.menu-details-button.green-bg {
	background: #7c8662
}

.menu-details-button.gold-bg {
	background: #d0a35e
}

.menu-details-button.button-outline {
	background: #fff;
	border: 2px solid #902014;
	color: #902014;
	height: 44px
}

.dish-grid {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 27px;
	padding-top: 36px
}

.pizza-grid .dish-card:nth-child(1) {
	order: 1
}

.pizza-grid .dish-card:nth-child(5) {
	order: 2
}

.pizza-grid .dish-card:nth-child(2) {
	order: 3
}

.pizza-grid .dish-card:nth-child(6) {
	order: 4
}

.pizza-grid .dish-card:nth-child(3) {
	order: 5
}

.pizza-grid .dish-card:nth-child(4) {
	order: 6
}

.dish-card {
	background: #fff;
	display: flex;
	flex-direction: column;
	height: 100%
}

.dish-media {
	position: relative;
	height: 262px;
	flex: none
}

.dish-media img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.dish-badge {
	position: absolute;
	left: 16px;
	top: 16px;
	background: #902014;
	color: #fff;
	font: 700 10px "Noto Sans JP",sans-serif;
	border-radius: 100px;
	padding: 2px 8px
}

.dish-body {
	padding: 16px 18px
}

.dish-title {
	font: 700 16px "Inter",sans-serif;
	color: #222;
	margin: 0
}

.dish-price {
	font: 400 20px "Inter",sans-serif;
	color: #222;
	margin: 6px 0
}

.dish-desc {
	font-size: 12px;
	color: #332929;
	line-height: 1.6;
	margin: 0
}

.dinner-band {
	background: #624a3c;
	color: #fff
}

.sub-heading {
	padding-top: 30px
}

.sub-heading .eyebrow {
	color: #fff;
	margin-bottom: 0
}

.sub-heading p {
	color: #fff;
	font-size: 15px;
	line-height: 28px;
	margin: 16px 0 0
}

.party-capacity {
	background: #fff;
	padding: 60px 40px
}

.party-capacity h2 {
	margin: 0
}

.party-capacity p.menu-note {
	margin: 8px 0 0
}

.party-capacity .capacity-grid {
	margin-top: 27px
}

@media(max-width:1200px) {

	.hero-banner {
		height: 48vw;
		min-height: 300px
	}

	.quick-nav a {
		height: 56px;
		font-size: 16px
	}

	.course {
		grid-template-columns: 1fr;
		row-gap: 10px
	}

	.course .course-info {
		order: 1
	}

	.course .course-media {
		order: 2
	}

	.course-media {
		height: 320px
	}

	.dish-grid {
		grid-template-columns: 1fr 1fr
	}

	.section-block,.party-capacity {
		padding-left: 24px;
		padding-right: 24px
	}
}

@media(max-width:600px) {

	.section-block,
	#ldinner {
		scroll-margin-top: 0
	}

	.quick-nav {
		grid-template-columns: 1fr
	}

	.quick-nav a {
		border-left: 0;
		border-top: 1px solid #fff
	}

	.quick-nav a:first-child {
		border-top: 0
	}

	.course {
		grid-template-columns: 1fr
	}

	.course .course-media {
		order: 2
	}

	.course .course-info {
		order: 1
	}

	.dish-grid {
		grid-template-columns: 1fr
	}

	.menu-actions {
		padding-top: 24px
	}

	.menu-details-button {
		width: 100%
	}

	.content-container h2.headline {
		font-size: 21px
	}

	.section-block,.party-capacity {
		padding-left: 20px;
		padding-right: 20px
	}
}
