/* primary for text on light bg */
/* https://www.colorhexa.com/993366 Dark moderate pink */
/* https://www.colorhexa.com/f8f9fa Color Contrast Test pass level AA 6.6:1 */

/* secondary for text on dark bg */
/* https://www.colorhexa.com/ffcc00 USC Gold*/
/* https://www.colorhexa.com/212529 Color Contrast Test pass level AAA 10.2:1 */


:root {
  /*
  --bs-primary: #993366; /* #872657 Dark raspberry -> web Dark moderate pink */ /*
  --bs-primary-rgb: 153,51,102;
  --bs-primary-text-emphasis: #230c18; /* 3° left dark shade */ /*
  --bs-primary-bg-subtle: #f2d9e6;     /* 3° right light tint */ /*
  --bs-primary-border-subtle: #e4adc8; /* 6° right light tint */

  --bs-primary: #002147; /* #002147 Oxford Blue */
  --bs-primary-rgb: 0,33,71;
  --bs-primary-text-emphasis: #001833; /* 3° left dark shade */
  --bs-primary-bg-subtle: #d0e6ff;     /* 3° right light tint */
  --bs-primary-border-subtle: #95c7ff; /* 6° right light tint */

  --bs-secondary: #ffcc00; /* #ffbf00 Amber -> web Tangerine yellow, USC Gold */
  --bs-secondary-rgb: 255,204,0;
  --bs-secondary-text-emphasis: #3b2f00; /* 3° left dark shade */
  --bs-secondary-bg-subtle: #fff7d8;     /* 3° right light tint */
  --bs-secondary-border-subtle: #ffeb9d; /* 6° right light tint */

  --bs-body-font-size: 0.875rem;
  --bs-breadcrumb-divider: '\00BB';
  --bs-nav-pills-link-active-bg: #212529 !important;

  --fc-bg-event-color: #ea868f; /* --bs-red-300 */
}

header {
  background-color: #002147 !important; /* #002147 Oxford Blue */
}

header span, header .nav-link {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb),var(--bs-text-opacity)) !important;;
}

header .navbar-toggler-icon {
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28248, 249, 250, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

section { /* mb-4 */
  margin-bottom: 1.5rem !important;
}

/* fs-2 *//* font-size: calc(1.325rem + .9vw) !important; */
/* fs-3 *//* font-size: calc(1.3rem + .6vw) !important; */
/* fs-4 *//* font-size: calc(1.275rem + .3vw) !important; */

h1 { /* fs-4 mb-4 */
  font-family: 'Lexend', sans-serif;
  /*font-size: calc(1.325rem + .9vw) !important;*/
  font-size: calc(1.275rem + .3vw) !important;
  margin-bottom: 1.5rem !important;
}

h2 { /* fs-5 mb-4 */
  font-family: 'Lexend', sans-serif;
  text-align: center !important;
  /*font-size: calc(1.3rem + .6vw) !important;*/
  font-size: calc(1.25rem + .1vw) !important;
  margin-bottom: 1.5rem !important;
}

h3 { /* fs-6 mb-4 */
  text-align: center !important;
  /*font-size: calc(1.275rem + .3vw) !important;*/
  font-size: 1rem !important;
  margin-bottom: 1.5rem !important;
}

.fs-7 { font-size: calc(0.65rem + .5vw) !important; }
.fs-8 { font-size: 12px; }

.card-body {
  padding-top: .25rem;
  padding-bottom: .25rem;
}

label:first-letter { 
  text-transform: uppercase !important;
}

#btn-back-to-top {
	width: 58px;
	height: 58px;
	border-color: var(--bs-gray-400);
	box-shadow: 0 1px 2px 0 rgb(60 64 67 / 30%), 0 2px 6px 2px rgb(60 64 67 / 15%);
  position: fixed;
  bottom: 5%;
  right: 5%;
  display: none;
  align-items: center;
  z-index: 1000; }
  #btn-back-to-top:focus, #btn-back-to-top:hover {
  	box-shadow: 0px 5px 5px -3px rgb(0 0 0 / 20%), 
  		0px 8px 10px 1px rgb(0 0 0 / 14%), 
  		0px 3px 14px 2px rgb(0 0 0 / 12%);
  }

.x-banner {
  max-width: 1800px;

  margin: 0 auto 1.5rem !important;
  overflow: hidden;
}

.x-banner-3 { aspect-ratio: 3 !important; } /* alpha */
.x-banner-4 { aspect-ratio: 4 !important; } /* beta */
.x-banner-5 { aspect-ratio: 5 !important; } /* gamma */
.x-banner-6 { aspect-ratio: 6 !important; } /* delta */


.text-limit {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media (min-width: 576px) {
  .text-limit-sm {
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}

@media (min-width: 768px) {
  .text-limit-md {
    display: -webkit-box;
    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}

@media (min-width: 992px) {
  .text-limit-lg {
    display: -webkit-box;
    -webkit-line-clamp: 11;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}
