/*
 * Bootstrap  v5.3.8 (https://getbootstrap.com/)
 * Copyright 2011-2025 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 * January 2026 by Evergreen Digital Presence
*/

/* colors
green
1E4B32 577866 8FA699 C7D2CC E9EEEB
1A402B 173826 0F2619 08130D 030805

blue-green
0A3B52 486C7E 859EA9 C2CED4 E7ECEE
093246 082C3E 051E29 030F15 010608

orange
CB4E00 D87B40 E6A780 F2D3BF FAEEE6
AD4200 983B00 662700 331400 140800

tan
D9D5C8 E3E0D6 EDEBE4 F5F4F1 FCFBFA
B8B5AA A3A096 6D6B64 363532 161514
*/

/* Bootstrap screen sizes
https://getbootstrap.com/docs/5.3/layout/breakpoints/#core-concepts

xs: screens <576px
sm: screens ≥576px
md: screens ≥768px
lg: screens ≥992px
xl: screens ≥1200px
xxl: screens ≥1400px

customize breakpoints if desired:

$grid-breakpoints: (
  xs: 0,
  sm: 576px,
  md: 768px,
  lg: 992px,
  xl: 1200px,
  xxl: 1400px
);
*/

/* google fonts */
@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap');

body {
  font-family: "Open Sans", sans-serif;
  color: #444444;
  font-size: 1em;
  background-color: #FFFFFF;
  margin-top: 68px; /* same as height in header */
}

a {
  color: #AD4200;
  text-decoration: underline;
}

a:hover {
  color: #D87B40;
}

a.anchor {
  display: block;
  position: relative;
  top: -25px;
  visibility: hidden;
}

/* ****************************************************** NAVIGATION ***/

/* notes
 * ms-auto on the html pages aligns nav-items to the right; remove this class to align left
 * if menu wraps to a second line, rename navbar-expand-md on the html pages to navbar-expand-lg
*/

.navbar {
  transition: background-color 0.5s ease; /* for smooth transition */
  font-size: 1em;
  background-color: #0A3B52;
  color: #E7ECEE;
  border-bottom: 4px solid #E7ECEE;
  padding: 15px 0px 15px 0px;
}

.navbar .nav-link { /* overrides bs active link */
  --bs-navbar-active-color: #859EA9 !important;
}

.navbar a,
.navbar a:focus { /* navbar links */
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: center; /* caret */
  white-space: nowrap;
  text-decoration: none;
  transition: 0.3s;
  font-family: "Open Sans", sans-serif;
  font-weight: normal;
  color: #E7ECEE;
}

.navbar a i,
.navbar a:focus i { /* navbar offsite and search icons */
  margin-left: 0px;
  color: #E7ECEE;
}

.navbar a:hover,
.navbar .active,
.navbar .active:focus,
.navbar li:hover>a { /* navbar links hover and focus */
  color: #E9EBEC;
}

.navbar.scrolled { /* transition on scrolling */
  background-color: rgba(10, 59, 82, 0.8); /* semi-transparent background */
}

.navbar-toggler-icon { /* hamburger */
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(233, 235, 236, 1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.navbar-brand {}

@media (min-width: 0px) {
  .navbar-brand {
    font-size: 1em;
  }
}

@media (min-width: 321px) {
  .navbar-brand {
    font-size: 1em;
  }
}

@media (min-width: 768px) {
  .navbar-brand {
  font-size: 1.2em;
  }
}

.dropdown-menu {
  top: 0;
  left: 100%;
  display: none;
  font-weight: normal;
  line-height: 32px;
  background-color: #E7ECEE;
  border: 1px solid #C2CED4;
  border-radius: 4px;
}

.dropdown-menu a:hover,
.dropdown-menu .active,
.dropdown-menu .active:focus,
.dropdown-menu li:hover>a { /* dropdown links hover and focus */
  color: #1E4B32;
  background-color: #C2CED4;
}

.dropdown-menu .dropdown-item { /* dropdown menu items */
  font-size: 1em;
  color: #1E4B32;
  padding: 0px 8px 0px 8px;
}

.dropdown-menu .dropdown-item:hover { /* dropdown menu items hover */
  background-color: #C2CED4;
  color: #1E4B32;
}

.nav-item.dropdown .dropdown-item:active { /* dropdown menu items active */
  background-color: #C2CED4;
}

.dropdown-submenu { /* position of deep dropdown */
  position: relative;
}

.dropdown-submenu:hover .dropdown-menu { /* visibility of deep dropdown */
  display: block;
}

.dropdown-submenu .dropdown-menu { /* deep dropdown */
  font-size: .95em;
  left: 60%;
  min-width: 150px;
}

/* point caret to right (for a right-aligned submenu) */
.dropdown-submenu .dropdown-toggle::after {
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
  vertical-align: 0; /* adjust vertical alignment if needed */
  margin-left: 0.255em;
  margin-right: 0;
  transform: rotate(0deg); /* reset rotation if needed */
} 

/* ****************************************************** SEARCH ***/

/* navigation search */

.search {
  font-size: 1em;
  padding-top: 8px;
  padding-bottom: 0px;
}

.search-dropdown {
   margin-left: -2px;
}
 
.search-button {
  width: 40px;
  font-size: 1.2em;
  text-align: center;
  padding: 4px 2px 2px 3px;
}

.search-box {
  position: relative;
  background-color: #AD4200;
  border: 1px solid #E7ECEE;    
}	

.search-box input, .search-box .btn {
  min-height: 38px;
  border-radius: 0px;
}

.input-group-append .btn, .input-group-append .btn:active {
  width: 120px !important;
}

.navbar .search-dropdown .dropdown-toggle::after {
  display: none;
}

.navbar .search-dropdown .dropdown-menu {
  width: 400px;
  left: auto;
  right: 0px;
  border-radius: 2px;
  font-size: 1em;
  padding: 20px;
}

@media (max-width: 600px) {
  .navbar .search-dropdown .dropdown-menu {
    width: 100%;
    margin: 0;
  }
}

.navbar .search-dropdown .dropdown-toggle::after {
  display: none;
}

/* search page box */

.search-sm {
  text-align: left;
  margin-top: 18px;
  margin-bottom: 12px;
}

.search-title {
  font-size: 1.2em;
}

.search-description {
  font-size: 1em;
  padding-top: 4px;
}

form.example input[type=text] {
  padding: 4px;
  font-size: 1em;
  float: left;
  width: 80%;
  border: 1px solid #C2CED4;
  background: #E7ECEE;
}

form.example button {
  float: left;
  width: 20%;
  padding: 4px;
  background: #577866;
  color: #FFFFFF;
  font-size: 1em;
  font-weight: normal;
  border: 1px solid grey;
  border-left: none;
  cursor: pointer;
}

form.example button:hover {
  background: #1E4B32;
}

form.example::after {
  content: "";
  clear: both;
  display: table;
}

/* ****************************************************** FOOTER ***/

#footer {
  font-size: .9em;
  font-weight: normal;
  background-color: #000000;
  color: #E7ECEE;
  margin-top: -20px;
  padding: 0px;
}

.footer-top {
  padding-top: 40px;
}

.footer-bottom {
  background-color: #173826;
}

.footer-menu {
  margin-bottom: 10px;
}

.footer-menu a {
  text-decoration: none;
  color: #E7ECEE;
}

.footer-menu a:hover {
  transition: 0.3s;
  color: #8F999E;
}

.footer-social-icons {}

.footer-social-icons a {
  display: inline-block;
  width: 36px;
  height: 36px;
  transition: 0.3s;
  border-radius: 50%;
  font-size: 18px;
  text-align: center;
  line-height: 1px;
  background-color: #1E4B32;
  color: #FAF7F3;
  margin: 4px 4px 20px 0px ;
  padding: 8px 0px;
}

.footer-social-icons a:hover {
  text-decoration: none;
  background-color: #577281;
  color: #FAF7F3;
}

.bxl-twitter-x:before { /* twitter x boxicon */
  content:"\1d54f"
}

.footer-contact {
  margin-bottom: 12px;
}

.footer-contact a {
  text-decoration: none;
  color: #E7ECEE;
}

.footer-contact a:hover {
  transition: 0.3s;
  color: #C2CED4;
}

.footer-copyright {
  font-size: .85em;
  text-align: left;
  color: #E7ECEE;
  padding-top: 0px;
  padding-bottom: 20px;
}

.footer-copyright a {
  text-decoration: none;
  color: #E7ECEE;
}

.footer-copyright a:hover {
  transition: 0.3s;
  text-decoration: underline;
  color: #C2CED4;
}

.footer-attribution-small {
  font-size: .85em;
  text-align: left;
  color: #E7ECEE;
  padding-top: 0px;
  padding-bottom: 20px;
}

.footer-attribution-large {
  font-size: .85em;
  text-align: right;
  color: #E7ECEE;
  padding-top: 0px;
  padding-bottom: 20px;
}

/* ************************************* SITE-WIDE OR GENERAL STYLES ***/

.container-fluid {
  width: 100%;
}

#main {
  width: 100%;
  margin-bottom: -16px;
}

#main a {
  text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Roboto", sans-serif;
}

h1 {
  font-weight: 400;
  font-size: 1.5em;
  color: #1E4356;
  margin-top: 28px;
  padding-bottom: 8px;
}

h2 {
  font-size: 1.3em;
  font-weight: 400;
  color: #1E4356;
}

h3 {
  font-size: 1.2em;
  font-weight: 400;
  color: #1E4356;
}

h4 {
  font-size: 1.1em;
  font-weight: 400;
  color: #1E4356;
}

.subtext-h1 {
  font-size: 1em;
  margin-top: -8px;
  padding-bottom: 18px;
}

.subtext-h2 {
  font-size: .9em;
  margin-top: -8px;
  padding-bottom: 18px;
}

.cursor {}

.cursor a {
  cursor: pointer;
}

.skip {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.tip {
  cursor: pointer;
  border-bottom: 1px dotted #000000;
  color: #444444;
}

/* *********************************************************** COL01 ***/

#content-col1 {
  margin-top: 60px;
  margin-bottom: 60px;
}

/* ------------------------ home boxes ------------------------ */

.about-boxes {
  background: url("../images/about-boxes-bg.jpg") center top no-repeat fixed;
  background-size: cover;
  padding: 20px 0 10px 0;
  position: relative;
}

.about-boxes::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.92);
  z-index: 9;
}

.about-boxes .container,
.about-boxes .container-fluid {
  position: relative;
  z-index: 10;
}

.about-boxes .card {
  border-radius: 3px;
  border: 0;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
  margin-bottom: 10px;
}

.about-boxes .card-icon {
  text-align: center;
  margin-top: -32px;
}

.about-boxes .card-icon i {
  font-size: 28px;
  color: #fff;
  width: 64px;
  height: 64px;
  padding-top: 5px;
  text-align: center;
  background-color: #0A3B52;
  border-radius: 4px;
  text-align: center;
  border: 4px solid #E7ECEE;
  transition: 0.3s;
  display: inline-block;
}

.about-boxes .card-body {
  padding-top: 12px;
}

.about-boxes .card-title {
  font-weight: 500;
  text-align: center;
  font-size: 1.4em;
}

.about-boxes .card-title a {
  color: #093246;
  text-decoration: none;
}

.about-boxes .card-title a:hover {
  color: #0A3B52;
}

.about-boxes .card-text {
  color: #5e5e5e;
  font-size: 1.2em;
  text-align: center;
}

.about-boxes .card:hover .card-icon i {
  background: #F5F4F1;
  color: #0A3B52;
}

@media (max-width: 1024px) {
  .about-boxes {
    background-attachment: scroll;
  }
}

/* ************************************************************ FEATURES ***/

.feature-box {
  height: 100%;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
  margin-bottom: 10px;
  padding-bottom: 12px;
}

.feature-box-image {
  width: 100%;
  padding: 8px;
}

.feature-box:hover {
  background-color: #E9EEEB;
}

.feature-title {
  text-align: center;
  font-size: 1.2em;
  color: #404040;
  margin: 4px 18px 0px 18px;
}

.feature-details {
  text-align: center;
  font-size: 1em;
  color: #606060;
  margin: 4px 18px 0px 18px;
}

.feature-image {
  width: 100%;
  border: 1px solid #E9EBEC;
}

/* ******************************************************** SITE MAP ***/

.sitemap-submenu-title {}

.sitemap-submenu-title a {
  text-decoration: underline;
}

/* *************************************************** BOTTOM BORDER ***/

.bottom-border {
  margin-top: -22px;
}

/* ********************************************************* BULLETS ***/

ul.bullets {
  list-style-type: square;
  padding-top: 16px;
  padding-bottom: 4px;
  font-size: 1em;
}

ul.bullets li {
  padding-bottom: 4px;
  margin-left: -20px;
}

#backBtn {
  display: none;
  position: fixed;
  width: 40px;
  height: 40px;
  right: 15px;
  bottom: 15px;
  z-index: 99;
  background-color: #8F999E;
  color: #1D323B;
  border: 1px solid #8F999E;
  border-radius: 4px;
  cursor: pointer;
}

#backBtn i {
  font-size: 32px;
  line-height: 0em;
}

#backBtn:hover {
  background-color: #C6CCCE;
}

#backBtn.active {
  visibility: visible;
  opacity: 1;
  color: #1D323B;
}

/* ********************************************************** FOCUS ***/

/* links, buttons, and form controls are focusable by default; this provides the color and outline */

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus {   
outline: 2px solid #8F999E;
box-shadow: 0px 0px 2px 2px rgba(29,50,59,0.49); /* https://cssbud.com/css-generator/css-glow-generator */
  -webkit-box-shadow: 0px 0px 2px 2px rgba(29,50,59,0.49);
  -moz-box-shadow: 0px 0px 2px 2px rgba(29,50,59,0.49);
}

.button:focus,
.button-close:focus,
.uneditable-input:focus {   
  outline: 2px solid #8F999E;
  box-shadow: 0px 0px 2px 2px rgba(29,50,59,0.49); /* https://cssbud.com/css-generator/css-glow-generator */
    -webkit-box-shadow: 0px 0px 2px 2px rgba(29,50,59,0.49);
    -moz-box-shadow: 0px 0px 2px 2px rgba(29,50,59,0.49);
}

/* ******************************************************** IMAGES ***/

.img-thumbnail {
  border-radius: 0px;
}

.image-container-zoom {
  overflow: hidden; /* ensures the zoomed image stays within bounds */
  border: 1px solid #E9EBEC;
}

.image-container-zoom img {
  transition: transform 0.3s ease; /* smooth transition */
}

.image-container-zoom:hover img {
  transform: scale(1.1); /* zooms in by 10% */
}

.image-container {
  background-color: #1D323B; /* Your dark background color */
  position: relative;
  overflow: hidden;
}

.image-container img {
  opacity: 1;
  transition: opacity 1s;
}

.image-container:hover img {
  opacity: .9; /* Less opaque, more background shows through */
}

.image-border-e9 {
  border: 1px solid #E9EBEC;
}

.image-border-c6 {
  border: 1px solid #C6CCCE;
}

.image-border-8f {
  border: 1px solid #8F999E;
}

.image-border-rounded {
  border: 1px solid #E9EBEC;
  border-radius: 6px;
}

.image-border-e9-rounded {
  border: 1px solid #E9EBEC;
  border-radius: 6px;
}

.image-border-c6-rounded {
  border: 1px solid #C6CCCE;
  border-radius: 6px;
}

.image-border-8f-rounded {
  border: 1px solid #8F999E;
  border-radius: 6px;
}

.card {
  border: none;
}

.image-caption {
  font-size: 1.3em;
  font-weight: normal;
  color: #FFFFFF;
  margin-bottom: -20px;
}

.image-credit {
  font-size: .75em;
  text-align: left;
  color: #707070;
  margin: 6px 0px 6px 6px; 
}

.image-credit a {
  color: #CB4E00;
}

.text-overlay {
  position: absolute;
  width: 90%;
  opacity: 0.8;
  transform: translate(-50%, -10px);
  bottom: 0px;
  left: 50%;
  font-size: 1.1em;
  background-color: #1D323B;
  color: #FFFFFF;
  border-radius: 2px;
  padding: 4px;
}

.text-overlay a {
  color: #FFFFFF;
}

.text-overlay .detail-link {
  display: inline;
  color: #FFFFFF;
}

/* ********************************************************* SPACERS ***/

.spacer01 {
  padding-top: 24px;
}

.spacer02 {
  padding-top: 18px;
}

.spacer03 { /* md */
  padding-top: 12px;
}


