@font-face {
	font-family:"Pinyon Script";
	src:url("PinyonScript-Regular.woff") format("woff");
	font-style:normal;
	font-weight:400;
	font-display:swap;
}

/* Shared foundation */
*,
*::before,
*::after {
	box-sizing:border-box;
}

html {
	scroll-behavior:smooth;
}

body {
	margin:0;
	background:#f7f3ec;
	color:#15100d;
	font-family:Optima,Candara,"Noto Sans",Arial,sans-serif;
	font-size:1rem;
	font-weight:400;
	line-height:1.7;
	overflow-x:hidden;
}

h2 {
	font-weight:700;
}

button,
a {
	-webkit-tap-highlight-color:transparent;
}

a:focus,
button:focus {
	color:#ffffff !important;
	outline:3px dotted #ab06ce;
	background-color:#ab06ce !important;
	outline-offset:3px;
}

.skip {
	position:fixed;
	top:12px;
	left:-10000px;
	z-index:5000;
	padding:.75em 1em;
	background:#000000;
	color:#ffffff;
	font-weight:700;
	text-decoration:none;
}

.skip:focus {
	left:12px;
}


/* Hero / header */
.hero {
	position:relative;
	display:flex;
	align-items:center;
	min-height:820px;
	height:100vh;
	overflow:hidden;
	background:#130e0c;
	color:#ffffff;
}

.hero-border {
	position:relative;
	z-index:3;
	height:auto;
	background:#f7f3ec;
	overflow:visible;
	pointer-events:none;
}

.hero-border img {
	position:absolute;
	bottom:0;
	left:0;
	display:block;
	width:100%;
	height:auto;
	max-width:none;
	pointer-events:none;
	user-select:none;
}


.hero-video {
	position:absolute;
	top:-10%;
	left:0;
	display:block;
	width:100%;
	height:120%;
	object-fit:cover;
	object-position:center;
	transform:translate3d(0,0,0) scale(1.03);
	will-change:transform;
	z-index:0;
}

.hero-shade {
	position:absolute;
	inset:0;
	z-index:1;
	background:
		linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.48) 50%,rgba(0,0,0,.32) 100%),
		linear-gradient(180deg,rgba(0,0,0,.52) 0%,transparent 30%,rgba(0,0,0,.35) 100%);
}

.site-head {
	position:absolute;
	top:0;
	left:0;
	z-index:20;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:28px;
	width:100%;
	min-height:92px;
	padding:18px 4%;
	border-bottom:1px solid rgba(255,255,255,.25);
	transition:background .25s ease,box-shadow .25s ease,min-height .25s ease;
}

.site-head.is-fixed {
	position:fixed;
	min-height:74px;
	padding-top:10px;
	padding-bottom:10px;
	background:rgba(10,8,7,.94);
	box-shadow:0 8px 26px rgba(0,0,0,.18);
	backdrop-filter:blur(10px);
	-webkit-backdrop-filter:blur(10px);
}

.brand {
	display:block;
	flex:0 0 auto;
	color:#ffffff;
	font-family:Georgia,"Times New Roman",serif;
	font-size:1.55rem;
	font-weight:700;
	line-height:1.05;
	text-decoration:none;
	letter-spacing:.01em;
}

.brand span {
	display:block;
	margin-top:4px;
	font-family:"Pinyon Script",Georgia,serif;
	font-size:1.3em;
	font-weight:400;
	line-height:.9;
}

.site-nav {
	display:flex;
	align-items:center;
	justify-content:flex-end;
	gap:5px;
}

.site-nav a {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:44px;
	padding:9px 11px;
	border:1px solid transparent;
	border-radius:999px;
	color:#ffffff;
	font-size:.72rem;
	font-weight:700;
	line-height:1.2;
	letter-spacing:.045em;
	text-decoration:none;
	text-transform:uppercase;
	white-space:nowrap;
}

.site-nav a:hover {
	border-color:rgba(255,255,255,.6);
	background:rgba(255,255,255,.08);
}

.site-nav .nav-reserve {
	border-color:#ffffff;
	background:#ffffff;
	color:#17110e;
}

.site-nav .nav-reserve:hover {
	background:#17110e;
	color:#ffffff;
}

.menu-btn {
	display:none;
	min-width:84px;
	min-height:44px;
	border:1px solid #ffffff;
	border-radius:999px;
	background:#000000;
	color:#ffffff;
	font:700 .8rem/1 Optima,Candara,Arial,sans-serif;
	cursor:pointer;
}

.hero-copy {
	position:relative;
	z-index:4;
	width:min(1380px,90%);
	margin:0 auto;
	padding:0 0 8em 0;
}

.hero-script {
	margin:0 0 10px;
	color:#f1c795;
	font-family:"Pinyon Script",Georgia,serif;
	font-size:3.3rem;
	font-weight:400;
	line-height:1;
}

.hero-copy h1 {
	max-width:900px;
	margin:0;
	color:#ffffff;
	font-family:Georgia,"Times New Roman",serif;
	font-size:5.6rem;
	font-weight:700;
	line-height:.93;
	letter-spacing:-.035em;
}

.hero-loc {
	margin:22px 0 0;
	color:#ffffff;
	font-size:.9rem;
	font-weight:700;
	line-height:1.4;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.hero-lead {
	max-width:690px;
	margin:22px 0 0;
	color:#ffffff;
	font-size:1.05rem;
	line-height:1.8;
}

.hero-actions {
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	margin-top:30px;
}

.btn {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:50px;
	padding:12px 21px;
	border:1px solid;
	border-radius:999px;
	font-size:.78rem;
	font-weight:700;
	line-height:1.2;
	letter-spacing:.045em;
	text-align:center;
	text-decoration:none;
	text-transform:uppercase;
}

.btn.light {
	border-color:#ffffff;
	background:#ffffff;
	color:#17110e;
}

.btn.light:hover {
	background:#17110e;
	color:#ffffff;
}

.btn.dark {
	border-color:#ffffff;
	background:rgba(0,0,0,.54);
	color:#ffffff;
}

.btn.dark:hover {
	background:#ffffff;
	color:#17110e;
}

.video-btn {
	position:absolute;
	right:4%;
	bottom:15%;
	z-index:5;
	min-height:44px;
	padding:9px 15px;
	border:1px solid rgba(255,255,255,.75);
	border-radius:999px;
	background:rgba(0,0,0,.72);
	color:#ffffff;
	font:700 .75rem/1.2 Optima,Candara,Arial,sans-serif;
	cursor:pointer;
}





/* Main prelude */
.intro {
	padding:2em 0 118px;
	background:#f7f3ec;
	position:relative;
	z-index:4;
}

.intro-shell {
	display:grid;
	grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
	align-items:start;
	gap:90px;
	width:min(1320px,90%);
	margin:0 auto;
}

.eyebrow {
	margin:0 0 15px;
	color:#8c1d18;
	font-size:.78rem;
	font-weight:700;
	line-height:1.4;
	letter-spacing:.2em;
	text-transform:uppercase;
}

.intro-title {
	max-width:600px;
	margin:0;
	color:#231814;
	font-family:Georgia,"Times New Roman",serif;
	font-size:4rem;
	line-height:1;
	letter-spacing:-.025em;
}

.intro-copy {
	padding-top:34px;
}

.intro-copy p {
	margin:0 0 18px;
	color:#372b25;
	font-size:1.05rem;
	line-height:1.9;
}


/* Food */
.food {
	padding:110px 0 128px;
	background:#ffffff;
}

.food-shell {
	display:grid;
	grid-template-columns:minmax(460px,1.05fr) minmax(0,.95fr);
	align-items:center;
	gap:90px;
	width:min(1320px,90%);
	margin:0 auto;
}

.food-media {
	position:relative;
	min-height:610px;
}

.food-main {
	position:absolute;
	top:0;
	left:0;
	display:block;
	width:78%;
	height:530px;
	object-fit:cover;
	box-shadow:0 22px 50px rgba(0,0,0,.15);
}

.food-small {
	position:absolute;
	right:0;
	bottom:0;
	display:block;
	width:47%;
	height:300px;
	object-fit:cover;
	border:10px solid #ffffff;
	box-shadow:0 18px 42px rgba(0,0,0,.16);
}

.food-eye {
	margin:0 0 14px;
	color:#9a281e;
	font-size:.78rem;
	font-weight:700;
	letter-spacing:.2em;
	text-transform:uppercase;
}

.food-title {
	max-width:650px;
	margin:0 0 26px;
	color:#2d1712;
	font-family:Georgia,"Times New Roman",serif;
	font-size:3.8rem;
	line-height:1.02;
	letter-spacing:-.025em;
}

.food-copy p {
	margin:0 0 17px;
	color:#42342d;
	font-size:1rem;
	line-height:1.85;
}

.text-link {
	display:inline-block;
	margin-top:12px;
	color:#8c1d18;
	font-size:.82rem;
	font-weight:700;
	letter-spacing:.05em;
	text-underline-offset:5px;
}


/* Pizza */
.pizza {
	padding:96px 0;
	background:#18110e;
}

.pizza-shell {
	display:grid;
	grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);
	align-items:center;
	gap:74px;
	width:min(1400px,92%);
	margin:0 auto;
}

.pizza-copy {
	padding-left:5%;
}

.pizza-eye {
	margin:0 0 13px;
	color:#efc594;
	font-size:.78rem;
	font-weight:700;
	letter-spacing:.2em;
	text-transform:uppercase;
}

.pizza-title {
	max-width:600px;
	margin:0 0 24px;
	color:#ffffff;
	font-family:Georgia,"Times New Roman",serif;
	font-size:4rem;
	line-height:1;
	letter-spacing:-.025em;
}

.pizza-copy p {
	max-width:560px;
	margin:0;
	color:#f2e9df;
	font-size:1rem;
	line-height:1.85;
}

.pizza-btn {
	margin-top:28px;
	border-color:#efc594;
	background:transparent;
	color:#ffffff;
}

.pizza-btn:hover {
	background:#efc594;
	color:#18110e;
}

.pizza-media {
	position:relative;
}

.pizza-media::after {
	content:"";
	position:absolute;
	right:-20px;
	bottom:-20px;
	width:72%;
	height:72%;
	border:1px solid #efc594;
	pointer-events:none;
}

.pizza-media img {
	position:relative;
	z-index:1;
	display:block;
	width:100%;
	height:570px;
	object-fit:cover;
}


/* Wine video */
.wine {
	position:relative;
	display:flex;
	align-items:center;
	min-height:690px;
	overflow:hidden;
	background:#090706;
}

.wine-video {
	position:absolute;
	top:-15%;
	left:0;
	z-index:0;
	display:block;
	width:100%;
	height:130%;
	object-fit:cover;
	object-position:center;
	transform:translate3d(0,0,0) scale(1.02);
	will-change:transform;
}

.wine-shade {
	position:absolute;
	inset:0;
	z-index:1;
	background:linear-gradient(90deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.65) 45%,rgba(0,0,0,.28) 100%);
}

.wine-copy {
	position:relative;
	z-index:2;
	width:min(1320px,90%);
	margin:0 auto;
	padding:92px 0;
}

.wine-script {
	max-width:700px;
	margin:0 0 8px;
	color:#f0c894;
	font-family:"Pinyon Script",Georgia,serif;
	font-size:3.2rem;
	line-height:1;
}

.wine-title {
	max-width:720px;
	margin:0;
	color:#ffffff;
	font-family:Georgia,"Times New Roman",serif;
	font-size:4.2rem;
	line-height:1;
}

.wine-copy > p:not(.wine-script) {
	max-width:650px;
	margin:24px 0 0;
	color:#ffffff;
	font-size:1.02rem;
	line-height:1.9;
}

.wine-btn {
	margin-top:30px;
	border-color:#ffffff;
	background:#ffffff;
	color:#17110e;
}

.wine-btn:hover {
	background:#17110e;
	color:#ffffff;
}


/* Doo Wop */
.shows {
	position:relative;
	padding:105px 0 118px;
	overflow:hidden;
	background:#f7f3ec;
}

.show-music {
	position:absolute;
	top:20px;
	left:0;
	z-index:0;
	display:block;
	width:100%;
	height:330px;
	pointer-events:none;
}

.show-staff {
	fill:none;
	stroke:#8d6a5d;
	stroke-width:1.7;
	stroke-linecap:round;
	stroke-linejoin:round;
	opacity:.16;
}

.show-notes {
	fill:#8d6a5d;
	opacity:.18;
}

.shows-shell {
	position:relative;
	z-index:1;
	width:min(1280px,90%);
	margin:0 auto;
}

.shows-head {
	max-width:860px;
	margin:0 auto 48px;
	text-align:center;
}

.shows-script {
	margin:0 0 2px;
	color:#98241d;
	font-family:"Pinyon Script",Georgia,serif;
	font-size:2.8rem;
	line-height:1;
}

.shows-eye {
	margin:0 0 12px;
	color:#3b2b24;
	font-size:1rem;
	font-weight:700;
	letter-spacing:.2em;
	text-transform:uppercase;
}

.shows-title {
	margin:0;
	color:#000000;
	font-family:Georgia,"Times New Roman",serif;
	font-size:4rem;
	line-height:1;
}

.shows-lead {
	max-width:760px;
	margin:22px auto 0;
	color:#000000;
	font-size:1rem;
	line-height:1.8;
	background:#f7f3ec;
	padding:1em;
}

.show-list {
	display:grid;
	grid-template-columns:repeat(7,minmax(0,1fr));
	border-top:1px solid rgba(64,42,34,.35);
	border-bottom:1px solid rgba(64,42,34,.35);
}

.show {
	position:relative;
	min-width:0;
	padding:28px 13px 26px;
	text-align:center;
}

.show + .show {
	border-left:1px solid rgba(64,42,34,.25);
}

.show-mon,
.show-day,
.show-year,
.show-name {
	margin:0;
}

.show-mon {
	color:#92221c;
	font-size:.76rem;
	font-weight:700;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.show-day {
	margin-top:2px;
	color:#000000;
	font-family:Georgia,"Times New Roman",serif;
	font-size:2.9rem;
	font-weight:700;
	line-height:1;
}

.show-year {
	margin-top:4px;
	color:#6a574e;
	font-size:.68rem;
	font-weight:700;
	letter-spacing:.12em;
}

.show-name {
	margin-top:18px;
	color:#211713;
	font-size:.73rem;
	font-weight:700;
	line-height:1.45;
	text-transform:uppercase;
}

.shows-action {
	display:flex;
	justify-content:center;
	margin-top:38px;
}

.show-btn {
	border-color:#000000;
	background:#000000;
	color:#ffffff;
}

.show-btn:hover {
	background:#98241d;
	border-color:#98241d;
}


/* Order / reservation */
.order {
	padding:92px 0;
	background:#ffffff;
}

.order-shell {
	display:grid;
	grid-template-columns:minmax(0,1fr) auto;
	align-items:center;
	gap:60px;
	width:min(1240px,90%);
	margin:0 auto;
}

.order-eye {
	margin:0 0 10px;
	color:#8c1d18;
	font-size:.76rem;
	font-weight:700;
	letter-spacing:.2em;
	text-transform:uppercase;
}

.order-title {
	max-width:760px;
	margin:0;
	color:#241714;
	font-family:Georgia,"Times New Roman",serif;
	font-size:3.4rem;
	line-height:1.04;
}

.order-copy > p:not(.order-eye) {
	max-width:700px;
	margin:17px 0 0;
	color:#4c3c35;
	line-height:1.8;
}

.order-actions {
	display:grid;
	gap:12px;
	min-width:260px;
}

.order-dark {
	border-color:#17110e;
	background:#17110e;
	color:#ffffff;
}

.order-light {
	border-color:#17110e;
	background:#ffffff;
	color:#17110e;
}

.order-dark:hover,
.order-light:hover {
	background:#8c1d18;
	border-color:#8c1d18;
	color:#ffffff;
}


/* Visit */
.visit {
	padding:88px 0 92px;
	background:#11100f;
	color:#ffffff;
}

.visit-shell {
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(560px,1.2fr);
	align-items:center;
	gap:80px;
	width:min(1320px,90%);
	margin:0 auto;
}

.visit-eye {
	margin:0 0 12px;
	color:#e9bd8c;
	font-size:.76rem;
	font-weight:700;
	letter-spacing:.2em;
	text-transform:uppercase;
}

.visit-title {
	max-width:580px;
	margin:0;
	color:#ffffff;
	font-family:Georgia,"Times New Roman",serif;
	font-size:3.8rem;
	line-height:1;
}

.visit-details {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:28px;
}

.visit-details > div {
	padding-left:24px;
	border-left:1px solid rgba(255,255,255,.3);
}

.visit-details h3 {
	margin:0 0 9px;
	color:#e9bd8c;
	font-size:.76rem;
	font-weight:700;
	letter-spacing:.13em;
	text-transform:uppercase;
}

.visit-details p {
	margin:0;
	color:#ffffff;
	font-size:.92rem;
	line-height:1.7;
}

.visit-details a {
	color:#ffffff;
	font-weight:700;
	text-underline-offset:4px;
}


/* Footer */
.footer {
	padding:72px 0 38px;
	background:#f3eee7;
}

.footer-shell {
	width:min(1320px,90%);
	margin:0 auto;
}

.footer-top {
	display:grid;
	grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);
	gap:60px;
	padding-bottom:38px;
	border-bottom:1px solid rgba(40,28,22,.18);
}

.footer-brand {
	margin:0;
	color:#241714;
	font-family:Georgia,"Times New Roman",serif;
	font-size:2rem;
	font-weight:700;
}

.footer-note {
	max-width:610px;
	margin:10px 0 0;
	color:#514039;
	font-size:.9rem;
	line-height:1.7;
}

.footer-links {
	display:grid;
	align-content:start;
	gap:9px;
}

.footer-links a {
	color:#241714;
	font-size:.8rem;
	font-weight:700;
	text-decoration:none;
}

.footer-links a:hover {
	text-decoration:underline;
	text-underline-offset:4px;
}

.access {
	padding:34px 0 32px;
	border-bottom:1px solid rgba(40,28,22,.18);
}

.access h2 {
	margin:0 0 10px;
	color:#241714;
	font-size:.9rem;
	line-height:1.4;
}

.access p {
	margin:0;
	color:#514039;
	font-size:.8rem;
	line-height:1.75;
}

.access a {
	color:#6f1915;
	font-weight:700;
	text-underline-offset:4px;
}

.footer-bottom {
	display:flex;
	flex-direction:column;
	align-items:center;
	padding-top:30px;
	text-align:center;
}

.footer-bottom > p {
	margin:0;
	color:#241714;
	font-size:.88rem;
	font-weight:700;
}

.top-link {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:42px;
	margin-top:18px;
	padding:8px 17px;
	border:1px solid #17110e;
	border-radius:999px;
	background:#17110e;
	color:#ffffff;
	font-size:.72rem;
	font-weight:700;
	text-decoration:none;
}

.top-link:hover {
	background:#ffffff;
	color:#17110e;
}

.by {
	width:200px;
	margin:26px auto 0;
}

.by a,
.by img {
	display:block;
	width:100%;
}

.by img {
	height:auto;
}


/* Motion */
.reveal {
	opacity:0;
	transform:translateY(26px);
	transition:opacity .75s ease,transform .75s ease;
}

.reveal.in {
	opacity:1;
	transform:none;
}


@media screen and (max-width:2400px) {
	.video-btn {
		bottom:10%;
	}
}

/* 1680 */
@media screen and (max-width:1680px) {
	.video-btn {
		bottom:7%;
	}
	.hero-copy h1 {
		font-size:4.8rem;
	}

	.hero-script {
		font-size:3rem;
	}

	.intro-title,
	.pizza-title,
	.shows-title {
		font-size:3.6rem;
	}

	.food-title,
	.wine-title,
	.visit-title {
		font-size:3.5rem;
	}

	.site-nav a {
		font-size:.68rem;
		padding-right:9px;
		padding-left:9px;
	}
}


/* 1280 */
@media screen and (max-width:1280px) {
	.hero {
		height:85vh;
	}

	.hero-copy {
		padding:0 0 4em 0;
	}

	.video-btn {
		bottom:5%;
	}
	.site-head {
		min-height:82px;
	}

	.menu-btn {
		display:inline-flex;
		align-items:center;
		justify-content:center;
	}

	.site-nav {
		position:absolute;
		top:100%;
		right:4%;
		display:none;
		width:min(390px,92vw);
		padding:13px;
		background:#11100f;
		border:1px solid rgba(255,255,255,.24);
		box-shadow:0 18px 40px rgba(0,0,0,.24);
	}

	.site-nav.open {
		display:grid;
		gap:3px;
	}

	.site-nav a {
		justify-content:flex-start;
		width:100%;
		border-radius:4px;
		font-size:.76rem;
	}

	.hero-copy h1 {
		font-size:4.2rem;
	}

	.intro-shell,
	.food-shell,
	.pizza-shell,
	.visit-shell {
		gap:56px;
	}

	.food-shell {
		grid-template-columns:minmax(390px,1fr) minmax(0,1fr);
	}

	.food-media {
		min-height:540px;
	}

	.food-main {
		height:470px;
	}

	.food-small {
		height:250px;
	}

	.pizza-shell {
		grid-template-columns:minmax(0,.85fr) minmax(440px,1.15fr);
	}

	.pizza-media img {
		height:500px;
	}

	.show-list {
		grid-template-columns:repeat(4,minmax(0,1fr));
	}

	.show:nth-child(5) {
		border-left:0;
	}

	.show:nth-child(n+5) {
		border-top:1px solid rgba(64,42,34,.25);
	}

	.visit-shell {
		grid-template-columns:1fr;
	}

	.visit-details {
		max-width:860px;
	}
}


@media screen and (max-width:1050px) {
	.video-btn {
		bottom:2%;
	}
}

/* 980 */
@media screen and (max-width:980px) {
	.video-btn {
		bottom:-0.15em;
	}


	.show-music {
		top:40px;
		height:280px;
	}

	.hero {
		min-height:700px;
		height:82vh;
	}

	.hero-copy {
		padding-top:120px;
	}

	.hero-copy h1 {
		font-size:3.5rem;
		max-width:720px;
	}

	.hero-script {
		font-size:2.5rem;
	}

	.intro {
		padding:2em 0 90px;
	}

	.intro-shell,
	.food-shell,
	.pizza-shell,
	.order-shell {
		grid-template-columns:1fr;
	}

	.intro-shell {
		gap:28px;
	}

	.intro-copy {
		padding-top:0;
	}

	.intro-title,
	.food-title,
	.pizza-title,
	.wine-title,
	.shows-title,
	.order-title,
	.visit-title {
		font-size:3rem;
	}

	.food {
		padding:88px 0 104px;
	}

	.food-media {
		max-width:780px;
		width:100%;
	}

	.food-copy,
	.pizza-copy {
		max-width:760px;
	}

	.pizza-copy {
		padding-left:0;
	}

	.pizza-media {
		max-width:820px;
	}

	.pizza-media img {
		height:460px;
	}

	.wine {
		min-height:610px;
	}

	.wine-copy {
		padding:76px 0;
	}

	.show-list {
		grid-template-columns:repeat(3,minmax(0,1fr));
	}

	.show:nth-child(4),
	.show:nth-child(7) {
		border-left:0;
	}

	.show:nth-child(n+4) {
		border-top:1px solid rgba(64,42,34,.25);
	}

	.show:nth-child(5) {
		border-left:1px solid rgba(64,42,34,.25);
	}

	.order-shell {
		gap:32px;
	}

	.order-actions {
		grid-template-columns:repeat(2,minmax(0,1fr));
		min-width:0;
	}

	.visit-details {
		grid-template-columns:repeat(3,minmax(0,1fr));
	}

	.footer-top {
		grid-template-columns:1fr;
		gap:28px;
	}
}


/* 736 */
@media screen and (max-width:736px) {


	.site-head {
		min-height:76px;
		padding-right:5%;
		padding-left:5%;
	}

	.brand {
		font-size:1.25rem;
	}

	.hero {
		min-height:650px;
		height:78vh;
	}

	.hero-copy {
		width:90%;
		padding-top:105px;
	}

	.hero-script {
		font-size:1.5rem;
	}

	.hero-copy h1 {
		font-size:2.35rem;
	}

	.hero-loc {
		font-size:.76rem;
		letter-spacing:.1em;
	}

	.hero-lead {
		font-size:.95rem;
		line-height:1.7;
	}

	.hero-actions {
		flex-direction:column;
		align-items:flex-start;
	}

	.hero-actions .btn {
		min-height:30px;
		padding:0 21px;
		width:min(200px,100%);
	}

	.video-btn {
		right:3%;
		bottom:0;
	}


	.intro,
	.food,
	.pizza,
	.shows,
	.order,
	.visit {
		padding-right:0;
		padding-left:0;
	}

	.intro-title,
	.food-title,
	.pizza-title,
	.wine-title,
	.shows-title,
	.order-title,
	.visit-title {
		font-size:2.5rem;
	}

	.food-media {
		min-height:470px;
	}

	.food-main {
		width:82%;
		height:405px;
	}

	.food-small {
		width:48%;
		height:220px;
		border-width:7px;
	}

	.pizza {
		padding-top:78px;
		padding-bottom:88px;
	}

	.pizza-media img {
		height:380px;
	}

	.pizza-media::after {
		right:-12px;
		bottom:-12px;
	}

	.wine {
		min-height:560px;
	}

	.wine-script {
		font-size:2.4rem;
	}

	.shows-script {
		font-size:2.2rem;
	}

	.show-list {
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.show:nth-child(3),
	.show:nth-child(5),
	.show:nth-child(7) {
		border-left:0;
	}

	.show:nth-child(n+3) {
		border-top:1px solid rgba(64,42,34,.25);
	}

	.show:nth-child(4),
	.show:nth-child(6) {
		border-left:1px solid rgba(64,42,34,.25);
	}

	.order-actions {
		grid-template-columns:1fr;
	}

	.visit-details {
		grid-template-columns:1fr;
		gap:18px;
	}

	.visit-details > div {
		padding:0 0 18px;
		border-left:0;
		border-bottom:1px solid rgba(255,255,255,.25);
	}

	.visit-details > div:last-child {
		padding-bottom:0;
		border-bottom:0;
	}
}


/* 550 */
@media screen and (max-width:550px) {


	.show-music {
		top:70px;
		height:230px;
	}

	.site-head {
		min-height:72px;
	}

	.brand {
		font-size:1.05rem;
	}

	.menu-btn {
		min-width:72px;
		font-size:.72rem;
	}

	.hero {
		min-height:610px;
		height:auto;
	}


	.hero-copy {
		padding:122px 0 92px;
	}

	.hero-script {
		font-size:1.75rem;
	}

	.hero-copy h1 {
		font-size:2.25rem;
		line-height:.98;
	}

	.hero-loc {
		font-size:.68rem;
	}

	.hero-lead {
		font-size:.9rem;
	}

	.intro {
		padding:20px 0 76px 0;
	}

	.intro-title,
	.food-title,
	.pizza-title,
	.wine-title,
	.shows-title,
	.order-title,
	.visit-title {
		font-size:2.15rem;
	}

	.intro-copy p,
	.food-copy p,
	.pizza-copy p,
	.wine-copy > p:not(.wine-script),
	.shows-lead,
	.order-copy > p:not(.order-eye) {
		font-size:.92rem;
	}

	.food {
		padding:72px 0 86px;
	}

	.food-media {
		min-height:385px;
	}

	.food-main {
		width:88%;
		height:330px;
	}

	.food-small {
		width:50%;
		height:170px;
		border-width:5px;
	}

	.pizza-media img {
		height:310px;
	}

	.wine {
		min-height:520px;
	}

	.wine-copy {
		padding:66px 0;
	}

	.wine-script {
		font-size:2rem;
	}

	.shows {
		padding:78px 0 84px;
	}

	.shows-head {
		margin-bottom:34px;
	}

	.shows-script {
		font-size:2rem;
	}

	.show {
		padding:22px 10px 20px;
	}

	.show-day {
		font-size:2.4rem;
	}

	.show-name {
		font-size:.66rem;
	}

	.order {
		padding:72px 0;
	}

	.visit {
		padding:72px 0 76px;
	}

	.footer {
		padding-top:58px;
	}

	.footer-brand {
		font-size:1.65rem;
	}
}


/* Reduced motion */
@media (prefers-reduced-motion:reduce) {
	html {
		scroll-behavior:auto;
	}

	.hero-video,
	.wine-video {
		display:none;
		transform:none !important;
	}

	.reveal {
		opacity:1;
		transform:none;
		transition:none;
	}
}
