	/* GLOBAL CSS */

/******************
*****STRUCTURE*****
*******************

Main Container - Repeating background
	Header - Top Image
		Header Container
			Nav
			Title
			Non-Profit Statement
			Whisper Logo

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

/*PT Serif*/
@font-face {
    font-family: 'PT Serif';
    src: url('../fonts/PTF55F-webfont.eot');
    src: url('../fonts/PTF55F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTF55F-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'PT Serif';
    src: url('../fonts/PTF56F-webfont.eot');
    src: url('../fonts/PTF56F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTF56F-webfont.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'PT Serif';
    src: url('../fonts/PTF75F-webfont.eot');
    src: url('../fonts/PTF75F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTF75F-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: 'PT Serif';
    src: url('../fonts/PTF76F-webfont.eot');
    src: url('../fonts/PTF76F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTF76F-webfont.woff') format('woff');
    font-weight: bold;
    font-style: italic;
}
/*Montserrat*/
@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Regular.eot');
    src: url('../fonts/Montserrat-Regular.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Montserrat-Regular.woff') format('woff'),
		 url('../fonts/Montserrat-Regular.woff2') format('woff2'),
		 url('../fonts/Montserrat-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Montserrat-Light';
    src: url('../fonts/Montserrat-ExtraLight.eot');
    src: url('../fonts/Montserrat-ExtraLight.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Montserrat-ExtraLight.woff') format('woff'),
		 url('../fonts/Montserrat-ExtraLight.woff2') format('woff2'),
		 url('../fonts/Montserrat-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}
@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-SemiBold.eot');
    src: url('../fonts/Montserrat-SemiBold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Montserrat-SemiBold.woff') format('woff'),
		 url('../fonts/Montserrat-SemiBold.woff2') format('woff2'),
		 url('../fonts/Montserrat-ExtraLight.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Montserrat';
    src: url('../fonts/Montserrat-Bold.eot');
    src: url('../fonts/Montserrat-Bold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Montserrat-Bold.woff') format('woff'),
		 url('../fonts/Montserrat-Bold.woff2') format('woff2'),
		 url('../fonts/Montserrat-ExtraLight.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

.ptserif {
	font-family: "PT Serif";
	font-weight: normal;
	font-style: normal;
	letter-spacing: normal;
}
.montserrat {
	font-family: "Montserrat";
	font-weight: normal;
	font-style: normal;
	letter-spacing: normal;
}
.montserrat-title {
	font-family: "Montserrat";
	font-weight: normal;
	font-style: normal;
	letter-spacing: normal;
}

/*TEXT STRUCTURES*/
h1,h2,h3,h4,h5,h6 {
	font-family: 'Montserrat-Light'; 
	text-transform: uppercase;
	letter-spacing: .05em;
	line-height:100%;
	color:#fff;
	margin: 0;
	padding: 0;
	margin-bottom:10px;
	text-shadow:
        0.03px 0 #222222,
        0 0.03px #222222,
        -0.03px 0 #222222,
        0 -0.03px #222222,
        -0.03px -0.03px #222222,
        -0.03px 0.03px #222222,
        0.03px -0.03px #222222,
        0.03px 0.03px #222222;
}

h1 { font-size:2.1em; font-weight: 50;}
h2 { font-size:1.3em; font-weight: 100;}
h3 { font-size: 1em; font-weight: 100; line-height:120%;}
h4 { font-size: .9em; font-weight: 100;}
h5 { font-size: .75em; font-weight: 100;}
h6 { font-size: .6em; font-weight: 100;}

p {font-family: 'Montserrat-Light'; color:#fff;}
a {color:#fff; text-decoration: none;}

.callout {
	font-family: "PT Serif";
	font-style: italic;
	text-transform: none;
}

.callout-sm {
	font-style: italic;
	font-size: .7em!important;
	text-transform: none;
}

/*BUTTONS*/

.ticket-btn a {
	text-transform: uppercase;
	letter-spacing: .05em;
	line-height:100%;
	color:#fff;
	display: inline-block;
	width:80%;
	padding: 0.7em 1.2em 0.5em;
	margin: 0 0.3em 0 0;
	border-radius: 0.12em;
	box-sizing: border-box;
	text-decoration: none;
	font-size: .8em;
	letter-spacing: 0.05em;
	text-align: center;
	transition: all 0.2s;
}
.ticket-btn a::before {
    content: url('https://www.patrioticfestival.com/images/icon-ticket-white.svg');
    width: 5px;
    height: auto;
	left: -30px;
	vertical-align: middle;
	padding-right: 25px;
    display: inline-block;
      }
.ticket-btn a:hover {
	color: #FFF!important;
	background-color: #961D1D;
}
@media all and (max-width:30em){
	.ticket-btn a {
		display: block;
		margin: 0.4em auto;
	}
} 

.compact-btn a {
	text-transform: uppercase;
	letter-spacing: .05em;
	line-height:100%;
	color:#fff;
	display: inline-block;
	width:80%;
	padding: 0.7em 1.2em 0.5em;
	margin: 0 0.3em 0 0;
	border-radius: 0.12em;
	box-sizing: border-box;
	text-decoration: none;
	font-size: 1.1em;
	letter-spacing: 0.05em;
	text-align: center;
	transition: all 0.2s;
}
.compact-btn a:hover {
	color: #FFF!important;
	background-color: #961D1D;
}
@media all and (max-width:30em){
	.compact-btn a {
		display: block;
		margin: 0.4em auto;
	}
} 

.solid-bg {
	background-color: #961D1D;
}
/*two-up button*/
.two-up-btn {
  flex: 1; /* Allow the buttons to take equal space */
}

.two-up-btn a {
  text-transform: uppercase;
  letter-spacing: .05em;
  line-height: 100%;
  color: #fff;
  display: block; /* Change to block to fill the container horizontally */
  width: 100%; /* Fill the available space within the container */
  padding: 0.7em 1.2em 0.5em;
  margin: 0 0.3em 0 0;
  border-radius: 0.12em;
  box-sizing: border-box;
  text-decoration: none;
  font-size: 1.1em;
  letter-spacing: 0.05em;
  text-align: center;
  transition: all 0.2s;
}

.two-up-btn a:hover {
  color: #FFF!important;
  background-color: #961D1D;
}

.two-up-button-container {
  display: flex;
  justify-content: center; /* To horizontally center the buttons */
}

.three-up-btn {
  flex: 1;
  margin: 0;
}

.three-up-btn a {
  text-transform: uppercase;
  letter-spacing: .05em;
  line-height: 100%;
  color: #fff;
  display: block;
  width: 100%;
  padding: 0.7em 1em 0.5em;
  margin: 0;
  border-radius: 0.12em;
  box-sizing: border-box;
  text-decoration: none;
  font-size: 1.1em;
  text-align: center;
  transition: all 0.2s;
  background-color: #961D1D;
}

.three-up-btn a:hover {
  color: #FFF!important;
  background-color: #7f1919;
}

.three-up-button-container {
  display: flex;
  justify-content: center;
  gap: 10px;
  padding: 0 10px;
  box-sizing: border-box;
}

@media all and (max-width:30em){
  .three-up-button-container {
    flex-direction: column;
  }
}

/* SPECIAL FORMATTING CONTROLS */

/*stop expanding past 1000px*/.width-control {margin: 0 auto!important; max-width: 1000px;}
/*use if block is too thin*/ .minheight-control {padding: 20px 0;}
/*use if block is too tight*/ .added-padding {padding: 20px;}
/*change BG to BLUE*/ .blue-bg {background-color: #111726!important;}
/*change BG to RED*/ .red-bg {background-color: #230506!important;}
/*change BG to PURPLE*/ .purple-bg {background-color: #1c0720!important;}
/*change BG to BLACK*/ .black-bg {background-color: #000!important;}
/*change BG to DARK BLUE*/ .dkblue-bg {background-color: #111726!important;} 
/*change BG to PALE WHITE*/ .white-bg {background-color: #F7F4ED!important;}
/*make sure no images extend beyond the screen*/ img {max-width:100%;}
/*remove borders*/ .no-borders {border:none!important;}
/*add bottom border - dark*/ .bottom-border {border-bottom: solid 5px #141414;}
/*add bottom border - red*/ .bottom-border-red {border-bottom: solid 5px #660000!important;}
/*add top border - red*/ .top-border-red {border-top: solid 5px #660000;}
/*change text to RED*/ .text-red{color:#ff0000!important;}
/*make logos smaller*/ .image-small{max-height:100px!important; height:auto; max-width:140px!important; width:auto;}
/*make logos medium*/ .image-medium{max-height:180px!important; height:auto; max-width:160px!important; width:auto;}
/*make logos large*/ .image-large{max-height:300px!important; height:auto; max-width:300px!important; width:auto;}
/*make logos extra large*/ .image-xlarge{max-height:380px!important; height:auto; max-width:380px!important; width:auto;}

/*change to lower case text*/ .lower-text { text-transform:none;}
/*add a shadow to the text*/ .text-shadow {text-shadow: 1px 0 #222222, 0 1px #222222, -1px 0 #222222, 0 -1px #222222, -1px -1px #222222,-1px 1px #222222, 1px -1px #222222, 1px 1px #222222;}

/* BODY STRUCTURE */
body {
	margin: 0;
	text-align: center;
	border-top: 5px solid #3d1111;
	font-size: 16px;
}

body.mobile-nav-open {
	overflow: hidden;
}

.main-container {
	background-image: url("../images/bg-pattern-mottled-blue.gif");
	background-repeat: repeat;
	padding:0;
	margin:0;
	width:100%;
}


/*****************/
/*     HEADER    */
/*****************/

/* Page Specific Header Backgrounds */
.home{ background-image: url(../images/header-bg-home.jpg); }
.performers{ background-image: url(../images/header-bg-performers.jpg); }
.concert-zone{ background-image: url(../images/header-bg-concert-zone.jpg); }
.military-zone{ background-image: url(../images/header-bg-military-zone.jpg); }
.about{ background-image: url(../images/header-bg-about.jpg); }
.sponsors{ background-image: url(../images/header-bg-sponsors-2024.jpg); }
.festival-info{ background-image: url(../images/header-bg-festival-info.jpg); }
.stay-connected{ background-image: url(../images/header-bg-stay-connected.jpg); }

.header-background {
	width: 100%;
	max-width:1000px;
	align-content: space-between;
	background-repeat: no-repeat;
	margin: 0 auto;
	background-position:50%;
	background-size: cover;
}

.header-container {	
	background-repeat:no-repeat;
	background-position: top center;
	min-height: 590px;
	max-width:100%;
	width: 1000px;
	margin: 0 auto;
		display: -webkit-flex; 
		display: flex; 
		-webkit-flex-flow: row wrap; 
		flex-flow: row wrap; 
		//-webkit-justify-content:space-between;
		//justify-content:space-between;
*/	
}

.flexbreak {  /*CREATED TO FORCE A BREAK BETWEEN FLEX BOXES */
	/*flex*/ 	
		order:3;
		flex-basis: 100%;
	height: 0;
}
.title-container {
	/*flex*/	 
		order:2;
		flex-grow:1;
		flex-shrink:0;
	text-align: right;
	padding: 20px 20px 0 0;
}
/* Header title subtitle line: "COUNTRY WEEKEND" */
.title-subline {
	font-size: .62em;
	line-height: 1px;
	letter-spacing: 10px;
}

.nonprofit-container {
	/*flex*/ 
		order:5;
		flex-grow:1;
		flex-shrink:0;
		align-self: flex-end;
	margin-left: auto;
	text-align: right;
	padding: 0 20px 0 0;
}

.whisper-container {
	text-align:left;
	/*flex*/ 
		order:4;
		flex-grow:1;
		flex-shrink:0;
	margin-top: auto;
	padding: 0 0 0 20px;	
}

.mobile-nav-toggle {
	display: none;
}

nav {
	padding: 0 0 0 20px;
	text-align:left;
	/*flex*/ 
		order:1;
	font-size:.9em;
}
nav ul {
	padding:0;
	line-height:1.45em;
}
nav ul li {
	font-family: 'Montserrat-Light';
	list-style-type: none;
	text-transform: uppercase;
	text-shadow:
        0.03px 0 #222222,
        0 0.03px #222222,
        -0.03px 0 #222222,
        0 -0.03px #222222,
        -0.03px -0.03px #222222,
        -0.03px 0.03px #222222,
        0.03px -0.03px #222222,
        0.03px 0.03px #222222;
}
nav ul li a {
	text-decoration: none;
	color:#ffffff;
}

@media all and (max-width: 649px) {
	.header-container {
		position: relative;
	}

	.title-container h1 {
		font-size: clamp(1.35em, 6vw, 2.1em);
		line-height: 1.05;
		white-space: nowrap;
	}

	.title-subline {
		font-size: clamp(.5em, 2.8vw, .62em);
		letter-spacing: clamp(4px, 1.8vw, 10px);
	}

	.mobile-nav-toggle {
		display: flex;
		position: absolute;
		top: 12px;
		left: 14px;
		width: 44px;
		height: 40px;
		border: 1px solid rgba(255,255,255,.7);
		background: #0c1835;
		border-radius: 4px;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		gap: 4px;
		padding: 0;
		z-index: 10;
	}

	.mobile-nav-toggle span {
		display: block;
		width: 20px;
		height: 2px;
		background: #fff;
	}

	nav#site-nav {
		display: none;
		position: absolute;
		top: 56px;
		left: 10px;
		right: auto;
		width: calc(100% - 20px);
		padding: 0;
		background: rgba(12,24,53,.92);
		border: 1px solid rgba(255,255,255,.25);
		border-radius: 6px;
		z-index: 9;
	}

	nav#site-nav.is-open {
		display: block;
	}

	nav#site-nav ul {
		padding: 12px;
		margin: 0;
		line-height: 1.6em;
	}

	nav#site-nav ul li {
		margin: 0;
	}

	/* Index + Performers: stack image panel below text and center full-width */
	.artist-intro,
	.artist-featured {
		flex-direction: column;
	}

	.artist-intro .content-left,
	.artist-featured .content-left {
		width: 100%;
	}

	.artist-intro .content-right,
	.artist-featured .content-right {
		width: 100%;
		max-width: 100%;
		align-self: center;
		display: flex;
		justify-content: center;
	}

	.artist-intro .content-right img,
	.artist-featured .content-right img {
		display: block;
		width: 100%;
		margin: 0 auto;
	}

	.two-up-btn a {
		background-color: #961D1D;
		width: 80%;
		margin: 0 auto;
	}

	.compact-btn a {
		background-color: #961D1D;
	}

	/* Concert Zone mobile: stack paired subsection blocks vertically */
	.concert-zone-page section {
		flex-direction: column;
		align-items: stretch;
	}

	.concert-zone-page section > .subsection {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
		flex-basis: auto;
		min-width: 0;
	}

	.concert-zone-page .width-control,
	.concert-zone-page section,
	.concert-zone-page .subsection {
		overflow-x: hidden;
	}

	.concert-zone-page .subsection img,
	.concert-zone-page .subsection iframe {
		max-width: 100%;
		height: auto;
	}

	.concert-zone-page .subsection a,
	.concert-zone-page .subsection p,
	.concert-zone-page .subsection li {
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	/* Military Zone mobile cards: increase block height and keep photo anchored to bottom */
	.military-zone-page .sponsor-container {
		min-height: 210px;
		overflow: hidden;
		background: #111726;
	}

	.military-zone-page .sponsor-container .fade-bg {
		position: absolute;
		inset: 0;
		display: block;
	}

	.military-zone-page .sponsor-container .fade-bg img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: bottom right;
		float: none;
	}

	.military-zone-page .sponsor-container .fade-bg:after {
		background: linear-gradient(270deg, rgba(17,23,38,0) 0%, rgba(17,23,38,.35) 35%, rgba(17,23,38,.9) 70%, rgba(17,23,38,1) 90%);
	}

	.military-zone-page .sponsor-container .overlay-text {
		width: 56%;
		max-height: none;
		top: 0;
		bottom: 0;
		transform: none;
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding: 12px 8px 12px 2%;
		overflow: hidden;
		font-size: .82em;
		line-height: 1.2;
	}

	.military-zone-page .sponsor-container .overlay-text h3 {
		font-size: .95em;
	}
}

@media all and (max-width: 499px) {
	.whisper-container {
		display: none;
	}

	.nonprofit-container {
		margin-left: 0;
		text-align: center;
		padding: 0;
	}
}

/*Logo*/
.logo-position {
	display:block;
	position:absolute;
	margin:0 auto;
	width: 1000px;
	max-width:100%;
	top:180px;
}

/*****************/
/*     FOOTER    */
/*****************/

.footer-container {
	background-image: url("../images/bg-pattern-mottled-black.gif");
	background-repeat: repeat;
	padding:0;
	margin:0;
	width:100%;
}
.footer-background {
	padding-top:10px;
	width: 100%;
	max-width:1000px;
	min-height: 460px;
	align-content: space-between;
	background-repeat: no-repeat;
	margin: 0 auto;
	background-position:50%;
	background-size: cover;
	background-image: url(../images/footer-bg.jpg);
}
.footer-textblock {
	padding:20px;
	min-height:50px;
	background-color: #000;
}
.footer-textblock h4 a {
	color:#ffffff;
	text-decoration: none;
}

/*******************/
/****** FORM ******/
/*****************/

.form {
	text-align:center;
	background-color: #0d172a;
	border-radius: 20px;
	box-sizing: border-box;
	height: 500px;
	padding: 20px;
	width: 100%;
}
.input-container {
	height: 50px;
	position: relative;
	width: 100%;
}
.ic {
	margin-top: 40px;
}
.input {
 	background-color: #303245;
	border-radius: 12px;
	border: 0;
	box-sizing: border-box;
	color: #eee;
	font-size: 18px;
	height: 100%;
	outline: 0;
	padding: 4px 20px 0;
	width: 100%;
}
.cut {
  	background-color: #0d172a;
	border-radius: 10px;
	height: 20px;
	left: 20px;
	position: absolute;
	top: -20px;
	transform: translateY(0);
	transition: transform 200ms;
	width: 80px;
}
.cut-short {
	width: 100px;
}
.input:focus ~ .cut,
.input:not(:placeholder-shown) ~ .cut {
	transform: translateY(8px);
}
.placeholder {
	color: #65657b;
	font-family: sans-serif;
	left: 20px;
	line-height: 25px;
	pointer-events: none;
	position: absolute;
	transform-origin: 0 50%;
	transition: transform 200ms, color 200ms;
	top: 20px;
}
.input:focus ~ .placeholder,
.input:not(:placeholder-shown) ~ .placeholder {
	transform: translateY(-30px) translateX(10px) scale(0.75);
}
.input:not(:placeholder-shown) ~ .placeholder {
	color: #808097;
}
.input:focus ~ .placeholder {
	color: #961D1D;
}
.submit {
	background-color: #961D1D;
	border-radius: 12px;
	border: 0;
	box-sizing: border-box;
	color: #eee;
	cursor: pointer;
	font-size: 18px;
	height: 50px;
	margin-top: 38px;
	text-align: center;
	width: 100%;
}
.submit:active {
	background-color: #06b;
}

/*****************/
/* INFO SECTIONS */
/*****************/


section {
	max-width:100%;
	/*FLEX*/
		display: flex; 
		flex-flow: row nowrap; 
}

.section-title {
	padding: 10px 0;
	margin:0;
	background-color: #1e1e1e;
	border-top: solid 5px #660000;
	border-bottom: solid 5px #141414;
}

.countdown-wrap {
	padding: 20px 18px 24px;
	background: linear-gradient(180deg, #0a1022 0%, #111726 100%);
	text-align: center;
}

.countdown-title {
	margin: 0 0 14px;
	font-family: 'Montserrat';
	font-weight: bold;
	font-size: 1.15em;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.countdown-grid {
	max-width: 860px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(4px, 1vw, 12px);
}

.countdown-cell {
	padding: clamp(7px, 1.2vw, 12px) clamp(4px, 0.8vw, 8px) clamp(6px, 1vw, 10px);
	border: 1px solid rgba(255, 255, 255, 0.35);
	background-color: rgba(0, 0, 0, 0.35);
	min-width: 0;
}

.countdown-value {
	display: block;
	font-family: 'Montserrat';
	font-weight: bold;
	font-size: clamp(1.15em, 4.6vw, 2.1em);
	line-height: 1;
	color: #ffffff;
}

.countdown-label {
	display: block;
	margin-top: clamp(4px, 0.7vw, 8px);
	font-family: 'Montserrat';
	font-size: clamp(0.5em, 1.4vw, 0.72em);
	letter-spacing: clamp(0.06em, 0.3vw, 0.2em);
	text-transform: uppercase;
	color: #d9deea;
}

.subsection {
	max-width:100%;
	width:1000px;
	margin: 0 auto;
	//display: flex;
	flex-flow: wrap;
	justify-content: center;
	align-content: center;
	color:#fff;
	border-bottom: solid 10px #660000;
}
.subsection-title {
	padding:20px 0 10px 0;
	margin:10px 0;
	flex-basis: 740px;
	max-width:100%;
	background-color: #111726;
}

.short-title {
	padding:20px 0 10px 0;
	margin:0 auto;
	width: 730px;
	max-width:100%;
	background-color: #111726;
}

/* SPONSORS */
.sponsors-container {
	width: 1000px;
	max-width: 100%;
	margin:0 auto;
	padding: 20px 0;
}

.sponsors-container ul {
	width:100%;
	padding: 0 10% 10px;
	/*flex*/
		display: -webkit-flex; 
		display: flex; 
		-webkit-flex-flow: row wrap; 
		flex-flow: row wrap; 
		-webkit-justify-content: center; 
		justify-content:center;
		-webkit-align-items: center;
		align-items: center;
		
}

.sponsors-container ul li {
	-webkit-flex: 1 auto; flex: 1 auto;
	padding: 20px 5px;
	list-style-type:none;
}

.sponsors-container ul li img {
	max-width:220px;
	width:auto;
	max-height:150px;
	height:auto;
}

.artist-intro {
	max-width:100%;
	width: 1000px;
	margin: 0 auto;
	background-size: 1000px auto;
	border-bottom: solid 5px #141414;
}
.artist-intro h1 {
	font-size:3em; font-weight:600;
}
.artist-intro a {
	font-size: 1.4em;
}
.artist-featured {
	max-width:100%;
	//width: 1000px;
	margin: 0 auto;
	background-size: 1000px auto;
	border-bottom: solid 5px #141414;
}
.artist-background-red {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-block-red.jpg);
}
.artist-background-green {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-block-green.jpg);
}
.artist-background-blue {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-block-blue.jpg);
}
.artist-background-dkblue {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-block-dkblue.jpg);
}
.artist-background-purple {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-block-purple.jpg);
}
.artist-background-soft {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-soft.jpg);
}
.artist-background-pink {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-pink.jpg);
}
.artist-background-rich {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-rich.jpg);
}
.artist-background-valentine {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-valentine.jpg);
}
.artist-background-flag {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-flag.jpg);
}

.artist-background-flag2 {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-flag2.jpg);
}

.artist-background-camo {
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	background-image: url(../images/artist-background-camo.jpg);
}

.content-left {
	max-width:100%;
	align-self: center;
	min-width:50%;
	flex-grow:4;
	flex-shrink:0;
}

.content-right {
	padding:0;
	margin:0;
	max-width:100%;
	align-self: flex-end;
	justify-content: flex-end;
	flex-grow:0;
	flex-shrink:1;
}

.content-right img {
	max-width: 100%;
	margin: 0 auto;
	padding:0;
	vertical-align:bottom;
}

/***********************/
/*Homepage Crowd Shots*/
/*********************/

.crowdshot-intro {
	width: 1000px;
	max-width:100%;
	margin: 0 auto;
	background-size: 1000px auto;
	border-top: solid 5px #660000;
}
.crowdshot-intro h2 {
	max-width:100%;
	margin: 0 auto;
	align-self:flex-end;
	padding:0 0 10px 0;
}
.artist-crowd {
	max-height:300px;
	height:30vw;
	max-width:100%;
	background-size: cover;
	background-repeat:no-repeat;
	background-position:bottom center;
	border-bottom: solid 5px #141414;
}
/* SPECIFIC ARTISTS CROWD SHOTS*/
.riley { background-image: url(../artists/riley-crowd-2025.jpg); }
.hardy { background-image: url(../artists/hardy-crowd-2024.jpg); }
.cody-johnson { background-image: url(../artists/cody-johnson-crowd-2023.jpg); }
.morgan-wallen { background-image: url(../artists/morgan-wallen-crowd-2022.jpg); }
.kane-brown { background-image: url(../artists/kane-brown-crowd-2019.jpg); }
.luke-combs { background-image: url(../artists/luke-combs-crowd-2019.jpg); }
.sam-hunt { background-image: url(../artists/sam-hunt-crowd-2016.jpg); }

/*******************************/
/*Performers Page Past Artists*/
/*****************************/

.past-group {
		display: flex; 
		flex-flow: wrap; 
	margin: -10px 0 0 -10px;
	-webkit-justify-content: center; 
		justify-content:center;
}
.headshot{
	flex: 1 0 calc(25%-10px);
	box-sizing: border-box;
	padding: 10px;
	margin: 10px 0 0 10px;
	font-family: "PT Serif";
	font-weight:400;
	font-style: italic;
	color:#fff;
}

/************************/
/*Graphic & Text Blocks*/
/**********************/

.sponsor-container {
	position:relative!important;
	text-align:right; 
	width:100%;
	border-bottom: solid 5px #141414;
}
.overlay-text {
	padding:0 0 0 1%;
	text-align:center;
	width: 50%;
	color:#fff;
	top:50%;
	transform: translateY(-50%);
	position: absolute;
	max-height: 350px;
	overflow: hidden;
}

.overlay-text img {
	max-width:220px;
	width:auto;
	max-height:300px;
	height:auto;
	overflow:visible!important;
}

.fade-bg{
  	position:relative;
  	display:inline-block;
	right:0;
	vertical-align: bottom;
}

.fade-bg:after {
  	content:'';
  	position:absolute;
  	left:0; top:0;
  	width:100%; height:100%;
  	display:inline-block;
    background: rgb(17,23,38);
	background: -moz-linear-gradient(270deg, rgba(17,23,38,0) 0%, rgba(17,23,38,0) 50%, rgba(17,23,38,1) 97%, rgba(17,23,38,1) 100%);
	background: -webkit-linear-gradient(270deg, rgba(17,23,38,0) 0%, rgba(17,23,38,0) 50%, rgba(17,23,38,1) 97%, rgba(17,23,38,1) 100%);
	background: linear-gradient(270deg, rgba(17,23,38,0) 0%, rgba(17,23,38,0) 50%, rgba(17,23,38,1) 97%, rgba(17,23,38,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#111726",endColorstr="#111726",GradientType=1); 
}
.fade-bg img{
  display:block;
	float:right;
}

/* FAQ OR LARGE BLOCK OF TEXT LISTING */
.faq ul {
	text-align:left;
	list-style-type:square;
	font-family: 'Montserrat-Light'; 
	color:#fff;
}
.faq ul li {
	padding-bottom:10px;
}

.faq h3 {
	text-align:left!important;
}
