/* ### General Style ### */
*,
*::before,
*::after { -webkit-box-sizing: border-box; box-sizing: border-box; }

@media (prefers-reduced-motion: no-preference) {
  :root {scroll-behavior: smooth; } }
body { margin: 0; font-family: "Nunito Sans", Arial, sans-serif;  font-size: 16px;  line-height: 1.8;   font-weight: 400;    color: #999999;   background-color: #fff;  -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important; }
h1, h2, h3, h4, h5,
.h1, .h2, .h3, .h4, .h5 { line-height: 1.5;  color: rgba(0, 0, 0, 0.8);  font-weight: 400;}
.h2{font-size:2.4em;}
.h3{font-size:2em;}
.white{color:#ffffff !important;}
p, ul, ol { font-size: 1.125rem;  font-weight: 400; line-height: 1.6; color: #212529;}
a { color: #0d6efd; text-decoration: underline; -webkit-transition: .3s all ease; -o-transition: .3s all ease; transition: .3s all ease;}
a:hover { color: #0a58ca;}
a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}
a, button { color: #5ea51d; text-decoration: none;}
a:hover, a:focus,
button:hover, button:focus {
    text-decoration: none;
    color: #5ea51d;
    outline: none !important;
}
img,
svg {vertical-align: middle; }
label {display: inline-block; }
button { border-radius: 0; }
button:focus {outline: dotted 1px; outline: -webkit-focus-ring-color auto 5px; }
input,
button,
select,
textarea {margin: 0;  font-family: inherit;  font-size: inherit;  line-height: inherit; }
button,
select { text-transform: none; }
[role="button"] {cursor: pointer; }
select { word-wrap: normal; }
button,
[type="button"],
[type="reset"],
[type="submit"] { -webkit-appearance: button; }
  button:not(:disabled),
  [type="button"]:not(:disabled),
  [type="reset"]:not(:disabled),
  [type="submit"]:not(:disabled) {cursor: pointer; }
textarea {resize: vertical; }
[type="search"] {outline-offset: -2px; -webkit-appearance: textfield; }
iframe { border: 0; }
[hidden] {display: none !important; }
.list-unstyled {padding-left: 0; list-style: none; }
.img-fluid {max-width: 100%; height: auto; }
.bg-light {background-color: #f8f9fa !important; }
.bg-white {background-color: #fff !important; }
.bg-darken {background: #081637 !important; }
.rounded {border-radius: 0.25rem !important; }
.visible {visibility: visible !important; }

/* ### Forms ### */
  @media (prefers-reduced-motion: reduce) {.form-control {-webkit-transition: none; -o-transition: none; transition: none; } }
.form-control { display: block;   width: 100%;    padding: 0.375rem 0.75rem;   font-size: 14px;  font-weight: 400; line-height: 1.5;  height: 45px; color: rgba(0, 0, 0, 0.8);    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.1);  border-radius: 2px; -webkit-appearance: none; -moz-appearance: none; appearance: none;   -webkit-transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;  -o-transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -webkit-box-shadow: none !important; box-shadow: none !important;
}
textarea.form-control {height: inherit !important; }
.form-control::-webkit-input-placeholder {  /* Chrome/Opera/Safari */ color: rgba(0, 0, 0, 0.3) !important; }
.form-control::-moz-placeholder { /* Firefox 19+ */ color: rgba(0, 0, 0, 0.3) !important; }
.form-control:-ms-input-placeholder { /* IE 0+ */ color: rgba(0, 0, 0, 0.3) !important; }
.form-control:-moz-placeholder { /* Firefox 18- */ color: rgba(0, 0, 0, 0.3) !important; }
.form-control:focus, .form-control:active {border-color: #5ea51d !important; }
.form-control[type="file"] { overflow: hidden; }
.form-control[type="file"]:not(:disabled):not([readonly]) {cursor: pointer; }
.form-control:focus {border-color: #86b7fe; outline: 0;-webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); }
.form-control:disabled {background-color: #e9ecef;opacity: 1; }
.form-control::file-selector-button {padding: 0.375rem 0.75rem;margin: -0.375rem -0.75rem; -webkit-margin-end: 0.75rem; margin-inline-end: 0.75rem; color: #212529; background-color: #e9ecef;
pointer-events: none; border-color: inherit; border-style: solid; border-width: 0; border-inline-end-width: 1px;  border-radius: 0; -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;-o-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;
    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; 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, -webkit-box-shadow 0.15s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
    .form-control::file-selector-button { -webkit-transition: none;  -o-transition: none; transition: none; } }
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {background-color: #dde0e3; }
.form-control::-webkit-file-upload-button {padding: 0.375rem 0.75rem; margin: -0.375rem -0.75rem; -webkit-margin-end: 0.75rem; margin-inline-end: 0.75rem; color: #212529; background-color: #e9ecef;
    pointer-events: none; border-color: inherit; border-style: solid; border-width: 0; border-inline-end-width: 1px; border-radius: 0;  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;   transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; -o-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;
    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; 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, -webkit-box-shadow 0.15s ease-in-out; }
    @media (prefers-reduced-motion: reduce) {
.form-control::-webkit-file-upload-button { -webkit-transition: none; -o-transition: none; transition: none; } }
.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {background-color: #dde0e3; }
textarea.form-control {min-height: calc(1.5em + 0.75rem + 2px); }
.btn { display: inline-block;font-weight: 400;line-height: 1.5;color: #212529;text-align: center; text-decoration: none;  vertical-align: middle;  cursor: pointer;  -webkit-user-select: none;  -moz-user-select: none; -ms-user-select: none; user-select: none;background-color: transparent;border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem;  border-radius: 0.25rem;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;  -o-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;  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;
  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, -webkit-box-shadow 0.15s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {  
.btn { -webkit-transition: none; -o-transition: none;transition: none; } }
.btn {padding: 9px 12px; cursor: pointer; border-radius: 0;  -webkit-box-shadow: 0px 24px 36px -11px rgba(0, 0, 0, 0.09);  -moz-box-shadow: 0px 24px 36px -11px rgba(0, 0, 0, 0.09);
  box-shadow: 0px 24px 36px -11px rgba(0, 0, 0, 0.09);  font-size: 12px;  font-weight: 600;  text-transform: uppercase;  letter-spacing: 1px; }
.btn:hover {color: #212529;}
.btn:focus {outline: 0;-webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); }
.btn:disabled, .btn.disabled {pointer-events: none;opacity: 0.65; }
.btn.btn-primary {background: #5ea51d !important;color: #fff !important;}
.btn.btn-primary span {color: #fff !important; font-size: 16px; line-height: 1; margin-left: 10px; }
.btn.btn-primary.btnBorder:hover {background: transparent; color: #5ea51d;border: 2px solid #ffffff !important;}
.btn.btn-primary:hover {background: transparent; color: #5ea51d; }
.btn.btn-black {background: #000000 !important; border: 1px solid #000000 !important; color: #fff !important; }
.btn.btn-black:hover { border: 2px solid #fff !important; background: transparent; color: #000000; }
.btn-primary:focus { color: #fff; background-color: #0b5ed7; border-color: #0a58ca; -webkit-box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); }
.btn-primary:active, .btn-primary.active,
.show > .btn-primary.dropdown-toggle {color: #fff;background-color: #2d4e0d; border-color: #0a53be; }
.btn-primary:active:focus, .btn-primary.active:focus,
.show > .btn-primary.dropdown-toggle:focus {-webkit-box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5); }
.btn-primary:disabled, .btn-primary.disabled {color: #fff;background-color: #0d6efd;border-color: #0d6efd; }
.cn-section { padding:2em 0; position: relative; width: 100%; }
@media (max-width: 575.98px) {
.cn-section {padding: .5em 0; } }
.cn-no-pt {padding-top: 0 !important; }
.cn-no-pb {padding-bottom: 0 !important; }
.cn-intro {color: rgba(255, 255, 255, 0.8); z-index: 0; position: relative; padding: 6em 0; }
.cn-intro .overlay {   position: absolute; inset: 0; content: '';  opacity: .9;  background-color: #5ea51d; z-index: -1; }
@media (max-width: 767.98px) {
.cn-intro { background-position: center center !important; } }
.cn-intro h1, .cn-intro .h1 {color: #fff;font-weight: 600; }
.cn-intro h2, .cn-intro .h2 {color: #fff;font-weight: 600; font-size: 40px !important; }
.cn-intro p {color: #fff;font-weight: 500;font-size:1.3em;line-height:1.5em;}
 @media (max-width: 575.98px) {.cn-intro h2, .cn-intro .h2 {font-size: 20px; } }
.cn-intro h2 span, .cn-intro .h2 span {background: #5ea51d; }

.nav { display: -webkit-box; display: -ms-flexbox;  display: flex;  -ms-flex-wrap: wrap;  flex-wrap: wrap;  padding-left: 0;  margin-bottom: 0;  list-style: none; }
.nav-link {  display: block;  padding: 0.5rem 1rem;  text-decoration: none;  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
  -o-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; }
@media (prefers-reduced-motion: reduce) {
.nav-link { -webkit-transition: none; -o-transition: none; transition: none; } }
.nav-link.disabled { color: #6c757d; pointer-events: none; cursor: default; }

.navbar {position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; height: 65px;}
.navbar > .container, .navbar > .container-fluid, .navbar > .container-xl {display: flex; flex-wrap: inherit; align-items: center; justify-content: space-between;}
.navbar-nav {display: flex; flex-direction: column; padding-left: 0; margin-bottom: 0;list-style: none;}
.navbar-nav .nav-link {padding-right: 0;padding-left: 0;}
.navbar-nav .dropdown-menu {position: static;}
.navbar-collapse {align-items: center; width: 100%;}
.navbar-toggler { padding: 0.25rem 0.75rem; font-size: 1.25rem; line-height: 1; background-color: transparent; border: 1px solid transparent; border-radius: 0.25rem; transition: box-shadow 0.15s ease-in-out;}
.cn-navbar-light { background: rgba(0, 0, 0, 0.2) !important; position: absolute; left: 0; right: 0; z-index: 3; padding: 0;}
.cn-navbar-light .navbar-nav { padding-top: 20px; padding-bottom: 20px; margin-right: 0;}
.cn-navbar-light .navbar-nav > .nav-item > .nav-link { font-size: 16px; color: rgba(255, 255, 255, 0.9); font-weight: 700; text-transform: uppercase; letter-spacing: 2px;}
.cn-navbar-light .navbar-toggler { border: none; color: rgba(255, 255, 255, 0.9) !important; cursor: pointer; padding-right: 0; text-transform: uppercase; font-size: 16px; letter-spacing: 0.1em;
        margin-bottom: 5%;}
.navbar-brand {padding-top: 0.3125rem; margin-right: 5rem; font-size: 28px; font-weight: 900; text-decoration: none; white-space: nowrap; z-index: 3; position: relative;}
.navbar-brand span { color: #fff; display: block; line-height: 1.1;}

/* Third and  Fourth level default styling (will be overridden on mobile) */
.dropdown-menu .thirdChild { background: transparent; padding-left: 1.5rem;}
.dropdown-menu .thirdChild .dropdown-item {color: #212529!important; font-size: 13px;}
.dropdown-menu .thirdChild .dropdown-item:hover { background: rgba(8, 22, 55, 0.05);  border-left:solid 2px #5ea51d;  transform: translateX(3px);}
.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] { right: auto; bottom: auto;}
.dropdown-item {display: block; width: 100%; padding: 0.25rem 1rem; clear: both; font-weight: 400; color: #06112a; text-align: inherit; text-decoration: none;  white-space: nowrap;
    background-color: transparent; border: 0;}
.dropdown-item:hover, .dropdown-item:focus { color: #fff; background-color: #06112a;}
.dropdown-item.active, .dropdown-item:active {color: #fff;text-decoration: none;background-color: #0d6efd;}
.dropdown-item.active, .dropdown-item:visited {color: #06112a;background-color: #fafafa;text-decoration: none;}
.dropdown-item.disabled, .dropdown-item:disabled {color: #6c757d;pointer-events: none;background-color: transparent;}
.dropdown-menu.show {display: block;}

/* Desktop styles */
@media (min-width: 992px) {
.navbar-expand-lg { flex-wrap: nowrap; justify-content: flex-start;}
.navbar-expand-lg .navbar-nav {flex-direction: row; margin-top: 2%;}
.navbar-expand-lg .navbar-nav .nav-link {padding-right: 1rem; padding-left: 1rem;}
.navbar-expand-lg .navbar-collapse {display: flex !important; }
.navbar-expand-lg .navbar-toggler {display: none;}
.cn-navbar-light .navbar-nav .dropdown-menu {transition: opacity 0.3s ease, visibility 0.3s ease;opacity: 0;visibility: hidden; position: absolute; pointer-events: none; display: block;
background: #fff; border: 1px solid #ddd; border-radius: 4px;  padding: 10px 0; min-width: 200px; }
.cn-navbar-light .navbar-nav .dropdown:hover > .dropdown-menu { opacity: 1; visibility: visible; pointer-events: auto;}
.dropdown-submenu {position: relative;}
.dropdown-submenu > .dropdown-menu {position: absolute;top: 0; left: 100%; margin-top: -1px; opacity: 0;visibility: hidden;transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
transform: translateY(10px);pointer-events: none;display: block;background: #fff; border: 1px solid #ddd;border-radius: 4px; padding: 10px 0;min-width: 200px;}
.dropdown-submenu:hover > .dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto;}
.dropdown-submenu > a::after { content: "\25BC";font-family: "bootstrap-icons"; float: right; transform: rotate(-90deg);}
}

/* Mobile styles - FIXED */
@media (max-width: 991.98px) {
.cn-navbar-light { background: #081637 !important; position: relative; top: 0; padding: 7px 0;}
.navbar-collapse { align-items: center; width: 100%; background-color: rgba(6, 17, 42, 0.9); padding: 20px;  box-sizing: border-box; margin-top: -33px; border-top: solid 2px #fff;}
.cn-navbar-light .navbar-nav {padding-top: 20px; padding-bottom: 20px;}
.cn-navbar-light .navbar-nav > .nav-item > .nav-link {padding-left: 20px;padding-right: 20px;padding-bottom: 1.1rem;padding-top: 0;color: #fff;}
        /* First level dropdown menu */
.cn-navbar-light .navbar-nav .dropdown-menu {position: static; opacity: 1; visibility: visible; background: rgba(255, 255, 255, 0.1); border: none; border-radius: 0; padding: 0;
            margin: 0;max-height: 0;overflow: hidden;transition: max-height 0.4s ease, padding 0.4s ease;}
.cn-navbar-light .navbar-nav .dropdown.show > .dropdown-menu { max-height: 800px; padding: 10px 0;}
    /* Second level dropdown submenu */
.dropdown-submenu > .dropdown-menu { position: static; left: auto; top: auto; margin: 0;  background: rgba(255, 255, 255, 0.09);padding-bottom: 1em; border: none; border-radius: 0;
        padding: 0;max-height: 0; overflow: hidden; transition: max-height 0.4s ease, padding 0.4s ease; display: block; visibility: visible; opacity: 1; transform: none;}
.dropdown-submenu.open > .dropdown-menu { max-height: 500px; padding: 10px 0;}
    /* Dropdown item styling */
.dropdown-item { color: #fff !important; background: transparent; border: none; padding: 8px 25px; margin-bottom: 1em; text-decoration: none; display: block;width: 100%;font-size: 14px;}
.dropdown-item:hover { background: rgba(255, 255, 255, 0.1); color: #5ea51d !important}
.dropdown-item.disabled {color: rgba(255, 255, 255, 0.5) !important;}
    /* Third level styling */
.secondChild {padding-left: 1em; font-size: 0.9em; background: rgba(255, 255, 255, 0.08); border-left: 2px solid rgba(255, 255, 255, 0.1); margin-left: 15px; }
.secondChild .dropdown-item { padding: 8px 20px 8px 25px;font-size: 13px; color: #5ea51d !important; border-left: 2px solid transparent; transition: all 0.3s ease;}
.secondChild .dropdown-item:hover { background: rgba(255, 255, 255, 0.08); border-left-color: #5ea51d;  transform: translateX(3px); }
    /* Third and Fourth level styling (MOBILE ONLY) */
.dropdown-menu .thirdChild { background: transparent; padding-left: 1.5rem;}
.dropdown-menu .thirdChild .dropdown-item {color: #ffffff!important; font-size: 13px;}
.dropdown-menu .thirdChild .dropdown-item:hover { background: rgba(8, 22, 55, 0.05);  border-left:solid 2px #5ea51d;  transform: translateX(3px);}
    /* Arrow indicators */
.dropdown-submenu > a::after { content: "\25BC"; font-family: "bootstrap-icons"; float: right; transition: transform 0.3s ease;}
.dropdown-submenu.open > a::after {transform: rotate(90deg);}
.nav-caret {float: right; transition: transform 0.3s ease;}
.dropdown.show > .nav-link .nav-caret { transform: rotate(180deg);}
}
/*  ### Historical People and Places ###  */
#masonry-gallery .gallery-item{margin-bottom:10px;}
    /* This is a "clearfix" to contain the floated element within its parent. */
.accordion-body { overflow: auto;   /* This creates a new block formatting context, which contains the float. */}
.accordion-body figure { margin: 0.5em;}
    /* This is the key part that creates the float effect on desktop */
@media (min-width: 768px) {.accordion-body figure {float: left; width: 33%;  margin-left: 1em;}
}
.card-img-top {max-height: 300px; object-fit: cover;}
/* Ensure the modal is on top of the backdrop */
/* Moved to page was causing modal issues */

/* ### Edit Only body.dnnEditState .top-wrap { position: relative; z-index: 10;  max-height:80px;overflow: hidden;}### */
.searchSkinObjectPreview { position: absolute; z-index: 10; background: #fff; box-shadow: 0 4px 8px rgba(0,0,0,0.1); }
.dnnModule { position: relative;z-index: 20; /* Ensure module actions sit above */}

/* ### Home Page Search Area ### */
 /* ### Topper Search ### */
.top-wrap {background: #06112a;}
.topper { font-size: 15px; width: 100%; z-index: 3; position: relative;}
.row-item { margin-right: 25px;}
.top-wrap .search-bar [id*="cmdSearch"] { display: none !important;}
[id*="txtSearch"] { padding: 8px 12px; border: 1px solid #ccc; border-radius: 10px; font-size: 16px; color: #333; background-color: #f9f9f9; width: 250px; box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
        transition: all 0.3s ease-in-out;}
[id*="txtSearch"]:focus { border-color: #007bff; box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);outline: none;}
#dnn_dnnSearchTop2_cmdSearch {display: none !important;}
/* Ensure the parent containers are 100% wide */
/* Replace the problematic mobile section at the bottom with this: */

@media (max-width: 767.98px) {
  /* Make only the search-specific containers full width */
  .top-wrap .search-bar { width: 350px;}
  /* Make the search bar input full width and override any conflicting rules */
  .search-bar [id*="txtSearch"] {width: 350px !important; max-width: 100% !important;}
  /* Optional: if there's a search button, hide it for mobile to save space */
  [id*="cmdSearch"] { display: none !important;}
}
/* ### Under Hero Search ### */
.nav-pills .nav-link { border-radius: 0.25rem;}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {color: #fff;background-color: #0d6efd;}
.tab-content > .tab-pane {display: none;}
.tab-content > .active {display: block;}
.cn-search {position: relative; width: 100%; display: block; margin-top: -120px;}
.cn-search .nav-pills { display: inline-block; }
.cn-search .nav-pills p { margin-bottom: 0;}
.cn-search .nav-pills .nav-link {padding: 10px 30px !important; border-radius: 0 !important; margin-bottom: 0; color: #fff; font-size: 16px; font-weight: 700; position: relative;                display: inline-block;
border: 1px solid transparent;background: #5ea51d;border-radius: 5px;}
.cn-search .nav-pills .nav-link:hover { color: #fff;-moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -webkit-transition: all 0.3s ease;-ms-transition: all 0.3s ease;
transition: all 0.3s ease;border: 1px solid transparent;background: white;background: #5ea51d;}
.cn-search .nav-pills .nav-link:hover:after {opacity: 1;}
 @media (max-width: 575.98px) {
.cn-search .nav-pills .nav-link:hover:after {opacity: 0;}
}
.cn-search .nav-pills .nav-link.active {color: gray; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -webkit-transition: all 0.3s ease; -ms-transition: all 0.3s ease;
transition: all 0.3s ease;border: 1px solid transparent;background: #f0f0f0;}
.cn-search .nav-pills .nav-link.active:after {opacity: 1;}
@media (max-width: 575.98px) {
.cn-search .nav-pills .nav-link.active:after {opacity: 0;}
.cn-search .nav-pills .nav-link { font-size: 14px;}
    }
.cn-search .tab-content { background: #fff; margin-top: 0px; -webkit-box-shadow: 0px 10px 33px -27px rgba(0, 0, 0, 0.4);  -moz-box-shadow: 0px 10px 33px -27px rgba(0, 0, 0, 0.4);
box-shadow: 0px 10px 33px -27px rgba(0, 0, 0, 0.4);}
.search-site .form-group { position: relative; margin-bottom: 0; width: 100%;      border: none !important;padding: 0 !important;}
@media (max-width: 575.98px) {
.search-site .form-group {margin-bottom: 0; border: none;}
}
.search-site .form-group label {font-weight: 700; font-size: 14px;color: #000000; text-transform: uppercase; display: block; margin-bottom: .5rem;}
.search-site .form-group .form-field {position: relative;width: 100%; border: 1px solid #ccc; border-radius: .25rem; overflow: hidden;  height: 40px;  display: flex; align-items: center;}
.search-site .form-group .icon { padding: 0 10px;   color: rgba(0, 0, 0, 0.4); flex-shrink: 0; display: flex; align-items: center; justify-content: center;}
#dnn_dnnSearch_ClassicSearch { display: flex; align-items: stretch; width: 100%; height: 100%;}
.searchInputContainer { display: flex; align-items: center; flex: 3; height: 100%;}
#dnn_dnnSearch_txtSearch { flex-grow: 1; box-sizing: border-box; margin-right: 0 !important;  padding: 8px 15px !important;  font-size: 16px !important; border: none !important;
color: rgba(0, 0, 0, 0.4) !important; background: transparent !important; outline: none !important; box-shadow: none !important; border-radius: 0 !important; height: 100%;}
#dnn_dnnSearch_txtSearch::-webkit-input-placeholder {color: rgba(0, 0, 0, 0.4) !important;}
#dnn_dnnSearch_txtSearch::-moz-placeholder {color: rgba(0, 0, 0, 0.4) !important;}
#dnn_dnnSearch_txtSearch:-ms-input-placeholder {color: rgba(0, 0, 0, 0.4) !important;}
#dnn_dnnSearch_txtSearch:-moz-placeholder {color: rgba(0, 0, 0, 0.4) !important;}
#dnn_dnnSearch_cmdSearch {width: auto;padding: 8px 15px;white-space: nowrap; font-size: 16px;font-weight: 700;text-transform: uppercase; background: #5ea51d !important; border: none !important;
color: #fff !important;border-radius: 0 .25rem .25rem 0 !important; cursor: pointer; -moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;-webkit-transition: all 0.3s ease;
 -ms-transition: all 0.3s ease;transition: all 0.3s ease; flex: 1;height: 100%;}
#dnn_dnnSearch_cmdSearch:hover { opacity: 0.9;}
.dnnSearchBoxClearText {display: none !important;}
.searchSkinObjectPreview {position: absolute;top: 100%; left: 0;  width: 100%; max-height: 250px; overflow-y: auto; z-index: 1001; background-color: #fff; border: 1px solid #ccc;
box-shadow: 0 4px 8px rgba(0,0,0,0.1);list-style: none; padding: 0; margin: 0;border-radius: 0 0 .25rem .25rem;}
.searchSkinObjectPreview li {padding: 8px 15px; cursor: pointer; border-bottom: 1px solid #eee;}
.searchSkinObjectPreview li:last-child { border-bottom: none; }
.searchSkinObjectPreview li:hover {background-color: #f0f0f0;}
.searchSkinObjectPreview li a { text-decoration: none;  color: #333; display: block;}
.searchSkinObjectPreview_group {font-weight: bold;color: #555; padding: 8px 15px;background-color: #f8f8f8;border-bottom: 1px solid #eee;}
.searchSkinObjectPreview_more { text-align: center; padding: 10px 15px; font-style: italic;  color: #007bff;  background-color: #f0f8ff; border-top: 1px solid #eee;}

/* ### Lists ### */
.list-group {display: -webkit-box;display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column;
        padding-left: 0; margin-bottom: 0; border-radius: 0.25rem;}
.list-group-item { position: relative; display: block; padding: 0.5rem 1rem; text-decoration: none; background-color: #fff; border: 1px solid rgba(0, 0, 0, 0.125);}
.list-group-item:first-child {border-top-left-radius: inherit;border-top-right-radius: inherit;}
.list-group-item:last-child {border-bottom-right-radius: inherit;border-bottom-left-radius: inherit;}
.list-group-item.disabled, .list-group-item:disabled {color: #6c757d;pointer-events: none;background-color: #fff;}
.list-group-item.active { z-index: 2;color: #fff;background-color: #0d6efd;border-color: #0d6efd;}
.list-group-item + .list-group-item {border-top-width: 0;}
.list-group-item + .list-group-item.active {margin-top: -1px;border-top-width: 1px;}

/* ### Topper### */
.top-wrap { background: #06112a;}
.topper {font-size: 15px; width: 100%; z-index: 3; position: relative; }
.topper .icon { width: 40px; height: 40px;border-radius: 50%;border: 1px solid rgba(255, 255, 255, 0.1);}
.topper .icon span {color: #fff;}
.topper .text {width: calc(100% - 40px);}
.topper .text p {margin-bottom: 0; font-size: 11px;}
.topper .text .con {margin-bottom: 0;font-size: 10px; font-weight: 500;}
.topper .text .con span {font-weight: 600;font-size: 11px;}
.topper .text .con a { color: #999999;text-transform: uppercase; margin-right: 5px;font-size: 10px;letter-spacing: 1px;}
.topper .text .hr span { color: #fff; font-weight: 600; font-size: 11px;}
.con {font-size: 12px;margin: 0;line-height: 1.2;color: #fafafa; letter-spacing: 3px;}

 /* ### Hero ### */
.homeTitle {color: #fafafa; font-size: 22px; margin-top: 0;margin-bottom: 0.5rem; font-weight: 500;line-height: 1.7em; letter-spacing: 3px;}
.main-hero {position: relative;height: 95vh;min-height: 700px;}
.main-hero .work { width: 100%;}
.main-hero .work .img {width: 100%;height: 100vh;min-height: 700px;position: relative;z-index: 0;overflow: hidden;-webkit-box-shadow: 0px 20px 35px -30px rgba(0, 0, 0, 0.26);
 -moz-box-shadow: 0px 20px 35px -30px rgba(0, 0, 0, 0.26);box-shadow: 0px 20px 35px -30px rgba(0, 0, 0, 0.26);}
.main-hero .work .img:after {position: absolute;inset: 0; /* Shorthand for top, right, bottom, left */ content: '';z-index: -1;background-color: #030513; opacity: .6;}
.hero-container-wrapper {transform: translateY(-50px);}
 @media (max-width: 575.98px) {
.main-hero .work .img:after { width: 100%;}
}
.main-hero .work .text {color: rgba(255, 255, 255, 0.8);}
.main-hero .work .text h2, .main-hero .work .text .h2 {font-size: 70px;font-weight: 400;color: #fff;line-height: 1.1;margin-bottom: 40px;}
@media (max-width: 767.98px) {
.main-hero .work .text h2, .main-hero .work .text .h2 {font-size: 40px;}
.hero-container-wrapper {transform: translateY(-50px);}
}
.main-hero .work .text span { font-size: 12px;letter-spacing: 1px;color: rgba(0, 0, 0, 0.3);text-transform: uppercase;font-weight: 500;}

/* ### Inner Hero ### */
.inner-title {background-image: url(../../images/texture.png);background-size: cover;background-repeat: no-repeat;background-position: center center; position: relative; padding-top: 80px;
        padding-bottom: 20px;}
.inner-title .overlay {position: absolute;top: 0;left: 0;right: 0;bottom: 0;background-color: rgba(0,0,0,0.4);z-index: 0;}
.inner-title .container {position: relative; z-index: 1;}
.inner-title h1.bread {color: white;margin-bottom: 0;font-size: 2em;}
.inner-title .breadcrumbs { font-size: 0.9em;color: rgba(255,255,255,0.8); margin-bottom: 0; white-space: nowrap;overflow-x: auto; -webkit-overflow-scrolling: touch;}
.inner-title .breadcrumbs a { color: inherit;}
@media (max-width: 768px) {
.inner-title .breadcrumbs > span > a:not(:nth-child(-n+2)):not(:nth-last-child(-n+2)) {display: none;}
    }
/* Add an ellipsis to show that items are hidden */
@media (max-width: 768px) {
.inner-title .breadcrumbs > span > a:nth-child(3):before {content: "... > ";display: inline-block;}
.inner-title { padding-top: 20px;}
}

/* ### Headings ### */
.heading-section .subheading {font-size: 13px;display: block;margin-bottom: 5px;color: #5ea51d;text-transform: uppercase;font-weight: 700;}
.heading-section h2, .heading-section .h2 {font-size: 30px;font-weight: 700;line-height: 1.4;}
.heading-section h2 span, .heading-section .h2 span {font-weight: 400;}
@media (max-width: 575.98px) {
.heading-section h2, .heading-section .h2 {font-size: 26px;}
}
.heading-section.heading-section-white .subheading {color: #5ea51d;}
.heading-section.heading-section-white h2, .heading-section.heading-section-white .h2 {color: #fff;}

 /* ### Explore Historical Places ### */
.explore { width: 100%; background: #f3f5f1;  padding: 50px; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -webkit-transition: all 0.3s ease; -ms-transition: all 0.3s ease;
        transition: all 0.3s ease;}
.explore .icon span { font-size: 70px; line-height: 1.2;color: #000000;}
.explore .text {width: 100%;}
.explore .text h2, .explore .text .h2 {font-size: 24px;font-weight: 600;margin-bottom: 2px;}
.explore:hover {background: #5ea51d;}
.explore:hover .icon span {color: #fff;}
.explore:hover .text h2, .explore:hover .text .h2 {color: #fff;}

 /* ### Cadastral Map ### */
.cn-cadastral {position: relative;z-index: 0;}
.cn-cadastral .overlay {position: absolute; inset: 0;width: 100%;content: '';background-color: #050d21;z-index: -1;}
.cn-cadastral p {color: #fff; font-weight: 500; font-size: 1.3em;line-height: 1.5em;}

/* ### Historical Maps ### */
.map-wrap {margin-bottom: 60px; box-shadow: 0px 5px 21px -14px rgba(0, 0, 0, 0.14);transition: all 0.3s ease;}
 @media (max-width: 575.98px) {
.map-wrap {margin-bottom: 40px; }
}
.map-wrap .img {display: block;width: 100%; height: 250px;position: relative;z-index: 0;}
.map-wrap .img.img-property:after {position: absolute;inset: 0;content: ''; opacity: .3;background-color: #000000;z-index: -1;transition: all 0.3s ease;}
.map-wrap .img p.mapDownload {position: absolute; bottom: 0;left: 25px; right: 25px;}
.map-wrap .img p.mapDownload span {font-size: 16px; font-weight: 600;background: #5ea51d;border-radius: 4px; padding: 3px 7px;}
.map-wrap .img p.mapDownload small, .map-wrap .img p.mapDownload .small {font-size: 14px; color: white; }
.map-wrap .text {position: relative; transition: all 0.3s ease;background: #fff; padding: 25px;}
.map-wrap .text h3, .map-wrap .text .h3 { font-size: 20px;margin-bottom: 0;}
.map-wrap .text h3 a, .map-wrap .text .h3 a {color: #000000; font-weight: 600;}
.map-wrap:hover {box-shadow: 0px 5px 39px -14px rgba(0, 0, 0, 0.26);}
.map-wrap:hover .img:after { opacity: 0;}
 /* Styles for the map search form */
.highlight {background-color: yellow; font-weight: bold;}
.search-site {background: #fff;padding: 20px;margin-bottom: 20px;box-shadow: 0px 5px 21px -14px rgba(0, 0, 0, 0.14);}
.search-site .form-group { margin-bottom: 0;}
.search-site .form-group label { font-weight: 600;color: #000;margin-bottom: 10px;}
.search-site .form-field {position: relative;}
.search-site .form-field .icon {position: absolute; top: 50%;-webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 15px; color: #ccc;}
.search-site .form-control { border: 1px solid #ccc;height: 50px;padding-left: 50px;padding-right: 15px; font-size: 16px; border-radius: 4px;flex-grow: 1;}
.search-site .form-control:focus {outline: none;box-shadow: none; border-color: #5ea51d;}
.search-site .form-field .btn {margin-left: 5px;}
#searchKeyword {padding-left: 40px;}
.form-field .icon { margin-right: 20px; display: flex; align-items: center;justify-content: center;}
.hide-search-icon {display: none;}
/* Library Lecture Video */
.vid-section {height: 600px; position: relative; z-index: 0;}
.vid-section .overlay { position: absolute; inset: 0; content: '';z-index: -1; background: #000000; opacity: .3;}
.video-wrap h3, .video-wrap .h3 {color: #fff; font-weight: 700;font-size: 40px;}
.vid-height { height: 600px;}
.video-icon {width: 80px !important; height: 80px;border-radius: 50%;display: block;background: #5ea51d;margin: 0 auto;animation: pulse 2s infinite;}
.video-icon span {color: #fff; font-size: 50px;line-height: 1;}

/* Gallery */
.cn-gallery .gallery-wrap {width: 100%;height: 300px;display: block;position: relative;z-index: 0;}
.cn-gallery .gallery-wrap:after { position: absolute;inset: 0;content: ''; z-index: -1;background-color: #000000; opacity: 0;transition: all 0.3s ease;}
.cn-gallery .gallery-wrap .icon {width: 40px;height: 40px; border-radius: 50%;background: #5ea51d;transition: all 0.3s ease;opacity: 0;}
.cn-gallery .gallery-wrap .icon span {color: #fff;}
.cn-gallery .gallery-wrap:hover:after {opacity: .3;}
.cn-gallery .gallery-wrap:hover .icon {opacity: 1;}

/* Enhanced Search Gallery */
.aspect {position: relative;overflow: hidden;}
.aspect--16x9 {padding-bottom: 56.25%;}
.aspect__inner {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.picture-item__inner {transition: transform 0.3s ease;}
.picture-item__inner:hover { transform: translateY(-5px);}
.filter-options {display: flex;flex-direction: column;gap: 0.5rem;}
.filter-options .btn {justify-content: flex-start; text-align: left;cursor: pointer;}

.filter-options .btn .btn-featured {
  background-color: #2d4e0d;

}

.search-container {margin-bottom: 1.5rem;}
#historyGallery{margin-top:40px;}
/* Show/Hide filters button - hidden by default */
#showFiltersButton {display: none; margin-top: 1rem;}
/* Fix for message flashing */
#noResultsMessage {transition: opacity 0.3s ease;}
.picture-item {transition: all 0.3s ease;}
.picture-item.hide {display: none !important;}
/* Filter container animation */
.filter-row-container {transition: all 0.3s ease;}
@media (max-width: 575px) {
    .filter-options {display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem;}
    .filter-options .btn {font-size: 0.8rem; padding: 0.4rem 0.8rem;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
       /* Show the toggle button on mobile when filters are hidden */
    #showFiltersButton {display: none; /* Will be shown via JavaScript when needed */ }
        /* Ensure smooth transitions on mobile */
    .filter-row-container {overflow: hidden;}
}
@media (min-width: 576px) {
    /* Always show filters on desktop/tablet */
    .filter-row-container {display: block !important;}
        /* Always hide toggle button on desktop/tablet */
    #showFiltersButton {display: none !important;}
}
.featured-badge {position: absolute;top: 10px;right: 10px;background: #bbea8d;color: #212529; font-size: 0.75rem; font-weight: 600; padding: 4px 8px; border-radius: 12px;  box-shadow: 0 2px 6px rgba(0,0,0,0.2); z-index: 10; display: flex; align-items: center; gap: 4px;}
.featured-badge i {color: #212529;}
.picture-item__inner { position: relative;}


/* Footer */
.cn-footer { padding-top:2em ; background: #06112a;color: rgba(255, 255, 255, 0.8);}
.cn-footer .logo a {text-decoration: none;font-size: 1.25rem; font-weight: 700;  color: #fff! important;}
.cn-footer .cn-footer-widget h2, .cn-footer .cn-footer-widget .h2 {color: #fff;margin-bottom: 40px; font-size: 1.25rem;font-weight: 700;font-family: "Nunito Sans", Arial, sans-serif;}
.cn-footer p { line-height: 1.5;margin-bottom: 15px; font-size: 15px; color: rgba(255, 255, 255, 0.8); }
.footer-logo-link a { font-size: 1.25rem; font-weight: 700;  color: #fff! important; text-decoration: none;}
.cn-footer .cn-footer-widget ul li {margin-bottom: 10px;}
.cn-footer .cn-footer-widget ul li a {color: rgba(255, 255, 255, 0.8);}
.cn-footer .cn-footer-widget ul li a span { font-size: 14px; color: rgba(255, 255, 255, 0.8); }
.cn-footer .cn-footer-widget ul li a:hover { color: #5ea51d;}
.cn-footer .cn-footer-widget ul li a:hover span { color: #5ea51d;}
.cn-footer .cn-footer-widget .btn-primary:hover {background: #fff;border: 2px solid #fff !important;}
.cn-footer .block-23 ul {padding: 0;}
.cn-footer .block-23 ul li {font-size: 15px;}
.cn-footer .block-23 ul li, .cn-footer .block-23 ul li > a {display: table;line-height: 1.5;margin-bottom: 15px;font-size: 15px;}
.cn-footer .block-23 ul li span { color: rgba(255, 255, 255, 0.8); /*color: #5ea51d;*/}
.cn-footer .block-23 ul li .icon, .cn-footer .block-23 ul li .text {display: table-cell;vertical-align: top;color: rgba(255, 255, 255, 0.9) !important;}
.cn-footer .block-23 ul li .icon {width: 40px;font-size: 15px;padding-top: 2px;color: #5ea51d !important;}
.cn-footer .bg-darken {background: #050d21 !important;}
.cn-footer-social li {list-style: none;margin: 0 10px 0 0;display: inline-block;}
.cn-footer-social li a {height: 40px;width: 40px; display: block;float: left;color: #fff; border-radius: 50%;position: relative;background: #5ea51d;}
.cn-footer-social li a span {position: absolute;font-size: 18px;top: 50%; left: 50%;transform: translate(-50%, -50%);color: #fff !important;}
.cn-footer-social li a:hover {color: #5ea51d;}
@media (max-width: 767.98px) {
  /* This centers all block-level children and text within the footer */
  .cn-footer .row,
  .cn-footer .col-md-6,
  .cn-footer .col-lg-3,
  .cn-footer .cn-footer-widget2 { text-align: center;}
  /* This ensures the logo and its text are centered using flexbox*/
  .cn-footer-widget2 {display: flex; flex-direction: column; align-items: center;padding-bottom:10%;}
  /* This centers the logo image and text inside the h2 tag */
  .cn-footer-widget2 h2 {display: flex; flex-direction: column; align-items: center; width: 100%;}
}

 #map {width: 100%;}
@media (max-width: 767.98px) {
 #map {height: 300px;}
}

/* Application Gallery */
.aspect {position: relative;width: 100%;padding-bottom: 56.25%; overflow: hidden;}
.aspect--1x1 {padding-bottom: 100%;}
.aspect__inner { position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%; }
.aspect__inner img { width: 100%;height: 100%;object-fit: cover;}
.picture-item .card-img-top {height: 200px;object-fit: cover;}
.picture-item__details {padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);}
.picture-item__title {margin-bottom: .5rem;text-align: center; font-weight: bold;}
.picture-item.hidden-item { display: none !important;}
.lg-sub-html p .map-download {margin-left: 5px;}
.lg-sub-html p .map-download a { color: inherit;text-decoration: underline;}
 @keyframes pulse {
        0% { box-shadow: 0 0 0 0 rgba(94, 165, 29, 0.4);}

        70% {box-shadow: 0 0 0 30px rgba(94, 165, 29, 0);}

        100% {box-shadow: 0 0 0 0 rgba(94, 165, 29, 0);}
}
.img, .user-img { background-size: cover;background-repeat: no-repeat; background-position: center center;}
/* ### Outreach Section ### */
.department-wrap {display: block;position: relative; background: white;padding: 30px !important;border-radius: 4px;width: 98%;margin: 0 auto;color: rgba(0, 0, 0, 0.8);box-shadow: 0px 5px 12px -9px rgba(0, 0, 0, 0.17);
        min-height: 450px;}
.department-wrap .msg img {max-width: 100%;height: 250px;display: block;margin: 0 auto;}
.department-wrap .icon {position: absolute;top: -20px;left: 20px; width: 45px; height: 45px;border-radius: 50%; background: #5ea51d;}
.department-wrap .icon span {color: #fff;}
.department-wrap .tx {text-align: center;}
.department-wrap .name {font-weight: 600; font-size: 22px; margin-bottom: 0;color: #000000;padding-bottom: 2%;}
.department-wrap .position { font-size: 13px; text-transform: uppercase;color: #5ea51d; font-weight: 600;}
 /* ### About Section ### */

.cn-about-section .img-2 { height: 300px;}
.cn-about-section .counter-wrap {}
.cn-about-section .text {width: 100%;}
.cn-about-section .text .number { font-size: 30px; font-weight: 700;color: #000000;line-height: 1; display: inline-block;margin-bottom: 5px; text-align: center;}
.cn-about-section .text span.counter {font-size: 40px; font-weight: 600; color: #000000;line-height: 1;display: inline-block; margin-bottom: 5px;}
.cn-about-section .text p { font-size: 13px; color: #5ea51d; line-height: 1.2;text-transform: uppercase; font-weight: 600;margin-bottom: 0;text-align: center;}
.cn-about-section .icon {width: 70px;height: 70px;background: rgba(255, 255, 255, 0.05);border-radius: 50%; position: relative;margin-bottom: 10px;}
.cn-about-section .icon span { color: rgba(255, 255, 255, 0.3); font-size: 40px;}

.cn-about-section .image-wrapper {position: relative;width: 100%; padding-bottom: 75%; /* This creates an aspect ratio.  If your original image was, say, 600px tall and 800px wide (3:4 aspect)you want it to be 500px tall. The percentage will be (500/800)*100 = 62.5% Example for a 4:3 image, adjust as needed */
overflow: hidden; border-radius: 15px;box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);}
.cn-about-section .responsive-image {position: absolute; top: 0; left: 0; width: 100%;height: 100%; object-fit: cover;display: block; transition: transform 0.3s ease-in-out;}
.cn-about-section .image-wrapper:hover .responsive-image {transform: scale(1.05);}
.cn-about-section .col-md-5.d-flex.align-items-stretch {align-items: flex-start;}
@media (max-width: 767px) {
  .cn-about-section h2.mb-4 { padding-top: 20px; /* Adjust as needed */}
.cn-about-section .row.pt-2 { display: flex !important; flex-wrap: wrap !important; margin-bottom: 0 !important;  padding-bottom: 0 !important; }
.cn-about-section .col-6 {width: 50% !important; margin-bottom: 10px !important;}
 #counter1, #counter2, #counter3, #counter4 { min-height: 1px; /* Prevent collapsing if empty */ padding-bottom: 0 !important; margin-bottom: 0 !important;}
.cn-about-section .img.img-2 {margin-top: 0 !important;}
.cn-about-section .heading-section,
.cn-about-section .container-xl {padding-bottom: 0 !important; margin-bottom: 0 !important;}
  [data-aos] {opacity: 1 !important; transform: none !important; transition: none !important;}
}

.block-20 { overflow: hidden; background-size: cover;  background-repeat: no-repeat;  background-position: center center;  position: relative; display: block; width: 100%; height: 300px; z-index: -1;   }
.block-27 ul {padding: 0; margin: 0;}
.block-27 ul li {display: inline-block; margin-bottom: 4px; font-weight: 400;}
.block-27 ul li a, .block-27 ul li span {color: #000000;text-align: center;display: inline-block; width: 40px;height: 40px;line-height: 40px;border-radius: 4px;border: 1px solid #e6e6e6;                background: #fff;}
.block-27 ul li.active a, .block-27 ul li.active span, .block-27 ul li:hover a, .block-27 ul li:hover span {background: #5ea51d;color: #fff; border: 1px solid transparent; }
.wrapper { width: 100%;}
.wrapper .social-media h3, .wrapper .social-media .h3 {font-size: 18px;font-weight: 700;}

        .wrapper .social-media p a {
            color: black;
            text-transform: uppercase;
            font-size: 13px;
            font-weight: 600;
            margin-right: 10px;
        }

            .wrapper .social-media p a:hover {
                color: #000000;
            }

    .contact-wrap {
        background: #fff;
    }

        .contact-wrap h3, .contact-wrap .h3 {
            color: #000000;
            font-weight: 700;
            font-size: 30px;
        }

    .dbox {
        width: 100%;
        margin-bottom: 25px;
    }

    @media (min-width: 768px) {
        .dbox {
            margin-bottom: 0;
        }
    }

    .dbox p {
        margin-bottom: 0;
    }

        .dbox p span {
            color: #000000;
            display: block;
            text-transform: uppercase;
            font-size: 13px;
            font-weight: 700;
        }

        .dbox p a {
            color: black;
        }

    .dbox .text {
        width: 100%;
    }

    .contactForm .label {
        color: #5ea51d;
        text-transform: uppercase;
        font-size: 12px;
        font-weight: 600;
    }

    .contactForm .form-control {
        border: none;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding: 0;
    }

    .block-21 .blog-img {
        display: block;
        height: 80px;
        width: 80px;
    }

    .block-21 .text {
        width: calc(100% - 90px);
    }

        .block-21 .text .heading {
            font-size: 18px;
            font-weight: 700;
            margin-bottom: 0;
        }

            .block-21 .text .heading a {
                color: #000000;
            }

                .block-21 .text .heading a:hover, .block-21 .text .heading a:active, .block-21 .text .heading a:focus {
                    color: #5ea51d;
                }

        .block-21 .text .meta > div {
            display: inline-block;
            font-size: 11px;
            margin-right: 5px;
        }

            .block-21 .text .meta > div a {
                color: gray;
                color: #5ea51d;
            }

    /* ### Tours Section ### */
    .intro-text {
        text-align: center;
        margin-bottom: 2em;
        font-size: 1.1em;
    }

    .fancy-hr {
        border: none;
        border-top: 1px solid var(--border-color);
        margin: 2em 0;
    }

    .tour-card .card-img-top {
        height: 200px;
        object-fit: cover;
        border-bottom: 1px solid var(--border-color);
    }

    .tour-card .card-body {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
    }

        .tour-card .card-body h3 a {
            color: var(--primary-color);
            text-decoration: none;
        }

            .tour-card .card-body h3 a:hover {
                text-decoration: underline;
            }

    .tour-card-highlights {
        margin-top: 1em;
        border-top: 1px dashed #ccc;
        padding-top: 1em;
    }

        .tour-card-highlights ul {
            list-style-type: disc;
            padding-left: 20px;
            margin-top: 0.5em;
        }

        .tour-card-highlights li {
            margin-bottom: 0.5em;
        }

    .image-container {
        position: relative;
    }

    .ribbon {
        position: absolute;
        top: 0;
        right: 0;
        width: 80px;
        height: 80px;
        overflow: hidden;
        z-index: 10;
    }

        .ribbon .banner {
            position: absolute;
            padding: 5px 0;
            width: 150px;
            background-color: red;
            color: white;
            text-align: center;
            transform: rotate(45deg);
            right: -40px;
            top: 17px;
            font-size: 0.8em;
            font-weight: bold;
            box-shadow: 0 2px 5px rgba(0,0,0,0.2);
        }

    .tour-card-buttons {
        margin-top: auto;
        padding-top: 15px;
        border-top: 1px solid rgba(0, 0, 0, 0.05);
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .css-toggle-checkbox {
        position: absolute;
        opacity: 0;
        pointer-events: none;
        width: 0;
        height: 0;
        margin: 0;
        padding: 0;
    }

    .css-toggle-target {
        display: none;
        transition: all 0.3s ease-in-out;
    }

    .css-toggle-checkbox:checked ~ .css-toggle-target {
        display: block;
    }

        .css-toggle-checkbox:checked ~ .css-toggle-target + .tour-card-buttons .css-toggle-label::before {
            content: 'Hide Highlights';
        }

    .css-toggle-checkbox:not(:checked) ~ .css-toggle-target + .tour-card-buttons .css-toggle-label::before {
        content: 'View Highlights';
    }

    .css-toggle-label {
        font-size: 0;
        overflow: hidden;
        cursor: pointer;
        display: inline-block;
        font-weight: 400;
        line-height: 1.5;
        color: var(--bs-btn-color);
        text-align: center;
        text-decoration: none;
        vertical-align: middle;
        border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
        padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
        font-size: var(--bs-btn-font-size);
        border-radius: var(--bs-btn-border-radius);
        transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    }

        .css-toggle-label::before {
            font-size: 0.875rem;
            display: inline-block;
            width: 100%;
            text-align: center;
            line-height: 1;
            white-space: nowrap;
        }

    .visually-hidden {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0,0,0,0) !important;
        white-space: nowrap !important;
        border: 0 !important;
    }

    h1.tours {
        font-size: 2.5em;
        border-bottom: 2px solid #ccc;
        padding-bottom: 0.5em;
        margin-top: 2em;
        font-family: 'Merriweather', serif;
        color: var(--primary-color);
    }


    /* ### Data Dictionary ### */
    /* Hidden OID */
    table#table-container-table tr th:nth-child(1),
    table#table-container-table tr td:nth-child(1) {
        display: none !important;
    }
    /* Category */
    table#table-container-table tr th:nth-child(2) {
        width: 14% !important;
        text-align: center;
    }

    table#table-container-table tr td:nth-child(2) {
        width: 14% !important;
    }
    /* Title */
    table#table-container-table tr th:nth-child(3) {
        width: 15% !important;
        text-align: center;
    }

    table#table-container-table tr td:nth-child(3) {
        width: 15% !important;
    }
    /* Snippet */
    table#table-container-table tr th:nth-child(4) {
        width: 50% !important;
        text-align: center;
    }

    table#table-container-table tr td:nth-child(4) {
        width: 50% !important;
    }
    /* Details */
    table#table-container-table tr th:nth-child(5) {
        width: 10% !important;
        text-align: center;
    }

    table#table-container-table tr td:nth-child(5) {
        width: 10% !important;
        text-align: center;
    }
    /* Mapit*/
    table#table-container-table tr th:nth-child(6) {
        width: 10% !important;
        text-align: center;
    }

    table#table-container-table tr td:nth-child(6) {
        width: 10% !important;
        text-align: center;
    }
    /* Hide the Tags column visually */
    table#table-container-table tr th:nth-child(7),
    table#table-container-table tr td:nth-child(7) {
        display: none !important; /* Hide the Tags column */
    }

    a.btn.btn-info {
        color: #fff !important;
        background-color: #4F736E;
    }

    .btn-info:hover {
        color: #ccc !important;
    }

    .page-item.active .page-link {
        color: #fff;
        background-color: #1dc2dc;
        border-color: #1dc2dc;
    }

    .page-item.active .page-link {
        background-color: #BFB17A;
        border-color: #736944;
    }

    @media (max-width:1024px) {
        div.dataTables_wrapper div.dataTables_filter, div.dataTables_wrapper div.dataTables_length {
            text-align: left;
        }

        .table-wrap table {
            width: 100% !important;
            overflow-x: hidden;
        }

        div#table-container-table_filter.dataTables_filter {
            float: left;
        }
    }

    @media (max-width:1024px) {
        div.dataTables_wrapper div.dataTables_filter, div.dataTables_wrapper div.dataTables_length {
            text-align: left;
        }

        .table-wrap table {
            width: 100% !important;
            overflow-x: hidden;
        }

        div#table-container-table_filter.dataTables_filter {
            float: left;
        }
    }


    /* ### iframe Containers ### */
    .iframe-container, .iframe-container2, .iframe-container3, .iframe-container1 {
        display: flex;
        align-items: center;
        justify-content: center;
    }

        .iframe-container iframe {
            min-height: 1200px
        }

        .iframe-container3 iframe {
            min-height: 1000px
        }

    @media (max-width:768px) {
        .iframe-container3 iframe {
            min-height: 600px
        }
    }

    @media (max-width:768px) {
        .iframe-container iframe {
            height: 1300px
        }
    }

    .iframe-container1 iframe {
        min-height: 750px
    }

    @media (max-width:768px) {
        .iframe-container1 iframe {
            min-height: 800px
        }
    }

    /* ### News ### */
    .news-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
        gap: 1rem;
    }

    .news-card {
        margin-bottom: 2rem;
        overflow: hidden; /* or use clearfix instead */
        background-color: #ffffff;
        border-radius: 8px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        text-decoration: none;
        color: inherit;
        padding: .5rem;
    }

        .news-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 12px rgba(0, 0, 0, 0.2);
        }

        .news-card::after {
            content: "";
            display: table;
            clear: both;
        }

    .news-image {
        float: left;
        width: 150px;
        height: 150px;
        margin-right: 15px;
        border-radius: 4px;
    }

    .news-title {
        font-size: 14px;
        font-weight: bold;
        margin: 0 0 0.5rem;
        color: #004d40;
        text-decoration: none;
    }

    .news-description {
        font-size: 13px;
        color: #333;
        line-height: 1.6;
    }

    .news-meta {
        font-size: 12px;
        color: #888;
        margin-top: 1rem;
    }


    /* ### Comparison Maps ### */
    #mapCards {
        float: left;
        width: 100%;
        margin-top: 3%;
    }

        #mapCards .image-wrapper {
            position: relative;
            overflow: hidden;
        }

            #mapCards .image-wrapper img {
                width: 100%;
                max-height: 180px;
                object-fit: cover;
                display: block;
                box-shadow: 0 0 10px rgba(0,0,0,0.2);
                transition: transform 0.4s ease;
            }

                #mapCards .image-wrapper img:hover {
                    transform: scale(1.03);
                }

        #mapCards .overlay {
            position: absolute;
            top: auto;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(10,10,10,0.6);
            color: white;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 1.2em;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        #mapCards .image-wrapper:hover .overlay {
            opacity: 1;
        }

        #mapCards .overlay-text {
            background: rgba(0,0,0,0.6);
            padding: 10px 20px;
            border-radius: 4px;
        }

    .timeline {
        position: sticky;
        top: 100px; /* Adjust this for a fixed navbar */
        align-self: flex-start;
        padding-right: 4%;
    }

    .year-marker {
        margin: 40px 0;
        cursor: pointer;
        padding: 8px;
        background-color: #5ea51d;
        color: white;
        text-align: center;
        border-radius: 4px;
        transition: background 0.3s, transform 0.3s;
        width: 100%;
    }

        .year-marker.active {
            background-color: #06112a;
            transform: scale(1.05);
        }

    #mapCards .map-card {
        margin-top: 0;
        scroll-margin-top: 70px;
        padding: 20px 0;
        box-sizing: border-box;
        max-height: none;
    }

        #mapCards .map-card.row {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
        }

        #mapCards .map-card h2 {
            font-size: 1.7em;
            margin-top: 10px;
        }

        #mapCards .map-card p {
            font-size: 1em;
            line-height: 1.6;
        }

        #mapCards .map-card.active-map-card {
            box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
            border: 2px solid #5ea51d;
            border-radius: 8px;
            background-color: #fafafa;
        }

    @media screen and (max-width: 768px) {
        .timeline {
            position: static;
            width: 100%;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            padding-bottom: 10px;
            gap: 10px;
        }

        .year-marker {
            flex: 1 1 100%;
            max-width: 100%;
            text-align: center;
            margin: 10px 0;
        }

        #mapCards .map-card.row {
            flex-direction: column;
        }

        #mapCards .map-card .col-md-6 {
            width: 100%;
        }

        #mapCards .image-wrapper img {
            max-height: 250px;
        }
    }

    /* ### Contact Page ### */
    .social-links {
        display: flex;
        align-items: center;
        gap: 15px;
        margin-top: 10px;
    }

        .social-links a {
            text-decoration: none;
            color: #333;
            font-size: 24px;
        }

            .social-links a:hover {
                color: #5ea51d;
            }

    .contact-info-address, .contact-info-phone {
        font-size: 1.3em;
        line-height: 1.8;
        margin-bottom: 15px;
    }

    .contact-info-address {
        font-size: 1.3em
    }

        .contact-info-address strong,
        .contact-info-phone strong {
            font-weight: 600;
            color: #000;
        }

    .contact-info-phone a {
        color: #5ea51d;
        text-decoration: none;
        transition: all 0.3s ease;
    }

        .contact-info-phone a:hover {
            color: #0056b3;
            border-color: #0056b3;
        }


    /* ### Bootstrap Tweeks ### */
    .container,
    .container-fluid,
    .container-xl {
        --bs-gutter-x: 1.5rem;
        width: 100%;
        padding-right: calc(var(--bs-gutter-x) / 2);
        padding-left: calc(var(--bs-gutter-x) / 2);
        margin-right: auto;
        margin-left: auto;
    }

    @media (min-width: 576px) {
        .container {
            max-width: 540px;
        }
    }

    @media (min-width: 768px) {
        .container {
            max-width: 720px;
        }
    }

    @media (min-width: 992px) {
        .container {
            max-width: 960px;
        }
    }

    @media (min-width: 1200px) {
        .container, .container-xl {
            max-width: 1140px;
        }
    }

    @media (min-width: 1400px) {
        .container, .container-xl {
            max-width: 1320px;
        }
    }

    .row {
        --bs-gutter-x: 1.5rem;
        --bs-gutter-y: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: calc(var(--bs-gutter-y) * -1);
        margin-right: calc(var(--bs-gutter-x) / -2);
        margin-left: calc(var(--bs-gutter-x) / -2);
    }

        .row > * {
            -ms-flex-negative: 0;
            flex-shrink: 0;
            width: 100%;
            max-width: 100%;
            padding-right: calc(var(--bs-gutter-x) / 2);
            padding-left: calc(var(--bs-gutter-x) / 2);
            margin-top: var(--bs-gutter-y);
        }

    .col {
        -webkit-box-flex: 1;
        -ms-flex: 1 0 0%;
        flex: 1 0 0%;
    }

    .g-0 {
        --bs-gutter-x: 0;
    }

    .g-0 {
        --bs-gutter-y: 0;
    }

    .g-1 {
        --bs-gutter-x: 0.25rem;
    }

    .g-1 {
        --bs-gutter-y: 0.25rem;
    }

    @media (min-width: 768px) {
        .col-md {
            -webkit-box-flex: 1;
            -ms-flex: 1 0 0%;
            flex: 1 0 0%;
        }

        .col-md-2 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 16.66667%;
        }

        .col-md-3 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 25%;
        }

        .col-md-4 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 33.33333%;
        }

        .col-md-5 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 41.66667%;
        }

        .col-md-6 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 50%;
        }

        .col-md-7 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 58.33333%;
        }

        .col-md-8 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 66.66667%;
        }

        .col-md-9 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 75%;
        }

        .col-md-10 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 83.33333%;
        }

        .col-md-12 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 100%;
        }
    }

    @media (min-width: 992px) {
        .col-lg {
            -webkit-box-flex: 1;
            -ms-flex: 1 0 0%;
            flex: 1 0 0%;
        }

        .col-lg-2 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 16.66667%;
        }

        .col-lg-3 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 25%;
        }

        .col-lg-4 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 33.33333%;
        }

        .col-lg-6 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 50%;
        }

        .col-lg-8 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 66.66667%;
        }

        .col-lg-10 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 83.33333%;
        }
    }

    @media (min-width: 1200px) {
        .col-xl-6 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 50%;
        }

        .col-xl-8 {
            -webkit-box-flex: 0;
            -ms-flex: 0 0 auto;
            flex: 0 0 auto;
            width: 66.66667%;
        }

        .g-xl-5 {
            --bs-gutter-x: 3rem;
        }

        .g-xl-5 {
            --bs-gutter-y: 3rem;
        }
    }

    .fade {
        -webkit-transition: opacity 0.15s linear;
        -o-transition: opacity 0.15s linear;
        transition: opacity 0.15s linear;
    }

    @media (prefers-reduced-motion: reduce) {
        .fade {
            -webkit-transition: none;
            -o-transition: none;
            transition: none;
        }
    }

    .fade:not(.show) {
        opacity: 0;
    }

    .collapse:not(.show) {
        display: none;
    }

    .collapsing {
        height: 0;
        overflow: hidden;
        -webkit-transition: height 0.35s ease;
        -o-transition: height 0.35s ease;
        transition: height 0.35s ease;
    }

    @media (prefers-reduced-motion: reduce) {
        .collapsing {
            -webkit-transition: none;
            -o-transition: none;
            transition: none;
        }
    }

    .dropup,
    .dropright,
    .dropdown,
    .dropleft {
        position: relative;
    }

    .dropdown-toggle {
        white-space: nowrap;
    }

        .dropdown-toggle::after {
            display: inline-block;
            margin-left: 0.255em;
            vertical-align: 0.255em;
            content: "";
            border-top: 0.3em solid;
            border-right: 0.3em solid transparent;
            border-bottom: 0;
            border-left: 0.3em solid transparent;
        }

        .dropdown-toggle:empty::after {
            margin-left: 0;
        }

    .dropdown-menu {
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1000;
        display: none;
        min-width: 10rem;
        padding: 0.5rem 0;
        margin: 0.125rem 0 0;
        font-size: 1rem;
        color: #212529;
        text-align: left;
        list-style: none;
        background-color: #fff;
        background-clip: padding-box;
        border: 1px solid rgba(0, 0, 0, 0.15);
        border-radius: 0.25rem;
    }

    .dropdown-menu-right {
        right: 0;
        left: auto;
    }

    .dropup .dropdown-menu {
        top: auto;
        bottom: 100%;
        margin-top: 0;
        margin-bottom: 0.125rem;
    }

    .dropup .dropdown-toggle::after {
        display: inline-block;
        margin-left: 0.255em;
        vertical-align: 0.255em;
        content: "";
        border-top: 0;
        border-right: 0.3em solid transparent;
        border-bottom: 0.3em solid;
        border-left: 0.3em solid transparent;
    }

    .dropup .dropdown-toggle:empty::after {
        margin-left: 0;
    }

    .dropright .dropdown-menu {
        top: 0;
        right: auto;
        left: 100%;
        margin-top: 0;
        margin-left: 0.125rem;
    }

    .dropright .dropdown-toggle::after {
        display: inline-block;
        margin-left: 0.255em;
        vertical-align: 0.255em;
        content: "";
        border-top: 0.3em solid transparent;
        border-right: 0;
        border-bottom: 0.3em solid transparent;
        border-left: 0.3em solid;
    }

    .dropright .dropdown-toggle:empty::after {
        margin-left: 0;
    }

    .dropright .dropdown-toggle::after {
        vertical-align: 0;
    }

    .dropleft .dropdown-menu {
        top: 0;
        right: 100%;
        left: auto;
        margin-top: 0;
        margin-right: 0.125rem;
    }

    .dropleft .dropdown-toggle::after {
        display: inline-block;
        margin-left: 0.255em;
        vertical-align: 0.255em;
        content: "";
    }

    .dropleft .dropdown-toggle::after {
        display: none;
    }

    .dropleft .dropdown-toggle::before {
        display: inline-block;
        margin-right: 0.255em;
        vertical-align: 0.255em;
        content: "";
        border-top: 0.3em solid transparent;
        border-right: 0.3em solid;
        border-bottom: 0.3em solid transparent;
    }

    .dropleft .dropdown-toggle:empty::after {
        margin-left: 0;
    }

    .dropleft .dropdown-toggle::before {
        vertical-align: 0;
    }

    .ratio {
        position: relative;
        width: 100%;
    }

        .ratio::before {
            display: block;
            padding-top: var(--aspect-ratio);
            content: "";
        }

        .ratio > * {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

    .fixed-top {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 1030;
    }

    .fixed-bottom {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1030;
    }

    .sticky-top {
        position: -webkit-sticky;
        position: sticky;
        top: 0;
        z-index: 1020;
    }

    .d-block {
        display: block !important;
    }

    .d-flex {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .position-static {
        position: static !important;
    }

    .border {
        border: 1px solid #dee2e6 !important;
    }

    .border-0 {
        border: 0 !important;
    }

    .border-0 {
        border-width: 0 !important;
    }

    .w-100 {
        width: 100% !important;
    }

    .justify-content-end {
        -webkit-box-pack: end !important;
        -ms-flex-pack: end !important;
        justify-content: flex-end !important;
    }

    .justify-content-center {
        -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
        justify-content: center !important;
    }

    .justify-content-between {
        -webkit-box-pack: justify !important;
        -ms-flex-pack: justify !important;
        justify-content: space-between !important;
    }

    .align-items-start {
        -webkit-box-align: start !important;
        -ms-flex-align: start !important;
        align-items: flex-start !important;
    }

    .align-items-end {
        -webkit-box-align: end !important;
        -ms-flex-align: end !important;
        align-items: flex-end !important;
    }

    .align-items-center {
        -webkit-box-align: center !important;
        -ms-flex-align: center !important;
        align-items: center !important;
    }

    .align-items-stretch {
        -webkit-box-align: stretch !important;
        -ms-flex-align: stretch !important;
        align-items: stretch !important;
    }

    .align-self-stretch {
        -ms-flex-item-align: stretch !important;
        -ms-grid-row-align: stretch !important;
        align-self: stretch !important;
    }

    .m-auto {
        margin: auto !important;
    }

    .mt-2 {
        margin-top: 0.5rem !important;
    }

    .mt-3 {
        margin-top: 1rem !important;
    }

    .mt-5 {
        margin-top: 3rem !important;
    }

    .mr-2 {
        margin-right: 0.5rem !important;
    }

    .mr-4 {
        margin-right: 1.5rem !important;
    }

    .mr-5 {
        margin-right: 3rem !important;
    }

    .mb-0 {
        margin-bottom: 0 !important;
    }

    .mb-1 {
        margin-bottom: 0.25rem !important;
    }

    .mb-2 {
        margin-bottom: 0.5rem !important;
    }

    .mb-3 {
        margin-bottom: 1rem !important;
    }

    .mb-4 {
        margin-bottom: 1.5rem !important;
    }

    .mb-5 {
        margin-bottom: 3rem !important;
    }

    .ml-2 {
        margin-left: 0.5rem !important;
    }

    .p-0 {
        padding: 0 !important;
    }

    .p-4 {
        padding: 1.5rem !important;
    }

    .px-0 {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .px-4 {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }

    .px-5 {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }

    .py-3 {
        padding-top: 1rem !important;
        padding-bottom: 1rem !important;
    }

    .py-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }

    .py-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .pt-5 {
        padding-top: 3rem !important;
    }

    .pr-4 {
        padding-right: 1.5rem !important;
    }

    .pb-4 {
        padding-bottom: 1.5rem !important;
    }

    .pb-5 {
        padding-bottom: 3rem !important;
    }

    .pl-3 {
        padding-left: 1rem !important;
    }

    .text-left {
        text-align: left !important;
    }

    .text-right {
        text-align: right !important;
    }

    .text-center {
        text-align: center !important;
    }



    @media (min-width: 768px) {
        .mb-md-0 {
            margin-bottom: 0 !important;
        }

        .p-md-5 {
            padding: 3rem !important;
        }

        .pl-md-3 {
            padding-left: 1rem !important;
        }

        .pl-md-4 {
            padding-left: 1.5rem !important;
        }
    }

    @media (min-width: 992px) {
        .mb-lg-0 {
            margin-bottom: 0 !important;
        }

        .p-lg-5 {
            padding: 3rem !important;
        }
    }

    @media (min-width: 1200px) {
        .align-items-xl-center {
            -webkit-box-align: center !important;
            -ms-flex-align: center !important;
            align-items: center !important;
        }
    }

