@charset 'UTF-8';
/*
font-family: 'Alfa Slab One', cursive;
font-family: 'PT Serif', serif;
font-family: 'Rye', cursive;
font-family: 'Special Elite', cursive;
font-family: 'Staatliches', cursive;
*/

:root {
	--theme-red: #cd4631;
	--theme-alt-red: #ff9c8d;
	--theme-blue: #2e4084;
	--bg-fallback-color: #f4eada;
	--alternate-white-color: #f3e9d9;
	--roman-font-family: 'PT Serif', serif;
	--menu-font-family: 'Staatliches', cursive;
	--heading-font-family: 'Rye', cursive;
	--secondary-heading-font-family: 'Alfa Slab One', cursive;
	--typewriter-font-family: 'Special Elite', cursive;
	
	--parent-background-color: #fff;
	--parent-text-color: #000;
	--parent-menu-text-color: #484848;
	--parent-submenu-text-color: #7c7c7c;
	
	--browser-standard-width: 1035;
	scroll-padding-top: 83px;
	scroll-behavior: smooth;
}
@media all and (min-width:1160px) {
	:root {
		scroll-padding-top: 83px;
	}
}
@media all and (max-width:1159px) {
	:root {
		scroll-padding-top: 70px;
	}
}

/*------------------------------------*\
    MAIN
\*------------------------------------*/
/* global box-sizing */
*,*::after,*::before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
 	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	-webkit-backface-visbility: visible;
	backface-visbility: visible;
}

*:focus {
	outline: none;
}

*:not(.no-transitions),
*:not(.no-transitions) * {
	-webkit-transition: color 0.3s ease 0s, opacity 0.3s ease 0s, height 0.3s ease 0s, padding-top 0.3s ease 0s, padding-bottom 0.3s ease 0s, background 0.3s ease 0s, top 0.2s ease 0s, right 0.2s ease 0s, -webkit-filter 0.2s ease 0s;
	transition: color 0.3s ease 0s, opacity 0.3s ease 0s, height 0.3s ease 0s, padding-top 0.3s ease 0s, padding-bottom 0.3s ease 0s, background 0.3s ease 0s, top 0.2s ease 0s, right 0.2s ease 0s, -webkit-filter 0.2s ease 0s;
	transition: filter 0.2s ease 0s, color 0.3s ease 0s, opacity 0.3s ease 0s, height 0.3s ease 0s, padding-top 0.3s ease 0s, padding-bottom 0.3s ease 0s, background 0.3s ease 0s, top 0.2s ease 0s, right 0.2s ease 0s;
	transition: filter 0.2s ease 0s, color 0.3s ease 0s, opacity 0.3s ease 0s, height 0.3s ease 0s, padding-top 0.3s ease 0s, padding-bottom 0.3s ease 0s, background 0.3s ease 0s, top 0.2s ease 0s, right 0.2s ease 0s, -webkit-filter 0.2s ease 0s;
}

body a {
	-webkit-transition: color 0s;
	transition: color 0s;
	text-decoration: none;
}

a:focus {
	outline: none;
}

a:hover,
html:is(.using-keyboard-navigation, .no-js) a:focus {
	text-decoration: underline;
}

a:visited {
	color: inherit;
}

a[href]:empty {
	display: none;
}

html {
	font-size: 62.5%;
	height: 100%;
	max-width: 100vw;
	min-width: 320px;
	overflow-x: hidden;
	width: 100%;
}

body {
	background-color: var(--bg-fallback-color);
	background-image: url('../images/rodeo/bg.png');
	background-size: 220px 220px;
	background-repeat: repeat;
	background-position: top left;
	color: #000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	font-family: var(--typewriter-font-family);
	font-weight: 400;
	font-size: 18px;
	line-height: normal;
	max-width: 100vw;
	min-height: 100%;
	min-width: 320px;
	overflow-x: hidden;
	position: relative;
	width: 100%;
}

input, select, button, textarea,
input:focus, select:focus, button:focus, textarea:focus {
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: transparent;
	border: none;
	border-radius: 0;
	outline: 0;
}

main {
	display: block;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

img {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	max-width: 100%;
	vertical-align: bottom;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
}

input:not([type="checkbox"]):not([type="radio"]),
select {
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	     appearance: none !important;
}

/*------------------------------------*\
    CTA defaults
\*------------------------------------*/
a.cta.button {
	background-color: var(--alternate-white-color);
	border: 3px solid var(--theme-red);
	color: var(--theme-red) !important;
	-webkit-box-shadow: 10px 10px 0 var(--theme-blue);
	        box-shadow: 10px 10px 0 var(--theme-blue);
	display: inline-block;
	font-family: var(--secondary-heading-font-family);
	font-size: 17px;
	padding: 5px 15px;
	text-transform: uppercase;
	white-space: nowrap;
}

a.cta.button:hover,
html:is(.using-keyboard-navigation, .no-js) a.cta.button:focus {
	background-color: var(--theme-red);
	color: #fff !important;
	text-decoration: none;
}

/*---------------------------------------*\
    Default input PLACEHOLDER formatting
\*---------------------------------------*/
input::-webkit-input-placeholder {
	color: #fff;
	opacity: 1;
}
input:focus::-webkit-input-placeholder {
	opacity: 0.35;
}
textarea::-webkit-input-placeholder {
	color: #fff;
	opacity: 1;
}
textarea:focus::-webkit-input-placeholder {
	opacity: 0.35;
}

input:-moz-placeholder {
	color: #fff;
	opacity: 1;
}
input:focus:-moz-placeholder {
	opacity: 0.35;
}
textarea:-moz-placeholder {
	color: #fff;
	opacity: 1;
}
textarea:focus:-moz-placeholder {
	opacity: 0.35;
}

input::-moz-placeholder {
	color: #fff;
	opacity: 1;
}
input:focus::-moz-placeholder {
	opacity: 0.35;
}
textarea::-moz-placeholder {
	color: #fff;
	opacity: 1;
}
textarea:focus::-moz-placeholder {
	opacity: 0.35;
}

input:-ms-input-placeholder {
	color: #fff;
	opacity: 1;
}
input:focus:-ms-input-placeholder {
	opacity: 0.35;
}
textarea:-ms-input-placeholder {
	color: #fff;
	opacity: 1;
}
textarea:focus:-ms-input-placeholder {
	opacity: 0.35;
}

/*------------------------------------*\
    SECTION defaults
\*------------------------------------*/
section:not(.modal) {
	padding: 0 40px;
	position: relative;
	width: 100%;
}

section div.content {
	margin: 0 auto;
	max-width: 1280px;
	position: relative;
}

/*------------------------------------*\
    HEADER and NOTIFICATION
\*------------------------------------*/
#main-site-masthead {
	background-color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	height: 59px;
}

.logo-container {
	color: #000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: var(--menu-font-family);
	font-size: 30px;
	margin: 0;
	text-decoration: none;
}

.content > .logo-container:first-child {
	margin-left: 40px;
}

.logo-container.order-button img,
.rodeo-order-container img {
	background-image: url('../images/rodeo/order-online-button-dual.png');
	background-position: center left;
	background-repeat: no-repeat;
	background-size: auto 100%;
	-webkit-transition: none;
	transition: none;
}

.rodeo-order-container img {
	height: 92px;
}

.logo-container.order-button img {
	height: 62px;
	margin: 0 auto;
}

.logo-container.order-button:hover img,
.rodeo-order-container:hover img {
	background-position: center right;
}

html:is(.using-keyboard-navigation, .no-js) .logo-container.order-button:focus img,
html:is(.using-keyboard-navigation, .no-js) .rodeo-order-container:focus img {
	background-position: center right;
	outline: 3px solid var(--theme-red);
}

.rodeo-order-container img {
	position: absolute;
	right: 40px;
	top: 40px;
}

.logo-containecontainer.sub-site {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.logo-container.textual {
	margin: 12px 40px;
}

a.logo-container.order-button {
	background-color: var(--alternate-white-color);
	border: 30px solid transparent;
	-o-border-image: url('../images/rodeo/button-border.png');
	   border-image: url('../images/rodeo/button-border.png');
	border-image-slice: 85;
	border-image-width: 780px;
	border-image-repeat: repeat;
	position: relative;
	width: 152px;
}

a.logo-container.order-button .button-text {
	color: var(--theme-red);
	font-family: var(--secondary-heading-font-family);
	font-size: 14px;
	left: 50%;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	white-space: nowrap;
	text-transform: uppercase;
}

div.notification-area {
	color: #fff;
	position: absolute;
	right: 60px;
	z-index: 1000;
}

div.notification-area input[type="checkbox"] {
	visibility: hidden;
}

div.notification-area input[type="checkbox"] ~ label {
	cursor: pointer;
}

div.notification-area input[type="checkbox"] ~ label span,
div.notification-area input[type="checkbox"] ~ div.notification {
	background-color: var(--theme-red);
	display: none;
}

html.no-adolphus-eyebrow div.notification-area input[type="checkbox"] ~ label span {
	background-color: var(--theme-blue);
}

div.notification-area input[type="checkbox"] ~ label span {
	background-position: center right 10px;
	background-repeat: no-repeat;
	background-size: 14px 12px;
	font-family: var(--heading-font-family);
	min-width: 200px;
	padding: 8px 34px 9px 10px;
	text-align: center;
	text-transform: lowercase;
}

div.notification-area input[type="checkbox"] ~ label:hover span,
html:is(.using-keyboard-navigation, .no-js) div.notification-area input[type="checkbox"] ~ label:focus span {
	opacity: 0.8;
}

html:is(.using-keyboard-navigation, .no-js) div.notification-area input[type="checkbox"] ~ label:focus span {
	text-decoration: underline;
}

div.notification-area input[type="checkbox"]:checked ~ label span.opened {
	background-image: url('../images/rodeo/tab-arrow-up.png');
	display: inline-block;
}

div.notification-area input[type="checkbox"]:not(:checked) ~ label span.closed {
	background-image: url('../images/rodeo/tab-arrow-down.png');
	display: inline-block;
}

div.notification-area input[type="checkbox"]:checked ~ div.notification {
	background-image: url('../images/rodeo/graphic-howdy.png');
	background-position: center left 50px;
	background-repeat: no-repeat;
	background-size: 223px 203px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	min-height: 303px;
	min-width: 280px;
	padding: 50px 50px 50px 323px;
	position: absolute;
	right: 0;
	width: clamp(280px, 950px, 100vw - 140px);
	z-index: 1000;
}

div.notification h2 {
	font-family: var(--secondary-heading-font-family);
	font-size: 28px;
	line-height: 30px;
	margin-top: 0;
}

div.notification > div:not([role]) {
	font-family: var(--typewriter-font-family);
	font-size: 16px;
	line-height: 26px;
	margin-left: 50px;
}

div.notification a.cta.button {
	-ms-flex-item-align: end;
	    align-self: flex-end;
	border: 3px solid var(--theme-alt-red);
	margin: 0 10px 10px 0;
}

/*--------------------------------------------------*\
    NOTIFICATION form (see below for homepage form)
\*--------------------------------------------------*/
div.notification form {
	color: #fff;
	font-family: var(--typewriter-font-family);
	font-size: 16px;
}

div.notification form > p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	position: relative;
}

div.notification form > p > label {
	min-width: 95px;
}

div.notification form > p > label:first-child {
	-webkit-box-flex: 2;
	    -ms-flex-positive: 2;
	        flex-grow: 2;
	-ms-flex-negative: 1;
	    flex-shrink: 1;
	margin-right: 15px;
}

div.notification form > p > label:nth-child(2) {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	-ms-flex-negative: 2;
	    flex-shrink: 2;
	margin-right: 15px;
}

div.notification form > p > label:nth-child(3) {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	-ms-flex-negative: 2;
	    flex-shrink: 2;
}

div.notification label span {
	display: block;
	width: 100%;
}

div.notification label span:first-child {
	position: absolute;
	margin-left: -10000px;
}

div.notification input:not([type="submit"]) {
	background-color: var(--theme-blue);
	-webkit-box-shadow: 10px 0 0 transparent;
	        box-shadow: 10px 0 0 transparent;
	color: #fff;
	font-family: var(--typewriter-font-family);
	font-size: 16px;
	margin-bottom: 5px;
	margin-right: 15px;
	padding: 14px 8px 10px;
	width: 100%;
}

@media all and (max-width:899px) {
	div.notification input[type="submit"] {
		bottom: -45px;
		position: absolute;
	}
}

div.notification input[type="submit"] {
	-ms-flex-item-align: self-start;
	    align-self: self-start;
	background-color: var(--alternate-white-color);
	border: 3px solid var(--theme-alt-red);
	color: var(--theme-red);
	-webkit-box-shadow: 10px 10px 0 var(--theme-blue);
	        box-shadow: 10px 10px 0 var(--theme-blue);
	display: inline-block;
	font-family: var(--secondary-heading-font-family);
	font-size: 17px;
	padding: 5px 15px;
	text-transform: uppercase;
}

div.notification input[type="submit"]:hover,
html:is(.using-keyboard-navigation, .no-js) div.notification input[type="submit"]:focus {
	background-color: var(--theme-red);
	color: #fff;
	text-decoration: none;
}

/*------------------------------------*\
    GALLERY control default formats
\*------------------------------------*/
section :is(.slick-prev, .slick-next) {
	background-color: var(--alternate-white-color) !important;
	background-position: center center;
	background-repeat: no-repeat !important;
	background-size: 21px 29px !important;
	border: 3px solid var(--theme-red);
	-webkit-box-shadow: 10px 10px 0 var(--theme-blue);
	        box-shadow: 10px 10px 0 var(--theme-blue);
	height: 39px;
	width: 49px;
}

section :is(.slick-prev, .slick-next)::before {
	content: '';
}

section .slick-next {
	background-image: url('../images/rodeo/button-arrow-right-red.png') !important;
	background-position: center left 13px !important;
}

section .slick-next:hover,
html:is(.using-keyboard-navigation, .no-js) section .slick-next:focus {
	background-image: url('../images/rodeo/button-arrow-right-hover.png') !important;
	background-color: var(--theme-red) !important;
}

section .slick-prev {
	background-image: url('../images/rodeo/button-arrow-left-red.png') !important;
	background-position: center right 13px !important;
}

section .slick-prev:hover,
html:is(.using-keyboard-navigation, .no-js) section .slick-prev:focus {
	background-image: url('../images/rodeo/button-arrow-left-hover.png') !important;
	background-color: var(--theme-red) !important;
}

/*------------------------------------*\
    HERO slider
\*------------------------------------*/
section.hero-slides {
	padding: 0;
}

section.hero-slides div.content {
	max-width: 100%;
}

section.hero-slides.single-image .slides img.slide {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 500px;
	width: 100%;
}

section.hero-slides .slick-slide img {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 100%;
	max-height: 500px;
}

section.hero-slides a.rodeo-logo-container {
	bottom: 40px;
	left: 40px;
	position: absolute;
}

html:is(.using-keyboard-navigation, .no-js) section.hero-slides a.rodeo-logo-container:focus {
	outline: 3px solid var(--theme-red);
	outline-offset: -1px;
}

section.hero-slides img.rodeo-logo {
	width: 422px;
	max-width: calc(100vw - 40px);
}

section.hero-slides :is(.slick-prev, .slick-next) {
	bottom: 8px;
	top: auto;
}

section.hero-slides .slick-next {
	right: 50px;
}

section.hero-slides .slick-prev {
	left: auto;
	right: 120px;
}

/*------------------------------------*\
    Site Header Message
\*------------------------------------*/
.site-message {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background-color: #2e4084;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 15px;
	height: 40px;
	padding: 2px 60px 2px 20px;
	position: fixed;
	width: 100%;
	z-index: 100001;
}

@media all and (max-width:799px) {
	.site-message {
		height: 60px;
	}
}

.site-message > * {
	margin: 0;
}

.site-message b,
.site-message strong {
	font-size: 15px;
}

.site-message b:first-child,
.site-message strong:first-child {
	letter-spacing: 3.5px;
	padding-right: 30px;
}

.site-message a,
.site-message a:visited,
.site-message a:focus,
.site-message a:active {
	color: #fff;
	text-decoration: underline;
}

html.using-keyboard-navigation .site-message a:focus,
html.no-js .site-message a:focus {
	outline: 1px solid #fff;
	outline-offset: 3px;
	border-radius: 7px;
}

.site-message a.close {
	background-image: url('../images/rodeo/x-white.png');
	background-size: auto 23px;
	background-position: left center;
	cursor: pointer;
	display: block;
	height: 23px;
	overflow: hidden;
	position: absolute;
	right: 20px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition: none;
	transition: none;
	width: 23px;
}

.site-message a.close span {
	position: absolute;
	left: -100px;
}

.site-message a.close:hover,
html.using-keyboard-navigation .site-message a.close:focus,
html.no-js .site-message a.close:focus {
	opacity: 0.7;
}

/* -----------------------------------*\
     LAYOUT - PROMO SLIDEOUT
\* -----------------------------------*/
div.promo-slide-out {
	border: 1px solid var(--theme-red);
	border-right: none;
	position: fixed;
	right: -400px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition: right 0.4s ease 0s, background-color 0.2s ease 0s, opacity 0.2s ease 0s;
	        transition: right 0.4s ease 0s, background-color 0.2s ease 0s, opacity 0.2s ease 0s;
	width: 400px;
	z-index: 10000002;
}

main.hotel-page div.promo-slide-out {
	top: 20px;
}

div.promo-slide-out.open {
	right: 0;
	max-width: calc(100% - 30px);
}

div.promo-slide-out div.button {
	left: -115px;
	position: absolute;
	top: 50%;
}

div.promo-slide-out:not(.open) div.button {
	-webkit-transform: translateY(-50%) rotate(90deg);
	        transform: translateY(-50%) rotate(90deg);
}

div.promo-slide-out.open div.button {
	-webkit-transform: translateY(-50%) rotate(270deg);
	        transform: translateY(-50%) rotate(270deg);
}

div.promo-slide-out button {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	background-color: var(--theme-blue);
	border: 1px solid var(--theme-blue);
	border-bottom: none;
	color: #fff;
	cursor: pointer;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	font-family: var(--heading-font-family);
	font-size: 18px;
	height: 35px;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	outline: none;
	text-transform: lowercase;
	top: 50%;
	width: 200px;
}

html.using-keyboard-navigation div.promo-slide-out button:focus,
html.no-js div.promo-slide-out button:focus {
	text-decoration: underline;
}

div.promo-slide-out button img {
	height: 12px;
	float: left;
	margin: 7px 5px 0 5px;
	width: 14px;
}

div.promo-slide-out button.open img:first-of-type {
	visibility: hidden;
}

div.promo-slide-out button.close img:not(:first-of-type) {
	visibility: hidden;
}

div.promo-slide-out button img:last-child {
	float: right;
}

div.promo-slide-out button.open {
	border-top: none;
	display: none;
}

div.promo-slide-out:not(.open) button.open {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

div.promo-slide-out button.close {
	display: none;
}

div.promo-slide-out.open button.close {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

div.promo-slide-out div.content {
	background-color: var(--theme-red);
	border: 30px solid transparent;
	max-height: calc(100vh - 10px);
	overflow: auto;
}

div.promo-slide-out div.content img.hero {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
}

div.promo-slide-out article {
	background-position: top 20px center;
	background-repeat: no-repeat;
	background-size: 223px 203px;
	color: #fff;
	padding: 243px 20px 20px;
	text-align: center;
}

div.promo-slide-out article p,
div.promo-slide-out article ul,
div.promo-slide-out article ol {
	text-align: left;
}

div.promo-slide-out article div.super {
	text-transform: uppercase;
}

div.promo-slide-out article a.cta,
div.promo-slide-out article a.cta > span {
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
}

div.promo-slide-out a.cta.button:hover,
html:is(.using-keyboard-navigation, .no-js) div.promo-slide-out a.cta.button:focus {
	border: 3px solid var(--alternate-white-color);
}

/* Safari 14 introduces bug into some flex-positioned elements, making them wrap when they don't have to */
@media not all and (-webkit-min-device-pixel-ratio:0), not all and (min-resolution:.001dpcm) { 
	@media {
		div.promo-slide-out article a.cta,
		div.promo-slide-out article a.cta > span {
			white-space: nowrap;
		}
	}
}

/*------------------------------------*\
    MAIN NAV (and footer mobile nav)
\*------------------------------------*/
nav.main {
	position: sticky;
	top: 0;
}
div.site-message ~ nav.main {
	top: 40px;
}
nav.main.stuck {
	position: fixed;
}
html.no-adolphus-eyebrow nav.main.stuck {
	padding-bottom: 10px;
	padding-top: 10px;
}
html.no-adolphus-eyebrow .sticky-wrapper {
	position: fixed;
	top: 0;
	z-index: 1001;
}

html:is(.using-keyboard-navigation, .no-js) nav.main a.logo-container:focus img {
	outline: 3px solid var(--theme-red);
}

@media all and (min-width:1160px) {
	nav.main.hide-on-wide {
		display: none;
		position: absolute !important;
		top: -10000px;
	}
	nav.main {
		color: var(--theme-red);
		font-family: var(--menu-font-family);
		font-size: 20px;
		font-weight: 400;
		padding: 0 40px;
		text-align: center;
		width: 100%;
		z-index: 1000;
	}
	html:not(.no-adolphus-eyebrow) nav.main {
		padding: 10px 40px;
	}
	nav.main.stuck {
		background-color: var(--bg-fallback-color);
		background-image: url('../images/rodeo/bg.png');
		background-size: 220px 220px;
		background-repeat: repeat;
		background-position: top left;
	}
	nav.main div.content {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		margin: 0 auto;
		max-width: 1280px;
	}
	div#top:not(.menu-not-always-stuck) {
		margin-top: 83px;
	}
	div.site-message ~ div#top:not(.menu-not-always-stuck) {
		margin-top: 123px;
	}
	nav.main a {
		color: var(--theme-red);
		text-decoration: none;
	}
	nav.main a:hover,
	html.using-keyboard-navigation nav.main a:focus,
	html.no-js nav.main a:focus {
		text-decoration: underline;
	}
	nav.main a:not([href]):hover {
		cursor: default;
	}
	nav.main a.logo-container {
		margin-left: 0;
		display: none;
	}
	nav.main.stuck a.logo-container {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-ms-flex-negative: 0;
		    flex-shrink: 0;
	}
	nav.main div.menu {
		display: inline-block;
		text-align: center;
		width: 100%;
	}
	.c-hamburger {
		display: none;
	}
	nav.main ul {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		list-style: none;
		margin: 0;
		padding: 0;
		white-space: nowrap;
		width: auto !important;
	}
	nav.main ul.sub-menu {
		background-color: var(--theme-red);
		color: var(--theme-blue);
		font-size: 15px;
		margin-top: 10px;
		padding: 10px 20px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		    transform: translateX(-50%);
	}
	nav.main li.menu-item {
		display: inline-block;
	}
	nav.main li.menu-item:not(.btn) {
		padding: 15px 0 0;
		margin: 5px 3px;
	}
	nav.main li.menu-item:is(.btn) {
		margin-left: 3px;
	}
	nav.main li.menu-item.book-now {
		margin-left: 23px;
	}
	nav.main li.menu-item.mobile-only {
		display: none;
	}
	nav.main ul.dropdown > li.menu-item > a {
		display: inline-block;
	}
	nav.main ul.dropdown > li.menu-item:not(.btn) > a {
		padding: 0 9px 12px;
	}
	nav.main div.top-spacer {
		border-bottom: 10px solid var(--theme-red);
		border-left: 7px solid transparent;
		border-right: 7px solid transparent;
		display: none;
		height: 0;
		margin: 5px auto 0;
		overflow: visible;
		width: 0;
	}
	nav.main li.menu-item.hover div.top-spacer {
		display: block;
	}
	nav.main ul.sub-menu li.menu-item {
		display: block;
		padding: 0;
		text-align: center;
	}
	nav.main ul.sub-menu li.menu-item > a {
		color: var(--theme-blue);
		display: block;
		margin: 12px 0;
	}
	nav.main ul.sub-menu li.menu-item > a:hover,
	html.using-keyboard-navigation nav.main ul.sub-menu li.menu-item > a:focus,
	html.no-js nav.main ul.sub-menu li.menu-item > a:focus {
		text-decoration: underline;
	}
	nav.main ul.sub-menu li.menu-item.hover > a,
	html.using-keyboard-navigation nav.main ul.sub-menu li.menu-item > a:focus,
	html.no-js nav.main ul.sub-menu li.menu-item > a:focus {
		text-decoration: underline;
	}
	html.using-keyboard-navigation nav.main li.menu-item a:focus,
	html.no-js nav.main li.menu-item a:focus {
		outline: 1px dotted var(--theme-blue);
	}
	nav.footer.mobile {
		display: none;
	}
}
@media all and (max-width:1159px) {
	nav.main.hide-on-narrow {
		display: none;
		position: absolute !important;
		top: -10000px;
	}
	nav.main {
		background-color: var(--bg-fallback-color);
		background-image: url('../images/rodeo/bg.png');
		background-size: 220px 220px;
		background-repeat: repeat;
		background-position: top left;
		font-family: var(--menu-font-family);
		font-size: 22px;
		font-weight: 400;
		line-height: 50px;
		z-index: 900;
		width: 100%;
	}
	html.no-adolphus-eyebrow nav.main,
	html.no-adolphus-eyebrow nav.main.stuck {
		padding: 0;
		position: fixed;
		z-index: 1001;
	}
	html.no-adolphus-eyebrow #top {
		margin-top: 70px;
	}
	div.site-message ~ html.no-adolphus-eyebrow #top {
		margin-top: 110px;
	}
	nav.main .c-hamburger {
		right: 40px;
		top: 21px;
		-webkit-transition: right 0.2s ease 0s;
		transition: right 0.2s ease 0s;
		z-index: 1001;
	}
	nav.main.stuck .c-hamburger {
		margin-top: 3px;
		top: 17px;
	}
	#main-site-masthead + nav.main:not(.stuck) .c-hamburger {
		top: 21px;
		z-index: 1001;
	}
	nav.main div.content {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		height: 70px;
		position: relative;
	}
	div#top:not(.menu-not-always-stuck) {
		margin-top: 70px;
	}
	div.site-message ~ div#top:not(.menu-not-always-stuck) {
		margin-top: 110px;
	}
	html:not(.no-adolphus-eyebrow) nav.main:not(.scrolled-past-hero) a.logo-container {
		display: none;
	}
	html.no-adolphus-eyebrow nav.main.scrolled-past-hero a.logo-container,
	nav.main.scrolled-past-hero a.logo-container {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-ms-flex-negative: 0;
		    flex-shrink: 0;
	}
	nav.main .content > a.logo-container.order-button {
		background-color: var(--alternate-white-color);
		bottom: 0;
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		left: 50%;
		padding: 10px;
		position: fixed;
		text-align: center;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		width: 100%;
	}
	nav.main .content > a.logo-container.order-button .button-text {
		font-size: 30px;
	}
	footer {
		margin-bottom: 82px;
	}
	nav.main ul {
		color: #fff;
		font-size: 15px;
		list-style: none;
		margin: 10px 0;
		min-width: 150px;
		padding: 0;
		white-space: nowrap;
		width: auto !important;
	}
	nav.main div.menu {
		background-color: var(--theme-blue);
		margin: 0;
		position: absolute;
		padding: 90px 80px 35px;
		left: 100%;
		text-align: center;
		top: 0;
		-webkit-transform: translateX(calc(100% + 1px));
		    transform: translateX(calc(100% + 1px));
		-webkit-transition: -webkit-transform 0.2s ease 0s;
		transition: -webkit-transform 0.2s ease 0s;
		transition: transform 0.2s ease 0s;
		transition: transform 0.2s ease 0s, -webkit-transform 0.2s ease 0s;
		z-index: 1000;
	}
	html:is(.using-keyboard-navigation, .no-js) nav.main div.menu {
		-webkit-transition: -webkit-transform 0s ease 0s;
		transition: -webkit-transform 0s ease 0s;
		transition: transform 0s ease 0s;
		transition: transform 0s ease 0s, -webkit-transform 0s ease 0s;
	
	}
	nav.main.stuck div.menu {
		top: 0;
	}
	nav.main.is-active div.menu,
	html:is(.using-keyboard-navigation, .no-js) nav.main.is-active div.menu,
	html:is(.using-keyboard-navigation, .no-js) nav.main div.menu:focus-within {
		-webkit-transform: translateX(-100%);
		    transform: translateX(-100%);
	}
	nav.main li > .top-spacer li,
	nav.main li > .top-spacer ul {
		height: 0;
		margin: 0;
		overflow: hidden;
	}
	nav.main li.open > .top-spacer ul,
	nav.main li:focus-within > .top-spacer ul {
		height: auto;
		margin: 0 0 10px 0;
	}
	html.using-keyboard-navigation nav.main li > .top-spacer ul:focus-within,
	html.no-js nav.main li > .top-spacer ul:focus-within {
		height: auto;
		margin: 0 0 10px 0;
	}
	nav.main li.open > .top-spacer li {
		height: 32px;
		margin: 10px 0;
	}
	html.using-keyboard-navigation nav.main li > .top-spacer ul:focus-within li,
	html.no-js nav.main li > .top-spacer ul:focus-within li {
		height: 32px;
		margin: 10px 0;
	}
	nav.main li.menu-item {
		display: block;
		margin: 10px 0;
	}
	nav.main li.menu-item a {
		text-align: center;
	}
	nav.main li.menu-item > a {
		color: #fff;
		display: block;
		font-size: 24px;
		margin: 0 auto;
	}
	nav.main li.menu-item > a:not([href]) {
		cursor: pointer;
	}
	nav.main ul.dropdown > li.menu-item > a:not([href])::after {
		border-left: 6px solid transparent;
		border-right: 6px solid transparent;
		border-top: 6px solid rgba(255,255,255,0.5);
		content: "";
		display: inline-block;
		height: 0;
		margin-left: 0.5em;
		position: absolute;
		top: 12px;
		width: 0;
	}
	nav.main ul.dropdown > li.menu-item.open > a:not([href])::after {
		border-bottom: 6px solid rgba(255,255,255,0.5);
		border-top: none;
	}
	nav.main li.menu-item > a:hover {
		text-decoration: none;
	}
	nav.main .sub-menu li.menu-item > a {
		font-size: 18px;
		text-transform: none;
	}
	nav.main .sub-menu li.menu-item:not(.current-menu-item) > a {
		opacity: 0.6;
	}
	html.using-keyboard-navigation nav.main li.menu-item:not(.current-menu-item) > a:focus,
	html.no-js nav.main li.menu-item:not(.current-menu-item) > a:focus {
		text-decoration: underline;
	}
	nav.main ul.dropdown > li.menu-item:not(.current-menu-item).hover:not(.open) > a:not([href])::after {
		border-top: 6px solid #fff;
	}
	nav.main ul.dropdown > li.menu-item:not(.current-menu-item).hover.open > a:not([href])::after {
		border-bottom: 6px solid #fff;
	}
	html.using-keyboard-navigation nav.main li.menu-item a:focus,
	html.no-js nav.main li.menu-item a:focus {
		outline: 1px dotted var(--theme-red);
	}
	.rodeo-order-container {
		display: none;
	}
}
@media all and (max-width:799px) {
	div.site-message ~ nav.main {
		top: 60px;
	}
	div.site-message ~ div#top:not(.menu-not-always-stuck) {
		margin-top: 130px;
	}
}
@media all and (max-width:399px) {
	nav.main.is-active div.menu {
		width: 100%;
	}
}

/*------------------------------------*\
    MAIN Section formatting
\*------------------------------------*/
main {
	color: var(--theme-blue);
	font-family: var(--typewriter-font-family);
	font-size: 18px;
	line-height: 32px;
}

main h1 {
	font-family: var(--heading-font-family);
	font-size: 42px;
	line-height: 50px;
}

main h2 {
	font-family: var(--secondary-heading-font-family);
	font-size: 28px;
	line-height: 30px;
}

main h3,
main h4,
main h5,
main h6 {
	font-family: var(--secondary-heading-font-family);
	font-size: 20px;
	line-height: 22px;
}

div.indent {
	margin-left: 30%;
}

div.ctas {
	margin: 30px 0 10px;
}

div.ctas > a.cta:not(:last-child) {
	margin-bottom: 20px;
	margin-right: 30px;
}

/*------------------------------------*\
    INTRO homepage section
\*------------------------------------*/
section.alternating.with-intro {
	margin-top: 20px;
}

section.alternating.with-intro div.intro {
	-webkit-column-gap: 40px;
	   -moz-column-gap: 40px;
	        column-gap: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 40px;
	min-height: 600px;
}

section.alternating.with-intro div.text {
	min-height: 660px;
}

@media all and (min-width:1160px) {
	section.alternating.with-intro div.clipped > *:not(:first-child) {
		margin-right: 17%;
	}
}

section.alternating.with-intro div.text > h1 {
	margin-top: 0;
}

section.alternating.with-intro div.text > img,
section.alternating.with-intro div.text > svg,
section.alternating.with-intro div.text > object,
section.alternating.with-intro div.text > lottie-player {
	float: left;
	height: auto;
	margin-right: 20px;
	max-width: 39%;
}

/* lottie player correction */
div#animation-container {
	max-width: 100%;
}

section.alternating.with-intro div.hours {
	-ms-flex-item-align: start;
	    align-self: flex-start;
	border: 3px solid var(--theme-red);
	-webkit-box-shadow: 20px 20px 0 var(--theme-blue);
	        box-shadow: 20px 20px 0 var(--theme-blue);
	color: var(--theme-red);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	font-family: var(--roman-font-family);
	font-size: 36px;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-right: 20px;
	min-width: clamp(350px, 31%, 500px);
	padding: 60px 30px;
	text-transform: uppercase;
}

section.alternating.with-intro div.hours h2 {
	color: var(--theme-blue);
	font-family: var(--secondary-heading-font-family);
	font-size: 42px;
	margin-top: 0;
	text-transform: uppercase;
}

section.alternating.with-intro div.hours > :not(:last-child) {
	margin-bottom: 42px;
}

section.alternating.with-intro div.days {
	font-family: var(--menu-font-family);
	font-size: 26px;
}

section.alternating.with-intro div.time {
	font-style: italic;
}

section.alternating.with-intro div.blocks {
	clear: both;
	-ms-flex-line-pack: start;
	    align-content: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 0 -5.625%;
	position: relative;
}

section.alternating.with-intro div.blocks.no-extra-bottom-space {
	margin: 0 -5.625% -250px;
}

section.alternating.with-intro div.blocks.lottie-player {
	margin: 0 -5.625% -200px;
}

section.alternating.with-intro div.blocks .block {
	margin: 5%;
	width: calc(40% - 2px) !important; /* important due to lottie player crap */
}

section.alternating.with-intro div.blocks svg.block,
section.alternating.with-intro div.blocks object.block {
	height: auto;
}

section.alternating.with-intro div.blocks img.block {
	margin-bottom: 0;
	margin-top: 0;
}


section.alternating.with-intro div.blocks lottie-player.block {
	height: auto;
	margin-bottom: 0;
	margin-top: 0;
}

section.alternating.with-intro div.blocks svg.block:nth-child(2n),
section.alternating.with-intro div.blocks object.block:nth-child(2n) {
	bottom: 200px;
	left: 0;
	position: absolute;
}

section.alternating.with-intro div.image-container {
	background-size: auto 18px;
	background-position: bottom left;
	background-repeat: no-repeat;
	-webkit-clip-path: polygon(0 0, 0 100%, calc(100% - 15px) 100%, 100% calc(100% - 18px), 100% 0);
	        clip-path: polygon(0 0, 0 100%, calc(100% - 15px) 100%, 100% calc(100% - 18px), 100% 0);
	padding: 0 0 18px 18px;
}

section.alternating.with-intro div.blocks .block:nth-child(2n + 1) {
	color: var(--theme-red);
	position: relative;
	top: -350px;
}

section.alternating.with-intro div.blocks .block:nth-child(2n) a:visited {
	color: var(--theme-blue);
}

section.alternating.with-intro div.blocks .block:nth-child(2n + 1) a:visited {
	color: var(--theme-red);
}

@media all and (max-width:1359px) {
	section.alternating.with-intro div.blocks .block:nth-child(2n + 1) {
		top: -27.35vw;
	}
}

section.alternating.with-intro div.blocks .block:nth-child(2n) div.image-container {
	background-image: url('../images/rodeo/graphic-hash-blue.png');
}

section.alternating.with-intro div.blocks .block:nth-child(2n + 1) div.image-container {
	background-image: url('../images/rodeo/graphic-hash-red.png');
}

section.alternating.with-intro div.image-container img {
	width: 100%;
}

section.alternating.with-intro div.blocks h2 {
	font-family: var(--heading-font-family);
	font-size: 42px;
	line-height: 50px;
	
}

/*------------------------------------*\
    GALLERY homepage section
\*------------------------------------*/
section.gallery h2.gallery-heading {
	text-align: right;
}

section.gallery h2.gallery-heading span {
	background-color: var(--theme-blue);
	color: var(--alternate-white-color);
	display: inline-block;
	font-family: var(--menu-font-family);
	font-size: 40px;
	padding: 14px 15px 14px 100px;
	padding: 14px 15px 14px min(100px, 10vw);
}

section.gallery .slick-slide {
	border: 3px solid var(--theme-red);
	margin-right: 40px;
}

.slick-slide > div {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

section.gallery .slick-slide img {
	height: 450px;
	max-height: 100vh;
	width: auto !important;
}

#modal-container .slick-slide img {
	border: 3px solid var(--theme-red);
	max-height: calc(90vh - 85px);
	width: auto !important;
}

section:is(.gallery, .modal) .slick-next {
	right: 10px;
}

section:is(.gallery, .modal) .slick-prev {
	right: 80px;
}

:is(.slick-prev, .slick-next) {
	bottom: 6px;
	top: auto;
}

.slick-next {
	right: 50px;
}

.slick-prev {
	left: auto;
	right: 120px;
}

.slide-controls-positioning {
	height: 85px;
}

div#top .slide-controls-positioning {
	bottom: 40px;
	position: absolute;
	right: 0;
}

a.open-full-gallery {
	bottom: 10px;
	position: absolute;
	right: 10px;
}

a.open-full-gallery span {
	position: absolute;
	left: -10000px;
}

a.open-full-gallery::after {
	background-image: url('../images/rodeo/icon-search.png');
	background-size: cover;
	bottom: 10px;
	content: '';
	cursor: pointer;
	display: block;
	height: 18px;
	opacity: 0.5;
	position: absolute;
	right: 10px;
	width: 15px;
	z-index: 1000;
}

div.open-full-gallery {
	cursor: pointer;
	position: relative;
}

div.open-full-gallery:hover a.open-full-gallery::after,
a.open-full-gallery:hover::after,
html.using-keyboard-navigation a.open-full-gallery:focus::after,
html.no-js a.open-full-gallery:focus::after {
	opacity: 1;
}

/*------------------------------------*\
    Modal Box
\*------------------------------------*/
#modal-container {
	background-color: rgba(15,28,19,0.9);
	bottom: 0;
	display: none;
	opacity: 0;
	left: 0;
	padding: 50px;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 100000;
}

#modal-container.visible {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	opacity: 1;
}

#modal-container a.close-modal {
	background-image: url('../images/rodeo/close-x-red-blue.png');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: auto 19px;
	content: '';
	display: block;
	height: 19px;
	position: absolute;
	top: 10px;
	-webkit-transition: none;
	transition: none;
	right: 10px;
	width: 19px;
}

#modal-container a.close-modal:hover,
html:is(.using-keyboard-navigation, .no-js) #modal-container a.close-modal:focus {
	background-position: right center;
}

html:is(.using-keyboard-navigation, .no-js) #modal-container a.close-modal:focus {
	outline: 1px dotted var(--theme-red);
	outline-offset: 3px;
}

#modal-container a.close-modal span {
	position: absolute;
	margin-left: -10000px;
}

#modal-container section.modal {
	max-width: 1860px;
	position: relative;
	width: 100%;
}

/*------------------------------------*\
    HAPPENINGS homepage section
\*------------------------------------*/
section.happenings h2 {
	color: var(--theme-red);
	font-family: var(--heading-font-family);
	font-size: 58px;
	line-height: 70px;
}

section.happenings div.list {
	background-image: url('../images/rodeo/graphic-cactus.png');
	background-position: top right;
	background-repeat: no-repeat;
	background-size: min(401px, 33.3333%) auto;
	min-height: 401px;
	padding-right: calc(33.3333% + 40px);
}

section.happenings a.event {
	color: var(--theme-blue) !important;
	display: block;
	margin-bottom: 40px;
}

section.happenings a.event:visited {
	color: var(--theme-blue) !important;
}

section.happenings a.event:hover,
html:is(.using-keyboard-navigation, .no-js) section.happenings a.event:focus {
	text-decoration: none;
}

section.happenings a.event:hover h3,
html:is(.using-keyboard-navigation, .no-js) section.happenings a.event:focus h3 {
	text-decoration: underline;
}

section.happenings a.event:nth-child(2n + 1) {
	padding-right: 15%;
}

section.happenings a.event:nth-child(2n) {
	padding-left: 15%;
}

section.happenings span.occurence {
	background-color: var(--theme-red);
	color: var(--alternate-white-color);
	display: inline-block;
	font-family: var(--menu-font-family);
	font-size: 24px;
	padding: 5px 30px;
}

section.happenings h3 {
	color: var(--theme-blue);
	font-family: var(--heading-font-family);
	font-size: 20px;
	line-height: 24px;
	margin-bottom: 8px;
}

section.happenings a.event > p {
	margin-top: 0;
}

/*------------------------------------*\
    CONTACT homepage section
\*------------------------------------*/
section.contact div.content {
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap-reverse;
	    flex-wrap: wrap-reverse;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding-bottom: 80px;
}

section.contact div.address {
	/* aspect-ratio: 1; */
	border: 3px solid var(--theme-red);
	-webkit-box-shadow: 20px 20px 0 var(--theme-blue);
	        box-shadow: 20px 20px 0 var(--theme-blue);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-right: 40px;
	min-width: min(100% - 20px, 400px);
	padding: 60px 30px;
	width: 31%;
}

section.contact div.address h2 {
	color: var(--theme-blue);
	font-family: var(--secondary-heading-font-family);
	font-size: 40px;
	margin-top: 0;
	text-transform: uppercase;
}

section.contact div.address address {
	margin-bottom: 1em;
}

section.contact div.address address,
section.contact div.address a {
	color: var(--theme-red);
	font-family: var(--menu-font-family);
	font-size: 40px;
	font-style: normal;
	line-height: 1.2;
}

section.contact div.address > :last-child {
	margin-bottom: 0;
}

section.contact div.contact-form {
	border: 4px solid var(--theme-blue);
	-o-border-image: url('../images/rodeo/border-fancy-full.png') 110 110 110 110;
	   border-image: url('../images/rodeo/border-fancy-full.png') 110 110 110 110;
	border-image-slice: 220 220 220 220;
	border-image-width: 110px;
	border-image-repeat: repeat;
	color: var(--theme-red);
	font-family: var(--typewriter-font-family);
	font-size: 16px;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	margin-bottom: 40px;
	min-width: 580px;
	padding: 45px 55px 55px  45px;
	width: 60%;
}

section.contact div.contact-form h2 {
	color: var(--theme-blue);
	font-family: var(--heading-font-family);
	margin-top: 0;
}

section.contact div.contact-form form > p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

section.contact div.contact-form form > p > label:first-child {
	-webkit-box-flex: 2;
	    -ms-flex-positive: 2;
	        flex-grow: 2;
	-ms-flex-negative: 1;
	    flex-shrink: 1;
	margin-right: 15px;
}

section.contact div.contact-form form > p > label:nth-child(2) {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	-ms-flex-negative: 2;
	    flex-shrink: 2;
	line-height: normal;
	margin-right: 15px;
}

section.contact div.contact-form form > p > label:nth-child(3) {
	-webkit-box-flex: 0;
	    -ms-flex-positive: 0;
	        flex-grow: 0;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}

section.contact div.contact-form label span {
	display: block;
	width: 100%;
}

section.contact div.contact-form label span:first-child {
	position: absolute;
	margin-left: -10000px;
}

section.contact div.contact-form input:not([type="submit"]) {
	background-color: var(--theme-blue);
	-webkit-box-shadow: 10px 0 0 transparent;
	        box-shadow: 10px 0 0 transparent;
	color: #fff;
	font-family: var(--typewriter-font-family);
	font-size: 16px;
	margin-bottom: 5px;
	margin-right: 15px;
	padding: 14px 8px 10px;
	width: 100%;
}

section.contact div.contact-form input[type="submit"] {
	-ms-flex-item-align: self-start;
	    align-self: self-start;
	background-color: var(--alternate-white-color);
	border: 3px solid var(--theme-red);
	color: var(--theme-red);
	-webkit-box-shadow: 10px 10px 0 var(--theme-blue);
	        box-shadow: 10px 10px 0 var(--theme-blue);
	display: inline-block;
	font-family: var(--secondary-heading-font-family);
	font-size: 17px;
	padding: 5px 15px;
	text-transform: uppercase;
}

section.contact div.contact-form input[type="submit"]:hover,
html:is(.using-keyboard-navigation, .no-js) section.contact div.contact-form input[type="submit"]:focus {
	background-color: var(--theme-red);
	color: #fff;
	text-decoration: none;
}

div.screen-reader-response {
	font-family: var(--typewriter-font-family);
	font-size: 16px;
	position: absolute;
	margin-left: -10000px;
}

/*------------------------------------*\
    EVENT detail page formatting
\*------------------------------------*/
span.occurence {
	background-color: var(--theme-red);
	color: #fff;
	font-family: var(--menu-font-family);
	font-size: 24px;
	padding: 5px 15px;
	text-transform: uppercase;
}

section.event a:visted,
section.standard-page-content a:visited {
	color: var(--theme-blue);
}

/*------------------------------------*\
    INSTAGRAM
\*------------------------------------*/
section.instagram-feed {
	padding-left: 15px;
	padding-right: 15px;
}

section.instagram-feed div.content {
	max-width: 1330px;
}

section.instagram-feed div.background {
	margin: 0 4px;
}

section.instagram-feed .sbi-owl-dots {
	/* display: none; */
}

section.instagram-feed .sb_instagram_header {
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 25px 21px 0 !important;
}

section.instagram-feed .sb_instagram_header::before {
	aspect-ratio: 2.376;
	background-image: url('../images/rodeo/graphic-givehellflag.png');
	background-repeat: no-repeat;
	background-size: cover;
	content: '';
	display: block;
	width: 594px;
	max-width: 100%;
}

section.instagram-feed .sbi_header_img {
	display: none;
}

section.instagram-feed .sb_instagram_header a {
	margin-left: auto;
	margin-top: 20px;
}

section.instagram-feed .sb_instagram_header a:hover h3,
html:is(.using-keyboard-navigation, .no-js) section.instagram-feed .sb_instagram_header a:focus h3 {
	outline: 3px solid var(--theme-red);
}

section.instagram-feed .sbi_header_text h3 {
	background-color: var(--theme-blue);
	color: var(--alternate-white-color) !important;
	font-family: var(--menu-font-family) !important;
	font-size: 40px !important;
	margin: 0 !important;
	padding: 5px 10px 5px 100px !important;
	padding: 5px 10px 5px min(100px, 10vw) !important;
	text-align: right;
}

section.instagram-feed .sbi_header_text h3::before {
	content: 'Follow us @';
	display: inline;
}

#sb_instagram {
	padding-bottom: 0 !important;
}

#sb_instagram #sbi_images.sbi_carousel {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

#sb_instagram .sbi_photo_wrap {
	outline: 3px solid var(--theme-red);
}

#sb_instagram .sbi_photo_wrap:focus-within .sbi_link {
	opacity: 1;
}

#sb_instagram .sbi_hover_bottom, #sb_instagram .sbi_hover_top {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	bottom: 25px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	left: 0;
	right: 0;
	top: 0;
}

#sb_instagram .sbi_username {
	color: #fff;
	font-family: var(--menu-font-family);
	font-size: 26px;
}

#sb_instagram .sbi_username a::before {
	content: '@';
	display: inline;
}

#sb_instagram .sbi_caption {
	color: #fff;
	font-family: var(--typewriter-font-family);
	font-size: 16px;
	line-height: 26px !important;
	max-width: 200px;
}

#sb_instagram .sbi_link a {
	z-index: 10;
}

/*------------------------------------*\
    FOOTER
\*------------------------------------*/
main + footer {
	padding-top: 0;
}

footer section.info div.content::before {
	background-image: url('../images/rodeo/footer-coaster-badge.png?v=3');
	background-repeat: no-repeat;
	background-size: cover;
	content: '';
	display: block;
	height: 266px;
	position: absolute;
	right: 40px;
	top: -206px;
	-webkit-transform: rotate(10deg);
	        transform: rotate(10deg);
	width: 266px;
	z-index: 10;
}

footer section.info {
	background-color: var(--theme-red);
	padding-bottom: 40px;
	padding-top: 40px;
}

footer section.info,
footer section.info address,
footer section.info a {
	color: #fff;
	font-family: var(--typewriter-font-family);
	font-style: normal;
}

footer section.info .categories {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

footer section.info a,
footer section.info time {
	display: block;
	white-space: nowrap;
}

footer section.info .categories h2 {
	font-family: var(--secondary-heading-font-family);
	font-size: 20px;
	line-height: 24px;
	margin-bottom: 5px;
	margin-top: 2em;
}

footer section.info .categories > div {
	width: clamp(250px, 20%, 600px);
	line-height: 24px;
	overflow: hidden;
}

footer section.info .categories > div.hours {
	width: clamp(320px, 20%, 600px);
}

footer section.info .categories > div.contact-details {
	width: clamp(290px, 20%, 600px);
}

footer section.info .categories > div.social {
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	padding-top: 60px;
}

footer div.social a {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 40px;
	width: 40px;
}

footer div.social a:not(:last-child) {
	margin-right: 40px;
}

footer div.social a.instagram {
	background-image: url('../images/rodeo/footer-icon-insta.png');
}

footer div.social a.instagram:hover,
html:is(.using-keyboard-navigation, .no-js) footer div.social a.instagram:focus {
	/* background-image: url('../images/rodeo/footer-icon-insta-hover.png'); */
	opacity: 0.3;
}

footer div.social a.facebook {
	background-image: url('../images/rodeo/footer-icon-fb.png');
}

footer div.social a.facebook:hover,
html:is(.using-keyboard-navigation, .no-js) footer div.social a.facebook:focus {
	/* background-image: url('../images/rodeo/footer-icon-fb-hover.png'); */
	opacity: 0.3;
}

footer div.social a span {
	position: absolute;
	margin-left: -10000px;
}

/*------------------------------------*\
    FOOTER NAV
\*------------------------------------*/
nav.footer-nav {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	color: var(--theme-blue);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	font-family: var(--typewriter-font-family);
	font-size: 18px;
	font-weight: 400;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	margin: 0 auto;
	max-width: min(100%, 1360px);
	padding: 0 40px;
	position: relative;
	text-align: left;
	z-index: 1000;
}
nav.footer-nav a {
	color: var(--theme-blue);
	text-decoration: none;
}
nav.footer-nav a:hover,
html.using-keyboard-navigation nav.footer-nav a:focus,
html.no-js nav.footer-nav a:focus {
	text-decoration: underline;
}
nav.footer-nav a:not([href]):hover {
	cursor: default;
}
nav.footer-nav div.menu {
	width: 100%;
	margin-bottom: 5px;
}
nav.footer-nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	width: auto !important;
}
nav.footer-nav ul.sub-menu {
	display: none;
}
nav.footer-nav li.menu-item {
	display: inline-block;
	padding: 24px 0 12px;
	margin: 5px 3px;
}
nav.footer-nav li.menu-item.mobile-only {
	display: none;
}
nav.footer-nav ul.dropdown > li.menu-item > a {
	display: inline-block;
	padding-right: 18px;
}
nav.footer-nav div.top-spacer {
	display: none;
}
html.using-keyboard-navigation nav.footer-nav li.menu-item a:focus,
html.no-js nav.footer-nav li.menu-item a:focus {
	outline: 1px dotted var(--theme-blue);
}

nav.footer-nav div.rb {
	float: right;
}

nav.footer-nav div.rb img {
	height: 33px;
	width: auto; 
}

/*------------------------------------*\
    changes at NARROW MENU LAYOUT
\*------------------------------------*/
@media all and (max-width:1159px) {
	.wide-only {
		display: none;
	}
	body:not(.page-template-rodeo-front-page) main {
		margin-top: 40px;
	}
}

/*------------------------------------*\
    NARROW LAYOUT
\*------------------------------------*/
@media all and (max-width:899px) {
	div.notification-area input[type="checkbox"]:checked ~ div.notification {
		padding: 50px 20px 50px 283px;
	}
	section.alternating.with-intro div.intro {
		display: block;
	}
	section.alternating.with-intro div.text {
		min-height: 0;
	}
	section.alternating.with-intro div.blocks,
	section.alternating.with-intro div.blocks.lottie-player,
	section.alternating.with-intro div.blocks.lottie-player.no-extra-bottom-space {
		margin: 0;
	}
	section.alternating.with-intro div.blocks .block:nth-child(2n + 1) {
		top: auto;
	}
	section.alternating.with-intro div.blocks svg.block:nth-child(2n),
	section.alternating.with-intro div.blocks svg.block:nth-child(2n +1),
	section.alternating.with-intro div.blocks object.block:nth-child(2n),
	section.alternating.with-intro div.blocks object.block:nth-child(2n +1) {
		bottom: 40px;
		margin: 0;
		max-width: calc(50% - 40px);
	}
	section.alternating.with-intro div.blocks lottie-player.block:nth-child(2n),
	section.alternating.with-intro div.blocks lottie-player.block:nth-child(2n +1) {
		-ms-flex-item-align: end;
		    align-self: flex-end;
		bottom: 40px;
		margin: 0;
		max-width: calc(100% - 40px);
		position: relative;
	}
	section.alternating.with-intro div.blocks img.block:nth-child(2n +1),
	section.alternating.with-intro div.blocks svg.block:nth-child(2n +1),
	section.alternating.with-intro div.blocks object.block:nth-child(2n +1),
	section.alternating.with-intro div.blocks lottie-player.block:nth-child(2n +1) {
		bottom: auto;
		margin-bottom: 40px;
	}
	section.contact div.address {
		margin-bottom: 200px;
	}
	section.gallery .slick-slide img {
		height: 50vw;
	}
}

/*------------------------------------*\
    Alternating Blocks NARROW LAYOUT
\*------------------------------------*/
@media all and (max-width:799px) {
	div.notification-area input[type="checkbox"]:checked ~ div.notification {
		background-image: none;
		padding: 50px;
		width: clamp(280px, 950px, 100vw - 20px)
	}
	section.alternating.with-intro div.text > img,
	section.alternating.with-intro div.text > svg,
	section.alternating.with-intro div.text > object,
	section.alternating.with-intro div.text > lottie-player {
		margin-bottom: 40px;
	}
	section.alternating.with-intro div.hours {
		margin-bottom: 80px;
	}
	section.alternating.with-intro div.blocks {
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin: 0;
	}
	section.alternating.with-intro div.blocks .block {
		margin: 0 0 60px;
		width: 100% !important; /* important due to lottie player crap */
	}
	section.alternating.with-intro div.blocks svg.block:nth-child(2n),
	section.alternating.with-intro div.blocks svg.block:nth-child(2n +1),
	section.alternating.with-intro div.blocks object.block:nth-child(2n),
	section.alternating.with-intro div.blocks object.block:nth-child(2n +1) {
		max-width: 100%;
		position: relative;
	}
	section.alternating.with-intro div.image-container {
		margin-left: -18px;
		width: calc(100% + 18px);
	}
	section.alternating.with-intro div.blocks img.block {
		margin-top: 40px;
	}
	section.contact div.contact-form {
		min-width: auto;
	}
}

/*------------------------------------*\
    Event SLIGHT NARROW LAYOUT
\*------------------------------------*/
@media all and (max-width:824px) {
	section.happenings div.list {
		background-position: top center;
		background-size: min(100% - 100px, 401px);
		padding-right: 0;
		padding-top: min(100% - 80px, 441px);
	}
}

/*------------------------------------*\
    Contact Form SLIGHT NARROW LAYOUT
\*------------------------------------*/
@media all and (max-width:669px) {
	nav.parent .logo-container {
		margin-left: 20px;
	}
	section.hero-slides:not(.single-image) a.rodeo-logo-container {
		bottom: 123px;
	}
	div#top .slide-controls-positioning {
		bottom: auto;
		position: relative;
	}
	div#top .slick-next {
		right: 30px;
	}
	div#top .slick-prev {
		right: 100px;
	}
	div.notification-area {
		right: 10px;
	}
	div.notification > div:not([role]) {
		margin-left: 0;
	}
	section:not(.modal):not(.hero-slides):not(.info) {
		padding-left: 20px;
		padding-right: 20px;
	}
	#modal-container {
		padding: 10px;
	}
	.content > .logo-container:first-child {
		margin-left: 20px;
	}
	nav.main .c-hamburger {
		right: 20px;
	}
	section.hero-slides a.rodeo-logo-container {
		left: 20px;
	}
	section.contact div.contact-form {
		min-width: auto;
	}
	section.contact div.contact-form form > p {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	section.contact div.contact-form form > p > label:nth-child(2) {
		width: 200px;
	}
	section.gallery .slick-slide {
		margin-right: 20px;
	}
	section.contact div.content {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		margin-bottom: 80px;
	}
	section.contact div.address {
		margin-bottom: 60px;
	}
	div.indent {
		margin-left: 0;
	}
	section.instagram-feed div.background {
		margin: 0 -16px;
	}
	section.instagram-feed .sb_instagram_header {
		padding: 25px 16px 0 !important;
	}
	footer section.info {
		padding-top: 117px;
	}
	footer section.info div.content::before {
		right: 50%;
		top: -282px;
		-webkit-transform: translateX(50%) rotate(10deg);
		        transform: translateX(50%) rotate(10deg);
	}
	nav.footer-nav {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	nav.footer-nav ul {
		text-align: center;
	}
	nav.footer-nav div.rb {
		padding: 20px 0;
	}
}

/*--------------------------------------------------*\
    Event, Contact, Footer Menu VERY NARROW LAYOUT
\*--------------------------------------------------*/
@media all and (max-width:479px) {
	#main-site-masthead.with-offer .logo-img {
		max-width: 120px;
	}
	div.notification-area input[type="checkbox"]:checked ~ div.notification {
		padding: 20px;
	}
	div.notification-area input[type="checkbox"] ~ label span {
		min-width: auto;
	}
	section.hero-slides .slick-slide img {
		max-height: calc(100vh - 129px);
		height: calc(100vh - 129px);
	}
	section.alternating.with-intro div.intro {
		padding-top: 460px;
	}
	section.alternating.with-intro div.text > img,
	section.alternating.with-intro div.text > svg,
	section.alternating.with-intro div.text > object,
	section.alternating.with-intro div.text > lottie-player {
		left: 50%;
		height: 400px;
		position: absolute;
		max-width: none;
		top: 0;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		width: auto !important;
	}
	section.alternating.with-intro div.text > lottie-player {
		aspect-ratio: 275/541;
		height: 450px;
	}
	html[data-issafari="true"] section.alternating.with-intro div.text > lottie-player {
		top: -70px;
	}
	
	section.alternating.with-intro div.hours {
		min-width: clamp(260px, 31%, 500px)
	}
	section.happenings h2 {
		font-size: 12vw;
	}
	section.happenings a.event:nth-child(2n) {
		padding-left: 0;
	}
	section.happenings a.event:nth-child(2n + 1) {
		padding-right: 0;
	}
	section.contact div.address h2 {
		font-size: 8.3333vw;
	}
	section.contact div.address address,
	section.contact div.address a {
		font-size: 7.5vw;
	}
	section.instagram-feed .sb_instagram_header {
		padding: 25px 0 !important;
	}
	nav.footer-nav {
		padding: 0 20px;
	}
}

/*------------------------------------*\
    Other VERY NARROW LAYOUT
\*------------------------------------*/
@media all and (max-width:479px) {
}

