
<!-- Leaflet CSS -->

<link rel="stylesheet" href="leaflet.css" />
<style type="text/css">	

/* MASTER STYLESHEET
   Cleaned and reorganized from:
   - styles.css (primary source of truth)
   - styles-2.css
   - gallery-styles.css
   - songlist-styles.css

   Notes:
   - Existing selector names were preserved exactly.
   - Duplicate selectors were consolidated.
   - Unclosed blocks and malformed rules were repaired.
   - Keep leaflet.css loaded separately.
*/


/* =========================
   SCROLLBARS
   ========================= */

*::-webkit-scrollbar {
	height: 10px;
	width: 10px;
}

*::-webkit-scrollbar-track {
	border-radius: 5px;
	background-color: #2E6DA0;
	border: 1px solid #FFFFFF;
}

*::-webkit-scrollbar-track:hover,
*::-webkit-scrollbar-track:active {
	background-color: #B8C0C2;
}

*::-webkit-scrollbar-thumb {
	border-radius: 20px;
	background-color: #52808D;
	border: 1px solid #FFFFFF;
}

*::-webkit-scrollbar-thumb:hover {
	background-color: #577A6A;
}

*::-webkit-scrollbar-thumb:active {
	background-color: #62A34B;
}


/* =========================
   BASE / LAYOUT
   ========================= */

body {
	background-color: #1a3f5f;
	margin-top: 0px;
	margin-left: 0px;
	margin-bottom: -3px;
	padding: 0px;
	text-align: center;
}

.bgColor1 {
	background-color: #2d6c9f;
}

.bgColor2 {
	background-color: #347bb5;
}

.bgColor3 {
	background-color: #2d6c9f;
}

#layout {
	position: absolute;
	z-index: 1;
	left: 0px;
	top: 0px;
	visibility: visible;
	background-color: #2E6DA0;
}

.fullFrame {
	margin: 5px;
	width: 1230px;
	padding: 10px;
	position: relative;
	height: 655px;
	overflow: scroll;
}

.outerTable {
	position: static;
	background-color: #2E6DA0;
}

.outerTableBorder {
	border-left: thick; color:#000;
	border-right: thick; color:#000;
}

.container {
	max-width: 750px;
	margin-top: -50px;
	margin-left: 15px;
	padding: 5px;
}

section {
	background: #255a82;
	margin-bottom: 2rem;
	padding: 1rem;
	border-radius: 8px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
}

section h2 {
	margin-top: 0;
	text-shadow: 1px 1px 1px #000000;
}


/* =========================
   NAVIGATION / MENUS
   ========================= */

.menu {
	text-align: center;
	margin: 0px;
	padding: 0px;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
}

.menuLinks {
	color: #FFF;
	text-decoration: none;
}

.menuBox {
	text-align: center;
	margin: 0px;
	padding: 10px;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	width: 100%;
}

.InnerMenuBox {
	font-family: Arial, Helvetica, sans-serif;
	text-align: center;
	margin: 0px;
	padding-top: 5px;
	padding-bottom: 5px;
	font-size: 15px;
	color: #FFF;
	background-color: #255a82;
	font-weight: bold;
	text-decoration: none;
	height: 25px;
	width: 100%;
	vertical-align:top;
}

.bottomNav {
	font-family: Arial, Helvetica, sans-serif;
	color: #FFF;
	text-align: center;
	height: 60px;
}

.bottomNavBox {
	font-family: Arial, Helvetica, sans-serif;
	color: #FFF;
	text-decoration: none;
	text-align: center;
	vertical-align:bottom;
	height: 60px;
	width:100%;
}

.toTop {
	text-align: right;
	color: #0FF;
	text-shadow: 1px 1px 1px #000000;
	margin-right: 20px;
}


/* =========================
   PAGE LAYOUTS
   ========================= */

.stateLeft {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #FFF;
	margin: 5px;
	width: 800px;
	padding: 5px;
	position: relative;
	float: left;
	height: 655px;
	overflow: scroll;
	clear: none;
	white-space: normal;
	background-color: #2f6ea0;
}

.stateRight {
	font-family: Verdana, Geneva, sans-serif;
	font-size: 16px;
	color: #FFF;
	padding: 10px;
	width: 348px;
	float: left;
	font-weight: 500;
	font-style: italic;
	line-height: normal;
	clear: none;
	height: 645px;
	overflow: scroll;
	position: static;
	margin: 5px;
	background: #2f6ea0;
}

.stateHeader {
	background: #255a82;
	font-family: "Times New Roman", Times, serif;
	font-size: 18px;
	font-weight: bold;
	font-variant: small-caps;
	color: #1e90ff;
	text-align: center;
	padding: 2px;
	height: 35px;
	width: 100%;
	float: left;
}

.SmStateContainer {
	background: #1d4665;
	width: 575px;
	height: 135px;
	padding: 8px;
	margin-left: 10px;
	margin-bottom: 5px;
	border-radius: 8px;
	border: 2px solid #ffffff;
	box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.75);
	text-align: center;
}

.npLeft {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #FFF;
	margin: 12px;
	width: 780px;
	padding: 8px;
	position: relative;
	float: left;
	height: 655px;
	overflow: scroll;
	clear: none;
	text-align: justify;
	white-space: normal;
}

.npRight {
	font-family: Verdana, Geneva, sans-serif;
	font-size: 16px;
	color: #FFF;
	width: 350px;
	float: left;
	font-weight: 500;
	font-style: italic;
	line-height: normal;
	clear: none;
	height: 665px;
	margin: 5px 0px 5px 5px;
	padding: 5px;
	overflow: scroll;
	position: static;
	text-align: center;
}

.homeLeft {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #FFF;
	margin: 12px;
	width: 800px;
	padding: 8px;
	position: relative;
	float: left;
	height: 655px;
	overflow: scroll;
	clear: none;
	text-align: justify;
	white-space: normal;
}

.homeRight {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: bold;
	color: #FFF;
	margin: 12px;
	width: 355px;
	padding: 8px;
	position: relative;
	float: left;
	height: 655px;
	overflow: scroll;
	clear: none;
	white-space: normal;
	text-align: center;
}

.homeHeader {
	font-family: "Times New Roman", Times, serif;
	font-size: 14px;
	font-weight: bold;
	font-variant: small-caps;
	color: #fafc9a;
}

.homeContent {
	float: left;
	margin: 25px;
}

.stateRight p,
.homeContentRight p {
	text-align: center;
}


/* =========================
   MAP / JUKEBOX
   ========================= */

#map {
	height: 90vh;
	width: 100%;
	margin: 0 auto;
	border: 2px solid #ddd;
}

.popup-content {
	font-size: 14px;
}

.popup-content strong {
	color: #1e90ff;
}

.leaflet-container {
	height: 375px;
	width: 598px;
	max-width: 100%;
	max-height: 100%;
	border-radius: 8px;
	border: 2px solid #ffffff;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
}

/* =========================
   Mini Music Player
   ========================= */

.miniPlayer {
	width: 350px;
	max-width: 350px;
	margin: 2px auto;
	padding: 2px;
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(255,255,255,0.18);
	border-radius: 8px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.25);
	text-align: center;
}

.miniPlayerTitle {
	margin: 0 0 1px 0;
	font-size: 10px;
	font-weight: 400;
	color: #ffffff;
}

.miniPlayer audio {
	width: 350px;
	height: 15px;
}
/* =========================
   LINKS
   ========================= */

a {
	color: pink;
	text-decoration: none;
}

a:hover {
	color: #FF00FF;
	text-decoration: none;
	text-shadow: 3px 3px 3px #000000;
}

.whiteText {
	color: #FFF;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}
.smallWhiteText {
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;	 
	color: #FFF;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
	margin-top: -10px;
}


.lavender {
	color: #ce45bc;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightPurple {
	color: #fb7cea;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.bluePurple {
	color: #9166ea;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;

}

.lightPerwinkle {
	color: #4cacf9;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}
.lightestBlue {
	color: #CDC5FE;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightBlue {
	color: #66b7ea;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightBluer {
	color: #a2d5fb;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightTeal {
	color: #8feceb;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.DeepTeal {
	color: #05ee94;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.DeepGreen {
	color: #5ada04;
	text-decoration:none;
	text-shadow: 2px 2px 2px #000000;
}

.lightGreen {
	color: #a4f333;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.YellowGreen {
	color: #adf333;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.deepYellowLink {
	color: #fafb2e;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightYellow {
	color: #f0fc8a;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightPeach {
	color: #fcdeb0;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.deepPeach {
	color: #fabe77;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightCoral {
	color: #fdcc8c;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.tangerineLink {
	color: #fba254;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}
.lightSalmon {
	color: #fc9a97;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.DeepSalmon {
	color: #cc756a;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.pinkLink {
	color: #fb7e7e;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lighterOrangeLink {
	color: #fdd34f;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}


.lightOrangeLink {
	color: #f8a35f;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.mediumOrangeLink {
	color: #deb200;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}
.orangeLink {
	color: #eb6f24;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.darkOrangeLink {
	color: #da5527;
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.springGreenLink {
	color: #aed142; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lighterGreenLink {
	color: #68c290; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightGreenLink {
	color: #4ab849; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.mediumGreenLink {
	color: #60ad71; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.darkGreenLink {
	color: #4e6753; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.seaGreenLink {
	color: #4ab849; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.blueGreenLink {
	color: #6091ad; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.blueGreen2Link {
	color: #60ada5; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightTealLink {
	color: #60ada5; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}
.blueSpruceLink {
	color: #467b75; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}
.cornflowerBlueLink {
	color: #43a0d0; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.skyBlueLink {
	color: #6daddf; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.mediumBlueLink {
	color: #537ec0; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}
.darkBlueLink {
	color: #4f61ac; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.darkerBlueLink {
	color: #050580; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.tanLink {
	color: #c2b668; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.mediumTanLink {
	color: #8f7d56; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.darkTanLink {
	color: #78723b; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.deepKhakiLink {
	color: #7c8b60; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.brownLink {
	color: #c58828; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightRoseLink {
	color: #bfa197; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.mediumRoseLink {
	color: #b21f5e; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.darkRoseLink {
	color: #a75058; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.deepRoseLink {
	color: #fd514b; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.redLink {
	color: #d41f42; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.blueGreenLink {
	color: #269b92; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.lightPurpleLink {
	color: #b56cac; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.mediumPurpleLink {
	color: #a46eaf; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.darkPurpleLink {
	color: #6953a3; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.goldenrodLink {
	color: #e4e51a; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.brownLink {
	color: #8f6656; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.medSalmon {
	color: #d88380; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.medGreen {
	color: #60ed34; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.white {
	color: #ffffff; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.related-song a {
	display: inline-block;
	margin-top: 8px;
	text-decoration: none;
	color: #2980b9;
	font-weight: bold;
}

.related-song a:hover {
	text-decoration: underline;
}

ol li a {
	color: #FFF;
}

.stateIL66	{
	color: #c0b9c0; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.stateMO66	{
	color: #a6cfcb; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.stateKS66	{
	color: #d5cfb7; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.stateOK66	{
	color: #b3bba3; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.stateTX66	{
	color: #a1b7ab; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.stateNM66	{
	color: #e0b9b2; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.stateAZ66	{
	color: #e7bfb5; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

.stateCA66	{
	color: #cccca8; 
	text-decoration: none;
	text-shadow: 2px 2px 2px #000000;
}

/* =========================
   IMAGES
   ========================= */

.imgXSM {
	border-radius: 3px;
	border: 1px solid #000000;
	box-shadow: 0px 3px 3px rgba(0, 0, 0, 0.75);
	vertical-align: middle;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.imgXSM:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00; 
}

.imgS {
	margin-left: 5px;
	box-shadow: 0 15px 15px rgba(0, 0, 0, 0.75);
	border: 1px solid #000000;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.imgS:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.img {
	border-radius: 8px;
	border: 1px solid #000000;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
	vertical-align: text-top;
	margin: 3px;
	text-align: center;
}

.img:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.imgLeft {
	float: left;
	margin: 0 0 15px 15px;
	border-radius: 8px;
	border: 1px solid #000000;
	box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.75);
	text-align: center;
}

.imgLeft:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}


.imgRight {
	float: right;
	margin: 0 0 15px 15px;
	border-radius: 8px;
	border: 1px solid #000000;
	box-shadow: 0px 5px 5px rgba(0, 0, 0, 0.75);
	text-align: center;
}

.imgRight:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.img1 {
	border-radius: 8px;
	border: 3px solid #26247e;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.75);
	vertical-align: text-top;
	margin: 3px;
	color: #26247e;
	background-color: #ffffff;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.img1:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.img1Artist {
	border-radius: 8px;
	border: 3px solid #a7ac1e;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.75);
	vertical-align: text-top;
	margin: 3px;
	color: #a7ac1e;
	background-color: #FFF;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.img1Artist:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.imgSongCover {
	border-radius: 8px;
	border: 3px solid #eb2f35;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.75);
	vertical-align: text-top;
	margin: 3px;
	color: #eb2f35;
	background-color: #FFF;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.imgSongCover:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.img2 {
	border-radius: 8px;
	border: 3px solid #FFFFFF;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.75);
	vertical-align: text-top;
	margin: 3px;
	background-color: #333;
	color: #FFF;
}

.img2:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.img3 {
	border-radius: 8px;
	border: 1px solid #000000;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	vertical-align: text-top;
	margin: 3px;
}

.img3:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

.img3NoBorder {
	vertical-align: text-top;
	margin: 5px;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}
.imgNoBorder {
	vertical-align: text-top;
	margin: 0px;
	padding: 0px;
	border-top-width: 0px;
	border-right-width: 0px;
	border-bottom-width: 0px;
	border-left-width: 0px;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	text-align: center;
}

.img4Publisher {
	border-radius: 8px;
	border: 3px solid #099;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.75);
	vertical-align: text-top;
	margin: 3px;
	background-color: #FFF;
	color: #099;
	display: inline-block;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.img4Publisher:hover {
	box-shadow: 8px 8px 18px rgba(0,0,0,0.55);
	transform: translateY(-2px);
	border-radius: 0px;
	border-width: 3px;
	border-color: #F00;
}

/* =========================
   END IMAGES
   ========================= */


/* =========================
   HEADINGS & FONTS
   ========================= */
.largeFont {
	font-family:"Times New Roman", Times, serif;
	font-size:22px;
	color: #FFF;
	font-weight:800;
	text-align:left;
	text-shadow: 1px 1px 1px #000000;
}

.mediumFont {
	font-family:"Times New Roman", Times, serif;
	font-size:20px;
	color: #FFF;
	font-weight:600;
	text-align:left;
	text-shadow: 1px 1px 1px #000000;
}

.regularFont {
	font-family:"Times New Roman", Times, serif;
	font-size:16px;
	color: #FFF;
	font-weight:500;
	text-align:left;
}

.smallFont {
	font-family:"Times New Roman", Times, serif;
	font-size:13px;
	color: #FFF;
	font-weight:400;
	text-align:left;
}


.specialHeading {
	font-size: 20px;
}

h1 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 24px;
	color: #FFFFFF;
	font-weight:800;
	text-align:center;

}

h2 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 20px;
	color: #FFFFFF;
	font-weight:700
	text-align:center;
}

h3 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size:18px;
	color: #FFFFFF;
	font-weight:600
	text-align:center;
}

.h1,
h1 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 24px;
	color: #FFFFFF;
	font-weight: 800;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}

.h2,
h2 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 20px;
	color: #FFFFFF;
	font-weight: 700;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}

.h3,
h3 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 18px;
	color: #FFFFFF;
	font-weight: 600;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}

h4 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 17px;
	color: #FFFFFF;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}

h5 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 17px;
	color: #FFFFFF;
	text-align: left;
	text-shadow: 1px 1px 1px #000000;
}

h6 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 14px;
	color: #FFFFFF;
	text-align: right;
	text-shadow: 1px 1px 1px #000000;
}	
.songH1 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 24px;
	color: #FFFFFF;
	font-weight: 800;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}
.songH2 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 20px;
	color: #FFFFFF;
	font-weight: 700;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}

.songH3 {
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 18px;
	color: #FFFFFF;
	font-weight: 600;
	text-align: center;
	text-shadow: 1px 1px 1px #000000;
}

/* =========================
   TEXT
   ========================= */

p {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: 600;
	color: #FFF;
	text-align: justify;
	padding-right: 5px;
}

ul {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
	text-align: left;
}

ol {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
	text-align: left;
}

.smallText {
	font-size: 11px;
	color: #296490;
}

.SmallText {
	font-family: Arial, Helvetica, sans-serif;
	color: #C0DCF3;
	font-size: 16px;
	text-decoration: none;
}

.ReallySmallText {
	font-family: Arial, Helvetica, sans-serif;
	color: #FFFFFF;
	font-size: 12px;
	text-decoration: none;
}

.mediumText {
	font-family: "Times New Roman", Times, serif;
	font-size: 16px;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
}

.textBlock {
	text-align: justify;
	width: 760px;
}

.textAlign {
	vertical-align: text-bottom;
}

.copyright {
	vertical-align: super;
	font-size: 18px;
}

.pLeft {
	text-align: left;
}

.pRight {
	text-align: right;
}

.pJustify {
	text-align: justify;
}

.StateFont1 {
	text-align: left;
	font-size: 14px;
}

.StateFont {
	text-align: justify;
	font-size: 14px;
}


/* =========================
   LISTS
   ========================= */

.SongList {
	margin-left: -15px;
}

.SongListLeft {
	width: 1200px;
}

.galleryList {
	font-family: "Times New Roman", Times, serif;
	font-size: 28px;
	color: #FFF;
	text-align: left;
}

.listShim {
	margin-left: -30px;
}

.listSpecial {
	font-size: 20px;
	padding: 8px;
	height: auto;
	width: auto;
	margin: 8px;
	border: thin #FFF;
	background-color: #4197dd;
	color: #FFF;
	list-style-type: square;
	list-style-position: inside;
}

.listSpecialSongLink {
	font-size: 20px;
	font-style: normal;
	line-height: normal;
	font-weight: bold;
	color: #05fcf3;
	text-align: left;
	list-style-type: square;
	list-style-position: inside;
	border-bottom-width: 1px;
	border-bottom-color: #FFF;
}

.li {
	font-size: 20px;
	padding: 8px;
	height: auto;
	width: auto;
	margin: 8px;
	border: thin #FFF;
	background-color: #3376ac;
	color: #FFF;
	list-style-type: square;
	list-style-position: inside;
}


/* =========================
   BOXES / CALLOUTS
   ========================= */

.badge {
	display: inline-block;
	background: #eefbf2;
	color: #0a7b3d;
	border: 1px solid #bfe8cd;
	border-radius: .5rem;
	padding: .2rem .5rem;
	font-size: .85rem;
}

.box {
	transition: box-shadow 0.3s ease;
	background-color: #204e70;
	border: 2px solid #FFF;
}

.box:hover {
	box-shadow: 0 6px 16px rgba(0,0,0,0.2);
}

.towns {
	transition: towns-shadow 0.3s ease;
	background-color: #2b6592;
	border: 1px solid #255a82;
	margin: 8px;
	padding: 8px;
	width: 750px;
}

.towns:hover {
	box-shadow: 0 6px 16px rgba(0,0,0,0.2);
}

.didYouKnow {
	border: 2px solid #FFF;
	border-radius: 8px;
	background-color: #255a82;
	box-shadow: 0 6px 16px rgba(0,0,0,0.5);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-style: italic;
	font-weight: 600;
	color: #FFF;
	text-align: justify;
	margin: 10px;
	padding: 10px;
}

.ethics-box {
	font-family: "Times New Roman", Times, serif;
	color: #FFFFFF;
	font-size: 16px;
	text-decoration: none;
	border: 2px solid #ffffff;
	border-radius: 8px;
	padding: 3px;
	margin: 3px;
	background: #255a82;
	box-shadow: 0 4px 10px rgba(0,0,0,0.08);
	width: 1000px;
}

.ethicsMedFont {
	font-family: "Times New Roman", Times, serif;
	color: #ffffff;
	font-size: 18px;
	padding-left: 5px;
}

.ethics-box li {
	list-style:inside;
	list-style-image:url(images/musicnote-sm.png);
	padding: 5px;
}

.ethics-box ul {
	padding-right: 35px;
}

.sidebar-box {
	background: #f9f9f9;
	border: 2px solid #ddd;
	padding: 15px;
	margin: 20px 0;
	font-family: "Georgia", serif;
	max-width: 300px;
}

.sidebar-box h3 {
	border-bottom: 2px solid #ccc;
	padding-bottom: 5px;
	margin-top: 15px;
	font-size: 1.2em;
	color: #2c3e50;
}

.trivia-box {
	background: #fff9e6;
	border-left: 4px solid #f39c12;
	padding: 10px;
	margin: 15px 0;
	font-style: italic;
}

.related-song {
	background: #eef6ff;
	border-left: 4px solid #3498db;
	padding: 10px;
	margin-top: 20px;
}

.related-song h4 {
	margin-top: 0;
	color: #34495e;
}


/* =========================
   FAQ
   ========================= */

summary.faq-question {
	display: block;
	background-color: #255a82;
	color: #fff;
	padding: 1rem;
	font-weight: bold;
	cursor: pointer;
	position: relative;
	transition: background-color 0.25s ease;
}

summary.faq-question:hover {
	background-color: #2f6ea0;
}

details[open] > summary.faq-question {
	background-color: #2a6a97;
}

summary.faq-question::-webkit-details-marker {
	display: none;
}

summary.faq-question::marker {
	content: "";
}

#faq details {
	background: #255a82;
	margin: 0 0 .75rem 0;
	overflow: hidden;
	padding: 1rem;
	cursor: pointer;
	transition: background-color 0.25s ease;
	border-radius: 8px;
	border: 1px solid #000000;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	border-color: #FFF;
}

#faq summary {
	list-style: none;
	padding: 1rem 3rem 1rem 1rem;
	position: relative;
	font-weight: 600;
	user-select: none;
	background: #255a82;
	margin: 0 0 .75rem 0;
	overflow: hidden;
	transition: background-color 0.25s ease;
	border-radius: 8px;
	border: 1px solid #000000;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.75);
	text-align: center;
	border-color: #FFF;
	cursor: pointer;
}

#faq summary::-webkit-details-marker {
	display: none;
}

#faq summary::after {
	content: "+";
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
	font-weight: 600;
	color: var(--faq-accent);
}

#faq details[open] summary::after {
	content: "--";
}

#faq .answer {
	padding: 0 1rem 1rem 1rem;
	background: var(--faq-bg);
}

#faq .answer p {
	margin: .75rem 0;
}

#faq .answer ul {
	margin: .25rem 0 .75rem 1.25rem;
}

#faq .note {
	color: var(--faq-muted);
	font-size: .95rem;
}

details[open] .answer {
	max-height: 500px;
	transition: max-height 0.4s ease;
}

details .answer {
	max-height: 0;
	overflow: hidden;
}

faq-question {
	transition: transform 0.2s ease, background-color 0.3s ease;
}

.faq-question:hover {
	transform: scale(1.02);
	background-color: #2f6ea0;
}


/* =========================
   GALLERY / SONGLIST
   ========================= */

.regionsMenu {
	text-align: center;
	font-size: 24px;
}

.regionMap {
	float: left;
}

.slideshow-container {
	width: 775px;
	height: 475px;
	position: relative;
	overflow: hidden;
	border: 2px solid #333;
	border-radius: 10px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.slides {
	display: none;
	position: absolute;
	width: 100%;
	height: 100%;
}

.slides img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.controls {
	margin-top: 10px;
	display: flex;
	justify-content: center;
	gap: 10px;
}

.controls button {
	background-color: #333;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 5px;
	padding: 10px 15px;
	font-size: 16px;
	cursor: pointer;
	transition: background-color 0.3s ease;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.controls button:hover {
	background-color: #555;
}

.galleryLeft {
	width: 1200px;
	height: 620px;
	overflow: scroll;
	padding: 20px;
}

.column {
	float: left;
	width: 395px;
	height: auto;
	margin-top: -35px;
}


/* =========================
   MEDIA QUERIES
   ========================= */

@media (max-width: 595px) {
	#map {
		height: 90vh;
		width: 100%;
		margin: 0 auto;
		border: 2px solid #ddd;
	}

	.leaflet-container {
		height: 400px;
		width: 600px;
		max-width: 100%;
		max-height: 100%;
	}
}


/* =========================
   ANIMATIONS
   ========================= */

.fade {
	animation: fadeEffect 1s;
}

@keyframes fadeEffect {
	from {
		opacity: 0.4;
	}
	to {
		opacity: 1;
	}
}

/* =========================
   MUSIC PLAYER
   ========================= */


.regionsMenu  {
	text-align:center;
	font-size:24px;
}			

.regionMap {
	float:left;
}
.StateFont1 {
text-align: left;
font-size: 16px;
color: #FFF;
padding-left: 10px;
padding-right: 10px;
font-weight: 500;
}
.StateFont {
text-align: justify;
font-size: 16px;
color: #FFF;
padding-left: 10px;
padding-right: 10px;
font-weight: 500;
}
ul			{
padding-left: 20px;
padding-right: 10px;
}
.music-player {
	width: 750px;
	background: #; /* Player background */
	border: 2px solid #ffffff; /* Border color to match website */
	border-radius: 10px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.75);
	padding: 10px;
	text-align: center;
}

.music-player h2 {
	font-size: 14px;
	margin-bottom: 10px;
}

.controls {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.progress-container {
	position: relative;
	height: 5px;
	background: #ddd; /* Progress bar background */
	border-radius: 5px;
	overflow: hidden;
	width: 100%;
	margin: 10px 0;
	cursor: pointer;
}

.progress {
	background-color: #205179; /* Progress bar color */
	height: 100%;
	width: 0%;
}

.controls button {
	background-color: #205179; /* Button background */
	color: #fff;
	border: none;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	font-size: 18px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.3s ease;
}

.controls button:hover {
	background-color: #555; /* Button hover color */
}

.volume-control {
	align: left;
	align-items: left;
	gap: 5px;
	width: 200px;
}
.Etsy {
width: 725px;
font-family: Arial, Helvetica, sans-serif;
color: #36C;
font-size: 18px;
text-decoration: blink;
background-color: #D2D9F0;
text-align: center;
height: auto;
border: 2px dashed #36C;
margin: 8px;
padding: 2px;
border-radius: 10px;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.75);
}
.EtsyLink {
	color: #36C;
	text-decoration: none;			
}
.volume-slider {
	width: 100px;
}

/* Responsive Design */
@media (max-width: 400px) {
	.music-player {
		width: 90%;
	}
}
 /* Styles for the Slideshow */

.slideshow-container {
	width: 775px;
	height: 475px;
	position: relative;
	overflow: hidden;
	border: 2px solid #333; /* Border for the slideshow */
	border-radius: 10px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.slides {
	display: none;
	position: absolute;
	width: 100%;
	height: 100%;
}

.slides img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* Ensures images fit within the container */
}

/* Controls */
.controls {
	margin-top: 10px;
	display: flex;
	justify-content: center;
	gap: 10px;
}

.controls button {
	background-color: #333; /* Button background */
	color: #fff;
	border: none;
	border-radius: 5px;
	padding: 10px 15px;
	font-size: 16px;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.controls button:hover {
	background-color: #555; /* Button hover color */
}

/* Active slide fade-in animation */
.fade {
	animation: fadeEffect 1s;
}


.lyrics {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	font-style: italic;
	line-height: 14px;
	color: #fff;
	text-decoration: none;
	text-align: left;
	background-color: #2e6da0;
}
.SongLyricsHeader {
	font-family: "Times New Roman", Times, serif;
	font-size: 18px;
	line-height: 20px;
	color: #CCC;
	text-decoration: none;
	text-align: left;
	font-weight: bold;
}
.SongLinks {
	font-family: "Times New Roman", Times, serif;
	font-size: 20Spx;
	line-height: 18px;
	color: #CCC;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
}
.Author {
	font-family: "Times New Roman", Times, serif;
	font-size: 20px;
	line-height: 18px;
	color: #CCC;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	text-shadow: 1px 1px 1px #000000;
}
/* =========================
   Contact Form
   ========================= */

        .contact-form {
            background: #255a82;
            padding: 25px;
            max-width: 700px;
            width: 100%;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
            border-radius: 8px;
        }
        .contact-form h2 {
            margin-bottom: 20px;
            font-size: 16px;
            color: #;
        }
        .form-group {
            margin-bottom: 15px;
        }
        .form-group label {
            display: block;
            margin-bottom: 5px;
            font-weight: bold;
        }
        .form-group input,
        .form-group textarea,
        .form-group select {
            width: 100%;
            padding: 10px;
            border: 1px solid #ccc;
            border-radius: 5px;
            font-size: 16px;
        }
        .form-group textarea {
            min-height: 200px;
        }
        .form-group select {
            cursor: pointer;
        }
        .form-group input:required,
        .form-group textarea:required {
            border: 1px solid #007BFF;
        }
        .form-group input:focus,
        .form-group textarea:focus,
        .form-group select:focus {
            outline: none;
            border-color: #007BFF;
            box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);
        }
        .submit-btn {
            background-color: #007BFF;
            color: #fff;
            border: none;
            padding: 10px 20px;
            font-size: 1rem;
            border-radius: 5px;
            cursor: pointer;
            transition: background-color 0.3s ease;
        }
        .submit-btn:hover {
            background-color: #0056b3;
        }
		.contactInfo {
			font-size:20px; font-family: "Times New Roman", Times, serif; color:#FFF;
		}
/* ============================================================
   CARD SHOP STYLES - all rules are prefixed "cs-" so they will
   never conflict with styles.shtml
   ============================================================ */
.cs-wrap{width:765px;}
.cs-step{background:#f4fafc;border:1px solid #cfe4ec;border-radius:8px;padding:16px 18px;margin:0 0 18px 0;}
.cs-step.cs-optional{background:#f9f9f4;border-color:#e0e0cf;}
.cs-step h3{margin-top:0;}
.cs-step-note{font-size:13px;color:#444;margin:4px 0 12px 0;line-height:1.5;}
.cs-price-tag{display:inline-block;background:#1b7a99;color:#fff;font-size:12px;font-weight:bold;border-radius:10px;padding:2px 10px;margin-left:8px;vertical-align:middle;}
.cs-price-tag.cs-free{background:#5a8f3c;}
.cs-check{display:none;color:#5a8f3c;font-size:18px;font-weight:bold;margin-left:8px;}
.cs-step.cs-done .cs-check{display:inline;}

.cs-row{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start;}
.cs-col{flex:1 1 220px;min-width:200px;}

.cs-label{display:block;font-size:13px;font-weight:bold;color:#1b5b73;margin:8px 0 3px 0;}
.cs-select{width:100%;max-width:340px;padding:6px 8px;font-size:14px;border:1px solid #9cc3d2;border-radius:5px;background:#fff;}
.cs-select:focus{outline:2px solid #1b7a99;}

.cs-preview{margin-top:10px;}
.cs-preview img{max-width:220px;height:auto;border:1px solid #b8d4df;border-radius:6px;background:#fff;display:block;}
.cs-preview .cs-caption{font-size:12px;color:#555;margin-top:4px;max-width:220px;}

/* --------------------------------------------------------------
   SENTIMENT PREVIEW BOX - edit font-family / font-size / color
   here to change how sentiments display. Holds up to 4 centered
   lines of text comfortably.
   -------------------------------------------------------------- */
.cs-sentiment-preview{
  font-family: Georgia, "Times New Roman", serif;  /* <-- sentiment font   */
  font-style: italic;                              /* <-- remove if needed */
  font-size: 16px;                                 /* <-- sentiment size   */
  color: #2d4a56;                                  /* <-- sentiment color  */
  line-height: 1.55;
  text-align: center;
  background:#fff;
  border:1px dashed #9cc3d2;
  border-radius:6px;
  min-height: 104px;            /* room for 4 lines */
  max-width: 340px;
  padding: 12px 14px;
  margin-top: 8px;
  display:flex;flex-direction:column;justify-content:center;
}
.cs-sentiment-note{font-size:11px;font-style:normal;color:#777;margin-top:6px;}

/* Kit summary (Step 8) */
.cs-kit{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;}
.cs-kit-item{width:118px;text-align:center;background:#fff;border:1px solid #cfe4ec;border-radius:6px;padding:8px 6px;}
.cs-kit-item img{width:100px;height:100px;object-fit:cover;border-radius:4px;border:1px solid #e2eef3;}
.cs-kit-item .cs-kit-label{font-size:11px;color:#333;line-height:1.35;margin-top:5px;min-height:30px;}
.cs-kit-item .cs-kit-price{font-size:11px;font-weight:bold;color:#1b7a99;}
.cs-kit-empty{font-size:13px;color:#777;font-style:italic;}

.cs-total-bar{margin-top:14px;padding:10px 14px;background:#eaf5f9;border:1px solid #b8d4df;border-radius:6px;font-size:15px;}
.cs-total-bar strong{color:#1b5b73;font-size:18px;}

.cs-btn{display:inline-block;background:#1b7a99;color:#fff !important;font-size:16px;font-weight:bold;border:0;border-radius:6px;padding:12px 26px;cursor:pointer;text-decoration:none;}
.cs-btn:hover{background:#156280;}
.cs-btn.cs-btn-quiet{background:#8aa6b0;font-size:13px;padding:8px 16px;}
.cs-btn.cs-btn-quiet:hover{background:#74929d;}
.cs-btn:disabled{background:#b6c8cf;cursor:not-allowed;}

.cs-missing{background:#fff4f1;border:1px solid #e7b8aa;color:#8a3b22;border-radius:6px;padding:10px 14px;margin-top:12px;font-size:13px;display:none;}

.cs-order-box{display:none;margin-top:14px;background:#fff;border:2px solid #1b7a99;border-radius:8px;padding:14px 16px;}
.cs-order-box h4{margin:0 0 8px 0;color:#1b5b73;}
.cs-order-box pre{white-space:pre-wrap;font-size:12px;background:#f4fafc;border:1px solid #cfe4ec;border-radius:5px;padding:10px;max-height:260px;overflow:auto;}
</style>


