:root {
	--siteLightGrey: #f2f2f2;
	--siteDarkGrey: #7B8A9E;
	--siteLightRed: rgba(179, 27, 41, 1);
	--siteRed: rgba(142, 0, 0, 1);
	--siteDarkRed: rgba(116, 19, 28, 1);
	--siteYellow: rgba(255, 223, 45, 1);
	--siteOrange: rgba(255, 178, 0, 1);
	
	--siteRedTrans33: rgba(142, 0, 0, 0.34);
	--siteYellowTrans33: rgba(255, 223, 45, 0.34);
	--siteOrangeTrans33: rgba(255, 178, 0, 0.34);
	
	--sliderGap: 0.5em;
	--panelGap: 1em;
}

* {
	box-sizing: border-box;
}

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

a:hover {
	text-decoration: underline;
}



@font-face {
	font-family: mainFont;
	src: url("fonts/JosefinSans-Light.ttf");
}

@font-face {
	font-family: headerFont;
	src: url("fonts/JuliusSansOne-Regular.ttf");
}


body {
	font-family: mainFont, Arial, sans-serif;
	font-size: 1.2rem;
	text-align: left;
	margin: 0;
	padding: 0;
}

h1 {
	font-family: headerFont, Trebuchet MS, sans-serif;
	font-size: 2em;
	font-weight: bolder;
}

h2 {
	font-family: headerFont, Trebuchet MS, sans-serif;
	font-size: 1.5em;
}

h3 {
	font-family: headerFont, Trebuchet MS, sans-serif;
	font-size: 1.2em;	
}

p {
	font-size: 1.2em;
	line-height: 1.2em;
	margin-top: 0.5em;
	margin-bottom: 1em;
}

.smallText {
	font-size:0.7em !important;
}

.medText {
	font-size:0.85em !important;
}

.normText {
	font-size:1em !important;
}

.pageHeader {
	width: 100%;
	margin: 1em auto;
	text-align: center;
	position: relative;
	min-height: 3em;
	background-color: var(--siteRedTrans33);
}

.pageHeader h1 {
	padding: 1em 0 1em 0;
	margin: 0 60px;
	min-height: 3em;
	font-size: 3em;
	color: var(--siteOrange);
	
	/*-webkit-text-fill-color: var(--siteOrange);
    -webkit-text-stroke: 1px black;
	
	
			-2px -2px 0 #000, 
		2px -2px 0 #000, 
		-2px  2px 0 #000, 
		2px  2px 0 #000, 
		2px  0px 0 #000, 
		-2px  0px 0 #000, 
		0px  2px 0 #000, 
		0px -2px 0 #000;
		
		
		
	*/
	
	text-shadow:
		-5px -5px 5px #000, 
		5px -5px 5px #000, 
		-5px  5px 5px #000, 
		5px  5px 5px #000, 
		5px  0px 5px #000, 
		-5px  0px 5px #000, 
		0px  5px 5px #000, 
		0px -5px 5px #000;
}

.sectionHeader {
	width: 100%;
	margin: 1em auto;
	padding: 1.25em 0 1.25em 0;
	position: relative;
	min-height: 3em;
	background-color: var(--siteLightGrey);
}

.sectionContentPicBg {
	border-radius: 10px;
	border: 2px solid #ffffff;
	padding-left: 2em;
	padding-right: 2em;
	background-color: rgba(255, 255, 255, 0.85);
}

.smLinks {
	position: absolute;
	top: 1em;
	left: 1em;
}

.buttonIcon {
	width: auto;
	text-decoration: none;
}

.buttonIcon {
	display: block;
	padding: 5px;
	margin: 5px;
	border-radius: 100%;
	background-color: var(--siteRed);
	color: var(--siteYellow);
	width: 40px;
	height: 40px;
	aspect-ratio: 1/1;
	text-align: center;
	line-height: 28px;
	font-size: 20px;
	text-decoration: none;
}


.buttonIcon i {
	animation: spinIn .8s ease-in-out;
}

.buttonIcon:hover i {
	animation: spinOut .8s ease-in-out;
}

@keyframes spinIn {
    0% { transform: rotateY(360deg); }
    100% { transform: rotateY(0deg); }
}

@keyframes spinOut {
    0% { transform: rotateY(0deg); }
    100% { transform: rotateY(360deg); }
}

.linkButton {
	border-radius: 250px 250px 250px 250px!important;
	border: 0px!important;
	padding: 0.25em 1em!important;
	color: #ffffff !important;
	font-family: headerFont!important;
	text-decoration: none!important;
	display: inline-block;
	margin: 0.5em;
	transition: all 0.5s ease;
	
	background: var(--siteRed);
	background: linear-gradient(180deg, var(--siteLightRed) 0%, var(--siteDarkRed) 50% ,var(--siteLightRed) 100%);
	
	background-size: 100% 200%;
	background-position: 100% 0%;
	
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	
	cursor: pointer;
	
	font-size: inherit;
}

.linkButton:hover {
	background-position: 100% 100%;
	box-shadow: 0px -8px 16px 0px rgba(0,0,0,0.2);
	text-decoration: none;
}

.linkButton:disabled {
	background: var(--siteDarkGrey);
	/* background: linear-gradient(180deg, var(--siteLightGrey) 0%, var(--siteDarkGrey) 50% ,var(--siteLightGrey) 100%); */
}

.linkButtonYellow {
	color: #000000 !important;
	margin: 0 !important;
	background: var(--siteRed);
	background: linear-gradient(180deg, var(--siteYellow) 0%, var(--siteOrange) 50% ,var(--siteYellow) 100%);
	
	background-size: 100% 200%;
	background-position: 100% 0%;
	
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	
	cursor: pointer;
	
	font-size: inherit;
}

.linkButton:disabled:hover {
	background-position: 100% 100%;
	box-shadow: 0px -8px 16px 0px rgba(0,0,0,0.2);
	text-decoration: none;
}

.bigButton {
	font-size: 1.5em; 
	padding: 0.75em;
	text-align: center;
}

.hiLite {
	border-radius: 10px;
	margin: 10px;
	padding: 10px;
	font-style: italic;
	font-size: 1em;
	text-align:center;
}

.sectionPanel {
	border-radius: 10px;
	margin: 10px;
	padding: 10px;
	border: 1px solid var(--siteLightGrey) !important;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.panelHighlight {
	outline: 4px solid var(--siteOrange) !important;
}

.sectionPanelSQ {
	aspect-ratio: 1 / 1;
}

.noMargin {
	margin:0 !important;
}

li > p {
	margin-top: 0.1em;
	margin-bottom: 0.2em;
}

.imgInsert {
	display:block;
	border-radius: 10px;
	width: 100%;
	height: auto;
}

.bgColWhite { background-color: #FFFFFF !important; }
.bgColLightGrey { background-color: var(--siteLightGrey) !important; }
.bgColDarkGrey { background-color: var(--siteDarkGrey) !important; }
.bgColLightRed { background-color: var(--siteLightRed) !important; }
.bgColRed { background-color: var(--siteRed) !important; }
.bgColDarkRed { background-color: var(--siteDarkRed) !important; }
.bgColYellow { background-color: var(--siteYellow) !important; }
.bgColOrange { background-color: var(--siteOrange) !important; }
	
.bgColRedTrans33 { background-color: var(--siteRedTrans33) !important; }
.bgColYellowTrans33 { background-color: var(--siteYellowTrans33) !important; }
.bgColOrangeTrans33 { background-color: var(--siteOrangeTrans33) !important; }

.bgColWhiteTrans33 { background-color: rgba(255, 255, 255, 0.34) !important; }
.bgColWhiteTrans66 { background-color: rgba(255, 255, 255, 0.66) !important; }




/* * * * * * * * * * * * * * * * * * * * * * * */
/* HERO BACKGROUNDS                            */
/* * * * * * * * * * * * * * * * * * * * * * * */

.tiledBG {
	
}

.bgCover {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center; 
	overflow: hidden;
}

.bgCoverTiled {
	background-repeat: repeat-x;
	background-position: center center; 
	overflow: hidden;
}

.bgLinked {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center; 
	overflow: hidden;
	border-radius: 10px;
}

.repeatVert {
	background-size: contain;
	background-repeat: repeat-y;
	background-position: top center; 
	
}

.bgLinked div {
	padding-top:100%;
	display: block;
	height: 100%;
	width: 100%;
}




/* * * * * * * * * * * * * * * * * * * * * * * */
/* CONTENT LAYOUT                              */
/* * * * * * * * * * * * * * * * * * * * * * * */

.contentPanel {
	width: 70%;
	margin: 2em auto;
}

.contentPanel.splitPanel, .subContentPanel.splitPanel {
	display:flex; 
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch; // flex-start; // stretch
	align-content: flex-start;
	gap: var(--panelGap);
}

.splitPanel div {
	flex: 1 1;
}

.splitPanel div.splitHalf {
	flex: 0 1 calc(50% - var(--panelGap));
}

.splitPanel div.splitThird {
	flex: 0 1 calc(33% - var(--panelGap));
}

.splitPanel div.splitQuarter {
	flex: 0 1 calc(25% - var(--panelGap));
}

.splitPanel div.splitFifth {
	flex: 0 1 calc(20% - var(--panelGap));
}

.splitPanel div.noSplit {
	flex: 0 0 100%;
}

.splitPanel div.splitBias {
	flex-grow: 2;
}

.splitWrap {
	flex-wrap: wrap !important;	
}

.splitPanel div.eventsGrid {
	flex: 0 1 calc(33% - var(--panelGap));
}

.splitPanel div.membersGrid {
	flex: 0 1 calc(25% - var(--panelGap));
}

.splitPanel div.faqGrid {
	flex: 0 1 calc(16.66% - var(--panelGap));
}

.noGap {
	gap: 0 !important;
}

.bigGap {
	gap: 3rem !important;	
}

.buttonHolder {
	width: 100%;
	display: flex;
    justify-content: space-around;
	flex-wrap: wrap;
}


/* * * * * * * * * * * * * * * * * * * * * * * */
/* FORMS CONTENT LAYOUT                        */
/* * * * * * * * * * * * * * * * * * * * * * * */


.fiiFormError {
	padding: 0.3em;
	margin: 5px;
	border-radius: 10px;
	border: 1px solid var(--siteRed);
	background: var(--siteRedTrans33);
	font-size: 0.8em;
	display: none;
}

.fiiFormInvalid {
	display: block;
}

.fiiFormSuccess {
	padding: 0.3em;
	margin: 5px;
	border-radius: 10px;
	border: 1px solid #004225;
	background: #a8e4a0;
	font-size: 1.5em;
}

.formLabel {
	display: block;
	padding: 5px;
	margin: 5px;
	
	font-family: headerFont;
	font-size: 1.2em;
	
	font-weight: bolder;
}

.formFieldText {
	display: block;
	padding: 5px;
	margin: 5px;
	
	border-radius: 10px;
	border: 1px solid var(--siteDarkGrey);
	background: var(--siteLightGrey);
	
	font-family: mainFont;
	font-size: 1em;
	
	width: 100%;
	
	transition: all 0.5s ease;
}


.formFieldText:focus, .formFieldText:hover {
	border: 1px solid var(--siteDarkGrey) !important;
	outline: #000000;
	box-shadow: 0 0 10px var(--siteOrange);
}

.formFieldRequired:after {
	content: ' *';
	color: var(--siteRed);
	
}

 /* Customize the label (the container) */
.formLabelCheckbox {
  display: inline-block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 22px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  
  transition: all 0.5s ease;
}

/* Hide the browser's default checkbox */
.formLabelCheckbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom checkbox */
.formFeildCheckMark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: var(--siteLightGrey);
  
  border: 1px solid var(--siteDarkGrey) !important;
  border-radius: 5px;
  
  transition: all 0.5s ease;
}

/* On mouse-over, add a grey background color */
.formLabelCheckbox:hover input ~ .formFeildCheckMark, .formLabelCheckbox:focus input ~ .formFeildCheckMark {
  background-color: var(--siteDarkGrey);
  box-shadow: 0 0 10px var(--siteOrange);
  
}

/* When the checkbox is checked, add a blue background */
.formLabelCheckbox input:checked ~ .formFeildCheckMark {
  background-color: var(--siteRed);
}

/* Create the checkmark/indicator (hidden when not checked) */
.formFeildCheckMark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the checkmark when checked */
.formLabelCheckbox input:checked ~ .formFeildCheckMark:after {
  display: block;
}

/* Style the checkmark/indicator */
.formLabelCheckbox .formFeildCheckMark:after {
  left: 7px;
  top: 3px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 4px 4px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
} 

.formFieldSelect {
	width:auto;
}

.formFieldSelect option {
	font-family: mainFont, Arial;
	font-size: 0.7em;
	
}

.formFilterBut {
	margin-top: calc(100% - 2em);
}

.formFilterButSelected {
	border: 3px solid var(--siteOrange);
}

/* * * * * * * * * * * * * * * * * * * * * * * */
/* SLIDER CONTENT LAYOUT                       */
/* * * * * * * * * * * * * * * * * * * * * * * */


.sliderPic {
	position: relative;
	overflow: hidden;
	border-radius: 10px;
	transition: all 0.5s ease;
}

.sliderGap {
	margin: var(--sliderGap);
}

.sliderPic > .sliderTitle, .sliderPic > a > .sliderTitle, .sliderPic > .sliderTitleFull, .sliderPic > a > .sliderTitleFull {
	background: var(--siteRedTrans33);
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 100%; 
	color: #ffffff;
	padding: 0.2em;
	transition: all 0.5s ease;
	line-height: 1.5em;
	text-align: center;
}

.sliderPic > .sliderTitleFull, .sliderPic > a > .sliderTitleFull {
	top: calc(100% - 2em);
}

.sliderPic:hover > .sliderTitle, .sliderPic:hover > a > .sliderTitle {
	top: calc(100% - 2em);
}

.sliderPic:hover > .sliderTitleFull, .sliderPic:hover > a > .sliderTitleFull {
	top: 0px;
}

.sliderPic > img, .sliderPic > a > img, .sliderPanel > img {
	transform: scale(1);
	transition: all 0.5s ease;
}

.sliderPic:hover > img, .sliderPic:hover > a > img  {
	transform: scale(1.2);
}

.sliderPic:hover {
	box-shadow: 0 0 10px var(--siteDarkRed);
}

.sliderTitleFull > .memTitle {
	text-shadow:
	-1px -1px 0 #000, 
	1px -1px 0 #000, 
	-1px  1px 0 #000, 
	1px  1px 0 #000, 
	1px  0px 0 #000, 
	-1px  0px 0 #000, 
	0px  1px 0 #000, 
	0px -1px 0 #000;
}

.sliderSQ > img, .sliderSQ > a > img {
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
} 

.sliderHD > img, .sliderHD > a > img {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
} 

.sliderSD > img, .sliderSD > a > img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	
} 

.sliderPanel {
	overflow: hidden;
	// margin: var(--sliderGap);
	border-radius: 10px;
	background: var(--siteLightGrey);
}

.sliderPanel > div {
	display: block;
}

.sliderPanel .sliderTitle {
	text-align: center;
	margin: 0.8em var(--sliderGap) 0.5em var(--sliderGap);
	font-family: headerFont;
	font-weight: bolder;
}

.sliderPanel .sliderDesc {
	text-align: left;
	margin: 0.5em var(--sliderGap);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	overflow: hidden;
	text-overflow: ellipsis;	
}

.sliderPanel .sliderLink {
	text-align: center;
	margin: 1em var(--sliderGap);
}

.sliderEvent .buttonIcon {
	width: 25px;
	height: 25px;
	aspect-ratio: 1/1;
	text-align: center;
	line-height: 13px;
	font-size: 14px;
	text-decoration: none;
}

.sliderMemDesc {
	text-align:left;
	border-radius: 10px;
	margin: 10px;
	padding: 10px;
	color:#000000;
	background-color: rgba(255, 223, 45, 0.75);
}

/* * * * * * * * * * * * * * * * * * * * * * * */
/* CONTENT GALLERY                             */
/* * * * * * * * * * * * * * * * * * * * * * * */

.galleryHolder {
	display: grid;
	grid-gap: var(--sliderGap);
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	grid-auto-rows: 175px;
	grid-auto-flow: dense;
}

.orderedGallery {
    grid-template-columns: repeat(3, minmax(200px, 1fr)) !important; /* Adjust the number of columns as needed */
}

.galleryHolder > div {
	border-radius: 10px;
	overflow: hidden;
	transition: all 0.5s ease;
}

.galleryHolder > div > a > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	transition: all 0.5s ease;
}

.galleryHolder > div:hover > a > img {
	transform: scale(1.2);
}

.galleryHolder > div:hover {
	box-shadow: 0 0 10px var(--siteDarkRed);
}

.horizontal {
	grid-column: span 2;
}

.vertical {
	grid-row: span 2;
}

.big {
	grid-column: span 2;
	grid-row: span 2;
}

.videoHolder {
	text-align:center;
	width:100%;
}


.videoHolder iframe {
	aspect-ratio: 16/9; 
	width: 80%;
	height: auto;
	margin: 0 auto;
	border-radius: 10px;
}

.mapHolder {
	text-align:center;
	width:100%;
}


.mapHolder iframe {
	width: 100%;
	height: 100%;
	min-height: 300px;
	margin: 0 auto;
	border-radius: 10px;
}



/* * * * * * * * * * * * * * * * * * * * * * * */
/* SITE NAVIGATION                             */
/* * * * * * * * * * * * * * * * * * * * * * * */

header {
	margin: 1em 0;
}

.siteNav {
	// overflow: hidden;
	background-color: #fff;
	text-align:center;
	padding: 5px;
	border:1px solid #fff;
}

.siteIcon {
	margin: 0 !important;
	padding: 0 !important;
	vertical-align: middle;
}

.siteIcon img {
	max-height: 75px;
}

.siteNav a.siteIcon:hover {
	background-color: transparent !important;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

.siteNav a {
	display: inline-block;
	color: #000;
	text-align: center;
	padding: 12px 16px;
	text-decoration: none;
	font-size: 1em;
	border-radius: 10px;
	transition: all 0.5s ease;
}

.siteNav a:hover {
	background-color: var(--siteRedTrans33);
	color: black;
	box-shadow: none !important;
}

.siteNav a.active {
	background-color: var(--siteRed);
	color: var(--siteYellow);
}

.siteNav .mobileMenu {
	display: none;
	position: relative;
	background-color: var(--siteDarkGrey);
	color: #ffffff;
}

.siteNavDropdown {
	display: inline-block;
	pointer: cursor;
	position: relative;
}

.siteNavSubMenu {
	display: none;
	background-color: var(--siteLightGrey);
	min-width: 160px;
	width: 350px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 1;
	border-radius: 10px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,2.2em);
}

.siteNavSubMenu a {
	color: black;
	padding: 12px 16px;
	text-decoration: none;
	display: block;
}

.siteNavDropdown:hover .siteNavSubMenu {
	display: block;
}

/* * * * * * * * * * * * * * * * * * * * * * * */
/* CALENDAR  		 STUFF                     */
/* * * * * * * * * * * * * * * * * * * * * * * */


#calendar {
	max-width: 28rem;
	margin: auto;
	border: 1px solid var(--siteDarkGrey);
	padding: 10px;
	border-radius: 10px;
	background-color: var(--siteYellowTrans33);
}

.calendar-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
}

.calendar-header > div {
	text-align:center;
	font-size:1.25rem;
	font-weight: bolder;
}

.calendar-header > button {
	cursor: pointer;
	display: block;
	padding: 5px;
	margin: 5px;
	border: 0;
	border-radius: 100%;
	background-color: var(--siteRed);
	color: var(--siteYellow);
	width: 40px;
	height: 40px;
	aspect-ratio: 1/1;
	text-align: center;
	line-height: 28px;
	font-size: 20px;
	text-decoration: none;
}

.calendar-header > button:hover {
	
}

.calendar-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 5px;
	align-items: center;
}

.calendar-day-header, .calendar-day, .calendar-blank {
	max-width:3rem;
	max-height:3rem;
	text-align: center;
	padding: 10px;
	border: 1px solid var(--siteDarkGrey);
	border-radius: 100%;
	aspect-ratio:1/1;
	display: flex; /* enables flexbox for the grid item */
	justify-content: center; /* centers content horizontally */
	align-items: center; /* centers content vertically */
	transition: all 0.25s;
}

.calendar-day-header {
	background-color: var(--siteLightGrey);
}

.calendar-blank {
	border: 0;
}

.calendar-day {
	background-color: #ffffff;
}

.calendar-day:hover {
	background-color: var(--siteLightGrey);
}

.calendar-day.event {
	background-color: var(--siteLightRed);
	border-color: var(--siteDarkRed);
	color: #ffffff;
	font-weight: bolder;
	cursor: pointer;
}
.calendar-day.nonFII {
	background-color: var(--siteOrange);
	border-color: #38475A;
	color: #000000 !important;
}

.tooltip {
	display:none;
	position: absolute;
	background: #333;
	color: #fff;
	padding: 5px;
	border-radius: 5px;
	z-index: 10;
	transform: translateY(-100%);
}


/* * * * * * * * * * * * * * * * * * * * * * * */
/* 				OTHER STUFF                     */
/* * * * * * * * * * * * * * * * * * * * * * * */

.profilePic {
	border-radius:500px;
	width:100%;
	aspect-ratio:1/1;
	height:auto;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center; 
	overflow: hidden;
}

#shareButtons {
	width: 175px;
	text-align:center;
	margin: 1rem 0 0 0;
	background-color: var(--siteYellowTrans33);
	float:right;
	border-radius:10px;
}

#shareButtons > button {
	width: 25px;
	height: 25px;
	aspect-ratio: 1/1;
	text-align: center;
	line-height: 13px;
	font-size: 14px;
	text-decoration: none;
	margin:0.25rem 0.1rem 0.25rem 0.1rem;
	transition: all 0.25s;
	display: inline-block;
	border-radius: 100%;
	background-color: var(--siteRed);
	color: var(--siteYellow);
	border:0;
	cursor: pointer;
}


/* * * * * * * * * * * * * * * * * * * * * * * */
/* 				FAQ STUFF                     */
/* * * * * * * * * * * * * * * * * * * * * * * */


.faqInsert {
	float: right;
}

.faqFocus .faqInsert {
	float: right;
	padding: 0;
}

.faqContent * a, .eventContent > p > a {
	font-size: 0.7em;
	border-radius: 250px 250px 250px 250px;
	border: 0px;
	padding: 0.12em 0.5em;
	font-family: headerFont;
	text-decoration: none;
	display: inline-block;
	margin: 0.5em;
	background: var(--siteOrange);
	color: #000000 !important;
	transition: all 0.5s ease;
}

.faqHolder {
	width:100% !important;
	overflow: hidden;
	border-radius:10px;
	gap: 0 !important;
	margin: 0.2em auto !important;
}

.faqFocus {
	background: var(--siteLightGrey);
	padding:1em;
}

.faqFocus > p {
	line-height:1em;
	font-size: 1em;
	
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	overflow: hidden;
	text-overflow: ellipsis;	
}

.eventFocus > .eventDesc {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 9;
	overflow: hidden;
	text-overflow: ellipsis;		
}




/* * * * * * * * * * * * * * * * * * * * * * * */
/* TABLE STUFF                     				 */
/* * * * * * * * * * * * * * * * * * * * * * * */

.resultsTable {
	border-radius:10px;
	font-size: 0.8em;
	width: 100%;
	border-collapse: separate; /* Enables rounded corners */
	border-spacing: 0; /* Removes spacing between cells */
	overflow: hidden; /* Ensures rounded corners apply */
	border: 1px solid #ddd; /* Optional: Add border to the table */
}

.resultsTable > tbody > tr > th, .resultsTable > thead > tr > th {
	background-color: var(--siteRed);
	text-align:center;
	font-family: headerFont;
	color: #FFFFFF;
}

.resultsTable > tbody > tr:nth-child(even) > td {
	background-color: var(--siteLightGrey);
	padding:5px;
}

.resultsTable > tbody > tr:nth-child(odd) > td {
	background-color: #FFFFFF;
	padding:5px;
}

.resultsTable th,
.resultsTable td {
  padding: 10px; /* Updated padding */
  text-align: left;
  border-bottom: 1px solid #ddd; /* Adds row dividers */
}

.resultsTable td p { margin:0;}

.resultsTable thead th {
  background-color: #f4f4f4; /* Optional: Header background */
  border-bottom: 2px solid #ddd;
}

.resultsTable tbody tr:last-child td {
  border-bottom: none; /* Remove bottom border for last row */
}



/* * * * * * * * * * * * * * * * * * * * * * * */
/* ADMIN STUFF                     				 */
/* * * * * * * * * * * * * * * * * * * * * * * */

.adminButton {
	background-color: var(--siteOrange);
	aspect-ratio: 1 / 1;
}

.adminButton > a:hover {
	text-decoration:none;
}

.adminButton > a > i {
	width:calc(100% - 20px); 
	display:flex; 
	height:100%;
	justify-content:center;
	align-items:center; 
	margin:10px;
	color: var(--siteDarkRed);
}


#adminOnly, #adminOK {
	display: none;
}


/* * * * * * * * * * * * * * * * * * * * * * * */
/* MOBILE NAVIGATION STUFF                     */
/* * * * * * * * * * * * * * * * * * * * * * * */

@media screen and (max-width: 1024px) {
	
	.pageHeader h1 {
		padding: 22px 0;
	}
	
	.siteNav {
		background-color: var(--siteLightGrey);
		border-radius: 10px;
		margin:5px;
		height: auto;
	}
	
	.siteNav a {
		font-size: 1.4em;
	}
	.siteNav a:not(:first-child), .siteNav .siteNavDropdown {
		display: none;
	}
	
	.siteNav a.mobileMenu {
		float: right;
		display: block;
		margin: 5px 5px 0 0;
	}

	.siteNav.responsive { 
		position: relative;
		transition: all 1s;
		height: 98vh;
	}

	.siteNav.responsive .mobileMenu {
		position: absolute;
		right: 5px;
		top: 5px;
		//float:right;
	}
	.siteNav.responsive a, .siteNav.responsive .siteNavDropdown {
		// float: none;
		display: block;
		text-align: center;
	}
	
	.siteNav.responsive .siteNavDropdown .siteNavSubMenu {
		display: contents;
		position: relative;
		width: 100%;
		margin: 0;
		box-shadow: none !important;
	}
	
	.siteIcon img {
		max-height: 50px;
	}

}




/* * * * * * * * * * * * * * * * * * * * * * * */
/* SITE FOOTER                                 */
/* * * * * * * * * * * * * * * * * * * * * * * */

footer {
	clear:both;
	width: 100%;
	background: var(--siteDarkGrey);
	margin: 2em 0 0 0;
	padding: 1em 15%;
	color: var(--siteOrange);
	display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--panelGap);
}

footer a {
	display: block;
	color: var(--siteOrange) !important;
	font-family: headerFont;
	font-weight: bolder;
	text-decoration: none;
}

footer div {
	flex: 1 1 100%;
	text-align: center;
	margin: 0.5em 0;
}

/* * * * * * * * * * * * * * * * * * * * * * * */
/* OTHER MOBILE FRIENDLY STUFF                 */
/* * * * * * * * * * * * * * * * * * * * * * * */

.noMoby {
	/* this has nothing in it, just a holder for later media query use */
}

@media only screen and (max-width: 1024px) {
    body {
        // font-size: 14px;
    }
	
	.contentPanel {
		width: 90%;
		margin: 0.74em auto;
	}
	
	button.slick-prev {
		margin-left: 45px;
		z-index: 1000;
	}

	button.slick-next {
		margin-right: 50px;
		z-index: 1000;
	}
	
	.galleryHolder.splitThird {
		grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
		grid-auto-rows: 100px;
	}
	
	.eventsGrid, .membersGrid, .faqGrid {
		margin:0;
		flex: 0 1 calc(33% - var(--panelGap)) !important;
	}
	
}

@media only screen and (max-width: 600px) {
	
    body {
        // font-size: 14px;
    }
	
	p {
		font-size: 1em;
	}
	
	.pageHeader h1 {
		font-size: 1.5em;
	}
	
	.contentPanel {
		width: 95%;
		margin: 0.74em auto;
	}
	
	button.slick-prev {
		margin-left: 45px;
		z-index: 1000;
	}

	button.slick-next {
		margin-right: 50px;
		z-index: 1000;
	}
	
	.galleryHolder.splitThird {50px, 1fr));
		grid-auto-rows: 75px;
	}
	
	.eventsGrid, .membersGrid, .faqGrid {
		margin:0;
		flex: 0 1 calc(50% - var(--panelGap)) !important;
	}
	
	.noMoby {
		display:none !important;
	}
	
	.sliderPic > .sliderTitle, .sliderPic > a > .sliderTitle, .sliderPic > .sliderTitleFull, .sliderPic > a > .sliderTitleFull {
		top: calc(100% - 2em) !important;
	}

	.sliderPic:hover > .sliderTitle, .sliderPic:hover > a > .sliderTitle {
		//top: calc(100% - 2em);
	}
	
/*	this conerts any flex rows into cols to be better displayed on mobiles, except with the mobyNoCol class*/
	.contentPanel.splitPanel:not(.mobyNoCol), .subContentPanel.splitPanel:not(.mobyNoCol) {
		flex-direction: column;
	}
	
	.adminButton {
		width: calc(100% - var(--panelGap)*2); 
		margin-left: var(--panelGap);
	}
	
	footer {
		padding: 1em var(--panelGap);
	}
	
	.smLinks {
		display:none;
	}
	
	.pageHeader h1 {
		margin: 0 0.5em;
	}
	
	/* Faq/resource page overview changes */
	
	.ui-tabs .ui-tabs-panel {
		padding: 0.3em !important;
	}
	
	.faqHolder > .sliderSQ {
		max-height: 5em;
		aspect-ratio: none;
	}
	
	.faqFocus {
		padding: 0.3em;
	}
	
	.faqFocus > .faqInsert, .contentPanel > div > .faqInsert {
		margin: 0;
		padding: 0;
		display: block;
		text-align: left;
		font-size: 0.7em;
		float: none;
	}
	
	.faqInsert > .buttonIcon {
		height: 2em;
		width: 2em;
		font-size: 1em;
		line-height: 1.1em;
	}
	
	.faqInsert > .linkButton {
		display: block;
		width: auto;
		margin: 0 auto;
		font-size: 1.5em;
		line-height: 1.5em;
		text-align:center;
	}

	.faqFocus h3 {
		font-size: 1em;
		margin: 0.3em 0;
	}

	
	.faqFocus p {
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 4;
		overflow: hidden;
		text-overflow: ellipsis;	
	}
	
	.faqContent p {
		font-size: 1em;
	}
	
	.bigButton {
		font-size: 1em;
		text-align: center;
		width: 100%;
	}
	
}




















































