
 /**
* Updated: April 2 2025 with Bootstrap v5.3.2
*/

@font-face {
  font-family: "BC Sans";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/BCSans-Light.woff2") format("woff2"),
       url("../fonts/BCSans-Light.woff") format("woff");
}

@font-face {
  font-family: "BC Sans";
  font-style: italic;
  font-weight: 300;
  src: url("../fonts/BCSans-LightItalic.woff2") format("woff2"),
       url("../fonts/BCSans-LightItalic.woff") format("woff");
}

@font-face {
  font-family: "BC Sans";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/BCSans-Regular.woff2") format("woff2"),
       url("../fonts/BCSans-Regular.woff") format("woff");
}

@font-face {
  font-family: "BC Sans";
  font-style: italic;
  font-weight: 400;
  src: url("../fonts/BCSans-Italic.woff2") format("woff2"),
       url("../fonts/BCSans-Italic.woff") format("woff");
}

@font-face {
  font-family: "BC Sans";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/BCSans-Bold.woff2") format("woff2"),
       url("../fonts/BCSans-Bold.woff") format("woff");
}

@font-face {
  font-family: "BC Sans";
  font-style: italic;
  font-weight: 600;
  src: url("../fonts/BCSans-BoldItalic.woff2") format("woff2"),
       url("../fonts/BCSans-BoldItalic.woff") format("woff");
}


/*--------------------------------------------------------------
# main
--------------------------------------------------------------*/

body {
	font-family: "BC Sans", Noto Sans, Verdana, Arial, sans-serif;
  color:#2D2D2D;

}

section {
	width:100%;
}


p {
	font-weight:300;
  font-size: 16px;
	margin-bottom:10px;
}

.bolder {
  font-weight:600;
}

h2,
h3,
h4,
h5,
h6 {
 color:#474543;
}

h1 {
  font-size:32px;
  font-weight: 600;
}

h2 {
  font-size:24px;
  font-weight:600;
}

h3 {
  font-size:20px;
  font-weight: 600;
}

h4 {
  font-size:18px;
}

.p2 {
  font-size:17px;
  font-weight:400;
  margin-bottom: 0px;
}


li {
  font-weight:300;
  font-size:16px;
  margin-top:1px;
}

ol li {
  margin-top: 5px;
}



a {
  color: #0065a4;
  font-weight:400;
  text-decoration: underline;
}

a:hover {
  color: #234075;
  font-weight:400;
  text-decoration: underline;
}

a.limelink {
  color: #0065a4;
  font-weight:400;
  text-decoration: underline 2px #9dcc4e;
  text-underline-offset: 8px;
}

a.limelink:hover {
  color: #474543;
  text-decoration: underline 2px #9dcc4e;
  text-underline-offset: 7px;
}


.small {
  font-size: 14px;
}


hr.lime {
	border-top:4px solid;
	border-color: #9dcc4e;
  opacity: 100;
	width:25%;
}

hr.lime2 {
  border-top:4px solid;
  border-color: #9dcc4e;
  opacity: 100;
  width:50%;
}

hr.lime3 {
  border-top:4px solid;
  border-color: #9dcc4e;
  opacity: 100;
  width:10%;
}


hr.blue {
  border-top:4px solid;
  border-color: #0065a4;
  opacity: 100;
  width:25%;
}

hr.gray {
  border-top:4px solid;
  border-color: #dee2e6;
  opacity: 100%;
  width:50%;
  margin-top: 0px;
}

.breadcrumb {
  font-size: 14px;
  font-weight:300;
  margin-top: 5px;
  margin-bottom: 5px;
  padding:5px;
}

.bcfooter {
  margin-top: 0px;
  margin-bottom:0px;
  padding:10px;
}

.blockquote-custom {
  border-left: 2px solid #6c757d; 
  padding-left: 1.25rem; /* Space between the line and the text */
}



/*--------------------------------------------------------------
Slideshow
--------------------------------------------------------------*/

/* home page */
.overlay-text {
  position: absolute;
  max-width:400px;
  margin-top:100px;
  background-color: #fff;
  padding:30px;
  opacity:0.8;
  z-index: 1; /* Ensures it stays on top */
}

/* course pages */
.overlay-text2 {
  position: absolute;
  margin-top: 50px;
  margin-left:50px;
  background-color: #fff;
  padding:20px 30px 20px 30px;
  opacity:0.95;
  z-index: 1; /* Ensures it stays on top */
}


.fs-minislide {
  position: relative;
    display: block;
    width: 100vw;
    height: 500px;
    max-height:1000px;
    max-width: 100%;
    overflow: hidden;
    background-color: transparent;
    object-fit: cover;
    top: 0;
    left: 0;
    z-index: -1;
}

/* Image styling and animation */
.fs-minislide img {
   position: absolute;
    -webkit-animation: fs-minislide 30s infinite, zoom-in 30s infinite;
    animation: fs-minislide 30s infinite, zoom-in 30s infinite;
    animation-fill-mode: forwards;
    animation-iteration-count: 1;
    /* 8s after last slide */
    object-fit: cover;
    width: 100%;
    height: 500px;
}

/* Fading animation */
@keyframes fs-minislide {
  28%{opacity:1;}
  32%{opacity:0;}
  75%{opacity:0;}
  100%{opacity:1;}
}


/* Zoom effect */
@keyframes zoom-in {
  0%{transform:scale(1) translateY(0);transform-origin:50% 84%}
  100%{transform:scale(1.15) translateY(15px);transform-origin:center}
}

/* Delay for each image */
.fs-minislide img:nth-child(4){animation-delay:0s;}
.fs-minislide img:nth-child(3){animation-delay:5s;}
.fs-minislide img:nth-child(2){animation-delay:10s;}
.fs-minislide img:nth-child(1){animation-delay:15s;}


/*--------------------------------------------------------------
Colours, cards, and callouts
--------------------------------------------------------------*/


.limegreen {
  color: #9dcc4e;
}

.lightgray {
  background-color: #F8F9FA;

}

.bluetint {
  background-color: #E0F3FF;
}


.limestroke {
  border: 1px solid #9dcc4e;
}

.bluestroke {
    border: 1px solid #0065a4;
}

.graystroke {
  border: 1px solid #77797c;
}

.fsblue {
  color:#0065a4;
}

.card {
  position: relative;
  border-radius: 0px;
  border:none;
}

.card-img-top {
  border-radius: 0px;
}

.card:hover {
  transform: scale(1.02);
}

.leftborder {
  border-left: 8px solid #9dcc4e;
}

.leftbordersm {
  border-left: 4px solid #9dcc4e;
  padding-top: 10px;
}

.blueleftborder {
  border-left: 4px solid #0065a4;
  padding-top: 10px;
}


/*--------------------------------------------------------------
# Buttons and accordions
--------------------------------------------------------------*/

.btn-primary {
  background-color: #0065a4;
  border-color: #0065a4;
  color:fff;
}

.btn-primary:hover {
  background-color: #474543;
  border-color: #474543;
  text-decoration: none;
  padding-left:20px;
  padding-right:10px;
  padding-top: 0px;
  padding-bottom: 0px;
}


.btn-success {
  background-color: #9dcc4e;
  border-color: #9dcc4e;
  color:#222;
  padding-left:20px;
  padding-right:10px;
  padding-top: 0px;
  padding-bottom: 0px;
}

.btn-success:hover {
  background-color: #474543;
  border-color: #474543;
  text-decoration: none;
  padding-left:20px;
  padding-right:10px;
  padding-top: 0px;
  padding-bottom: 0px;
}


/* only change line items to override bootstrap min */

.accordion {
    --bs-accordion-color: #212529;
    --bs-accordion-bg: #fff;
    --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
    --bs-accordion-border-color: #E0F3FF;
    --bs-accordion-border-width: 1px;
    --bs-accordion-border-radius: 0;
    --bs-accordion-inner-border-radius: calc(0.375rem - 1px);
    --bs-accordion-btn-padding-x: 1.25rem;
    --bs-accordion-btn-padding-y: 1rem;
    --bs-accordion-btn-color: #212529;
    --bs-accordion-btn-bg: #E0F3FF;
    --bs-accordion-btn-icon: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e);
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon-transform: rotate(-180deg);
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-active-icon: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e);
    --bs-accordion-btn-focus-border-color: #86b7fe;
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    --bs-accordion-body-padding-x: 1.25rem;
    --bs-accordion-body-padding-y: 1rem;
    --bs-accordion-active-color: #0065a4;
    --bs-accordion-active-bg: #E0F3FF;
}


/*--------------------------------------------------------------
Banners, backgrounds, and images
--------------------------------------------------------------*/

.fslogo {
  width:250px;
}

.fsl1banner {
  background: url('../assets/img/istockphoto-2207352996-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:350px;
}

.fsl2banner {
  background: url('../assets/img/istockphoto-2198556095-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:350px;
}

.msbanner {
  background: url('../assets/img/istockphoto-1064785632-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:350px;
}


.psbanner {
  background: url('../assets/img/istockphoto-2215927710-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:350px;
}

.microbibanner {
  background: url('../assets/img/istockphoto-96682056-2048x2048_2.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:350px;
}

.searchbanner {
  background-color: #0065a4;
  padding-top:50px;
  padding-left:50px;
  height:200px;
}


.land {
  background-color: #2D2D2D;
  padding: 20px 35px 20px 35px;
}


/*--------------------------------------------------------------
# Navbar
--------------------------------------------------------------*/


.navbar-nav {
	vertical-align: middle;
}

a.nav-link {
  color:#0065a4;
  font-weight:400;
}

a.nav-link:hover {
  color: #474543;
  font-weight:400;
  text-decoration: underline 2px #9dcc4e;
  text-underline-offset: 6px;
}

a.nav-link.active {
 color: #0065a4 !important;
 text-decoration: underline 2px #9dcc4e;
text-underline-offset: 6px;
}


.dropdown-menu {
  border-radius:5px;
  border: none;
  min-width: 225px;
}

a.dropdown-item {
  color:#222;
  text-decoration: none;
}

a.dropdown-item:hover {
  color: #222;
  text-decoration: none;
  background-color: #9dcc4e;

}

.dropdown-item {
  white-space: pre-wrap;
  min-width: 150px;
  margin-top: 5px;
}


.bi {
  vertical-align: -.25em;
  font-size: 2rem;
}


@media only screen and (max-width: 768px) 

{

}

@media only screen and (max-width: 576px) 

{
   
section {
  padding-left:20px;
  padding-right: 20px;
}

.fslogo {
  width:175px;
}

.lead {
    font-size:1.25rem;
  }

hr.lime3 {
  border-top:4px solid;
  border-color: #9dcc4e;
  opacity: 100;
  width:25%;
}

.fsl1banner {
  background: url('../assets/img/istockphoto-2207352996-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:150px;
}

.fsl2banner {
  background: url('../assets/img/istockphoto-2198556095-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:150px;
}

.msbanner {
  background: url('../assets/img/istockphoto-1064785632-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:150px;
}


.psbanner {
  background: url('../assets/img/istockphoto-2215927710-2048x2048.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:150px;
}

.microbibanner {
  background: url('../assets/img/istockphoto-96682056-2048x2048_2.jpg');
  background-size:cover;
  background-repeat: no-repeat;
  background-position: center;
  height:150px;
}



.overlay-text {
  color:#fff;
  font-weight:bolder;
  position: static;
  margin-top:0px;
  background-color: #0065a4;
  opacity: 100;
  padding:30px;
}

.overlay-text2 {
  color:#fff;
  font-weight:bolder;
  position: static;
  margin-top:0px;
  margin-left:0px;
  background-color: #0065a4;
  opacity: 100;
  padding:10px 15px;
}

/* removes home slideshow */
.noslide {
  background-color: #0065a4;
}

/* for home top banner text */
.white-text {
  color:#fff;
}

a.whitelink {
  color:#fff;
}

a.whitelink:hover {
  color:#ECEAE8;
}



}
