/*!
Theme Name: Melissa Etheridge
Theme URI: https://melissaetheridge.com/
Author: Phill Mamula
Author URI: http://www.phillm.com
Description: 2022 Theme for Melissa Etheridge - ForSNG
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: melissaetheridge
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Melissa Etheridge is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;600;700&family=Syncopate:wght@400;700&display=swap');

@font-face {
    font-family: 'Langdon Regular';
    src: url('fonts/langdon_2-webfont.woff2') format('woff2'),
         url('fonts/langdon_2-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Octin Vintage';
    src: url('fonts/octin_vintage_b_rg-webfont.woff2') format('woff2'),
         url('fonts/octin_vintage_b_rg-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


/* =Global (Style)
-------------------------------------------------------------- */
html,body {
  	margin: 0; padding: 0;
  	min-height: 100%;
}
body {
	background: #fbf6eb url('images/bg-texture.jpg') repeat center center / 100% auto;
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
	color: #1c1918;
	font-size: 18px;
	line-height: 1.6em;
}

/* Type */
h1,h2,h3,h4 {
	color: #5c3664;
	font-family: 'Langdon Regular', sans-serif;
    line-height: 1em;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    margin: 5px 0 15px;
}
h1 { font-size: 4em; }
h2 { font-size: 3em; }
h3 { font-size: 2em; }
h4 { font-size: 1.5em; }
strong { font-weight: 600; }
.sm-text { font-size: 0.8em; line-height: 1.2em; }
img { margin-bottom: -10px; }
p { margin: 0 0 15px; }
a, a:link, a:visited { 
	color: inherit;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out; 
}
a:hover { color: #5c3664; }
button { cursor: pointer; }
video:focus,
input:focus,
button:focus {outline:0; cursor: pointer;}
textarea,
input.text,
input[type="text"],
input[type="button"],
input[type="submit"],
.input-checkbox {
-webkit-appearance: none;
border-radius: 0;
}
ul, li { margin: 0; padding: 0; list-style: none; }

/* Colors */

/* Structure */
.post, .page, .page-content, 
.entry-content, .entry-summary { margin: 0; }

#section {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
	min-height: 70vh;
	padding: 5vw 0;
}

.flex { display: flex; flex-wrap: wrap; align-items: center; }
.flex>* { flex: 1; }
.flex .half { flex: 1 0 50%; width: 50%; }
.flex .two-third { flex: 2; }
.flex .third { flex: 1 0 33.3%; width: 33.3%; }
.flex .quarter { flex: 1 0 25%; width: 25%; }

.container {
    width: 90vw;
    max-width: 1200px;
    position: relative;
    margin: 0 auto;
}
.container.small { max-width: 980px; }

/* CTAs */
a.large-cta, .large-cta {
    cursor: pointer;
    font-family: 'Langdon Regular', sans-serif;
    background: #3d1544;
    line-height: 1em;
    text-decoration: none;
    padding: 13px 45px;
    display: table;
    color: #f3eee4;
    text-transform: uppercase;
    font-size: 1.2em;
    letter-spacing: 0.04em;
    border: 4px double rgb(147 120 151 / 33%);
    margin: 25px 0 15px;
}
a.large-cta:hover {
    background: #ab451b;
    border: 4px double rgb(189 139 125 / 72%);
    color: #fdf8f3;
}


a.list-cta {
    font-family: 'Syncopate', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border-bottom: 2px solid;
    display: table;
    font-size: 0.8em;
    margin: 10px 0 5px;
    line-height: 1.4em;
}


/* Owl Carousel - Auto Height Plugin */
.owl-height {
    -webkit-transition: height 500ms ease-in-out;
    -moz-transition: height 500ms ease-in-out;
    -ms-transition: height 500ms ease-in-out;
    -o-transition: height 500ms ease-in-out;
    transition: height 500ms ease-in-out;
}
.owl-carousel {
    margin: 0 auto;
    -webkit-tap-highlight-color: transparent;
    /* position relative and z-index fix webkit rendering fonts issue */
    position: relative;
    z-index: 1;
}
.owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
}
.owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}
.owl-carousel .owl-stage-outer {
    overflow: hidden;
}
.owl-carousel .owl-stage-outer {
    z-index: 999;
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px);
}
.owl-carousel .owl-nav .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-dot {
  color: inherit;
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.owl-carousel.owl-loaded {
  display: block;
}
.owl-carousel.owl-loading {
  opacity: 0;
  display: block;
}
.owl-carousel.owl-hidden {
  opacity: 0;
}
.owl-carousel .owl-refresh .owl-item {
  display: none;
}
.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.owl-carousel .owl-item img {
  display: block;
  width: 100%;
  -webkit-transform-style: preserve-3d;
}
.owl-carousel.owl-text-select-on .owl-item {
  -webkit-user-select: auto;
  -moz-user-select: auto;
  -ms-user-select: auto;
  user-select: auto;
}
.owl-carousel .owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}
.owl-carousel.owl-rtl {
  direction: rtl;
}
.owl-carousel.owl-rtl .owl-item {
  float: right;
}

.owl-dot {}
.owl-dot {
    background: none;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: 50%;
    text-transform: uppercase;
    padding: 8px;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    margin-right: 15px;
}
.owl-dot:hover { 
    border: 1px solid #32475F;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;  
}
.owl-dot.active { 
    background: #32475F;
    border: 1px solid #32475F;
  }

/* Owl Carousel - Navigation */
.owl-nav { width: 100%; height: 100%; position: absolute; top: 0;left: 0; }
.owl-nav button { 
    opacity: 0.5;
    color: #FFFFFF;
    background: transparent;
    border: 1px solid #FFFFFF;
    display: inline-block;
    width: 50px;
    height: 50px;
    padding: 0 0 3px 0;
    font-size: 1.25em;
    line-height: 0;
    margin-right: 8px;
    border-radius: 50%;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;  
}
.owl-nav button:hover {
    opacity: 1;
    background: #000000;
    color: #FFFFFF;
    border-color: #000000;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;  
}
.owl-nav>* {
    position: absolute;
    top: calc(50% - 50px);
    z-index: 999;
}
.owl-nav .owl-next { right: 5vw; }
.owl-nav .owl-prev { left: 5vw; }
.owl-nav.disabled { display: none !important; }


/* Embed Resposively */
.embed-container { 
    position: relative; 
    padding-bottom: 56.25%; 
    height: 0; 
    overflow: hidden; 
    max-width: 100%; 
} 
.embed-container iframe, 
.embed-container object, 
.embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/* =Header
-------------------------------------------------------------- */
header#masthead {
    background: #521e5b;
    padding: 22px 5vw 15px;
    position: relative;
    margin-bottom: 15px;
    z-index: 9;
}
header#masthead:after {
    content: '';
    background: url('images/purple-tear-bottom.png') repeat-x top center / auto 100%;
    width: 100%;
    height: 20px;
    position: absolute;
    z-index: -3;
    bottom: -12px;
    left: 0;
}
header#masthead .flex nav { flex: 2; margin-left: 50px; }
header#masthead nav ul {
    display: flex;
    justify-content: space-between;
}

header#masthead nav ul.sub-menu {
    flex-direction: column;
    background: #010101;
    border:  1px solid #151515;
}
header#masthead nav ul.sub-menu li a {
    padding: 10px 15px;
    line-height: 1em;
    border-bottom: 1px solid #151515;
}


/* Site Title - Logo */
.site-branding { flex: 1; padding-right: 5vw; }
.site-branding img { max-width: 325px; }

/* Navigation */
nav.main-navigation li a {
    color: #ffcda1;
    font-weight: normal;
    font-family: 'Langdon Regular', sans-serif;
    font-size: 1.3em;
    padding: 5px 0 15px;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}
nav.main-navigation li a:hover { color: #FFFFFF; }



/* =Homepage
-------------------------------------------------------------- */

/* Hero */
#section.home-carousel {
    margin-top: -15px;
    padding: 0;
    min-height: auto;
    display: block;
}
#section.home-carousel .hero-slide { 
    min-height: 550px;
    padding: 3vw 0;
    height: 100%;
    background-color: #000000;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex; 
    flex-direction: column;
    align-items: center; 
    justify-content: center; 
    position: relative;
}
#section.home-carousel .hero-slide a.overlap { 
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
}
#section.home-carousel .hero-slide .slide-overlay {
}
#section.home-carousel .hero-slide .slide-overlay img {
    max-width: 650px;
    margin: 0 auto;
    width: auto !important;
    max-height: 420px;
}
#section.home-carousel .slide-overlay.right img { float: right;}
#section.home-carousel .slide-overlay.left img { float: left;}


/* Features */
#section.home-features .container.flex { align-items: initial; }
#section.home-features .container.flex .home-video { flex: 2; padding-right: 3vw; }
#section.home-features .home-video .embed-container { margin-bottom: 15px; }
#section.home-features .fanclub-detail {
    background: #FFFFFF;
    border: 4px double #DDDDDD;
}
#section.home-features .header-fanclub { max-height: 400px; overflow: hidden; }
#section.home-features .header-fanclub img { width: 100%; height: 400px; object-fit: cover; object-position: center; }
#section.home-features .fanclub-detail { text-align: center; padding: 25px; }
#section.home-features .fanclub-detail img { max-width: 120px; margin: -100px auto 0; }
#section.home-features .fanclub-detail h3 {
    margin: 20px auto 10px;
    color: #dd802e;
}
#section.home-features .fanclub-detail a.large-cta {
    font-size: 1.15em;
    margin: 25px auto 5px;
    padding: 12px 40px;
}

/* Events */
#section.home-events {
    background-position: top left;
    background-size: cover;
    background-attachment: fixed;
}
#section.home-events .container { padding-left: 250px; }
#section.home-events h3 { color: #de802e; }

/* Releases Carousel */
#section.home-releases { 
    background: url('images/texture-bg.jpg') repeat top center / 320px auto;
    text-align: center;
    min-height: auto;
    display: block; 
    border-top: 15px solid #FA0;
    border-bottom: 15px solid #FA0;
}
#section.home-releases .listing-title h3 { 
    color: #dcd9d2;
    margin-bottom: 25px;
}
#section.home-releases a.large-cta { margin: 35px auto 0; }
#section.home-releases .album-title h4 { margin: 25px 0 0; color: #FFFFFF; }
#section.home-releases .album-title .album-year { color: #999999; text-transform: uppercase; font-size: 0.85em; }


/* Socials */
#section.home-socials .container.flex { align-items: initial; }
#section.home-socials .container.flex>* { padding: 0 3vw; border-right: 1px solid rgba(0,0,0,0.2); position: relative; width: 100%;}
#section.home-socials .container.flex>*:last-of-type { border: none; }

#section.home-socials iframe { border: none !important; }
#section.home-socials h4 { color: #837f69; margin: 0 auto 20px; }

/* Mailing List */
form.js-cm-form {
    padding: 25px 30px;
    font-family: inherit;
    border: 1px solid #EFEFEF;
    border-radius: 5px;
    background: #FFFFFF;
}
form.js-cm-form label {
    font-size: 0.7em;
    line-height: 1.2em;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    display: block;
    margin: 10px 0 2px;
}
form.js-cm-form input,
form.js-cm-form select,
form.js-cm-form textarea {
    width: 100%;
    padding: 5px 10px;
    border-radius: 0;
    border: 1px solid #BDBDBD;
    margin-bottom: 5px;
}
form.js-cm-form fieldset {
    padding: 15px 30px;
    border: 1px solid #eeebe2;
    background: #f7f7f6;
    margin: 25px 0px;
}
form.js-cm-form fieldset div {
    display: flex;
    align-items: center;
    padding: 10px 0 5px;
}
form.js-cm-form fieldset div>* { flex: 1; padding-right: 5px; }
form.js-cm-form input#cm-privacy-consent {
    width: 15px;
    height: 15px;
    float: left;
    margin-right: 15px;
}
form.js-cm-form button[type="submit"] {
    cursor: pointer;
    font-family: 'Langdon Regular', sans-serif;
    background: #3d1544;
    line-height: 1em;
    text-decoration: none;
    padding: 16px 50px;
    display: table;
    color: #f3eee4;
    text-transform: uppercase;
    font-size: 1.2em;
    letter-spacing: 0.04em;
    border: 4px double rgb(147 120 151 / 33%);
    margin: 25px 0 15px;
}


/* =Pages
-------------------------------------------------------------- */

/* Page Title */
.white-title, 
.dark-title {
    background: #FFFFFF;
    text-align: center;
    padding: 30px 0 15px;
    margin-top: -20px;
    position: relative;
}
.white-title:after,
.dark-title:after {
    content: '';
    background: url('images/white-tear-bottom.png') repeat-x top center / auto 100%;
    width: 100%;
    height: 25px;
    position: absolute;
    z-index: -3;
    bottom: -15px;
    left: 0;
}
.white-title h1 {
    margin: 5px 0;
    color: #4e9fb3;
    font-size: 3.5em;
    text-align: center;
}
.dark-title { background: #221b1a; }
.dark-title:after {
    content: '';
    background: url('images/black-tear-bottom.png') repeat-x top center / auto 100%;
}
.dark-title h1 { color: #e1b140; }


/* Entry Content */
#primary.default-page { padding: 3vw 0; }
#primary.default-page .container.flex { align-items: initial; }
#primary.default-page .container.flex .entry-content { flex: 2; padding-right: 65px; }
#primary.default-page .container.flex .post-thumbnail { margin-top: 25px; }
#primary.default-page .container.flex .post-thumbnail img { 
    border: 8px solid #FFFFFF; 
    width: 105%;
    transform: rotate(2deg);
-webkit-box-shadow: 2px 3px 5px 0px rgba(122,112,87,0.3);
   -moz-box-shadow: 2px 3px 5px 0px rgba(122,112,87,0.3);
        box-shadow: 2px 3px 5px 0px rgba(122,112,87,0.3);
}

.entry-content { padding: 15px 0 25px; }
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 { 
    color: inherit;
    font-size: 1.5em; 
    margin: 5px 0 10px; 
}
.entry-content ul { margin: -5px 0 15px; padding-left: 20px;list-style: inherit; }
.entry-content li {
    margin-left: 10px;
    list-style: inherit;
    padding-left: 10px;
}

/* HTML Takeover */
.html-takeover-window { margin: -50px auto; }

/* Calendar */
img.poster-title { width: auto; max-height: 200px; max-width: 850px; margin: 15px auto 25px; }
.event-listing { padding: 50px 0 5vw; }

/* Fan Club */
body.page-template-page-fanclub #primary.default-page .container.flex .entry-content { flex: 1.5; }
body.page-template-page-fanclub .entry-content h3 {
    color: #dd802e;
    font-size: 3em;
    margin: 0 0 15px;
}
body.page-template-page-fanclub 
#primary.default-page .container.flex .post-thumbnail img { 
    border: none; 
    box-shadow: none;
    transform: none; 
}

.fanclub-ctas { padding: 15px 0; }
.fanclub-ctas label { 
    color: #726c5d;
    font-weight: 600;
    font-size: 0.8em;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 5px;
    display: block;
}
.fanclub-ctas .large-cta, 
.fanclub-ctas a.large-cta {
    margin: 0;
    width: 95%;
    text-align: center;
    padding: 16px;
    max-width: 250px;
}

.large-cta.in-active {
    color: #FFFFFF;
    background: #ddd8ca;
    border: 4px double rgb(137 136 135 / 23%);
}

.disclaimer {
    font-family: monospace;
    font-size: 0.85em;
    line-height: 1.4em;
    text-transform: uppercase;
    margin-top: 25px;
    color: #878276;
}


/* =Releases
-------------------------------------------------------------- */
.releases-grid { padding: 50px 0 100px; }

.releases-grid.flex { align-items: inherit; }
.releases-grid-item {
    flex: 1 0 25%;
    width: 25%;
    max-width: 25%;
    padding: 5px;
    margin-bottom: 25px;
}
.releases-grid-item img { width: 100%; height: 100%; }
.releases-grid-item .album-title { padding: 10px 0; }
.releases-grid-item .album-title h4 {
    margin: 0;
    font-size: 1.65em;
    color: #852b31;
}
.releases-grid-item .album-title .album-year {
    font-family: monospace;
    text-transform: uppercase;
    font-size: 0.9em;
    line-height: 1.2em;
    color: #605a4e;
}
.releases-grid-item .album-download {
    font-size: 1.2em;
}
.releases-grid-item .album-download a {
    color: #ada79a;
    margin-right: 15px;
}
.releases-grid-item .album-download a:hover { color: #463921; }



/* =Theater 
-------------------------------------------------------------- */

@font-face {
    font-family: 'Alota Regular';
    src: url('fonts/Alota Regular.woff2') format('woff2'),
         url('fonts/Alota Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

body.page-template-page-theater {
    background: #150102 url('images/ME_Broadway23-Background.jpg') no-repeat center top / 1350px auto;
    color: #fefbe6;
}
header.back-to-site a {
    color: inherit;
    font-size: 0.75em;
    text-decoration: none;
    text-align: right;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.08em;
    padding: 12px 0;
    display: block;
    border-bottom: 1px solid rgba(255,255,255,0.2);
}
header.back-to-site a i { margin-left: 5px; }

body.page-template-page-theater #section { 
    min-height: auto; 
}
#section.theater-hero .hero-date.mobile { display: none; }
 

body.page-template-page-theater h2, 
body.page-template-page-theater h3 {
    color: #fff1bf;
    font-family: 'Alota Regular', sans-serif;
    text-transform: lowercase;
    font-size: 4em;
    line-height: 1em;
    font-weight: 300;
    margin: 25px auto -5px;
    text-align: center;
}

h4.label {
    background: #491616;
    font-size: 1em;
    margin: 0 0 25px;
    letter-spacing: 0.08em;
    color: #fff1bf;
    padding: 12px 50px;
    border-radius: 50px;
    width: auto;
    display: table;
    display: none;
}


/* Hero */
#section.theater-hero {    
    padding: 125px 0 0;
    margin: -100px auto 3vw;
}
#section.theater-hero .hero-image {
    padding: 50px 0 300px;
    text-align: center;
}
#section.theater-hero .hero-image img {
    width: 100%;
    max-width: 850px;
    margin: 0 auto;
}
#section.theater-hero .hero-cta {
    padding: 25px 0;
    text-align: center;
}
#section.theater-hero .hero-date img { width: 100%; max-width: 850px; margin: 50px auto 15px; }
#section.theater-hero .hero-date { display: block; text-align: center; }

#section.theater-hero .hero-cta a {
    display: inline-block;
    font-size: 0.75em;
    text-align: center;
    padding: 12px 5vw;
    min-width: 250px;
    border: 1px solid rgba(255,255,255,0.1);
    background: #54160d;
    text-align: center;
    border-radius: 30px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    margin: 0 25px;
}
#section.theater-hero .hero-cta a i { margin-left: 5px; opacity: 0.5; }
#section.theater-hero .hero-cta a:hover {
    background: #d80200;
    border: 1px solid #d80200;
    color: #FFFFFF;
}

/* Event Listing */
#section.theater-events .eventlisting.flex { justify-content: center; }
.eventlist-item.quarter {
    padding: 25px;
    display: flex;
    flex-direction: column;
    height: 180px;
    max-width: calc(25% - 10px);
    margin: 5px;
    border: 1px solid rgba(255,255,255,0.1);
}
.eventlist-item>* { text-align: center; }
.eventlist-item .date {
    font-family: 'Langdon Regular', sans-serif;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.5em;
    letter-spacing: 0.04em;
    margin: 0 auto 5px;
    color: #fefbe5;
}
.eventlist-item .time {
    color: #999589;
    margin-bottom: 15px;
}
.eventlist-item .ticket-cta { 
    color: #302b00;
    font-size: 1.1em;
    background: #df8e18;
    font-family: 'Langdon Regular', sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    display: block;
    border-radius: 30px;
    padding: 8px 15px;
    letter-spacing: 0.02em;
    margin-top: auto;
}
.eventlist-item .ticket-cta.inactive {
    background: #342c2b;
    color: #7e6e6d;
}
.eventlist-item a.ticket-cta:hover {
    color: #fefbe5;
    background: #a30e09;
}

#section.theater-about {
    padding: 25px 0;
}
#section.theater-about .entry-content {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.2em;
    line-height: 1.7em;
    font-weight: 300;
    padding: 0;
}

#section.theater-about .entry-content p { margin-bottom: 2vw; }
#section.theater-about .entry-content .embed-container { margin-top: 50px; }


#section.theater-newsletter { text-align: center; padding: 15px 0 25px; }

/* Mailchimp */
div#mc_embed_signup_scroll {
    display: flex;
    flex-wrap: wrap;
    max-width: 560px;
    margin: -25px auto 0;
}
.indicates-required { 
    flex: 1 0 100%; 
}
.mc-field-group { 
    width: 50%;
    text-align: left;
    flex: 1 0 50%;
    padding: 2px 10px 10px;
}
.mc-field-group label {
    font-size: 0.7em;
    opacity: 0.5;
    letter-spacing: 0.05em;
    display: block;
    text-transform: uppercase;
}
.mc-field-group.email-address { 
    flex: 1 0 100%; 
    width: 100%; 
}
.mc-field-group input {
    width: 100%;
    padding: 8px 15px;
    border-radius: 0;
    border: 1px solid #000000;
}
.optionalParent { 
    width: 100%;
    padding: 5px 10px 10px; 
}
input#mc-embedded-subscribe {
    color: #fefbe5;
    background: #a30e09;
    border: none;
    width: 100%;
    padding: 12px 50px;
    font-size: 1.2em;
    font-family: 'Langdon Regular', sans-serif;
    text-transform: uppercase;
    font-weight: 300;
}

/* Footer */
body.page-template-page-theater footer.site-footer {
    background: transparent;
    padding: 50px 0;
    text-align: center;
}   
body.page-template-page-theater .footer-social { background: transparent; padding: 0; margin: 0 auto 30px; max-width: 420px; }
body.page-template-page-theater .footer-social:after { display: none; }
body.page-template-page-theater .footer-social .socials a,
body.page-template-page-theater .footer-social .socials button { color: #efdac0; }


/* =Books
-------------------------------------------------------------- */
.book-title {
    text-align: center;
    margin: 0 auto 50px;
}
.book-title h3 {
    font-size: 4em;
    line-height: 1em;
    margin: 0 auto 5px;
}
.book-title span.subtitle {    
    font-family: monospace;
    text-transform: uppercase;
    font-size: 1em;
    line-height: 1.5em;
    margin: 0 auto 25px;
    display: block;
}

.book-details.flex { align-items: initial;}
.book-details.flex .entry-content { flex: 2; padding-right: 50px; }


.book-purchase { 
    padding: 50px 0 100px;
    border-top: 1px solid rgba(0,0,0,0.5);
    text-align: center;
    margin-top: 25px;
}
.book-purchase h4 { 
    font-size: 1.25em;
    color: #868686; 
    margin: 0 auto 30px;
}
.purchase-links.flex {
    justify-content: center;
    text-align: center;
    margin: 25px auto 50px;
}
.purchase-links img {
    display: block;
    width: auto;
    max-width: 150px;
    max-height: 35px;
    margin: 15px auto;
}
.purchase-links span {
    display: block;
    font-family: monospace;
    text-transform: uppercase;
    color: #80755f;
    font-size: 0.9em;
    line-height: 1.2em;
    display: block;
    text-decoration: none;
    margin: 20px auto 0;
}

.book-purchase a.large-cta {
    margin: 40px auto 0;
}



/* =Footer
-------------------------------------------------------------- */
.footer-social {
    background: #521e5b;
    color: #fbf6eb;
    padding: 35px 0;
    z-index: 9;
    position: relative;
}
.footer-social:after {
    content: '';
    width: 100%;
    height: 15px;
    background: url('images/purple-paper-rip.png') repeat-x top left / contain;
    position: absolute;
    bottom: -15px;
}
.footer-social h4 { 
    font-size: 1.4em;
    font-family: 'Syncopate', sans-serif;
    flex: 3; 
    margin: 0; 
    color: #fbf6eb; 
}
.footer-social .socials { flex: 1.5; font-size: 1.2em; }
.footer-social .socials a { color: #91cedd; }
.footer-social .socials button { background: transparent; color: #91cedd; border: none; padding: 0; font-size: 1em; }
.footer-social .socials a:hover,
.footer-social .socials button:hover { color: #fbf6eb; }

/* Footer */
footer.site-footer {
    background: #860805 url('images/red-texture-bg.jpg') no-repeat top center / cover;
    color: #959595;
    padding: 4vw 0;
}

/* External ORGs */
footer.site-footer .container.flex .org-grid { padding-right: 3vw; }
footer.site-footer .container.flex .footer-copyright { padding-left: 40px; border-left: 1px solid rgba(255,255,255,0.2); }

footer.site-footer .container.flex .org-grid li {
    flex: 1;
    padding: 10px 15px;
}
footer.site-footer .container.flex .org-grid li img { max-width: 100px; max-height: 60px;}
footer.site-footer .container.flex .org-grid li a { opacity: 1; }
footer.site-footer .container.flex .org-grid li a:hover { opacity: 0.4; }


/* Copyright */
footer.site-footer .footer-copyright {
    font-size: 0.8em;
    line-height: 1.5em;
}
footer.site-footer .footer-copyright a { color: inherit; }
footer.site-footer .footer-copyright a:hover { color: #fbf6eb; }
footer.site-footer .footer-copyright ul {
    width: auto;
    display: block;
    margin-bottom: 5px;
}
footer.site-footer .footer-copyright ul li {
    display: inline-block;
    margin-right: 1vw;
}
footer.site-footer .footer-copyright ul li a {
    color: #FFFFFF;
    font-weight: 400;
}


footer.site-footer .copyright.flex { padding: 5px 0; flex-wrap: nowrap;}
footer.site-footer .copyright.flex>* { flex: inherit; }
footer.site-footer .please-co { padding-right: 25px; }
footer.site-footer .please-co img { max-width: 60px; }



/* =Mobile (Media Queries)
-------------------------------------------------------------- */
@-ms-viewport {
  width: device-width;
}
@viewport {
  width: device-width;
}

@media only screen and (max-width: 1180px) {
    h1.site-title { font-size: 2em; padding-right: 3vw; }
    header#masthead { padding: 10px 5vw 20px; }
    header#masthead .flex nav { flex: 3.5; margin: 0; }
    nav.main-navigation li a { font-size: 1.2em; }

    /* Releases */
    .releases-grid-item,
    .purchase-links.flex>* {
        flex: 1 0 33.3%;
        width: 33.3%;
        max-width: 33.3%;
        padding: 5px;
        margin-bottom: 35px;
    }
    body.page-template-page-theater { background-size: 125% auto; }
}
@media only screen and (max-width: 1024px) {
    /* Home */
    #section.home-carousel .slide-overlay.left img,
    #section.home-carousel .slide-overlay.right img { float: none; }
    #section.home-carousel .hero-slide .slide-overlay img { width: 100% !important; max-width: 800px !important; height: auto;}
    #section.home-features .fanclub-detail p { font-size: 0.9em; line-height: 1.4em; }
    #section.home-features .fanclub-detail img { margin-top: -50px; }
    #section.home-socials .container.flex>* { flex: 1 0 100%; width:100%; margin-bottom: 35px; border: none;}

}
@media only screen and (max-width: 900px) {
    /* Theater */
    #section.theater-about .entry-content { font-size: 1em; }
    body.page-template-page-theater h2, 
    body.page-template-page-theater h3 { font-size: 2.5em; margin: 15px auto 0; }
    .eventlist-item.quarter { flex: 1 0 calc(50% - 10px); width: calc(50% - 10px); max-width: calc(50% - 10px); padding: 20px; }
    body.page-template-page-theater .footer-social { max-width: 520px; }

}
@media only screen and (max-width: 820px) {
    #section { min-height: auto; }
    h1 { font-size: 2.25em; }
    h2 { font-size: 2em; }
    h3 { font-size: 1.5em; }
    h4 { font-size: 1.25em; }

    /* Mobile Navigation */
    header#masthead { padding: 30px 5vw 25px; }
    .site-branding img { max-width: 400px; }
    button.menu-toggle {
        display: block;
        background: transparent;
        border-radius: 0;
        border: none;
        width:  40px;
        height: 40px;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .15s ease-in-out;
        -moz-transition: .15s ease-in-out;
        -o-transition: .15s ease-in-out;
        transition: .15s ease-in-out;
        cursor: pointer;
        position: absolute;
        top: -15px;
        right: 5vw;
    }
    button.menu-toggle span {
        display: block;
        position: absolute;
        height: 2px;
        width: 40px;
        background: #f0f9ff;
        opacity: 1;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .25s ease-in-out;
        -moz-transition: .25s ease-in-out;
        -o-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
    }
    button.menu-toggle span:nth-child(1) { top: 15px;}
    button.menu-toggle span:nth-child(2),
    button.menu-toggle span:nth-child(3) { top: 28px;}
    button.menu-toggle span:nth-child(4) { top: 40px;}    
    .main-navigation.toggled button.menu-toggle span { background: #91cedd; }   
    .main-navigation.toggled button.menu-toggle span:nth-child(1) {
        top: 20px;
        width: 0%;
        left: 50%;
    }
    .main-navigation.toggled button.menu-toggle  span:nth-child(2) {
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .main-navigation.toggled button.menu-toggle span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .main-navigation.toggled button.menu-toggle span:nth-child(4) {
        top: 20px;
        width: 0%;
        left: 50%;
    }
    .main-navigation .menu-main-navigation-container { display: none; } 
    .main-navigation.toggled .menu-main-navigation-container { display: block; margin-top: 10px; } 

    header#masthead .flex { display: block; }
    header#masthead nav.main-navigation.toggled ul {
        flex-direction: column;
        width: 100%;
        background: transparent;
        box-shadow: none;
        border: none;
    }
    header#masthead nav.main-navigation.toggled li a { 
        width: 100%;
        font-size: 1.5em; 
        line-height: 1.4em; 
        padding: 8px 0;
        border-bottom: 1px solid rgba(0,0,0,0.3);
    }
    /* Dropdown Inline */
    header#masthead .main-navigation ul li:hover > ul, 
    header#masthead .main-navigation ul li.focus > ul{
        display: block;
        position: relative;
        width: 100%;
        top: auto;
        float: none;
        box-shadow: none;
    }
    header#masthead .main-navigation ul.sub-menu li a { padding-left: 8vw; }\

    /* Home */
    #section.home-features .container.flex { flex-direction: column;}
    #section.home-features .home-video .embed-container { margin-bottom: 5px; }
    #section.home-features .container.flex .home-video { flex: 1 0 100%; padding: 0 0 25px; }

    #section.home-carousel .hero-slide { min-height: 350px; padding: 50px 0; }
    #section.home-carousel .hero-slide .slide-overlay img { width: 100% !important; max-width: 70vw !important; height: auto;}
    .owl-nav button { width: 35px; height: 35px; margin: 0;}
    .owl-nav>* { top: calc(50% - 35px); }

    #section.home-features .home-fanclub { margin-top: 25px; }
    #section.home-features .fanclub-detail h3 { font-size: 2.5em; margin: 5px auto 10px; }
    #section.home-features .fanclub-detail p { font-size: 1em; width: 80%; margin: 5px auto; }
    #section.home-features .fanclub-detail a.large-cta {
        font-size: 1.2em;
        margin: 15px auto;
        padding: 16px 50px;
    }

    #section.home-events .container { padding-left: 0; }
    #section.home-events .container h3 { text-align: center; }
    #section.home-events {
        background-position: center center;
        background-size: cover;
        background-attachment: fixed;
    }

    /* Book */
    .book-title { margin: 15px auto 40px; }
    .book-title h3 { font-size: 3em; }
    .book-details.flex .entry-content { padding: 0 0 25px; }

    /* Fan Club */
    body.page-template-page-fanclub #primary.default-page .container.flex .entry-content { flex: 2; padding-right: 25px; }
    body.page-template-page-fanclub .entry-content h3 { width: 80%; }

    /* Pages */
    #primary.default-page .container.flex .entry-content { padding-right: 25px; }
    img.poster-title { width: 100%; height: auto; max-width: 75vw; }

    /* Releases */
    .releases-grid-item {
        flex: 1 0 50%;
        width: 50%;
        max-width: 50%;
        padding: 5px;
        margin-bottom: 25px;
    }

    /* Theater */
    #section.theater-about .entry-content { font-size: 0.9em; }
    #section.theater-about .entry-content p { margin-bottom: 15px; }
    .eventlist-item.quarter  { height: auto; display: block; }
    .eventlist-item .date { font-size: 1.25em; }
    .eventlist-item .ticket-cta { padding: 6px 12px; font-size: 1em; margin: 25px auto 0; }

    /* Footer */
    footer.site-footer { padding: 65px 0 50px; text-align: center; }
    .footer-social { padding: 25px 0; }
    .footer-social .container.flex { flex-direction: column; }
    .footer-social h4 { flex: 1; margin: 5px auto 15px; font-size: 0.9em; }
    .footer-social .socials a { margin: 0 2vw; }

    footer.site-footer { padding: 50px 0; }
    footer.site-footer .container.flex { flex-direction: column; }
    footer.site-footer .container.flex .org-grid { padding: 0; margin-bottom: 25px; }
    footer.site-footer .container.flex .footer-copyright { padding-left: 0; border: none; }
    footer.site-footer .container.flex .org-grid li img { margin: 0; }

}

@media only screen and (max-width: 640px) {
    /* Theater */
    header.back-to-site { background: #9a2200; }
    header.back-to-site a { padding: 5px 0; font-size: 0.65em; border: none; }
    #section.theater-hero .hero-image { padding-bottom: 150px; }
    #section.theater-hero .hero-image img,
    #section.theater-hero .hero-date img { width: 85vw; }
    #section.theater-hero .hero-cta { display: none; }
    .eventlist-item.quarter { 
        flex: 1 0 100%; 
        width: 100%; 
        max-width: 100%; 
        margin: 0;
        padding: 25px 0;
        border: none;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    .eventlist-item.quarter:last-of-type { border: none; }
    .eventlist-item .date { font-size: 1.5em; }
    .eventlist-item .ticket-cta { padding: 9px 15px; font-size: 1.1em; max-width: 250px;}

    /* Book */
    .book-title { margin: 15px auto 40px; }
    .book-title h3 { font-size: 2.5em; color: inherit; }
    .book-title span.subtitle { font-size: 0.9em; line-height: 1.2em; opacity: 0.6; padding: 0 10vw;  }
    .book-details.flex { flex-direction: column-reverse; }
    .book-details.flex .post-thumbnail { margin: 0 auto 25px; margin-bottom: 25px; }
    .purchase-links.flex { align-items: initial; }
    .purchase-links.flex>* { flex: 1 0 50%; width: 50%; max-width: 50%; padding: 0; }
    .purchase-links span { font-size: 0.8em; }
    .book-purchase a.large-cta { margin: 0 auto; }

    /* Footer */
    footer.site-footer .copyright.flex { flex-direction: column-reverse; align-items: initial; }
    footer.site-footer .please-co { margin: 15px auto 0; padding: 0; }
}

@media only screen and (max-width: 500px) {
    body { font-size: 18px; line-height: 1.5em; }
    #section { padding: 40px 0; }
    .container { width: 85vw; }
    a.large-cta, .large-cta,
    #section.home-features .fanclub-detail a.large-cta { padding: 14px 5vw; font-size: 1.1em; line-height: 1.15em; }

    .site-branding img { max-width: 320px; }

    /* Home */
    #section.home-events h3 { display: none; }
    #section.home-socials .container.flex { flex-direction: column;}
    #section.home-socials .container.flex>* { padding: 15px 0; border-right: none; }

    /* Book */
    .purchase-links.flex>* { margin-bottom: 20px; }
    .purchase-links img { max-width: 130px; max-height: 25px; }
    .purchase-links span { opacity: 0.75; margin: 5px auto; }

    #section.home-features .fanclub-detail p { width: 100%; }

    .columns-container.flex {display: block; }
    .columns-container.flex>* { margin-bottom: 15px; }
    .columns-container.flex a.large-cta { width: 100%; }
    .disclaimer { font-size: 0.75em; }

    /* Pages */
    .white-title h1 { font-size: 3em; }
    #primary.default-page .container.flex { flex-direction: column; }
    #primary.default-page .container.flex .entry-content { padding-right: 0; }
    #primary.default-page .container.flex .post-thumbnail { margin: 0 auto; padding: 0 10vw 50px; }

    body.page-template-page-fanclub .entry-content h3 { width: 100%; font-size: 2.5em; }

    /* Fan Club */
    body.page-fan-club #primary.default-page .container.flex {  flex-direction: column-reverse;}


    /* Releases */
    .releases-grid { padding: 50px 0; }
    .releases-grid-item {
        flex: 1 0 100%;
        width: 100%;
        max-width: 100%;
        padding: 0;
        margin-bottom: 35px;
    }
    .releases-grid-item .album-details {
        margin-top: 10px;
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .releases-grid-item .album-details .album-title { flex: 3; padding-right: 15px; }
    .releases-grid-item .album-download { padding: 10px 0; text-align: right; }
    .releases-grid-item .album-download a { padding: 0 0 0 5px; }
}
@media only screen and (max-width: 420px) {
    #section.home-carousel .hero-slide { min-height: 350px; padding: 25px 0 0; }
    #section.home-carousel .hero-slide .slide-overlay img { width: 100% !important; max-width: 80vw !important; height: auto;}

    body { font-size: 17px; line-height: 1.5em; }
    .site-branding img { max-width: 245px; }
    body.page-template-page-fanclub #primary.default-page .container.flex .entry-content { flex: 1 0 100%; padding: 0; }
}



