/*
Theme Name: Cantate
Author: BWD
Description: Theme for Cantate
Version: 1.0
*/

@font-face 
{
	font-family : 'Rosie Brown Serif';
    src : url('fonts/RosieBrownSerif-Regular.woff2') format('woff2'),
        url('fonts/RosieBrownSerif-Regular.woff') format('woff'),
        url('fonts/RosieBrownSerif-Regular.ttf') format('truetype');
    font-weight : normal;
    font-style : normal;
    font-display : swap;
}


::placeholder
{
	
}

:-ms-input-placeholder
{
	
}

::-ms-input-placeholder
{
	
}

* {
  box-sizing: border-box;
}

/*
h3 is 15053e

music div is #050648
h1
h4 
button submit
join mailing list is

logo is 060648
*/

:root
{	
	/* --cantate-royal-blue : #060648; */
	--cantate-royal-blue : #050648;
	--cantate-gold : #E8CE91;
	--cantate-gold-brown : #906d1a; 
}

body, html
{
	margin : 0px;
	padding : 0px;

	font-family : "muli", sans-serif;
}

h1, h2, h3, h4, h5, h6
{
	color : var(--cantate-royal-blue);
}

h1
{
	font-family : 'Rosie Brown Serif';
	font-size : 58px;
	font-weight : 400;
	
	text-transform : uppercase;
}

h2
{
	color : var(--cantate-gold-brown);
	
	font-family : "baskerville-display-pt", serif;
	font-weight : 400;
	font-size : 38px;
}

h3
{
	font-size : 28px;
}

h4
{
	font-size : 24px;
}

h5
{
	color : var(--cantate-gold-brown);
	
	font-size : 24px;
}

h6
{
	font-size : 16px;
}

.button
{
	position : relative;
	
	color : var(--cantate-royal-blue);
	
	padding : 12px 115px;
	
	font-family : "Rosie Brown Serif", serif;
	font-family : "baskerville-display-pt", serif;
	font-size : 24px;
	text-transform : uppercase;
	text-decoration : none;
	
	border-style : solid;
	border-color : var(--cantate-royal-blue);
	border-width : 1px;
}

#hp_intro .button, #hp_support .button
{
	color : #F0D9A3; /* Light Gold */
	
	border-color : #F0D9A3; /* Light Gold */
}

.button.arrow
{
    position: relative;
    padding: 7px calc(30px + 34px) 5px 30px;
    font-size: 17px;
    font-weight: bold;
	line-height: normal;
    letter-spacing: 1px;
	text-align : center;
}

.button.arrow.medium
{
	padding: 7px calc(45px + 34px) 7px 45px;
	
	margin-right : 56px;
}

#hp_intro .button.arrow.medium, #hp_opportunities .button.arrow.medium, 
#hp_thanks .button.arrow.medium, #hp_support .button.arrow.medium
{
	display : inline-block;
	
	width : 180px;
	
	padding : 7px 0px 5px 0px;
}

p .button.arrow.medium:first-child
{
	margin-left : -28px;
}

p .button.arrow.medium:last-child
{
	margin-right : 0px;
}

.button.arrow.medium::after
{
    content: '\203A';
    position: absolute;
    background: var(--cantate-royal-blue);
    color: #FFF;
    width: 34px;
    height: 34px;
    top: -1px;
    right: -34px;
    font-size: 28px;
    text-align: center;
	
	border-width : 1px 1px 1px 0px;
	border-style : solid;
	border-color : var(--cantate-royal-blue);
}

.flex_cols
{
	display : flex;
}

.flex_cols .col
{
	display : block;
	flex : 1;
}

.flex_container
{
	display : flex;
	justify-content : space-between;
}


.site_width_container
{
	position : relative;
	
	max-width : 1106px;

	margin : 0px auto;
	padding : 0px 30px;
}

#mobile_logo
{
	display : none;
}

nav
{
	background : rgb(32,4,57);
	background : linear-gradient(90deg, rgba(32,4,57,1) 0%, rgba(9,6,70,1) 50%, rgba(32,4,57,1) 100%);
	color : #FFF;
	
	height : 75px;
	
	
}

.navbar_container ul
{
    position : relative;
   
	
    list-style-type: none;
	
    margin : 0px;
    padding : 0px;
}

.navbar_container ul li 
{
    display : inline-block;
    position : relative;
}

.navbar_container ul>li a 
{
    display : inline-block;
}

.navbar_container ul li a 
{
    display : inline-block;
   
	color : #FFF;
	
    padding : 28px 13px;
    
	font-size : 18px;
    line-height : 18px;
    text-decoration : none;
    text-transform : uppercase;
	
    vertical-align : middle;
}



/*************
   BEGIN DROPDOWNs
**************/	
.navbar_container ul li ul
{
	position : absolute;
	
	/* display : none; */


	
	-webkit-transform : scaleY(0); 
	transform : scaleY(0);
	-webkit-transform-origin: center top 0;
	transform-origin: center top 0;
	
	-webkit-transition : all 0.3s ease-in-out 0s;
	transition : all 0.3s ease-in-out 0s;
}

.navbar_container ul li:hover ul
{				
	display : block;
	
	-webkit-transform : scaleY(1);
	transform : scaleY(1);
	-webkit-transform-origin: center top 0;
	transform-origin: center top 0;
	z-index : 9999;
}

.navbar_container ul li ul
{
	/* background : #FFF; */
	
	background : linear-gradient(0deg, rgb(60 15 101) 0%, rgb(26 21 121) 50%, rgb(56 14 95) 100%);
	color : #292929;
	
	min-width : 250px;
	

	

	
	
}

.navbar_container ul li ul li
{
	/* background : var(--nav-dropdown-link-background); */
	
	position : relative;
	
	display : block;
	
	border-width : var(--nav-dropdown-link-border-width);
	border-style : var(--nav-dropdown-link-border-style);
	border-color : var(--nav-dropdown-link-border-color);
}

.navbar_container ul li ul li a
{		
	position : relative;
	
	width: 100%;
	
	color : #FFF;
	
	padding : 15px 20px;
	
	text-transform : none;
}

/*
Nav Hover Customization for sub
*/
.navbar_container ul li ul li a:hover
{
	width : 100%;
	
	background : #140540; /* Dark Purple */
	color : var(--cantate-gold);	
}

p.nav_donate
{
	position : absolute;
	
	display : inline-block;
	
	top : 8px;
	right : 0px;
	right : -64px;
}

p.nav_donate a
{	
	position : relative;
	
	color : #f0d9a3;
	
	padding : 5px 48px;
	
	font-family : "Rosie Brown Serif", serif;
	font-family : "baskerville-display-pt", serif;
	font-size : 19px;
	text-transform : uppercase;
	text-decoration : none;
	
	border-style : solid;
	border-color : #f0d9a3;
	border-width : 1px;
}

p.nav_donate a:after
{
	content:'\203A';
	content : '\276F';
	
	position : absolute;

	background : #f0d9a3;
	color : #1f043b;

	width : 34px;
	height : 34px;

	top : -1px;
	right: -34px;
	
	font-size : 18px;
	line-height : 33px;
	text-align : center;

	border-style : solid;
	border-color : #f0d9a3;
	border-width : 2px 1px 1px;	
}

/*MOBILE MENU*/
body.mmactive 
{
	overflow : hidden;
}

.mobile_menu 
{
	display : none; 
	position : relative;
}
.sm_menu_outer ul, .sm_menu_outer.active .mobile_menu, .sm_menu_outer.active .mobile_menu ul
{
	margin : 0px 0px 0px 0px;
	padding : 0px;
}

.sm_menu_outer.active .mobile_menu
{
	margin : 0px 0px 0px 0px;
}

.sm_menu_outer.active .mobile_menu 
{
	display: block;
}

.sm_menu_outer 
{
	position: fixed;

		background : rgb(32,4,57);
	background : linear-gradient(90deg, rgba(32,4,57,1) 0%, rgba(9,6,70,1) 50%, rgba(32,4,57,1) 100%);

	width: 100%;
	
	height : calc(100% - 75px);
	
	right: 0;
	bottom: 0;	

	-webkit-transition: opacity 0.2s;
	-moz-transition: opacity 0.2s;
	transition: opacity 0.2s;

	overflow-y: scroll;
	overflow-x: hidden;

	z-index: -9;
	opacity: 0;
}

.sm_menu_outer.active 
{
  opacity : 1;
  z-index : 999;
}

.sm_menu_outer .mobile_menu li.back a 
{
	background : url('images/back.png') no-repeat scroll 15px center / 5% auto;

	padding : 20px 5px 20px 55px;
}

.sm_menu_outer .mobile_menu a 
{
	position : relative;
	
	display: block;

	color: #ffffff;
	
	padding: 20px 15px;
	padding : 20px 30px;

	
	letter-spacing: 1px;
	
	text-decoration: none;
}

.sm_menu_outer .mobile_menu li
{
	position : relative;
}

.sm_menu_outer .mobile_menu li:before
{
	content : ' ';
	width : 10px;
	height : 100%;
	
	position : absolute;
	top : 0;
	left : 0;
}

.sm_menu_outer .mobile_menu li:nth-child(1):before
{
	background : var(--clara-logo-green);
}

.sm_menu_outer .mobile_menu li:nth-child(1):hover a, .sm_menu_outer .mobile_menu li:nth-child(2):hover a,
.sm_menu_outer .mobile_menu li:nth-child(3):hover a, .sm_menu_outer .mobile_menu li:nth-child(4):hover a,
.sm_menu_outer .mobile_menu li:nth-child(5):hover a, .sm_menu_outer .mobile_menu li:nth-child(6):hover a
{
	color : var(--clara-dark-blue);
	
	/* font-weight : 600; */
}

.sm_menu_outer .mobile_menu li:hover:before
{
	width : 100%;
	
	transition : .2s;
}

.sm_menu_outer .mobile_menu li:nth-child(2):before
{
	background : var(--clara-logo-red);
}

.sm_menu_outer .mobile_menu li:nth-child(3):before
{
	background : var(--clara-logo-blue);
}

.sm_menu_outer .mobile_menu li:nth-child(4):before
{
	background : var(--clara-logo-orange);
}

.sm_menu_outer .mobile_menu li:nth-child(5):before
{
	background : var(--clara-logo-purple);
}

.sm_menu_outer .mobile_menu li:nth-child(6):before
{
	background : var(--clara-logo-green);
}

.sm_menu_outer .mobile_menu li:nth-child(7):before
{
	background : var(--clara-logo-red);
}

.sm_menu_outer .mobile_menu li:nth-child(8):before
{
	background : var(--clara-logo-blue);
}


/*Sub Menu anim */
.sm_menu_outer.slide .mobile_menu .sub-menu 
{
	position: absolute;

	background-color: #348BC3;
  
	width: 100%;
	height: 100%;
  
	right: calc(-100% - 30px);
	top: 0;
	
	transition: all 0.5s ease 0s;

	z-index: 999;
}

.sm_menu_outer.slide .mobile_menu li.active > .sub-menu 
{
  right: 0;
}

.sm_menu_outer .mobile_menu li 
{
	color: #ffffff;

	list-style-type: none;
	
	border-bottom: 0.5px solid rgba(0, 0, 0, 0);
	border-image: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, #2a2a2a 20%, #2a2a2a 50%, #2a2a2a 80%, rgba(0, 0, 0, 0) 100%) 0 0 1 0;
	border-image-source: linear-gradient(to left, #4196cd, #fff, #4196cd);  
}

.sm_menu_outer.slide .mobile_menu li.hasChild > a 
{
	background: url('images/next.png') no-repeat scroll 95% center / 5% auto;
}

/*Hamburger Animation */
#sm_menu_ham 
{
	float: right;
	
	position: fixed;

	width: 30px;
	height: 25px;
  
	top : 26px; /* BWD */
	right: 15px;

	z-index: 9999;

	cursor: pointer;

	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: all 0.5s ease-in-out 0s;
	-moz-transition: all 0.5s ease-in-out 0s;
	-o-transition: all 0.5s ease-in-out 0s;
	transition: all 0.5s ease-in-out 0s;
}

#sm_menu_ham span 
{
	display: block;
	position: absolute;

	background-color: #FFFFFF;
	
	width: 30px;
	height: 2px;

	border-radius: 5px;
	
	left: 0;
	opacity: 1;
	
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: all 0.25s ease-in-out 0s;
	-moz-transition: all 0.25s ease-in-out 0s;
	-o-transition: all 0.25s ease-in-out 0s;
	transition: all 0.25s ease-in-out 0s;	
}

#sm_menu_ham span:nth-child(1) 
{
  top: 0;
}

#sm_menu_ham span:nth-child(2), #sm_menu_ham span:nth-child(3) 
{
	top: 10px;
}

#sm_menu_ham span:nth-child(4) 
{
	top: 20px;
}

#sm_menu_ham.open span:nth-child(1) 
{
	width: 0;

	left: 50%;
	top: 18px;	
}

#sm_menu_ham.open span:nth-child(2) 
{
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

#sm_menu_ham.open span:nth-child(3) 
{
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#sm_menu_ham.open span:nth-child(4) 
{
	width: 0;

	left: 50%;
	top: 18px;
}
/*MOBILE MENU*/


#hero_container
{
	position : relative;
	
	background : url('images/hero_interior_org.jpg') no-repeat;
	background : url('images/hero_interior_org2.jpg') no-repeat;
	background-size : cover;
	background-position : center calc(0vw);
	
	min-height : 650px;
}

#hero_container_overlay
{
	position : relative;
	
	width : 100%;
	min-height : 650px;
	min-height : 850px;
	
	background : linear-gradient(0deg, rgba(19, 5, 66, 1) 0%, rgba(11, 3, 39, 0) 50%, rgba(0, 0, 0, .7) 75%, rgba(0, 0, 0, .7) 100%)
}

#hero_logo
{
	margin-top : 98px;
}

#hp_qualifier
{
	padding : 26px 0px;
}

#hp_qualifier p
{
	color : var(--cantate-royal-blue);
	
	padding : 0px 85px;

	font-family : "muli", sans-serif;
	font-size : 33px;
	font-weight : 300;	
	line-height : 40px;
	
	text-align : center;
}

#hero_container.page
{
	background : url('images/hero_interior.jpg') no-repeat;
	background-position : center calc(0vw);
	background-size : cover;
	
	min-height : 515px;
}

#hero_container img
{
	max-width : 100%;
	
	margin : 97px 0px 15px;
}

#hero_container h2
{
	color : #FFF;
	
	margin : 0px 0px 0px 0px;
	
	font-size : 34px;
	letter-spacing : 1px;
}

#music_div
{
	position : relative;
	
	background : url('images/music_bg.jpg') no-repeat;
	background-size : cover;
	
	height : 54px;
	
	border-width : 0px 0px 2px 0px;
	border-style : solid;
	border-color : var(--cantate-royal-blue);
}

#music_div img
{
	position : absolute;
	
	margin-left : auto;
	margin-right : auto;
	
	left : 0px;
	right : 0px;
	bottom : -12px;
}

#hp_events
{
	background : #7f0419; /* Royal Red */
	
	min-height : 200px;
}

#hp_evening
{
	background : #FFF;
	color : var(--cantate-royal-blue);
	
	padding : 54px 0px 30px;
	
	font-family : "baskerville-display-pt", serif;
	font-style : italic;
	text-align : center;
}

#hp_evening p
{
	margin-top : 5px;
	
	font-size : 24px;
}

#hp_intro
{
	background : url('images/intro_bg.jpg') no-repeat;
	background-position : right;
	background-size : contain;
}

#hp_intro_overlay
{
	background : rgb(19,5,66);
	background : linear-gradient(45deg, rgba(19,5,66,1) 0%, rgba(7,7,69,1) 50%, rgba(19,5,66,.7) 100%);
	
	color : #FFF;
	
	padding : 115px 0px;
	
	font-weight : 300;
	text-align : center;
}

#hp_intro .site_width_container
{
	max-width : 1180px;
}

#hp_intro p .button.arrow.medium:first-child
{
	/* margin-left : 0px; */
}

#hp_intro .site_width_container div img:first-child
{
	float : right;
	
	margin-left : 45px;
	
	border-style : solid;
	border-color : #FFF;
	border-width : 16px;

	-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
}

#hp_intro .site_width_container div img:nth-child(3)
{
	margin : 14px 0px 0px;
}

#hp_intro .site_width_container div:nth-child(2)
{
	margin-top : 115px;
}

#hp_intro .site_width_container div:nth-child(2) img:first-child
{
	float : left;
	
	margin-left : 0px;
	margin-right : 45px;
}

#hp_intro h3
{
	color : var(--cantate-gold);
	
	margin : 0px 0px 0px 0px;
	
	font-family : 'Baskervville', serif;
	font-weight : 400;
	font-size : 36px;
}

#hp_intro p
{
	margin-top : 10px;
	
	font-size : 26px;
	line-height : 31px;
}

#hp_qualifier2
{
	position : relative;
	
	background : url('images/paper_bg.jpg') repeat;
	color : var(--cantate-royal-blue);
	
	padding : 62px 0px;
	
	font-family : "baskerville-display-pt", serif;
	font-size : 36px;
	text-align : center;

	border-width : 0px 0px 2px 0px;
	border-style : solid;
	border-color : var(--cantate-royal-blue);	
}

#hp_qualifier2 p
{
	/* max-width : 800px; */
	
	margin : 0px auto; 
}

#hp_qualifier2 img
{
	position : absolute;
	
	margin-left : auto;
	margin-right : auto;
	
	left : 0px;
	right : 0px;
	bottom : -12px;
}

#hp_opportunities
{
	padding : 110px 0px;
	
	text-align : center;
}

#hp_opportunities .flex_cols .col > div
{
	display : table;
	
	height : 130px;
	
	margin : 0px auto;
}

#hp_opportunities img
{
	max-width : calc(100% - 30px);
	
	margin-bottom : 35px;
	
	border-style : solid;
	border-color : #FFF;
	border-width : 13px;

	-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
}

#hp_opportunities h3
{
	display : table-cell;
	vertical-align : middle;
	
	width : 280px;
	
	margin : 0px auto 15px;
	
	font-family : 'Rosie Brown Serif';
	font-size : 36px;
	font-weight : 400;
	text-transform : uppercase;
}

#hp_opportunities p
{		
	color : var(--cantate-gold-brown);
	
	width : 300px;
	height : 120px;
	
	margin : 10px auto 0px;
	
	font-size : 20px;
	line-height : 24px;
}

#hp_opportunities p:last-child
{
	margin-top : 25px;
}

#hp_support
{
	position : relative;
	
	background : url('images/temp/hp_support_org.jpg') top center no-repeat;
	background-size : cover;
	/* #7f0419; /* Royal Red */
	color : #FFF;
	
	min-height : 709px;
	
	padding-bottom : 63px;
	
	font-size : 24px;
	line-height : 29px;
	text-align : center;
}

#hp_support .site_width_container
{
	
}

#hp_support #hp_support_content
{
	background: rgb(127,4,25);
	background: linear-gradient(0deg, rgba(127,4,25,1) 0%, rgba(127,4,25,1) 50%, rgba(127,4,25,0) 100%);

	position : absolute;
	
	width : 100%;
	
	bottom : 0px;
	
	padding-bottom : 63px;
	
	padding-top : 150px;
}

#hp_support h2
{
	color : #F0D9A3; /* Light Gold */
	
	margin : 0px 0px 40px 0px;
	
	font-size : 67px;
	line-height : 62px;
}

#hp_intro .button.arrow.medium::after, #hp_support .button.arrow.medium::after
{
	background : #F0D9A3; /* Light Gold */
	
	border-color : #F0D9A3; /* Light Gold */
}

#hp_intro .button.arrow.medium::after
{
	color : var(--cantate-royal-blue);
}

#hp_support p:last-child
{
	padding-top : 8px;
}

#hp_quote
{
	
}

#hp_quote .flex_cols
{
	height : 584px;
	
	overflow : hidden;
}

#hp_quote .flex_cols .col:nth-child(1)
{
	display : table;
	
	background : var(--cantate-royal-blue);
	color : #FFF;
}

#hp_quote .flex_cols .col:nth-child(1) p
{
	display : table-cell;
	
	margin : 0px auto;
	padding : 0px 443px;
	padding : 0px 35%;
	padding : 0px 43px;
	
	font-size : 26px;
	text-align : center;
	line-height : 34px;
	
	vertical-align : middle;
}

#hp_quote .flex_cols .col:nth-child(1) p span
{
	display : inline-block;
	
	color : var(--cantate-gold);
	
	margin-top : 5px;
	
	font-family : "baskerville-display-pt", serif;
	text-transform : uppercase;
}

#hp_quote .flex_cols .col:nth-child(2) img
{
	width : 100%;
}

#hp_thanks
{
	color : var(--cantate-gold-brown);
	
	padding : 68px 0px;
	
	font-size : 25px;
	line-height : 30px;
	text-align : center;
}

#main_content_container
{
	padding : 112px 0px 160px 0px;
	
	font-family : "muli", sans-serif;
	font-size : 20px;
	font-weight : 300;
}

#main_content_container p
{
	line-height : 26px;
}

#main_content_container p a:link, #main_content_container p a:visited
{
	color : var(--cantate-gold-brown);
}

#main_content_container p.button1 .button, #main_content_container p.button2 .button
{
	background : var(--cantate-royal-blue);
	color : #FFF;
}

#main_content_container p.button2 .button
{
	background : var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple);
}

#main_content_container p.button1 a:link, #main_content_container p.button1 a:visited,
#main_content_container p.button2 a:link, #main_content_container p.button2 a:visited
{
	color : #FFF;
}

#main_content_container p a:link, #main_content_container p a:hover
{
	text-decoration : none;
}

#main_content_container ul, #main_content_container ol
{
	margin : 0px 0px 0px 0em;
	padding : 0px 0px 0px 1em;
}

#main_content_container ul li, #main_content_container ol li
{
	padding : 0px 0px 32px 1em;
}

#main_content_container ul li::marker, #main_content_container ol li::marker
{
	color : var(--cantate-gold-brown);
	
	font-size : 22px;
}

#main_content_container img
{
	max-width : calc(100% - 30px);
	max-width : calc(100% - 0px);
	
	border-style : solid;
	border-color : #FFF;
	border-width : 13px;

	-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
}

footer
{
	background : url('images/footer_bg.jpg') repeat;
	
	padding : 123px 0px 0px;
	
	border-style : solid;
	border-width : 2px 0px 0px 0px;
	border-color : var(--cantate-royal-blue);
}

footer .site_width_container
{
	max-width : 1180px;
}

footer #contact_container .flex_cols .col:first-child
{
	max-width : 415px;
	
	font-size : 21px;
	line-height : 30px;
}

footer #contact_container .flex_cols .col:first-child .social
{
	margin-top : 30px;
}

footer #contact_container .flex_cols .col:first-child .social a img
{
	padding-right : 10px;
}

footer #contact_container .flex_cols .col:first-child .social
{
}

footer #contact_container .flex_cols .col:first-child a:link, footer #contact_container .flex_cols .col:first-child a:visited
{
	color : #000;
	
	text-decoration : none;
}

footer #contact_container .flex_cols .col:first-child a:hover
{
	text-decoration : underline;
}

footer #contact_container .flex_cols .col:first-child table tr td:first-child
{
	color : var(--cantate-gold-brown);
	
	padding-right : 5px;
	
	font-size : 18px;
	font-weight : bold;
	text-transform : uppercase;
}

footer #contact_container .flex_cols .col:first-child p:last-child
{
	margin-top : 40px;
}

footer #contact_container .flex_cols .col:first-child a.button
{
	position : relative;
	
	height : 34px;
	
	padding : 7px calc(30px + 34px) 7px 30px;
	
	font-size : 17px;
	font-family : "baskerville-display-pt", serif;
	
	
	font-weight : bold;
	letter-spacing : 1px;
}

footer #contact_container .flex_cols .col:first-child a.button:hover
{
	text-decoration : none;
}

footer #contact_container .flex_cols .col:first-child a.button::after
{
	content:'\203A';
	
	position : absolute;

	background : var(--cantate-royal-blue);
	color : #FFF;

	width : 36px;
	height : 36px;

	top : 0px;
	right: 0px;
	
	font-size : 28px;
	text-align : center;
}

footer #contact_container .flex_cols .col:last-child
{
	
}

footer #contact_container form label
{
	display : none;
}

footer #contact_container form div#gform_fields_1
{
	display : inline-block;
}

footer #contact_container form div#gform_fields_1>div
{
	float : left;

	max-width : calc((100% / 2) - 7px);
	
	width : 100%;
}

footer #contact_container form div#gform_fields_1>div#field_1_3, 
footer #contact_container form div#gform_fields_1>div#field_1_4
{
	max-width : calc(100%);
}

footer #contact_container .col:nth-child(2) form div.gfield
{
	margin-right : 13px;
}

footer #contact_container .col:nth-child(2) form div.gfield:nth-child(2)
{
	margin-right : 0px;
}

footer #contact_container .col:nth-child(2) form ul li:nth-child(3) div
{
	max-width : 100%;
}



footer #contact_container .col:nth-child(2) form ul li div.ginput_container_textarea
{
	max-width : 100%;
}

footer #contact_container .col:nth-child(2) form ul li input[type=text], footer #contact_container .col:nth-child(2) form ul li input[type=tel], 
footer #contact_container .col:nth-child(2) form ul li textarea,
footer #contact_container .col:nth-child(2) form input[type=text], footer #contact_container .col:nth-child(2) form textarea,
footer #contact_container .col:nth-child(2) form input[type=email], footer #contact_container .col:nth-child(2) form input[type=tel]
{
	
	width : calc(100% );

	background : #FFF;
	color : var(--cantate-royal-blue);

	margin : 0px 0px 12px;
	padding : 13px 18px;	
	
	font-size : 18px;

	border-width : 1px;
	border-style : solid;
	border-color : var(--cantate-royal-blue);
}

footer #contact_container .col:nth-child(2) form div.gfield:nth-child(1) input
{
	
}

footer #contact_container .col:nth-child(2) form ul li input[type=text]::placeholder,
footer #contact_container .col:nth-child(2) form ul li textarea::placeholder,
footer #contact_container .col:nth-child(2) form input[type=text]::placeholder,
footer #contact_container .col:nth-child(2) form input[type=email]::placeholder,
footer #contact_container .col:nth-child(2) form textarea::placeholder
{
	color : var(--cantate-gold-brown);
	
	font-family : 'muli', sans-serif;
	font-size : 17px;
}

footer #contact_container .col:nth-child(2) form input[type=submit]
{
	color : #FFF;
	background : var(--cantate-royal-blue);

	max-width : 100%;
	width : 100%;
	
	
	padding : 17px 26px 17px 18px;

	font-family : "baskerville-display-pt", serif;
	font-size : 25px;
	text-align : center;

	
	border : 0px;
	
	cursor : pointer;
}

footer #sponsors
{
	background : #FFF;
	
	margin-top : 123px;
	padding : 50px 0px;
	
	text-align : center;
}

footer #sponsors .site_width_container a img
{
	margin-right : 0px;
}

footer #sponsors .site_width_container a:first-child img
{
	margin-right : 58px;
}


/*footer #sponsors .flex_cols
{
	gap : 58px;
	
	flex-wrap : wrap;
}
*/


footer #credits
{
	background: rgb(32,4,57);
	background: linear-gradient(90deg, rgba(32,4,57,1) 0%, rgba(9,6,70,1) 50%, rgba(32,4,57,1) 100%);
	color : #FFF;
	
	
	padding : 80px 0px;
	
	font-size : 18px;
	text-align : center;
}

footer #credits a:link, footer #credits a:visited
{
	color : #FFF;
	
	text-decoration : none;
}

footer #credits a:hover
{
	text-decoration : underline;
}

#pull
{
	display : none;
}

.clearfix {
  overflow: auto;
}

.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

@media only screen and (min-width : 1626px)
{
	#hero_container
	{
		background-position : center calc((100vw - 1626px) * -.12);
	}
	
	#hero_container_overlay
	{
		min-height : 946px;
	}
}

@media only screen and (max-width : 1940px)
{
	#hp_quote .flex_cols .col:nth-child(1) p
	{
		padding : 0px 26%;
	}
}

@media only screen and (max-width : 1640px)
{
	#hp_quote .flex_cols .col:nth-child(1)
	{
		background : url('images/temp/hp_singer.jpg') var(--cantate-royal-blue) no-repeat;
		background-position : right;
	}
	
	#hp_quote .flex_cols .col:nth-child(1) p
	{
		padding: 0px calc(812px + 30px) 0px 30px;
	}
	
	#hp_quote .flex_cols .col:nth-child(2)
	{
		display : none;
	}
}

@media only screen and (min-width : 1626px)
{
	#hero_container.page
	{
		background-size : cover;
		background-position : center;
	}
}

@media only screen and (max-width : 1345px)
{
	#hero_container
	{
		background-position : calc((100vw*.9655) - 1498px) center;
	}
}

@media only screen and (max-width : 1380px)
{
	p.nav_donate
	{
		right : 0px;
	}
}

@media only screen and (max-width : 1220px)
{
	
		p.nav_donate
		{
			right : 67px;
		}
		
		p.nav_donate a
		{
			padding : 5px 24px;
		}	
	
}

@media only screen and (max-width : 1180px)
{
	#hero_container.page
	{
		background-position-x : calc(100% + 144px);
	}

	#hp_intro .site_width_container div img:first-child
	{
		max-width : 47%;
	}
	
	#hp_intro h3
	{
		font-size : 34px;
	}
	
	#hp_intro p
	{
		font-size : 22px;
		line-height : 27px;
	}
}

@media only screen and (max-width : 1170px)
{
	#hp_quote .flex_cols .col:nth-child(1)
	{
		background : var(--cantate-royal-blue);
	}
	
	#hp_quote .flex_cols .col:nth-child(1) p
	{
		padding : 0px 8%;
	}
	
	#hp_quote .flex_cols .col:nth-child(2)
	{
		display : block;
		
		background: url(images/temp/hp_singer.jpg) var(--cantate-royal-blue) no-repeat;
		background-position: center;
	}
	
	#hp_quote .flex_cols .col:nth-child(2) img
	{
		display : none;
	}
}

@media only screen and (max-width : 1110px)
{
	#hp_intro
	{
		background : rgba(7, 7, 69, 1);
		
		padding : 0px 0px;
	}
	
	#hp_intro_overlay
	{
		background : rgb(19, 5, 66);
		background : linear-gradient(45deg, rgba(19, 5, 66, 1) 0%, rgba(7, 7, 69, 1) 50%, rgba(19, 5, 66, 1) 100%);	
		background : rgba(7, 7, 69, 1);
		
		padding : 45px 0px;
	}
	
	#hp_intro .site_width_container div img:first-child,
	#hp_intro .site_width_container div:nth-child(2) img:first-child
	{
		max-width : calc(100% - 60px);
		height : auto;
		
		float : none;
		
		margin : 0px 0px 30px;
	}
	
	#hp_intro .site_width_container div:nth-child(2)
	{
		margin-top : 45px;
	}
	
	
}

@media only screen and (max-width : 1060px)
{
	.navbar_container ul li a
	{
		padding : 28px 10px;
	}
	
	p.nav_donate
	{
		right : 30px;
	}
	
	p.nav_donate a:after
	{
		display : none;
	}
}


@media only screen and (max-width : 980px)
{
	#hp_opportunities .flex_cols
	{
		display : block;
	}
	
	#hp_opportunities
	{
		padding : 60px 0px 30px;
	}
	
	#hp_opportunities .col
	{
		margin-bottom : 45px;
	}
}

@media (min-width: 985px) 
{
	#sm_menu_ham, .sm_menu_outer
	{
		display: none;
	}
}

@media only screen and (max-width : 984px)
{
	p.nav_donate
	{
		display : none;
	}
	
	#hero_logo
	{
		display : none;
	}
	
	#mobile_logo
	{
		position : absolute;
		display : block;
		
		top : 16px;
		left : 30px;

		width : 227px;
		height : 38px;
		
		
	}
	
	#hero_container.home h2
	{
		padding-top : 80px;
	}
	
	nav
	{	
		background : rgb(32,4,57);
		background : linear-gradient(90deg, rgba(32,4,57,1) 0%, rgba(9,6,70,1) 50%, rgba(32,4,57,1) 100%);
		
		position: fixed;

		top : 0;
		left : 0;

		width : 100%;
		height : 75px;
    
		z-index: 9999;
	}
	
	nav::before
	{
		/* position : absolute;
		
		top : 16px;
		left : 30px;
		
		content : ' ';
		
		background : url('images/hero_logo.png') no-repeat;
		background-size : 100%;
		
		width : 227px;
		height : 38px; */
	}
	
	.sm_menu_outer.slide.active .mobile_menu .sub-menu, .sm_menu_outer .mobile_menu li
	{
		background : linear-gradient(90deg, rgba(32, 4, 57, 1) 0%, rgba(9, 6, 70, 1) 50%, rgba(32, 4, 57, 1) 100%);
	}
	
	.sm_menu_outer .mobile_menu li.back:nth-child(1)
	{
		background : purple;
	}
	
	.sm_menu_outer .mobile_menu li.back:nth-child(1):before
	{
        content: '\21BC';
        position: absolute;
        color: #FFF;
        /* border: solid #FFF; */
        /* border-width: 0 3px 3px 0; */
        display: inline-block;
        font-size: 33px;
        padding-left: 20px;
        padding-top: 11px;
	}
	
	.sm_menu_outer.slide .mobile_menu li.hasChild
	{
		position : relative;
	}
	
	
	.sm_menu_outer.slide .mobile_menu li.hasChild>a:after
	{          content: '\21C0';
        position: absolute;
        color: #FFF;
        /* border: solid #FFF; */
        /* border-width: 0 3px 3px 0; */
        display: inline-block;
        font-size: 33px;
        right: 15px;
        top: 14px;
       
	
	}
	
	.navbar_container ul.desktop_menu
	{
		display : none;
	}	

	.sm_menu_outer .mobile_menu li:nth-child(1):hover a, .sm_menu_outer .mobile_menu li:nth-child(2):hover a, .sm_menu_outer .mobile_menu li:nth-child(3):hover a, .sm_menu_outer .mobile_menu li:nth-child(4):hover a, .sm_menu_outer .mobile_menu li:nth-child(5):hover a, .sm_menu_outer .mobile_menu li:nth-child(6):hover a 
	{
		color : #FFF;
		
		/* background : none; */
	}
	
	#hero_container.page, #hero_container.home
	{
		background : url('images/hero_interior2.jpg') no-repeat;
		background-size : cover;
		
		background-position-x : calc(100% + 45px);
		background-position-x : calc(100% + 0px);
		background-position-y : 18px;
		
		min-height : 315px;
	}
	
	#hero_container.home #hero_container_overlay
	{
		background : none;
		
		min-height : auto;
		
		min-height : 315px;
	}
	
	#hero_container.page .site_width_container>img
	{
		display : none;
	}
	
	#hero_container.home h2, #hero_container.page h2
	{
		font-size : 28px;
		line-height : 32px;
		
		padding-top : 224px;				
	}
	
	#hp_qualifier p
	{
		padding : 0px 0px;
		
		font-size : 24px;
		line-height : 28px;
	}
	
	#music_div
	{
		height : 32px;
	}
	
	#main_content_container
	{
		padding : 15px 0px 60px 0px;
	}
	
	footer #sponsors img
	{
		max-width : 100%;
	}
	
	footer #credits
	{
		padding : 30px 0px;
	}
}

@media only screen and (max-width : 900px)
{
	#hp_thanks
	{
		padding : 30px 0px;
	}
	
	#hp_thanks .button.arrow.medium, #hp_support .button.arrow.medium
	{
		display : block;
		
		margin : 0px auto 15px;
	}
}

@media only screen and (max-width : 800px)
{
	
	
	#hp_quote .flex_cols
	{
		height : auto;	
	}
	
	#hp_quote .flex_cols .col:nth-child(1)
	{
		padding : 45px 0px;
	}
	
	#hp_quote .flex_cols .col:nth-child(2)
	{
		
			display : none;
		
	}
	
	#contact_container .flex_cols
	{
		display : block;
	}
	
	footer #contact_container .flex_cols .col:first-child
	{
		max-width : 100%;
		
		text-align : center;
	}
	
	footer #contact_container .flex_cols .col:first-child table
	{
		margin : 0px auto;
	}
	
	footer #contact_container .flex_cols .col:nth-child(2)
	{
		padding-top : 60px;
	}
}

@media only screen and (max-width : 710px)
{
	footer #sponsors .site_width_container a:first-child img, footer #sponsors .site_width_container a img
	{
		display : block;
		
		margin : 0px auto;
	}
}

@media only screen and (max-width : 525px)
{
	#hero_container.page
	{
		background : url('images/hero_interior2.jpg') no-repeat;
		background-size : cover;
		background-position-x : calc(100% + 45px);
		background-position-y : 18px;
		
		min-height : 315px;
	}
	
	#hero_container.page h2
	{
		font-size : 28px;
	}

	footer
	{
		padding : 60px 0px 0px 0px;
	}
	
	footer #contact_container form div#gform_fields_1>div
	{
		max-width : 100%;
	}
	
	footer #sponsors
	{
		margin-top : 60px;
	}
}