/* Rizoma L Light */
@font-face {
    font-family: 'Rizoma L';
    src: url('https://studio-assets.rf29.net/Fonts/Rizoma_L/RizomaL-Light.otf') format("opentype");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}  

/* Rizoma L Light Italic */
@font-face {
    font-family: 'Rizoma L';
    src: url('https://studio-assets.rf29.net/Fonts/Rizoma_L/RizomaL-LightItalic.otf') format("opentype");
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

/* Rizoma L Extra Light */
@font-face {
    font-family: 'Rizoma L';
    src: url('https://studio-assets.rf29.net/Fonts/Rizoma_L/RizomaL-ExtraLight.otf') format("opentype");
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}  

/* Rizoma L Extra Light Italic */
@font-face {
    font-family: 'Rizoma L';
    src: url('https://studio-assets.rf29.net/Fonts/Rizoma_L/RizomaL-ExtraLightItalic.otf') format("opentype");
    font-weight: 100;
    font-style: italic;
    font-display: swap;
}

:root {

	/* Fonts */

	--font-serif: 'Rizoma L', Rizoma L, Times New Roman, Times, Noto Serif, Georgia, serif;

	--font-sansserif: 'Sohne', Sohne, Arial, Helvetica, Roboto, Segoe UI Light, Ubuntu Light, DroidSans, sans-serif;

	/* Font Weight */

	--font-bold: 700; --font-medium: 600; --font-regular: 400; --font-light: 300; --font-xlight: 100;

	/* Colors */

	--color-white: #fff; 

	--color-black: #010101; 

	--color-green: #00361C; 

	--color-red: #450312; 

	--color-yellow: #DE8500;

	--color-blue: #0F0FB5; 

	--color-purple: #1A0538; 

	--color-orange: #DE420D; 

	--color-lavender: #884183; 

	--color-grass: #878705;

	--color-cream: #F2E5B2;

	--color-pink: #D17F8F;

	/* Page color option + text overlay color */

	--color: var(--color-purple);

	--color-overlay: var(--color-white);

}

/* ////////////////////////////////////////////////////// */

/* Essence Nav bar fixes */

@media only screen and (min-width:1440px){.site-header.fixed .main-navigation a{font-size:11px}}@media only screen and (min-width:1440px){.site-header.fixed .site-logo img,.site-header.fixed .site-logo svg{height:26px}}@media only screen and (min-width:768px){.site-header.fixed .site-branding-container{padding:0 25px!important}}@media only screen and (min-width:1124px) and (min-width:1440px){.site-header.fixed .site-subscribe{right:25px}}@media only screen and (min-width:1440px){.main-navigation a{font-size:12px}}@media only screen and (min-width:1124px){.site-header.fixed .main-navigation{margin-right:165px;display:none!important}}@media only screen and (min-width:1124px){.site-header.fixed .hamburger-menu,.site-header.fixed .site-subscribe__select{display:block!important;margin-right:25px!important}}
.main-navigation a { font-size: 11px; }.main-navigation .sub-menu a { font-weight: 500; font-size: 11px; }

html, body {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}

.custom {
	width: 100%;
	margin: 0;
	padding: 0;
	opacity: 0.0;
	animation: revealPage 0.5s ease-in-out;
	animation-iteration-count: 1;
	animation-delay: 0.5s;
	animation-direction: normal;
	animation-fill-mode: forwards;
	font-family: var(--font-sansserif);
}

.custom * {
	box-sizing: border-box;
	white-space: normal;
}

@keyframes revealPage {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/* ////////////////////////////////////////////////////// */

/* Intro */

.custom__section {
	display: flex;
	flex-flow: row;
	justify-content: center;
	align-items: center;
	gap: 0;
	width: 100%;
	background-color: var(--color-black);
	position: relative;
	text-align: center;
}

.custom__column {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	gap: 70px;
	width: 50vw;
	height: 50vw;
	overflow-x: hidden;
}

.custom__column.is-video {
	flex-flow: column;
	padding-top: 56.3%;
}

.custom__column-layer {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	gap: 60px;
	position: absolute;
	top: 0;
	left: auto;
	right: auto;
	width: 100%;
	height: 100%;
}

.custom__column-layer.is-overlay {
	background-color: rgba(0,0,0,0.6);
	color: var(--color-white);
}

.is-left {
	background-color: var(--color);
	color: var(--color-overlay);
}

.is-right {
	background-color: var(--color-black);
	color: var(--color-white);
	padding: 100px;
}

.is-padded {
	padding: 80px 0;
}

.custom__module {
	width: 100%;
	max-width: 1200px;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	padding: 0 20px;
	margin: 0;
}

.custom__intro {
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	font-family: 'Rizoma L', Times New Roman, sans-serif;
	font-size: 3.8rem;
	font-weight: 100;
	line-height: 1.1;
	text-align: center;
	width: 100%;
	padding: 0 0 30px;
}

.custom__intro-blurb {
	width: 100%;
	max-width: 720px;
	margin: 20px 0 20px;
	font-family: Arial, Helvetica, Roboto, sans-serif;
	color: #fff;
	text-align: center;
}

.is-video video, 
.is-video img {
	width: 100%;
}

@media screen and (max-width: 1024px) {

	.custom__column.is-video {
	    padding-top: 70%;
	}

	.is-video video, 
	.is-video img {
		width: auto;
		height: 70vw;
	}

	.is-padded {
	    padding: 50px 0;
	}

}

/* Cube Icon */

.is-cube {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	gap: 0;
	position: absolute;
	top: 0;
	right: 0;
	width: 150px;
	height: 150px;
	background-color: var(--color);
}

.is-cube 
.exp__logo {
	width: 70px;
}

.is-cube 
.exp__logo svg, 
.is-cube 
.exp__logo img {
	width: 100%;
}

.is-cube 
.exp__logo path {
	fill: var(--color-overlay);
}


.is-left  
.exp__logo {
	padding-top: 0;
}

.is-left 
.exp__logo svg, 
.is-left 
.exp__logo img {
	width: 100px;
	height: auto;
}

.is-left 
.exp__logo img {
	max-width: 120px;
}

.is-left 
.exp__logo path {
	fill: var(--color-overlay);
}


/* ////////////////////////////////////////////////////// */

/* Basics */

h1 {
	color: var(--color-white);
	font-family: var(--font-serif);
	font-weight: var(--font-xlight);
	font-size: 4.275rem !important;
	line-height: 1.2 !important;
	text-transform: uppercase;
	margin: 120px auto !important;
}

.exp__title {
	color: var(--color-overlay);
	font-family: var(--font-serif);
	font-weight: var(--font-xlight);
	font-size: 4.275rem;
	line-height: 1.2;
	text-transform: uppercase;
}

p {
	text-align: left;
	line-height: 1.45;
}

p strong {
	font-weight: 700;
}

p.exp__details {
	font-size: 1.25rem;
	text-transform: uppercase;
}

.exp__eyebrow {
	font-family: var(--font-serif);
	font-weight: var(--font-xlight);
	font-size: 1.5rem;
	font-style: italic;
	letter-spacing: 0;
	line-height: 1.2;
	border-bottom: 1px solid var(--color-white);
}

.exp__location {
	font-family: var(--font-sansserif);
	font-weight: var(--font-regular);
	font-size: 1.25rem;
	font-style: normal;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
}

.exp__content {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: start;
	gap: 30px;
}


@media screen and (max-width: 1220px) {

	h1, .exp__title {
	    font-size: 3.275rem !important;
	}

	h1 {
		margin: 80px auto !important;
	}

	.is-right {
	    padding: 40px;
	}

	.is-cube {
	    width: 110px;
	    height: 110px;
	}

	.is-cube .exp__logo {
	    width: 50px;
	}

}

@media screen and (max-width: 1024px) {

	.custom__section {
		flex-flow: column;
	}

	.custom__column {
	    gap: 70px;
	    width: 100%;
	    height: auto;
	}

	.is-left {
		height: auto;
	}

	.is-left .exp__title {
		display: none;
		font-size: 1.5rem;
	}

	.is-left .custom__column-layer {
		position: relative;
		height: auto;
		gap: 0;
		padding: 0 20px 50px;
	}

	.is-left .exp__logo {
	    padding-top: 50px;
	}

	.is-right {
	    padding: 20px;
	}

	h1 {
	    font-size: 2.3rem !important;
	    margin: 0 auto !important;
	    padding: 0 20px !important;
	}

	.exp__eyebrow {
	    font-size: 1.2rem;
	}

	.exp__location {
	    font-size: 1.0rem;
	}

	.is-cube {
		display: none;
	}

	p.exp__details {
	    font-size: 1.0rem;
	}

	.exp__content {
	    gap: 0;
	    width: 100%;
    	max-width: 500px;
	}

	.is-left 
	.exp__logo svg, 
	.is-left 
	.exp__logo img {
		width: 80px;
		height: auto;
	}

}

@media screen and (max-width: 768px) {




}

/* ////////////////////////////////////////////////////// */

/* Hero */

.custom__hero 
.custom__hero-button a, 
.custom__hero 
.custom__hero-button a:link, 
.custom__hero 
.custom__hero-button a:visited {
	width: 100%;
	max-width: 300px;
	text-align: center;
	font-family: Arial, Helvetica, Roboto, sans-serif;
	cursor: pointer;
	border: 0;
	border-radius: 4px;
	padding: 9px 15px;
	text-decoration: none;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	color: #000;
	background-color: #fff;
	padding: 15px 40px;
	margin: 0 auto;
	font-size: 1.0rem;
	font-weight: 700;
}

.custom__hero 
.custom__hero-button a:hover {
	background-color: #C6848F;
}

@media screen and (max-width: 768px) {

	.custom__hero 
	.custom__hero-button a, 
	.custom__hero 
	.custom__hero-button a:link, 
	.custom__hero 
	.custom__hero-button a:visited {
		font-size: 0.8rem;
	}

}

/* ////////////////////////////////////////////////////// */

/* CTA Bar with Ticket Button */

.cta {
	display: flex;
	flex-flow: row;
	justify-content: center;
	align-items: center;
	gap: 200px;
}

.cta__column {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	gap: 30px;
}

.cta__label {
	font-family: Arial, Helvetica, Roboto, sans-serif;
	font-size: 1rem;
	color: #fff;
	text-align: center;
}

.cta__title {
	font-family: 'Rizoma L', Times New Roman, sans-serif;
	font-size: 3rem;
	font-weight: 100;
	line-height: 1;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
}

.cta
.custom__button a, 
.cta 
.custom__button a:link, 
.cta 
.custom__button a:visited {
	margin: 0;
}

.custom__button {
	width: 100%;
}

.custom__button a, 
.custom__button a:link, 
.custom__button a:visited {
	width: 100%;
	max-width: 300px;
	text-align: center;
	font-family: Arial, Helvetica, Roboto, sans-serif;
	cursor: pointer;
	border: 0;
	border-radius: 4px;
	padding: 9px 15px;
	text-decoration: none;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	color: #000;
	background-color: #fff;
	padding: 15px 40px;
	margin: 50px auto 0;
	font-size: 1.0rem;
	font-weight: 700;
}

.custom__button a:hover {
	background-color: #C6848F;
	color: #000;
}

@media screen and (max-width: 1220px) {
	.cta {
		gap: 40px;
	}
}

@media screen and (max-width: 1024px) {

	.cta {
		flex-flow: column;
	}

}

@media screen and (max-width: 768px) {

	.cta__title {
		font-size: 1.8rem;
	}

}

/* ////////////////////////////////////////////////////// */

/* Experiences */

.custom.is-experiences
.custom__section {
	background-color: var(--color-white);
	flex-flow: column;
}

.experiences {
	display: flex;
	flex-flow: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: start;
	gap: 25px;
	padding: 40px 0;
	margin: 0;
	width: 100%;
}

.experience {
	display: flex;
	flex-flow: column;
	justify-content: start;
	align-items: center;
	gap: 10px;
	width: 140px;
}

.experience__icon {
	width: 70px;
	height: 70px;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
}

.experience__icon svg, 
.experience__icon img {
	width: 100%;
	margin: 0 auto;
}

.experience__label {
	font-family: var(--font-sansserif);
	font-weight: 400;
	font-size: 0.6875rem;
	text-align: center;
	text-transform: uppercase;
	color: var(--color-black);
}

.experience a,
.experience a:link,
.experience a:visited {
	color: var(--color-black);
	text-decoration: none;
	text-align: center;
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	gap: 8px;
}

@media screen and (max-width: 1024px) {

	.is-experiences .custom__intro {
		font-size: 2.3rem;
		padding: 0 0 10px;
	}

	.is-experiences .custom__module {
		max-width: 500px;
	}

}

/* ////////////////////////////////////////////////////// */

/* Desktop vs Mobile elements */

.custom__wide {
	display: flex;
}

.custom__small {
	display: none;
}

.break {
	display: block;
}

.break-rev {
	display: none;
}

@media screen and (max-width: 1024px) {

	.break {
		display: none;
	}

	.break-rev {
		display: block;
	}

}

@media screen and (max-width: 768px) {

	.custom__wide {
		display: none;
	}

	.custom__small {
		display: flex;
	}

}

/* ////////////////////////////////////////////////////// */

/* Fade elements */

.fade {
	opacity: 0;
	transition: all 1.0s ease-in-out;
	-webkit-transition: all 1.0s ease-in-out;
}