/*!
Theme Name: Rob Thomas
Theme URI: http://underscores.me/
Author: Phill Mamula
Author URI: https://www.phillm.com
Description: 2022 Theme for Rob Thomas - Migration
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: robthomas
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.

Rob Thomas 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=DM+Serif+Display:ital@0;1&family=Open+Sans:wght@300;400;600;700&display=swap');


/* =Global
-------------------------------------------------------------- */
html,body {
  	margin: 0; padding: 0;
  	min-height: 100%;
}
body {
	background: #FFFFFF;
	font-family: 'Open Sans', sans-serif;
	color: #151515;
	font-size: 17px;
	line-height: 1.7em;
}

/* Type */
h1,h2,h3,h4 {
	color: #c0282d;
    font-family: 'DM Serif Display', sans-serif;
    line-height: 1em;
    font-weight: normal;
    margin: 5px 0 15px;
}
h1 { font-size: 3.5em; line-height: 0.9em; text-shadow: none !important; }
h2 { font-size: 3em; }
h3 { font-size: 2em; }
h4 { font-size: 1.5em; }

blockquote { font-size:  1.5em; line-height: 1.4em; font-family: 'DM Serif Display', serif; font-style: italic; }
strong { font-weight: 600; }
.sm-text { font-size: 0.8em; line-height: 1.2em; }

img { width: 100%; height: auto; margin: 0 0 -9px; }
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: #c0282d; }

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; }

/* CTA Buttons */
a.large-cta,
.large-cta {
	font-size: 0.8em;
	line-height: 1.2em;
	font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    padding: 15px 30px;
    border: 1px solid;
    text-align: center;
    display: table;
}
a.large-cta:hover {
    background: #c0282d;
    border: 1px solid #c0282d;
    color: #FFFFFF;
}

a.list-cta {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 0.9em;
    line-height: 1em;
    padding: 2px 0;
    letter-spacing: 0.02em;
    border-bottom: 1px solid;
}

/* 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: 50px 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%; }

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


/* 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-carousel {
    display: none; 
}
.owl-carousel.owl-loaded {
    display: block;
}

.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-nav { width: 100%; height: 100%; position: absolute; top: 0;left: 0; }
.owl-nav button { 
    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 {
    color: #FFFFFF;
    background: #000000;
    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% - 25px);
    z-index: 999;
}
.owl-nav .owl-next { right: 3vw; }
.owl-nav .owl-prev { left: 3vw; }


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


/* Video Background */
.iframe-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -3;
  pointer-events: none;
  overflow: hidden;
}
.iframe-wrapper video {
  width: 100vw;
  height: 56.25vh; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
  min-height: 120vh;
  min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
  position: absolute;
  top: 50%; 
  left: 50%;
  transform: translate(-50%, -50%);
}


/* =Header
-------------------------------------------------------------- */
header#masthead {
    background: #FFFFFF;
    position: relative;
    z-index: 99;
    padding: 14px 5vw;
    border-bottom: 1px solid #EFEFEF;
}

/* Logo */
.logo-combo svg:first-of-type { flex: 1; max-width: 45px; }
.logo-combo svg:first-of-type path { fill: #c0282d;}
.logo-combo svg:last-of-type { flex: 3; max-width: 185px; padding-left: 10px; }

/* Overlay Navigation */
button.menu-toggle {
    display: block;
    background: transparent;
    border-radius: 0;
    padding: 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: 8px;
    right: 5vw;
    z-index: 9;
}
button.menu-toggle span {
    display: block;
    position: absolute;
    height: 2px;
    width: 40px;
    background: #111111;
    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: #c0282d; } 
body.home button.menu-toggle span { background: #FFFFFF; }   
.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: flex;
    margin: 0 auto;
    align-items: center;
}


/* Overlay */
header#masthead nav.main-navigation.toggled {
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.95);
    height: 100%;
    z-index: 99;
    display: flex;
    justify-content: center;
    align-content: center;
}
header#masthead nav.main-navigation ul { margin-bottom: 5vw; }
header#masthead nav.main-navigation li {
    width: 100%;
    text-align: center;
}
header#masthead nav.main-navigation li a {
    color: #FEFEFE;
    font-family: 'DM Serif Display', sans-serif;
    font-size: 3em;
    line-height: 1em;
    letter-spacing: 0.02em;
    padding: 8px 0;
}
header#masthead nav.main-navigation li.current-menu-item a,
header#masthead nav.main-navigation li a:hover {
    color: #c0282d;
}
.main-navigation ul ul a { width: auto; }

/* Inline Dropdown */
header#masthead .main-navigation ul li:hover > ul, 
header#masthead .main-navigation ul li.focus > ul{
    display: block;
    position: relative;
    width: auto;
    top: auto;
    float: none;
    box-shadow: none;
}
header#masthead .main-navigation ul.sub-menu li { padding: 0; }
header#masthead .main-navigation ul.sub-menu li a { 
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 400;
    padding: inherit;
    font-size: 1.75em;
    padding: 3px 0;
}


/* Overlay Socials */
header#masthead nav.main-navigation .header-socials { display: none; }
header#masthead nav.main-navigation.toggled .header-socials {
    display: block;
    width: 100%;
    position: absolute;
    bottom: 35px;
    left: 0;
}
.header-socials .socials.flex { justify-content: center; max-width: 400px; margin: 0 auto; }
.header-socials .socials a { color: #c0282d; font-size: 1.25em; padding: 5px; }
.header-socials .socials a:hover { color: #FFFFFF; }
.socials.flex { text-align: center; }


/* =Homepage
-------------------------------------------------------------- */
/* Navigation */
body.home header#masthead { background: transparent; border: none; padding: 20px 5vw; }
body.home .logo-combo.flex svg { max-width: 60px; }
body.home .logo-combo.flex svg:last-of-type { display: none;}
body.home .logo-combo svg:first-of-type path { fill: #c0282d;}
body.home header#masthead button { top: 20px; }

/* Video Background */
body.home { background: #000000; }
body.home .iframe-wrapper { opacity: 0.7; }

.hero-logo { text-align: center; }
.hero-logo svg { fill: #f6f2ef; max-width: 800px; margin: 15px auto 25px; }

/* Video CTA Buttons */
#section.hero-video .container { z-index: 6; position: relative; }
#section.hero-video .cta-buttons { margin: 15px auto; text-align: center; justify-content: center; }
#section.hero-video a.large-cta { 
    color: #FFFFFF;
    border: 1px solid rgba(255,255,255,0.2); 
    max-width: 260px; 
    font-size: 0.85em;
    font-weight: 600;
    letter-spacing: 0.06em;
    margin: 0 5px; 
    padding: 15px; 
}
#section.hero-video a.large-cta:hover {
    background: #c0282d;
    border: 1px solid #c0282d;
    color: #FFFFFF;
}

/* Footer */
body.home footer.site-footer {
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,1) 73%, rgba(0,0,0,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 73%,rgba(0,0,0,1) 100%);
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 73%,rgba(0,0,0,1) 100%);
    color: #797875;
    padding: 12vw 0 20px;
    position: fixed;
    bottom: 0;
    text-align: center;
    left: 0;
    width: 100%;
}
body.home footer.site-footer .flex { flex-direction: column-reverse; align-items: center;}
body.home footer.site-footer .flex>* { flex: 1; text-align: center; }
body.home footer.site-footer .site-info ul { display: none; }
body.home footer.site-footer .site-info .terms ul { display: block; }
body.home footer.site-footer .site-info ul li { padding: 0 10px; }
body.home footer.site-footer .footer-socials .socials.flex { flex-direction: row; justify-content: center; }
body.home footer.site-footer .footer-socials { margin-bottom: 25px; }
body.home footer.site-footer .footer-socials a{ padding: 0 15px;}


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

/* Entry Content */
header.page-header {
    margin: 0 auto 4vw;
    text-align: center;
}
header.page-header h1.entry-title {
    font-size: 4.5em;
}

.entry-content .alignright,
.entry-content .alignleft { 
    width: inherit; 
    max-width: 450px; 
    margin: 5px 1.5em 1em; 
}
.entry-content .alignleft { margin-left: -3em; padding: 0; }
.entry-content .alignright { margin-right: -3em; padding: 0; }

/* 404 */
.error-404 { text-align: center; }
.error-404 a.large-cta { margin: 25px auto; }


/* =Events
-------------------------------------------------------------- */
/* Header Overwrite */
body.post-type-archive-events { background: #000000; }
body.post-type-archive-events header#masthead { background: transparent; border: none; }
body.post-type-archive-events header .logo-combo svg:first-of-type path { fill: #c0282d;}
body.post-type-archive-events header .logo-combo svg:last-of-type { fill: #FFFFFF;}
body.post-type-archive-events header a { color: #FFFFFF;}
body.post-type-archive-events header a:hover { color: #e23f3f;}
body.post-type-archive-events button.menu-toggle span { background: #FFFFFF; }

/* Fade-In Background */
body.post-type-archive-events .fullwidth-hero.page-hero {
    width: 100%;
    height: 50vw;
    min-height: 450px;
    position: fixed;
    top: 0;
    left: 0;
}
main.dark-main::before {
    content: "";
    width: 100%;
    height: 850px;
    position: fixed;
    z-index: -3;
    bottom: 0px;
    left: 0px;
    background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 40%, rgb(0, 0, 0) 100%);
}
main.dark-main { 
    text-shadow: none;
    margin-top: 320px;
    position: relative; 
    z-index: 3;
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 24%, rgba(0,0,0,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.8) 24%,rgba(0,0,0,1) 100%);
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.8) 24%,rgba(0,0,0,1) 100%);
}
main.dark-main {
    color: #F5F6F7;
}


/* Event Listing */
#section.event-listing .container { padding: 25px 0 50px; }
.event-list-item {
    line-height: 1.2em;
    text-transform: uppercase;
    padding: 10px;
}
.event-list-item a { text-decoration: none; }
.event-list-item:nth-child(odd) { background: rgba(255,255,255,0.08); }
.event-list-item>* { padding: 5px; }
.event-list-item .event-date { font-weight: 600; }
.event-list-item .event-location {
    color: #c1bfab;
    padding-right: 5vw;
}
.event-list-item .event-purchase>* { margin: 0 5px; }
.event-purchase a.large-cta { border: 1px solid rgba(255,255,255,0.2); }
.event-purchase a.large-cta:hover { border-color: #c0282d; }
.event-purchase .large-cta.status { opacity: 0.3; color: #999999; }

/* Footer Overwrite*/
body.post-type-archive-events footer.site-footer {
    background: #161616;
    border-top: 1px solid #212121;
    margin-top: 0;
}



/* =News
-------------------------------------------------------------- */
/* Archive Title */
header.archive-header {
    background: #c0282d;
    background: -moz-linear-gradient(left,  #a1171b 0%,#7e0d0f 100%);
    background: -webkit-linear-gradient(left,  #a1171b 0%,#7e0d0f 100%);
    background: linear-gradient(to right,  #a1171b 0%,#7e0d0f 100%);
    padding: 50px 0;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
}
header.archive-header h1.entry-title {
    text-align: center;
    font-size: 3.5em;
    line-height: 1.1em;
    margin: 0 auto;
    color: #FFFFFF;
    position: relative;
    z-index: 3;
}
header.archive-header svg {
    width: 220px;
    top: calc(50% - 110px);
    transform: rotate(11deg);
    position: absolute;
    right: 15vw;
    bottom: 0;
    opacity: 0.5;
    z-index: 1;
}
header.archive-header svg path { fill: #6b0002; }

/* Article Listing */
#section.archive-listing { padding: 0; min-height: auto; }
.archive-grid.flex { align-items: inherit; }
.archive-grid.flex>* {
    flex: 1 0 calc(33.3% - 20px);
    width: calc(33.3% - 20px);
    max-width: calc(33.3% - 20px);
    margin: 10px;
    border: 1px solid #EEEEEE;
}
.article-list-content { 
    padding: 15px;
    height: 100%;
}
.article-list-content h2 {
    font-size: 1.75em;
}
.article-list-content h2 a:hover { color: #000000; }
.article-list-content .article-list-excerpt {
    font-size: 0.9em;
    line-height: 1.6em;
}
.article-list-content span {
    margin: 25px 0 4px; 
    display: block;
    font-size: 0.85em;
    line-height: 1.1em;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #919499;
}

/* Article Detail */
.article-content { padding: 25px 0 75px; }
article.post header.entry-header {
    text-align: center;
    padding: 15px 0;
    margin: 0 auto;
}
article.post header.entry-header .entry-date {
    color: #919499;
    font-size: 0.85em;
    line-height: 1.1em;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin: 15px auto;
}
article.post .featured-image { max-width: 750px; margin: 10px auto; }


/* Pagination */
.paginate {
    margin: 15px auto 50px;
    text-align: center;
    display: block;
}
.paginate .wp-paginate>* { margin: 0 2px;}
.paginate .wp-paginate .current {
    color: #FFFFFF;
    background: #171716;
    border: 1px solid #171716;
    padding: 5px 10px;
    font-size: 0.8em;
}
.paginate .wp-paginate a {
    background: transparent;
    border: 1px solid #919499;
    color: #171716;
    margin-right: 5px;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    font-size: 0.8em;
}
.paginate .wp-paginate a:hover {
    border-color: #c0282d;
    background: #c0282d;
    color: #FFFFFF;
}


/* =Releases
-------------------------------------------------------------- */
#section.releases { display: block; padding: 0 0 50px; }
#section.single-article { padding-bottom: 0; }

/* Breadcrumbs */
.breadcrumbs {
    color: #919499;
    font-size: 0.9em;
    line-height: 1.1em;
    border-bottom: 1px solid #EFEFEF;
}
.breadcrumbs .container {
    padding: 20px 0;
}
.breadcrumbs a {
    color: #c0292e;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
    margin-right: 5px;
}
.breadcrumbs a:hover { color: #000000; }
.breadcrumbs span { margin-left: 5px; }


/* Releases Carousel */
.releases-carousel {
    background: #f3f3ee;
    border-top: 1px solid #ebe9df;
    border-bottom: 5px solid #dcdccf;
    padding: 50px 0;
}
.releases-carousel .album-details { display: none; }
.owl-carousel .owl-item img { margin: 0; }


/* Releases Listing */
.releases-listing.flex { align-items: inherit; }
.releases-listing.flex>* {
    flex: 1 0 calc(33.3% - 20px);
    width: calc(33.3% - 20px);
    max-width: calc(33.3% - 20px);
    margin: 10px;
}
.releases-grid-item .post-thumbnail img { border: 1px solid #eeeeee; }
.album-details { padding: 10px 20px; text-align: center; }
.album-details .album-year { margin: 0; }
.album-details h4 {
    font-family: 'Open Sans', sans-serif;
    margin: 3px auto 5px;
    font-size: 1.2em;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.02em;
}
.album-details h4 a { text-decoration: none; }
.album-year {
    display: block;
    font-size: 0.9em;
    line-height: 1.2em;
    text-transform: uppercase;
    color: #919499;
    margin: 0 0 10px;
}


/* Releases Details */
.releases-detail { padding: 35px 0 50px; }
.releases-detail.flex { align-items: inherit; }
.releases-detail .releases-details { flex: 1.5; line-height: 1.75em; }
.releases-detail h2 { font-size: 3em; line-height: 0.9em; }

.releases-details { padding: 0 0 0 50px; }

.album-image .post-thumbnail img { border: 1px solid #eeeeee; }

.releases-detail .entry-content { padding: 15px 0 5px; }
.releases-detail .entry-content.tracklisting em {
    color: #707065;
    font-style: inherit;
    font-size: 0.8em;
    line-height: 1.4em;
    display: block;
}

.stream {
    display: flex;
    align-items: center;
    justify-content: space-around;
    margin-top: 5px;
}
.stream a {
    width: 100%;
    padding: 14px;
    font-size: 1.2em;
    text-decoration: none;
    border: 1px solid;
    border-right: none;
}
.stream a:last-of-type {
    border-right: 1px solid;
}
.stream a:hover {
    color: #FFFFFF;
    border-color: #c0282d;
    background: #c0282d;
}


/* =About
-------------------------------------------------------------- */
/* Header Overwrite */
body.page-about header#masthead { background: transparent; border: none; }

/* Fade-In Background */
body.page-about .fullwidth-hero.page-hero {
    width: 100%;
    height: 50vw;
    min-height: 450px;
    position: fixed;
    top: 0;
    left: 0;
}
body.page-about main.site-main:before {
    content: '';
    width: 100%;
    height: 850px;
    position: fixed;
    z-index: -3;
    bottom: 0; left: 0;
    background: -moz-linear-gradient(top,  rgba(247,247,237,0) 0%, rgba(247,247,237,1) 54%, rgba(247,247,237,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(247,247,237,0) 0%,rgba(247,247,237,1) 54%,rgba(247,247,237,1) 100%);
    background: linear-gradient(to bottom,  rgba(247,247,237,0) 0%,rgba(247,247,237,1) 54%,rgba(247,247,237,1) 100%);
}
body.page-about main.site-main { 
    margin-top: 250px;
    position: relative; 
    z-index: 3;
    background: -moz-linear-gradient(top,  rgba(247,247,237,0) 0%, rgba(247,247,237,1) 54%, rgba(247,247,237,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(247,247,237,0) 0%,rgba(247,247,237,1) 54%,rgba(247,247,237,1) 100%);
    background: linear-gradient(to bottom,  rgba(247,247,237,0) 0%,rgba(247,247,237,1) 54%,rgba(247,247,237,1) 100%);
}

/* Footer Overwrite*/
body.page-about footer.site-footer { color: #5a5a50; background: #e8e8da; margin-top: 80px;}
body.page-about footer.site-footer .site-info ul#menu-footer li a { color: #2f2213;}
body.page-about footer.site-footer .site-info ul#menu-footer li a:hover { color: #c0282d;}

/* =Media
-------------------------------------------------------------- */
#section.featured-video {
    background: #f3f3ee;
    padding: 50px 0;
    text-align: center;
    border-top: 1px solid #ebe9df;
    border-bottom: 10px solid #ebe9df;
    min-height: auto;
}

.more-articles.media-photos .photo-grid article {
    padding: 20px 5px;
    max-width: 33.3%;
}
.more-articles.media-photos .photo-grid { padding: 10px 10vw; justify-content: center; } 
body.single-photos .more-articles.media-videos {
    display: none;
}

/* Media Carousel */
.more-articles { border-bottom: 1px solid #EEEEEE; }
.archive-title {
    padding: 20px 0;
    border-bottom: 1px solid #EEEEEE;
}
.archive-title h3 { 
    margin: 0; 
    font-size: 2em; 
    line-height: 1.25em;
}
.archive-title .container.flex { justify-content: space-between; }
.archive-title .container.flex>* { flex: inherit; }

.media-carousel {
    padding: 25px 0 60px;
}
.media-videos .media-carousel {
    border-bottom: 8px solid #EEEEEE;
}

.media-list-item {
    text-align: center;
}
.media-list-item .post-thumbnail { height: 230px; max-height: 230px; overflow: hidden; position: relative; }
.media-list-item .post-thumbnail img { object-fit: cover; height: 230px; }

.media-list-item h3.entry-title {
    font-family: 'Open Sans', sans-serif;
    font-size: 1.15em;
    font-weight: 700;
    text-transform: uppercase;
    margin: 12px auto 0;
    padding: 0 2vw;
}
.media-list-item h3.entry-title a { text-decoration: none; }
.media-list-item .photo-count {
    color: #919499;
    font-size: 0.8em;
    line-height: 1.1em;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin: 8px auto;
}

/* Media Listing */
.archive-listing.flex {
    align-items: inherit;
    min-height: 60vh;
}
.archive-listing.flex>* { 
    padding: 5px; 
    flex: 1 0 33.3%;
    width: 33.3%; 
    max-width: 33.3%; 
    margin-bottom: 25px;
}

.archive-listing article a { text-decoration: none; }
.archive-listing article .post-thumbnail { height: 220px; }
.archive-listing article .post-thumbnail img { object-fit: cover; height: 220px; }
.archive-listing article h3 { font-size: 1.75em; margin: 15px 0; }

/* Videos */
#section.single-article.media { padding: 0; min-height: auto; }
.single-video-feature { margin: 30px auto; }

.media-title {
    padding: 10px 0 50px;
    text-align: center;
}
article.single-video header.entry-header { margin-bottom: 15px; padding: 0 5vw;}
article.single-video header.entry-header h1 { font-size: 3em; color: inherit; }

body.single-photos .media-carousel,
body.single-videos .media-carousel { 
    background: #f3f3ee;
    border-top: 1px solid #ebe9df;
}

/* Photos */
body.single-photos .article-content { padding: 25px 0 75px; }
body.single-photos header.entry-header {
    text-align: center;
    padding: 25px 0 15px;
    margin: 0 auto;
}
body.single-photos header.entry-header h1 { font-size: 4em; }

.photo-gallery { padding: 25px 0 100px; }
.photo-gallery .view-all { margin-top: 50px; }
.photo-gallery .photo-grid {
    display: flex;
    flex-wrap: wrap;
}
.photo-gallery .photo-grid .gallery-item { 
    flex: 1 0 25%; 
    width: 25%; 
    max-width: 25%; 
    height: 225px; 
    padding: 5px; 
    margin-bottom: 10px;
}
.photo-gallery .photo-grid .gallery-item img { object-fit: cover; height: 225px; }


/* View All */
.view-all a {
    color: #FFFFFF;
    background: #c0282d;
    border-bottom: 6px solid #8d1a1e;
    font-size: 0.9em;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-weight: 700;
    width: 100%;
    padding: 15px 0;
    text-align: center;
    display: block;
    text-decoration: none;
}
.view-all a:hover {
    color: #FFFFFF;
    background: #8d1a1e;
    border-bottom: 7px solid #580c0e;
}


/* =Footer
-------------------------------------------------------------- */
footer.site-footer {
    color: #71716b;
    background: #171716;
    padding: 25px 5vw 50px;
    position: relative;
    z-index: 5;
}
footer.site-footer .flex { align-items: inherit; }
footer.site-footer .flex .footer-copyright { flex: 2; }
footer.site-footer .footer-socials .socials.flex {
    text-align: center;
    display: inline-flex;
    float: right;
}
footer.site-footer .footer-socials a {
    color: #c0282d;
    font-size: 1.3em;
    padding: 0 0 0 20px;
}
footer.site-footer .footer-socials a:hover { color: #FFFFFF; }

/* Copyright */
footer.site-footer .site-info { font-size: 0.9em; }
footer.site-footer .site-info ul#menu-footer { margin: 0 auto 10px; }
footer.site-footer .site-info ul li { display: inline-block; }
footer.site-footer .site-info ul#menu-footer li a {
    color: #FFFFFF;
	font-weight: 700;
    font-size: 0.9em;
    line-height: 1em;
    padding: 0 2vw 2px 0;
    letter-spacing: 0.02em;
	text-decoration: none;
	text-transform: uppercase;
}
footer.site-footer .site-info ul#menu-footer li a:hover { color: #c0282d; }
footer.site-footer .copyright { font-size: 0.9em; line-height: 1.6em; margin-top: 5px;}
footer.site-footer .copyright a { color: inherit !important; }

/* Terms */
ul#menu-terms { margin: -3px 0 0; }
ul#menu-terms li a { font-size: 0.9em; margin-right: 10px;} 



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

body.home .please-co { display: none; }
body.page-template-default .please-co { mix-blend-mode: difference; }



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

@media only screen and (max-width: 1180px) {
}
@media only screen and (max-width: 1024px) {
    /* Pages */
    .fullwidth-hero.page-hero { position: relative; }
    body.page-about .fullwidth-hero.page-hero:after,
    body.post-type-archive-events .fullwidth-hero.page-hero:after  {
        content: '';
        width: 100%;
        height: 200px;
        background: linear-gradient(to bottom,  rgba(247,247,237,0) 0%,rgba(247,247,237,1) 54%,rgba(247,247,237,1) 100%);
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 3;
    }

    /* News */
    .archive-grid.flex>* { flex: 1 0 calc(50% - 20px); width: calc(50% - 20px); max-width: calc(50% - 20px); }

    /* Events */
    body.post-type-archive-events .fullwidth-hero.page-hero:after {
        background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.75) 50%,rgba(0,0,0,1) 100%);
    }
    main.dark-main {  margin-top: 200px; }
    main.dark-main::before { height: 100vh; }
    .event-list-item { padding: 20px 15px; }
    .event-list-item .event-date {
        flex: 1 0 100%;
        font-size: 1.1em;
        font-weight: 700;
        letter-spacing: 0.04em;
    }
}   
@media only screen and (max-width: 820px) {
    /* Homepage */
    body.home .logo-combo { padding-left: 5vw; }
    .logo-combo { padding-left: 0; }
    body.home .logo-combo.flex svg,
    .logo-combo.flex svg { max-width: 60px; }
    .logo-combo svg:last-of-type { display: none;}
    body.home header#masthead button,
    header#masthead button { right: 5vw; top: 3vw; }

    /* Media */
    .media-title { padding: 5px 0 30px; }
    article.single-video header.entry-header h1 { font-size: 2.5em; }

    .photo-gallery .photo-grid .gallery-item { 
        flex: 1 0 33.3%; 
        width: 33.3%; 
        max-width: 33.3%; 
        height: 220px; 
    }
    .photo-gallery .photo-grid .gallery-item img { object-fit: cover; height: 220px; }

    .media-list-item .post-thumbnail,
    .media-list-item .post-thumbnail img { height: 320px; max-height: 320px; min-height: 320px; }

    /* Pages */
    header.archive-header { padding: 40px 0; }
    header.archive-header h1 { font-size: 2.5em; }

    .releases-listing.flex>* { flex: 1 0 calc(50% - 20px); width: calc(50% - 20px); max-width: calc(50% - 20px); }
    .album-details { padding: 10px 5vw; }
    .album-details h4 { font-size: 1.1em; }
    .album-image .post-thumbnail img { border: none; }
    .stream { margin: 3px auto 5px; }
    .releases-detail .releases-details { padding: 20px 0; }

    .entry-content .alignleft,
    .entry-content .alignright { max-width: 320px; }
    .entry-content .alignleft { margin-left: 0; }
    .entry-content .alignright { margin-right: 0; }

}
@media only screen and (max-width: 640px) {
	/* Homepage */
    #section.hero-video { padding: 40vw 0 50px; min-height: auto; }
    #section.hero-video .hero-logo svg { max-width: 420px; }
    #section.hero-video .cta-buttons { display: block;}
    #section.hero-video a.large-cta { margin: 0 auto; width: 100%; margin-bottom: 10px; }
    body.home .logo-combo { padding-left: 0; }
    body.home footer.site-footer .site-info { padding: 0 10vw; }

    /* News */
    .archive-grid.flex { flex-direction: column; }
    .archive-grid.flex>* { flex: 1 0 100%; width: 100%; max-width: 100%; margin: 0 auto 15px; }

    /* Events */
    header.page-header h1.entry-title { font-size: 3.5em; }
    .event-list-item .event-purchase { flex: 1 0 100%; margin-top: 15px; }
    .event-list-item .large-cta { margin: 0 5px 0 0; }

    /* Releases */
    .archive-grid.flex,
    .releases-detail.flex { flex-direction: column; }

    /* Media */
    .media-title { padding: 0 0 50px; }
    article.single-video header.entry-header h1 { font-size: 2.25em; }

    .archive-listing.flex>* {
        flex: 1 0 100%;
        width: 100%;
        max-width: 100%;
        padding: 5px 0 15px;
    }
    .archive-listing article .post-thumbnail,
    .archive-listing article .post-thumbnail img { height: 225px; max-height: 225px; }
    .archive-listing article h3 { margin: 8px 0 15px; }

    .photo-gallery .photo-grid .gallery-item { 
        flex: 1 0 50%; 
        width: 50%; 
        max-width: 50%; 
        height: 200px; 
    }
    .photo-gallery .photo-grid .gallery-item img { object-fit: cover; height: 200px; }


    .view-all .large-cta { max-width: 350px; margin: 5px auto; padding: 15px; }

    /* Footer */
    body.home footer.site-footer { padding: 0px 0 10px; }
    body.home footer.site-footer .footer-socials { margin-bottom: 0; }
    body.home footer.site-footer .footer-socials .socials.flex { margin: 10px; }
    body.home footer.site-footer .copyright.flex { margin: 0; font-size: 0.8em; line-height: 1.4em; }
    body.home footer.site-footer .copyright.flex br { display: none; }

    footer.site-footer .flex { flex-direction: column-reverse; text-align: center; }
    footer.site-footer .site-info ul li { padding: 0 10px 2px; }
    footer.site-footer .footer-socials .socials.flex { max-width: 350px;
    display: flex; align-items: center; float: none; flex-direction: row; margin: 0 auto 25px;}
    footer.site-footer .footer-socials .socials.flex a { padding: 2px 5px; }

    footer.site-footer .copyright.flex { flex-direction: column-reverse; padding: 0; }
    footer.site-footer .copyright.flex>* { padding: 10px 0; }
    footer.site-footer .please-co { margin-right: 0; }
}

@media only screen and (max-width: 520px) {
    body { font-size: 16px; line-height: 1.6em; }
    h1 { font-size: 2.5em; }
    h2 { font-size: 2em; }
    h3, h4 { font-size: 1.75em; }

    .header-socials .socials.flex { max-width: 320px; }

    .archive-listing article .post-thumbnail,
    .archive-listing article .post-thumbnail img { height: 230px; }
    header.archive-header h1.entry-title { font-size: 2.5em; }

    /* Events */
    .event-details.flex { flex-direction: column;}
    .event-details.flex>* { text-align: center; padding: 5px 0; }
    .event-details .event-city { font-size: 1.25em; }

    /* Media */
    .media-list-item .post-thumbnail,
    .media-list-item .post-thumbnail img { height: 260px; max-height: 260px; min-height: 260px; }

    .photo-gallery .photo-grid .gallery-item { 
        flex: 1 0 100%; 
        width: 100%; 
        max-width: 100%; 
        height: 250px; 
    }
    .photo-gallery .photo-grid .gallery-item img { object-fit: cover; height: 250px; }

    /* Pages */
    .entry-content .alignleft,
    .entry-content .alignright { max-width: 220px; }

    /* Releases */
    .releases-listing.flex { max-width: 400px; margin: 0 auto; }
    .releases-listing.flex>* { flex: 1 0 100%; width: 100%; max-width: 100%; margin: 0 auto 10px; }
}

