

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400&family=Montserrat:wght@300;400;600&display=swap');
@import url('/css/cms.css');
@import url('https://thebsf.ca/themes/BSF2024/css/nav.css');
/* Globals
----------------------------------------------- */

/* STRUCTURE */
body {
	background: #fff;
	}

.clear {
	clear: both;
	border: none;
	}

.flex {
	width: 100%;
	display: block;
	}
	
.relative {
	position: relative;
	}
	
.absolute {
	position: absolute;
	}

.fixed {
	position: fixed;
	}

.fadeThis {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.fade-in {
  opacity: 1;
}

	.baseContent {
		width: 90%;
		max-width: 1920px;
		margin: 0 auto;
		padding-top: 20px;
	}
	
.transFade {
	-moz-transition: color 0.3s ease; 
	-o-transition: color 0.3s ease; 
	-webkit-transition: color 0.3s ease; 
	transition: color 0.3s ease; 
	}
	
.transBGFade {
	-moz-transition: background 0.3s ease; 
	-o-transition: background 0.3s ease; 
	-webkit-transition: background 0.3s ease; 
	transition: background 0.3s ease; 
	}

.transOpacity {
	-moz-transition: opacity 0.3s ease; 
	-o-transition: opacity 0.3s ease; 
	-webkit-transition: opacity 0.3s ease; 
	transition: opacity 0.3s ease; 
	}
	
.transAll,
.show {
	-moz-transition: all 0.3s ease; 
	-o-transition: all 0.3s ease; 
	-webkit-transition: all 0.3s ease; 
	transition: all 0.3s ease; 
	}

/* SHOW HIDE - init on cms.css, following are overrides */
.show {
	color: hsl(var(--Blue));
	background: none;
	font-weight: 600;
	}
	
.show:hover {
	color: hsl(var(--White));
	cursor: pointer;
	background: hsla(var(--DarkBlue), 1);
	border-radius: 4px;
	}
	
.hide {
	display: none;
	border-radius: 4px;
	background: hsla(var(--Blue), 0.25);
	}
	
.ckeditor .hide {
	display: block !important;
	}

/* IMP COL - init on cms.css, following are overrides */	
.colContent {
	outline: 0px;
	}
	
.impfour colContent img {
	width: 100%;
	}
	
.container {
	clear: both;
	}
		
.content {
	/* width: 94%;*/
	/* max-width: 1600px;*/
	margin: 0 auto;
	/*padding: 3%;*/
	position: relative;
	}
	
.contentControl img {
	max-width: 100% !important;
	}
	
img.flexHeight {
	height: 100%;
	}

.inLine {
	display: inline-block;
	vertical-align: top;
	}
	
.pageTitle {
	width: 80%;
	font-family: 'Lato', sans-serif;
	font-weight: 900;
	text-align: center;
	line-height: 110%;
	text-transform: uppercase;
	/*text-shadow: 2px 2px 3px #333, 2px 2px 3px #777;*/
	color: rgba(255,255,255,1);
	font-size: 4vw;
	padding: 0 10%;
  	top: 50%;
	transform: translateY(-50%);
	}
.newsFeatureSection {
		width: 90%;
		margin: 0 auto;
		padding: 20px 0;
}

/* Header
----------------------------------------------- */
.header {
	width: 100%;
	z-index: 999;
	background: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0) 100%);
	}
	
.headerFrame {
	width: 100%;
	max-width: 2000px;
	top: 0;
	left: 0;
	overflow: hidden;
	display: grid;
	grid-template-columns: 11% 80% 9%;
	grid-template-rows: auto;
	justify-content: space-evenly;	
	grid-template-areas: 
		"headLogo headIcons headNav";
	overflow: hidden;
	z-index: 99;
	margin: 0 auto;
	}
	
.headCol {
	padding: 1.8em 0.5em;
	}
	
.headCol.headLogo {
	padding: 1.8em 0.5em 1.8em 3em;
	grid-area: headLogo;
	filter: drop-shadow(0px 0px 10px rgba(255, 255, 255, 1));
	}

.headLogo img {
	width: 140%;
	max-width: 170px;
	}

.headIcons {
	grid-area: headIcons;
	justify-items: end;
	text-align: right;
	}
				
.headIcons a {
	display: inline-block;
	vertical-align: top;
	}
	
.headIcons a img {
	width: 7vw;
	max-width: 145px;
	min-width: 120px;
	display: block;
	margin: 0 0.2em 0.2em 0;
	}
	
.headCol.headContact {
	font-size: 1.8vw;
	font-weight: 600;
	line-height: 100%;
	grid-area: headContact;
	}

.headCol.headNav {
	text-align: right;
	display: flex;
	flex-direction: row;
	align-items: center;
	}
		
.headSpacer {
	width: 100%;
	height: 140px;
	}
	



	
/* Footer
----------------------------------------------- */	

.footerCol.social {
	grid-area: footSocial;
	}
		
.footerCol.social a.button {
	display: block;
	}

.footerLogo img {
	width: 100%;
	max-width: 75%;
	}
			
.iconSocial {
	width: 32px;
	display: inline-block;
	vertical-align: top;
	margin-right: 0.2em;
	}
	
.iconSocial:hover {
	opacity: 0.75;
	}
	
.copyright {
	font-size: 0.8em;
	margin-top: 2em;
	}
	
.footerCol.footNav a {
	color: rgba(255,255,255,1);
	display: block;
	grid-area: footNav;
	}



@media only screen and (max-width: 1200px) {

/* Header
----------------------------------------------- */
.headerFrame {
	grid-template-columns: 0.5fr 1fr 150px;
	grid-template-areas: 
		"headLogo headContact headNav"
		"headIcons . .";
	}
	
.headCol.headNav {
	grid-area: 1 / col2-start / headContact / 3;
	}
	
.headCol.headIcons {
	grid-area: 2 / 1 / 2 / 3;
	}
		
.headLogo img {
	max-width: 110px;
	}

.headCol {
	padding: 1em 1.2em;
	}
	
.headCol.headLogo {
	padding: 1em 1.2em 0 1em;
	}
	
.headCol.headContact {
	font-size: 1.2em;
	}
	
.headCol.headNav {
	text-align: right;
	display: flex;
	flex-direction: row;
	}
	
}

@media only screen and (max-width: 768px) {

/* FONT */
h1 {
	font-size: 1.8em;
	}

/* Header
----------------------------------------------- */
.headerFrame {
	grid-template-columns: 1fr 150px;
	grid-template-areas: 
		"headLogo headNav"
		"headIcons . "
		"headContact . ";
	}


.headCol.headNav {
	grid-area: 1 / 2 / 2 / 3;
	}
	
.headCol.headIcons {
	grid-area: 2 / 1 / 2 / 4;
	}
	
.headCol.headContact {
	display: none;
	}
	
.headIcons a img {
	min-width: 80px;
	}
.headIcons {
	display: none;
}

}
