/*!
Theme Name: Night Ranger
Theme URI: https://forsng.com/
Author: Phill Mamula
Author URI: https://www.phillm.com
Description: 2022 Theme for Night Ranger (Replatform)
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: nightranger
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.

Night Ranger 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=Lato:wght@300;400;700&display=swap');

@font-face {
    font-family: 'Mocha Mattari';
    src: url('fonts/Mocha Mattari.woff2') format('woff2'),
         url('fonts/Mocha Mattari.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
/* =Global
-------------------------------------------------------------- */
html,body {
  	margin: 0; paddin g: 0;
  	min-height: 100%;
}
body {
	background: #000000 url('images/background.jpg') repeat bottom center / 1200px auto;
    font-family: 'Lato', sans-serif;
    font-weight: 300;
	color: #FFFFFF;
	font-size: 18px;
	line-height: 1.7em;
}

/* Type */
h1,h2,h3,h4 {
    font-family: 'Mocha Mattari', sans-serif;
    color: #efd96c;
    line-height: 1em;
    letter-spacing: 0.04em;
    font-weight: normal;
    text-transform: uppercase;
    margin: 5px 0 15px;
}
h1 { font-size: 3em; line-height: 0.9em; }
h2 { font-size: 2.5em; }
h3 { font-size: 2em; }
h4 { font-size: 1.5em; }

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: #efd96c;
    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: #FFFFFF; }

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 {
    color: #e3dbd7;
    font-size: 1.2em;
    line-height: 1em;
    font-family: 'Mocha Mattari', sans-serif;
    text-transform: uppercase;
    text-decoration: none;
    display: table;
    padding: 13px 25px;
    background: rgb(0 0 0 / 68%);
    text-align: center;
    border: 1px solid #2d2a2a;
}
a.large-cta:hover {
    background: #efd96c;
    border: 1px solid #efd96c;
    color: #0d0c0c;
}

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

#section {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
	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%; }

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

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

/* Video Hero */
.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 { 
	padding: 10px 5vw 5px; 
    position: relative;
    z-index: 9;
}
header#masthead .site-branding img {
	max-width: 180px;
    position: relative;
    z-index: 9;
	margin-bottom: -50px;
}

header#masthead .site-branding { flex: 1; }
header#masthead nav.main-navigation { flex: 3; }
header#masthead .header-socials { flex: 1; text-align: right; }
header#masthead .header-socials .socials.flex { max-width: 250px; }

header#masthead nav.main-navigation ul {
	margin: 0 auto; 
    max-width: 500px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
header#masthead nav.main-navigation ul li a {
    font-family: 'Mocha Mattari', sans-serif;
	color: #FFFFFF;
	font-size: 1.4em;
	letter-spacing: 0.04em;
	padding: 5px 15px;
}
header#masthead nav.main-navigation ul li a:hover { color: #efd96c; }

header#masthead .header-socials a { color: #c0c5c9; }
header#masthead .header-socials a:hover { color: #efd96c; }

/* =Homepage
-------------------------------------------------------------- */
body.home #section { position: relative; }

.stripe-below { padding-bottom: 50px !important; margin-bottom: 30px !important; position: relative; }
.stripe-below:after {
	content: '';
	width: 100%;
	height: 15px;
	bottom: 0px; 
    left: 0;
    opacity: 0.5;
	position: absolute;
    background: url('images/grunge-border-line.png') repeat-x top center / auto 100%;
    z-index: 1;
}

/* Home (Navigation) */
body.home header#masthead { 
    padding: 15px 5vw;
    background: transparent;
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    z-index: 99;
}
body.home header#masthead .site-branding { display: none; }

body.home header#masthead nav.main-navigation { flex: 5; }
body.home header#masthead nav.main-navigation ul {
    display: inline-flex;
    padding-left: 0;
}
body.home header#masthead nav.main-navigation ul li a { padding: 5px 3vw 5px 0; }

/* Video Hero */
#section.video-hero {
    display: block; 
    min-height: auto;
    padding: 20dvh 0 0;
}
#section.video-hero:before {
    content: '';
    width: 100%;
    height: 100%;
    background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,1) 81%, rgba(0,0,0,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 81%,rgba(0,0,0,1) 100%);
    background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 81%,rgba(0,0,0,1) 100%);
    position: absolute;
    bottom: 0; left: 0;
    opacity: 0.8;
    z-index: 2;
}
#section.video-hero .container { position: relative; z-index: 9; }
#section.video-hero .container:after { display: none; }
#section.video-hero .hero-logo { 
    text-align: center; 
    padding: 50px 0 calc(3dvh + 50px);
}
#section.video-hero .hero-logo img {   max-width: 650px;}
#section.video-hero .iframe-wrapper { opacity: 0.7; }


/* Overlay Section */
#section.overlay {
    background: url('images/background-overlay.png') repeat-x top center / 1200px auto;
    margin-top: -175px;
    position: relative;
    z-index: 5;
    padding-top: 150px;
}
.promo-area { align-items: inherit; }
.homepage-promo { flex: 2; }
.homepage-album { 
    background: url('images/grunge-border-left.png') no-repeat left 20px top / 12px auto;
    padding-left: 50px; 
    text-align: center; 
}
.homepage-album h4 { font-size: 1.25em; margin: 10px auto; color: #FFFFFF; }
.homepage-album a.large-cta { margin: 25px auto 0; width: 100%; }


/* VIP */
.homepage-vip { 
    padding: 15px;
    background-color: #000000;
    background-position: center left; 
    background-size: contain;
    background-repeat: no-repeat;
    border: 1px solid #222222;
    margin-bottom: -25px;
}

.homepage-vip .vip-details { 
    background: -moz-linear-gradient(left,  rgba(0,0,0,0) 0%, rgba(0,0,0,1) 21%, rgba(0,0,0,1) 100%);
    background: -webkit-linear-gradient(left,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 21%,rgba(0,0,0,1) 100%);
    background: linear-gradient(to right,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 21%,rgba(0,0,0,1) 100%);
    flex: 1; 
    padding: 25px;
}
.homepage-vip .vip-details h4 { font-size: 2.25em; margin: 0 0 10px; }
.homepage-vip .vip-details p {
    color: #bcbcbc;
    margin: 15px 0 25px;
    display: block;
}



/* Ad Carousel */
#section.home-carousel { display: block; }

.section-title { padding: 20px 0 25px; }
.section-title h3 { margin: 0; }
.section-title.flex { justify-content: space-between; }
.section-title.flex>* { flex: inherit; }
.section-title a.list-cta { 
    font-size: 0.8em;
    line-height: 1em;
    display: table;
    letter-spacing: 0.06em;
    padding: 5px 0;
    color: #999999;
    text-transform: uppercase; 
    font-weight: 400; 
    text-decoration: none; 
    border-bottom: 1px solid #444444;
}
.section-title a.list-cta:hover { color: #FFFFFF; border-bottom: 1px solid #FFFFFF; }


/* Socials */
#section.home-socials {
    padding: 0 0 25px;
    min-height: auto;
}
#section.home-socials .flex { align-items: inherit; }
#section.home-socials .flex>* { padding: 0 2vw; }
#section.home-socials h4 { margin-bottom: 20px; }
#section.home-socials .home-spotify iframe { height: 90%; }

/* Events */
#section.home-events { padding: 0; }

/* News */
#section.home-news { padding: 25px 0 50px; }
#section.home-news .news-list.flex {
    align-items: inherit;
    width: calc(100% + 20px);
    margin-left: -10px;
}
#section.home-news .news-list .post-thumbnail { height: 250px; overflow: hidden; }
#section.home-news .news-list .post-thumbnail img { object-fit: cover; object-position: center; height: 250px; }

/* Videos */
#section.home-video {
    background: url(images/video-home-bg.png) repeat-x center center / auto 100%;
    padding: 30px 0;
    margin: 5px auto 35px;
}
#section.home-video .container { padding: 0 20px; }
.accordion-item {
    overflow: hidden;
    border-bottom: 1px solid #000000;
}
.accordion-item:last-of-type { border-bottom: none; }
.accordion-panel { 
    display: none; 
}

.accordion-item i { 
    transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;  }
.accordion-item.is-active i { transform: rotate(180deg); }

.accordion-title.flex { justify-content: space-between; padding: 15px 0; }
.accordion-title.flex>* { flex: initial; }
.accordion-title.flex h4 { flex: 2; margin: 0; font-size: 2em; color: #ececec; }
.accordion-item:first-of-type .accordion-panel { display: block; }

.accordion-title i {
    color: #999998;
}


/* 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; }
.owl-nav.disabled { display: none !important; }



/* =Releases
-------------------------------------------------------------- */
#section.releases { display: block; padding: 0; }
#section.archive-listing,
#section.releases { min-height: auto; padding-top: 50px; }


/* Releases Carousel */
.releases-carousel { 
    background: url('images/carousel-bg.png') repeat-x top center / auto 100%;
	padding: 30px 0;
    margin-bottom: 25px;
}

.releases-carousel .album-details { display: none; }

.owl-carousel .owl-item img { margin: 0; }

.releases-grid-item .album-details h4 {
    font-size: 1.5em;
    margin: 8px 0 0;
}
.releases-grid-item .album-details h4 a { color: #e8e1d2; }
.releases-grid-item .album-details h4 a:hover { color: #efd96c; }
.releases-grid-item .album-details .album-year { font-size: 0.8em; }


/* Releases Listing */
.releases-listing.flex { align-items: inherit; }
.releases-listing.flex>*,
.archive-listing.flex>* {
    flex: 1 0 33.3%;
    width: 33.3%;
    max-width: 33.3%;
    padding: 5px 10px 25px;
}

.album-details a { text-decoration: none; }
.album-details h4 { 
    margin: 15px 0 0; 
    font-size: 1.75em; 
}
.album-year {
    display: block;
    font-size: 0.9em;
    line-height: 1.5em;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #999999;
}
/* Releases Details */
.releases-detail.flex { align-items: inherit; }
.releases-detail.flex>* { padding: 25px; }

.releases-detail h2 { line-height: 0.9em; }
.releases-detail.flex.stripe-below {
    margin-bottom: 0 !important;
    padding-bottom: 25px !important;
}


/* Tracklisting */
.disc { padding: 5px 0; }
.disc-title {
    font-family: 'Mocha Mattari', sans-serif;
    padding: 5px 0;
    text-transform: uppercase;
    font-size: 1.3em;
}
.tracklist { margin: 5px 0 20px; }

.album-download {
    display: block;
    margin-top: 5px;
}
.album-download a.large-cta { display: block; }
.album-download .stream {
    padding: 10px 0;
    margin-bottom: 15px;
    font-size: 1.2em;
}
.album-download .stream a { padding: 10px 25px 0 0; color: #e3dbd7; }


/* =Events
-------------------------------------------------------------- */
header.page-header { text-align: center; padding: 15px 0 25px; }
header.page-header h1 { margin: 0 auto; }

/* Parallax Hero */
.fullwidth-hero.page-hero { 
    padding: 18vw; 
    min-height: 450px; 
    max-height: 650px; 
    margin-top: -110px; 
    margin-bottom: 60px; 
    position: relative;
}
.fullwidth-hero.page-hero:after {
    content: '';
    background: url('images/metal-bg.jpg') repeat-x top center / auto 100%;
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: -15px;
    left: 0;
    z-index: 3;
}
.fullwidth-hero.page-hero:before {
    content: '';
    width: 100%;
    height: 100%;
    background: -moz-linear-gradient(top,  rgba(0,0,0,0.72) 0%, rgba(0,0,0,0) 47%, rgba(0,0,0,0) 80%, rgba(0,0,0,0.11) 100%);
    background: -webkit-linear-gradient(top,  rgba(0,0,0,0.72) 0%,rgba(0,0,0,0) 47%,rgba(0,0,0,0) 80%,rgba(0,0,0,0.11) 100%);
    background: linear-gradient(to bottom,  rgba(0,0,0,0.72) 0%,rgba(0,0,0,0) 47%,rgba(0,0,0,0) 80%,rgba(0,0,0,0.11) 100%);
    position: absolute;
    bottom: 0; left: 0;
    z-index: 2;
}

/* Event Listing */
.event-list-item {
    font-family: 'Mocha Mattari', sans-serif;
    color: #FFFFFF;
    text-transform: uppercase;
    font-size: 1.2em;
    line-height: 1em;
	padding: 12px 15px 12px 20px;
}
.event-list-item a { text-decoration: none; color: #FFFFFF; }
.event-list-item:nth-child(even) { background: rgba(83,83,83,.1); }

.event-location {
    font-family: 'Lato', sans-serif;
    font-size: 0.75em;
    padding-right: 50px;
    flex: 1.5;
}
.event-location a { color: #b1bcc0; }
.event-date a { color: #81898c; }
.event-city { font-size: 1.25em; flex: 2; }
.event-purchase { flex: 2; }
.event-purchase .large-cta { margin: 5px; font-size: 0.9em; }
.event-purchase .large-cta.status {
    color: #292626;
    border: 1px solid #292626;
    background: transparent;
}

.event-city a:hover,
.event-location a:hover { color: #efd96c; }
.event-container.container.stripe-below { margin-bottom: 0 !important; }


/* Event Detail */
#section.event-single-details { min-height: auto; padding: 5vw 0 0; }
#section.event-single-details .container { padding-bottom: 50px !important; margin-bottom: 20px !important; }
#section.event-single-details .event-details {
    text-align: center;
    margin-bottom: 50px;
}
#section.event-single-details .event-details h2  { margin: 5px 0 0; color: #FFFFFF; font-size: 3em; }
#section.event-single-details .event-details h4 { color: #81898c; font-size: 1.5em; margin-bottom: 15px; }
#section.event-single-details .event-location strong {
    font-family: 'Mocha Mattari', sans-serif;
    color: #efd96c;
    font-size: 2em;
    display: block;
    margin-bottom: 25px;
}

#section.event-single-details .event-location { 
    font-size: 0.8em;
    line-height: 1.5em;
    padding: 10px 0; 
}
#section.event-single-details .event-location a { display: block; margin: 5px auto 15px; }

#section.event-single-details .event-city {
    font-family: 'Mocha Mattari', sans-serif;
    font-size: 2em;
    letter-spacing: 0.02em;
    line-height: 1.25em;
}
#section.event-single-details .venue-address { color: #b4c0c4; font-size: 1.1em; line-height: 1.5em; }


.event-details .event-purchase { max-width: 400px; margin: 15px auto; }
.event-details .event-purchase>* { margin: 0 5px; }

#section.event-single-details .event-details .event-purchase>* { font-size: 1.25em; }

#section.event-single-details .event-additional {
    padding: 25px 5vw;
    font-size: 0.9em;
    line-height: 1.5em;
}


/* =News
-------------------------------------------------------------- */
/* News Listing */
article.post-list .flex .post-thumbnail { flex: 1.5; }
article.post-list .flex .article-list-content {
    flex: 2;
    padding-left: 50px;
}
article.post-list:first-of-type { padding-top: 20px; }
article.post-list { padding: 40px 0 60px; position: relative; }
article.post-list:after {
    content: '';
    width: 100%;
    height: 15px;
    bottom: 0px; 
    left: 0;
    opacity: 0.5;
    position: absolute;
    background: url('images/grunge-border-line.png') repeat-x top center / auto 100%;
    z-index: 1;
}
article.post-list:last-of-type:after { display: none; }

article.post-list:last-of-type { border-bottom: none !important; }
article.post-list a { text-decoration: none; }
article.post-list h2.entry-title {
    font-size: 2.5em;
    margin: 0 0 15px;
}
article.post-list .post-thumbnail { height: 320px; overflow: hidden; border: 1px solid rgba(255,255,255,0.1); }
article.post-list .post-thumbnail img { object-fit: cover; object-position: center; height: 320px; }
article.post-list .article-list-content { padding: 0 3vw; }
article.post-list .article-list-excerpt { font-size: 0.95em; line-height: 1.5em; padding: 0;}
article.post-list .entry-date {
    font-size: 0.8em;
    line-height: 1.5em;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #919499;
}
article h2.entry-title {  font-size: 2em; line-height: 1em; margin: 10px 0 5px; }
article h2.entry-title a { text-decoration: none;}
article .entry-date {
    font-size: 0.8em;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #999999;
}
article.post-list .read-more {
    display: table;
    margin: 15px 0 0;
}


/* Article Grid */
article.post-grid { padding: 0 10px; }
article.post-grid .article-list-excerpt { font-size: 0.9em; line-height: 1.5em; margin: 10px 0; display: block; }
article.post-grid .read-more a.large-cta { margin: 0; }
/* Single News */
article.post-single { 
    margin: 50px auto;
}
article.post-single header {
    padding: 25px 0;
    text-align: center;
}
article.post-single header h1 {
    color: #FFFFFF;
    margin: 0 auto 10px;
}
article.post-single header .entry-date {
    font-size: 0.8em;
    line-height: 1.5em;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #919499;
}
article.post-single .entry-content { padding: 25px 5vw 0; }
article.post-single .container.stripe-below { margin-bottom: 25px !important; }

.entry-content img { width: auto;}

.read-more { text-align: center; padding: 15px 0; margin: 0 auto; }
.read-more a.large-cta { padding: 13px 50px; margin: 0 auto; }


/* Pagination */
.paginate .wp-paginate { 
    width: 100%;
    font-size: 0.8em;
    font-weight: 600;
    padding: 15px 0;
    margin-top: -25px;
}
.paginate .wp-paginate .current {
    color: #000000;
    background: #efd96c;
    border: 1px solid #efd96c;
    margin-right: 5px;
    padding: 5px 10px;
}
.paginate .wp-paginate a {
    background: transparent;
    border: 1px solid #333333;
    color: #919499;
    margin-right: 5px;
    padding: 7px 10px;
    text-align: center;
    text-decoration: none;
    font-size: 0.8em;
}
.paginate .wp-paginate a:hover {
    color: #000000;
    background: #efd96c;
    border: 1px solid #efd96c;
}


/* =Press
-------------------------------------------------------------- */
#section.press header.entry-header {
    text-align: center;
    margin-bottom: 25px;
}
#section.press header.entry-header h1 { color: #EFEFEF; }
.press-downloads a.large-cta {
    display: block;
    width: 100%;
}
.press-downloads a.large-cta i { margin: 0 15px; }

.press-links.flex {
    width: calc(100% + 10px);
    margin-left: -5px;
    align-items: inherit;
}
.press-links.flex .press-item { flex: 1 0 calc(50% - 10px); width: calc(50% - 10px); padding: 5px;}
.press-links.flex a.large-cta { margin: 5px auto; }
.press-links.flex a.large-cta i { margin: 0 15px }


.press-downloads.additional .press-links.flex>* { 
    flex: 1 0 calc(50% - 10px); 
    width: calc(50% - 10px);
    margin: 5px;
}

.press-item { display: flex; flex-direction: column; }
.press-item .press-image { height: 250px; overflow: hidden; position: relative; }
.press-item .press-image img { object-fit: cover; width: 100%; height: 100%; border: 1px solid #151515; }
.press-item span.caption {
    font-size: 0.8em;
    color: #75797c;
    text-align: center;
    width: 100%;
    padding: 3px 0 0;
    display: block;
    text-transform: uppercase;
}
.press-links.flex .press-item a.large-cta { width: 100%; max-width: 100%; margin-bottom: 15px; }

.press-downloads .embed-container { margin-bottom: 15px; }
.press-downloads:last-of-type.stripe-below { padding-bottom: 0 !important; margin-bottom: 0 !important; }
.press-downloads:last-of-type.stripe-below:after { display: none; }

.press-downloads.press-album .press-links a.large-cta { margin: 5px 0; }

/* 404 */
#section.error-404 { text-align: center; min-height: 60vh; }
#section.error-404 a.large-cta { margin: 25px auto; display: table; }

/* =Footer
-------------------------------------------------------------- */
footer.site-footer { 
	padding: 40px 0;
}
/* Footer Socials */
.footer-socials {
	font-size: 1.25em;
	max-width: 320px;
	margin: 0 auto 2vw;
}

/* Copyright */
footer.site-footer .site-info {  
	color: #9c9c9c;
	font-size: 0.8em; 
	line-height: 1.5em; 
}
footer.site-footer .site-info a { color: inherit; }
footer.site-footer .site-info ul { margin: 10px auto; }
footer.site-footer .site-info ul li { display: inline-block; margin: 0 20px 0 0; }
footer.site-footer .site-info ul li a {
    color: #DDDDDD;
    font-size: 0.9em;
    text-decoration: none;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
footer.site-footer .site-info ul li a:hover { color: #efd96c; }

footer.site-footer .footer-socials a { color: #878c90; }
footer.site-footer .footer-socials a:hover { color: #efd96c; }

footer.site-footer .copyright.flex { padding: 5px 0; text-align: left; }
footer.site-footer .copyright.flex>* { flex: inherit; }
footer.site-footer .please-co { margin-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) {
    .homepage-vip { 
        background-position: top -3vw center;
        background-size: 100% auto; 
        display: block; 
        padding: 25vw 0 0 0;
    }
    .homepage-vip .vip-details {
        padding: 5vw;
        background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(0,0,0,1) 15%, rgba(0,0,0,1) 100%);
        background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 15%,rgba(0,0,0,1) 100%);
        background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,1) 15%,rgba(0,0,0,1) 100%);
    }
}
@media only screen and (max-width: 1024px) {
    header#masthead .header-socials { flex: 2; }
    #section.video-hero .hero-logo img { max-width: 450px; }
    #section.video-hero { padding-top: 400px; }

    /* Home */
    .section-title { padding: 15px 0 25px; }
    #section.home-news .news-list .post-thumbnail,
    #section.home-news .news-list .post-thumbnail img { height: 220px; }
    article h2.entry-title { font-size: 1.5em; }

    /* Events */
    .event-list-item { padding: 20px 15px; }
}   
@media only screen and (max-width: 820px) {
    header#masthead { margin-bottom: 20px; }
    header#masthead .site-branding { flex: inherit; }
    header#masthead .header-socials { display: none; }
    header#masthead .site-branding img { max-width: 150px; }
    #section { padding: 30px 0; }

	/* 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: 12px;
	    right: 5vw;
	    z-index: 9;
	}
	button.menu-toggle span {
	    display: block;
	    position: absolute;
	    height: 2px;
	    width: 40px;
	    background: #FFFFFF;
	    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: #efd96c; }   
	.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%;
	}
    body.home header#masthead nav.main-navigation ul,
    header#masthead nav.main-navigation ul { display: none; }
    body.home header#masthead nav.main-navigation.toggled ul,
    header#masthead nav.main-navigation.toggled ul {
        display: block;
        margin-top: 10vw;
    }
    body.home header#masthead nav.main-navigation.toggled ul li a,
    header#masthead nav.main-navigation.toggled ul li a { font-size: 2.5em; padding: 4vw 0; text-align: right; }

	
	/* Overlay */
	header#masthead nav.main-navigation.toggled {
	    position: fixed;
	    top: 0;
	    left: 0;
	    background: rgba(0,0,0,0.9);
	    padding: calc(5vw + 30px) 5vw 5vw;
	    height: 100%;
	    z-index: 99;
	    display: flex;
	    justify-content: space-between;
	    flex-direction: column;
	}

    .fullwidth-hero.page-hero { min-height: 400px; max-height: 400px; }
    .fullwidth-hero.page-hero:after {  height: 40px; }

    /* Home */
    #section.video-hero { padding-top: 250px; }
    .iframe-wrapper video { min-height: 75vh;}
    .mailinglist-hero a.large-cta { width: 100%; }
    #section.home-news .news-list.flex { width: 100%; margin: 0 auto; }
    #section.home-video .container { padding: 0; }

    .promo-area.flex { display: block; }
    .promo-area.flex .homepage-album { background: none; padding: 3vw 0 0; }
    .promo-area.flex .homepage-album a.large-cta { margin: 10px auto 0; }
    .homepage-vip { margin-bottom: 5px; }

    #section.home-news .news-list.flex,
    #section.home-socials .flex { display: block; }
    article.post-grid { padding: 15px 0; }
    article h2.entry-title { font-size: 1.75em; margin: 12px 0 5px; }

    #section.home-socials h4 { font-size: 1.5em; margin-bottom: 10px; }
    #section.home-socials .home-spotify iframe {height: 250px; margin-bottom: 35px;}

    /* Releases */
    .photo-gallery .photo-grid .gallery-item,
    .releases-listing.flex>*,
    .archive-listing.flex>* {
        flex: 1 0 50%;
        width: 50%;
        max-width: 50%;
        padding: 5px 5px 15px;
    }
    .photo-gallery .photo-grid .gallery-item,
    .photo-gallery .photo-grid .gallery-item img { height: 225px; }
    .releases-detail.flex>* { padding: 5px 10px; }
    .releases-detail h2 { width: 100%; font-size: 2.5em; }
    .disc-title { font-size: 1.4em; }
    .owl-nav button { width: 40px; height: 40px; margin: 0; }

    /* Events */
    .event-list-item .event-date  { flex: 1 0 100%; margin-bottom: 10px;}
    .event-list-item .event-purchase { flex: 1 0 100%; margin-top: 15px; max-width: 100%; }
    .event-list-item .event-city,
    .event-list-item .event-location { padding: 10px 0; }

    /* News */
    article.post-list { padding: 30px 0; }
    article.post-list .read-more { display: none; }
    article.post-list h2.entry-title { font-size: 2em; }
    article.post-list .flex .article-list-content { padding: 0 0 0 5vw; flex: 2; }

    /* Footer */
    footer.site-footer .container.flex { flex-direction: column-reverse; text-align: center; }
    footer.site-footer .footer-socials { width: 100%; text-align: center; }
    footer.site-footer .site-info ul li { margin: 0 10px; }
    footer.site-footer .copyright.flex { flex-direction: column-reverse; padding: 0; text-align: center; }
    footer.site-footer .copyright.flex>* { padding: 10px 0; }
    footer.site-footer .please-co { margin-right: 0; }

}
@media only screen and (max-width: 640px) {
    .container { width: 85vw; }
    body { font-size: 17px; line-height: 1.5em; }

    h1 { font-size: 3em; }
    h2 { font-size: 2.5em; }
    h3, h4 { font-size: 2em; }

	/* Homepage */
    #section.video-hero .hero-logo img { max-width: 380px; }
    .section-title { padding: 15px 0 20px; }
    .accordion-title.flex h4 { font-size: 1.75em; margin: 5px 0; }
    .stripe-below:after { background-size: auto 150%; }
    #section.home-socials h4 { font-size: 1.5em; margin: 10px 0 15px; }

    /* Events */
    .page-hero h2 { text-align: center; font-size: 2.5em; margin-bottom: 25px; }
    .event-list-item { text-align: center; }
    .event-list-item .event-city,
    .event-list-item .event-location { padding: 5px 0; }
    .event-list-item .event-city { font-size: 1.5em; }
    .event-list-item .event-details.flex { flex-direction: column; }
    .event-list-item .event-purchase { min-width: 80%; }

    #section.event-single-details { padding: 50px 0 0; }
    #section.event-single-details .container { padding-bottom: 30px !important; }
    #section.event-single-details .event-details h2 { font-size: 2.5em; }
    #section.event-single-details .event-city { font-size: 1.75em; }

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

    /* Media */
    .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; }
    .archive-listing article h3 { margin: 8px 0 15px; }

    .media-title { margin: 50px auto 25px; }
    .media-title h1 { font-size: 2.5em; }

    .photo-gallery { padding-top: 0; }
    .photo-gallery .photo-grid .gallery-item,
    .photo-gallery .photo-grid .gallery-item img { height: 160px; }

    .fullwidth-hero.page-hero { min-height: 350px; max-height: 350px;}

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

    /* News */
    article.post-list { padding: 25px 0; }
    article.post-list .flex { flex-direction: column; }
    article.post-list .flex .post-thumbnail { width: 100%;}
    article.post-list .flex>* { padding: 0; }
    article.post-list h2.entry-title { margin-bottom: 5px; }
    article.post-list .article-list-excerpt { font-size: inherit; line-height: inherit; }
    article.post-list .flex .article-list-content,
    article.post-single .entry-content { padding: 5vw 0; }

    /* Press */
    #section.press header.entry-header { padding: 25px 0 5px; }
    #section.press header.entry-header h1 { font-size: 2.25em; }
    .press-downloads:last-of-type.stripe-below { padding: 20px 0; }
    .press-links.flex .press-item,
    .press-downloads.additional .press-links.flex>* { flex: 1 0 100%; width: 100%; max-width: 100%; }

}

@media only screen and (max-width: 420px) {
    body { font-size: 16px; line-height: 1.6em; }

    .section-title a.list-cta { font-size: 0.7em; letter-spacing: 0; }

    .fullwidth-hero.page-hero { min-height: 320px; max-height: 320px; }
    .fullwidth-hero.page-hero:after {  height: 30px; }
    .fullwidth-hero.page-hero:before { background: linear-gradient(to bottom,  rgb(0 0 0 / 88%) 0%,rgb(0 0 0 / 53%) 47%,rgb(0 0 0 / 17%) 80%,rgb(0 0 0 / 55%) 100%); }

    .archive-listing article .post-thumbnail,
    .archive-listing article .post-thumbnail img { height: 200px; }


    /* Releases */
    #section.archive-listing, #section.releases { padding-top: 0; }
    .releases-listing.flex>* {
        flex: 1 0 100%;
        width: 100%;
        max-width: 100%;
        padding: 3vw;
    }
    .releases-grid-item .album-details h4 { font-size: 1.75em; }
    article.post-single header h1,
    .releases-detail h2 { font-size: 2em; }

}

