/* Joe Firstman — site-wide stylesheet.
   Migrated from the WordPress "JoeFirstman" theme (style.css) + page markup.
   Template chrome (header/nav/sidebar/footer) and shared content styles live here. */

/* ---------- reset / base ---------- */
html{line-height:1.15;-webkit-text-size-adjust:100%;box-sizing:border-box}
*,*::before,*::after{box-sizing:inherit}
html,body{height:100%}
body{margin:0;border:0;color:#fff;font-family:'franklin_gothic_fs_bookRg',Helvetica,Arial,sans-serif;font-size:13px;background:url(/images/managed/bg.jpg) no-repeat #000;background-position:top}
ul,ol{list-style:none}
img,svg,video,iframe{max-width:100%;height:auto;border:0}
input,button,select,textarea{font-family:inherit;font-size:inherit}
.clear{clear:both}
a,a:link,a:visited{color:#e18c09;text-decoration:underline}
a:hover,a:active{text-decoration:none}
strong{font-weight:bold}
h1,h2,h3,h4,h5,h6{color:#fff;font-family:'arvil_sansregular',Helvetica,Arial,sans-serif;margin:10px 0}
dl{margin:10px 0 20px}
dt{font-weight:bold}

/* ---------- containers / columns ---------- */
/* the 2013 float layout math assumes content-box sizing */
#container,#bodycontainer,#sidecolumn,#maincolumn,#sidebar{box-sizing:content-box}
#container{width:1000px;margin:0 auto}
#bodycontainer{margin:0 auto;width:980px;overflow:auto;padding:10px}
#sidecolumn{margin:-15px 20px 0 20px;float:left;width:310px;border-radius:5px}
#maincolumn{float:left;margin:0 0 0 15px;width:600px;border-radius:5px}
#content{margin:0;padding:20px 20px 10px 0}
.cms_region{margin:0 0 10px 0}

/* ---------- header: social + nav ---------- */
#nav-bar{margin:20px 0 0;float:left;width:100%}
#social{width:170px;height:34px;display:block;margin:10px 20px 0 0;float:right}
#social a{display:block;overflow:hidden;float:left;height:34px;width:34px}
.facebook_btn a{margin:0;background:url(/images/managed/facebook_btn.png) no-repeat 0 0}
.twitter_btn a{margin:0 0 0 10px;background:url(/images/managed/twitter_btn.png) no-repeat 0 0}
.youtube_btn a{margin:0 0 0 10px;background:url(/images/managed/youtube_btn.png) no-repeat 0 0}
.instagram_btn a{margin:0 0 0 10px;background:url(/images/managed/instagram_btn.png) no-repeat 0 0}
.facebook_btn a:hover,.twitter_btn a:hover,.youtube_btn a:hover,.instagram_btn a:hover{background-position:0 -42px}

#navleft ul{list-style:none;margin:0;padding:0}
#navleft li{float:left;margin:0 15px 0 0;font-size:38px;width:auto;display:inline;color:#4b4b4b;text-decoration:none;font-family:'arvil_sansregular',Helvetica,Arial,sans-serif}
#navleft li a{font-size:38px;float:left;width:auto;display:inline;color:#fff;text-decoration:none;font-family:'arvil_sansregular',Helvetica,Arial,sans-serif;letter-spacing:1px;text-shadow:1px 1px 0 #000}
#navleft li a:hover{color:#c12106}

/* ---------- sidebar ---------- */
#sidebar{width:310px;float:left}
#sidebar ul{margin:0;padding:0}
#sidebar ul li h2{margin:0 0 10px;font-family:Georgia,'Times New Roman',serif;color:#fff;font-style:italic;padding:0 0 10px;font-size:30px;border-bottom:1px solid #e18c09; font-weight: normal;}
#sidebar ul li{padding:5px;margin:10px 0 0}
#sidebar ul li ul,#sidebar ul li div{padding:0;box-sizing:border-box}
#sidebar ul li ul li{background:none}
#sidebar ul li ul{list-style:url(/images/managed/sidebar_arrow.png) inside}
#sidebar ul ul li{margin:5px 10px;padding:0}
#sidebar a:link,#sidebar a:visited{color:#e18c09;text-decoration:none}
#sidebar a:hover,#sidebar a:active{color:#e18c09;text-decoration:underline}
.widget-cordovas img{width:160px;height:auto;margin-right:10px;vertical-align:top}

/* ---------- page titles ---------- */
.pagetitles{font-family:Georgia,'Times New Roman',serif;color:#fff;font-style:italic;padding:0 0 10px;font-size:30px;border-bottom:1px solid #c12106;margin:0 0 10px; font-weight: normal;}

/* ---------- news posts ---------- */
.entry{padding:10px 0;line-height:1.5em}
.entry p{margin:5px 0 15px;font-size:13px;color:#fff;font-family:'franklin_gothic_fs_bookRg',Helvetica,Arial,sans-serif}
.entry a{color:#e18c09;text-decoration:none}
.entry a:hover{color:#e18c09;text-decoration:underline}
.entry iframe{max-width:100%;height:auto;aspect-ratio:16/9;display:block}
.post{margin:0 0 10px}
.post-title{padding-bottom:5px;color:#fff;font-family:'bebas_neueregular',Helvetica,Arial,sans-serif;font-size:1.9em;letter-spacing:1px;line-height:1.2em;font-weight: normal;}
.post-title a:link,.post-title a:visited{color:#fff;text-decoration:none;font-family:'bebas_neueregular',Helvetica,Arial,sans-serif}
.post-title a:hover,.post-title a:active{text-decoration:underline}
.postmeta{margin:0;border-bottom:1px dashed #424242;height:25px;font-size:13px;text-transform:uppercase}
.postmeta span{padding:0 5px;border-right:1px solid #5c5c5c}
.postmeta a:link,.postmeta a:visited{color:#e18c09;text-decoration:none}
.postmeta a:hover,.postmeta a:active{color:#e18c09;text-decoration:underline}

/* ---------- homepage slider ---------- */
.home-slider img{display:block;width:100%;max-width:600px;height:auto;aspect-ratio:600/280; margin-bottom: 1em;}

/* ---------- photo grid ---------- */
.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 auto}
.photo-grid a{display:block;text-align:center;text-decoration:none}
.photo-grid img{width:150px;height:150px;border:2px solid #cfcfcf}
.photo-grid a:hover img{background-color:#e18c09}

/* ---------- video grid ---------- */
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:10px 0 20px}
.video-grid iframe{width:100%;height:auto;aspect-ratio:16/9;display:block;border:0}

/* ---------- bandsintown widget ---------- */
.bit-widget-initializer{display:inline}
.bit-events{border-bottom:none !important;max-width:100%;overflow-x:auto}
.bit-events table tr td{font-size:13px;color:#fff;border:dashed #717171;border-width:0 0 1px 0;font-weight:normal !important}
.bit-date{width:80px !important}
.bit-rsvp{text-shadow:none}

/* ---------- twitter feed ---------- */
.twtr-hd,.twtr-ft{display:none}
.twtr-bd{font-size:1.1em;font-family:'franklin_gothic_fs_bookRg',Helvetica,Arial,sans-serif;line-height:20px;color:#fff;overflow-wrap:break-word}
.twitter-timeline{display:inline}
.twitter-timeline-rendered{max-width:100%}

/* ---------- contact form (MessageSection — CMS CSS disabled, we own the styling) ---------- */
.cms_ContactFeedbackForm .Message_Description1 h1{font-family:Georgia,'Times New Roman',serif;color:#fff;font-style:italic;font-size:30px;border-bottom:1px solid #e18c09;margin:10px 0 20px;padding:0 0 10px}
.cms_ContactFeedbackForm .Message_Description1 p:empty{display:none}
.cms_ContactFeedbackForm .MessageSection_MessageForm{display:flex;flex-direction:column;max-width:560px}
.cms_ContactFeedbackForm .MessageForm_InputItem{margin:0 0 15px;min-width:0}
.cms_ContactFeedbackForm .MessageForm_StatusMsg{margin:0 0 10px;color:#fff}
.cms_ContactFeedbackForm .MessageForm_Buttons{min-width:0}
.cms_ContactFeedbackForm label{display:inline-block;color:#fff;font-size:13px;margin:0 0 5px}
.cms_ContactFeedbackForm .formFieldRequiredMarker{color:#e18c09;margin-left:3px}
.cms_ContactFeedbackForm input.inputText,.cms_ContactFeedbackForm textarea.inputText{width:100%;max-width:560px;box-sizing:border-box;background:#fff;border:1px solid #5c5c5c;color:#222;padding:9px 10px;font-size:13px;border-radius:3px}
.cms_ContactFeedbackForm textarea.inputText{min-height:120px;resize:vertical}
.cms_ContactFeedbackForm input.inputText:hover,.cms_ContactFeedbackForm textarea.inputText:hover{border-color:#e18c09}
.cms_ContactFeedbackForm input.inputText:focus,.cms_ContactFeedbackForm textarea.inputText:focus{outline:none;border-color:#e18c09;box-shadow:0 0 0 2px rgba(225,140,9,0.35)}
.cms_ContactFeedbackForm input[type="submit"]{background:#e18c09;color:#fff;font-family:'bebas_neueregular',Helvetica,Arial,sans-serif;letter-spacing:1px;font-size:14px;border:none;border-radius:3px;padding:10px 24px;min-height:44px;cursor:pointer;text-shadow:1px 1px 0 rgba(0,0,0,0.25)}
.cms_ContactFeedbackForm input[type="submit"]:hover{background:#c12106}

/* ---------- footer ---------- */
#footer{height:160px;color:#fff}
.bar{border-top:1px dashed #5c5c5c;width:100%;height:1px;float:left}
#footer a{color:#e18c09}
.logo{margin:20px 15px 20px 0;width:425px;height:37px;float:right}
.credits{margin:10px 15px 0 0;float:right;font-size:12px;text-align:right;text-transform:uppercase}

/* ---------- lightbox (site-wide) ---------- */
.jf-lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.85);z-index:9999;display:none;cursor:pointer}
.jf-lightbox.active{display:block}
.jf-lightbox img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-width:90%;max-height:90%;box-shadow:0 0 40px rgba(0,0,0,0.8)}

/* ---------- focus visibility ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #e18c09;outline-offset:2px}

/* ---------- responsive (source site is fixed 1000px; below that the layout fluidizes) ---------- */
@media (max-width:1019px){
	#container{width:100%;padding:0 15px;box-sizing:border-box}
	#bodycontainer{width:100%;overflow:visible;padding:0;box-sizing:border-box}
	#nav-bar{float:none}
	#social{float:right;margin:10px 0 0}
	#navleft{margin:0 0 10px}
	#navleft ul{display:flex;flex-wrap:wrap;row-gap:8px}
	#navleft li{float:none}
	#navleft li.nav-sep{display:none}
	#sidecolumn{float:none;width:auto;margin:0 0 20px;padding:0 15px}
	#maincolumn{float:none;width:auto;margin:0}
	#content{padding:15px 15px 10px}
	#sidebar{width:auto;float:none}
	#footer{height:auto;padding:0 0 20px}
	.logo{float:none;width:auto;height:auto;margin:0}
	.bar{float:none;width:auto;margin:10px 0 0}
	.credits{float:none;width:100%;margin:10px 0 0;text-align:right}
}
@media (max-width:640px){
	#navleft li{font-size:26px;margin:0 10px 0 0}
	#navleft li a{font-size:26px}
	#social{width:170px;margin:0 0 6px 0}
	.pagetitles{font-size:24px}
	#sidebar ul li h2{font-size:24px}
	.post-title{font-size:1.5em}
	.video-grid{grid-template-columns:1fr}
	.photo-grid{gap:8px}
	.photo-grid img{width:100%;height:auto;max-width:150px}
}
