:root {
    /* Main colors */
    /*--lbr-primary: #393859;*/
    --lbr-primary: #22224d;
    --lbr-primary-light: #4a4972;
    --lbr-primary-dark: #282840;
    --lbr-gold: #DDC458;
    
    /* Complementary colors */
    --lbr-secondary: #595939;
    --lbr-accent: #593959;
    --lbr-dark: #072250;
    
    /* Neutral shades */
    --lbr-gray-100: #f8f8fa;
    --lbr-gray-200: #e9e9ef;
    --lbr-gray-300: #d1d1dc;
    --lbr-gray-400: #b4b4c5;
    --lbr-gray-500: #9393a8;
    
    /* Text colors */
    --lbr-text-dark: #1a1a2e;
    --lbr-text-light: #ffffff;
    --lbr-text-muted: #6c6c7d;

    --primary-color: #007bff;
    --secondary-color: #6c757d;
    --accent-color: #28a745;
    --text-color: #343a40;
    --background-color: #f8f9fa; /* Example: Light background color */
    --highlight-color: #393859; /* Placeholder: Gold color for the heading. PLEASE REPLACE WITH YOUR EXACT GOLD/YELLOW HEX. */
    --light-text-color: #999; /* A lighter shade for breadcrumbs/less prominent text */


}
body {
    padding-top: 142px;
}
body,p {
    font-size: 1em;
    line-height: 23px;
}

/* Bootstrap overrides */
.btn-gold {
  background-color: var(--lbr-gold);
  color: var(--lbr-text-dark);
  border: none;
  font-weight: bold;;
}

.btn-gold:hover,
.btn-gold:focus {
  background-color: #cbb84f; /* slightly darker gold on hover */
  color: var(--lbr-text-dark);
}

.bg-primary {
    background-color: var(--lbr-primary) !important;
}

.bg-light {
    background-color: var(--lbr-gray-100) !important;
}

.text-gold {
    color: var(--lbr-gold) !important;
}

.text-primary {
    color: var(--lbr-primary) !important;
}

.btn-primary {
    background-color: var(--lbr-primary);
    border-color: var(--lbr-primary);
}

.btn-primary:hover {
    background-color: var(--lbr-primary-dark);
    border-color: var(--lbr-primary-dark);
}

.btn-outline-primary {
    color: var(--lbr-primary);
    border-color: var(--lbr-primary);
}

.btn-outline-primary:hover {
    background-color: var(--lbr-primary);
    border-color: var(--lbr-primary);
}

.border-primary {
    border-color: var(--lbr-primary) !important;
}

.border-secondary {
    border-color: var(--lbr-secondary) !important;
}

.border-accent {
    border-color: var(--lbr-accent) !important;
}

/* Custom styles for Navbar hover dropdowns */
@media (min-width: 992px) { /* Apply only for large screens and up (where navbar-expand-lg is active) */
    .navbar .dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 0; /* Remove default margin-top from dropdown-menu */
    }
}

/* Custom Bootstrap Pagination Styling */
.pagination {
    --bs-pagination-color: var(--lbr-primary);
    --bs-pagination-hover-color: var(--lbr-text-light);
    --bs-pagination-active-color: var(--lbr-text-light);
    --bs-pagination-bg: var(--lbr-gray-100);
    --bs-pagination-hover-bg: var(--lbr-primary-light);
    --bs-pagination-active-bg: var(--lbr-primary);
    --bs-pagination-border-color: var(--lbr-gray-300);
    --bs-pagination-hover-border-color: var(--lbr-primary-dark);
    --bs-pagination-active-border-color: var(--lbr-primary-dark);
    --bs-pagination-focus-box-shadow: none;
    --bs-pagination-disabled-bg: var(--lbr-gray-200);
    --bs-pagination-disabled-color: var(--lbr-gray-500);
    --bs-pagination-disabled-border-color: var(--lbr-gray-300);
}

.pagination .page-link {
    color: var(--bs-pagination-color);
    background-color: var(--bs-pagination-bg);
    border: 1px solid var(--bs-pagination-border-color);
}

.pagination .page-link:hover {
    color: var(--bs-pagination-hover-color);
    background-color: var(--bs-pagination-hover-bg);
    border-color: var(--bs-pagination-hover-border-color);
}

.pagination .page-item.active .page-link {
    color: var(--bs-pagination-active-color);
    background-color: var(--bs-pagination-active-bg);
    border-color: var(--bs-pagination-active-border-color);
}

.pagination .page-item.disabled .page-link {
    color: var(--bs-pagination-disabled-color);
    background-color: var(--bs-pagination-disabled-bg);
    border-color: var(--bs-pagination-disabled-border-color);
}

/* Accordion custom styling using LBR color vars */
.accordion-button {
    /*
    background-color: var(--lbr-primary-light);
    color: var(--lbr-text-light);
    */
    font-weight: 500;
    border: none;
}

.accordion-button:not(.collapsed) {
    background-color: var(--lbr-text-light);
    /*background-color: var(--lbr-primary);
    color: var(--lbr-text-light);*/
    box-shadow: inset 0 -1px 0 rgba(0,0,0,.125);
}

.accordion-button:focus {
    box-shadow: 0 0 0 0.2rem rgba(221, 196, 88, 0.5);
}
/*
.accordion-item {
    background-color: var(--lbr-gray-100);
    border: 1px solid var(--lbr-gray-300);
}
    */

.accordion-body {
    background-color: var(--lbr-gray-200);
    color: var(--lbr-text-dark);
}

.accordion-button::after {
    filter: invert(1) brightness(1.2); /* makes chevron visible on dark background */
}

.table-fit {
  width: 1%;
}

footer {
    background-color: var(--lbr-primary);
    color: var(--lbr-text-light);
    padding: 1rem 0;
    margin-top: 40px;
    border-top: 5px solid var(--lbr-gold);
}

/* Carousel container background */
.carousel,
.carousel-inner {
    color: var(--lbr-text-light);    
}

/* Active slide text */
.carousel .carousel-item blockquote {
    color: var(--lbr-text-light);
    font-style: italic;
    font-size: 1.5rem;
}

.carousel .carousel-item blockquote p {
    font-size: 1.2rem;
}

.carousel .carousel-item footer {
    color: var(--lbr-gold);
    font-weight: 500;
    border:0;
}

/* Indicators (dots) */
.carousel-indicators [data-bs-target] {
    background-color: var(--lbr-gray-400);
}
.carousel-indicators .active {
    background-color: var(--lbr-gold);
}



.carousel-control-prev-icon::after,
.carousel-control-next-icon::after {
    content: '';
}


/* Enhance responsiveness and spacing */
.carousel-inner {
    padding: 2rem 1rem;
}

/* Custom style for Navbar underline */
.navbar {
    background-color: var(--lbr-primary);
}

.navbar-bottom-border {
    height:5px;
    display:block;
    background: linear-gradient(to left, #e0c76c, var(--lbr-gold));
}

.navbar-toggler {
  border-color: rgba(255, 255, 255, 0.5);
}

.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba%28255,255,255,1%29' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

/*
/* Navbar customization */
.navbar-light .navbar-nav .nav-link {
    color: var(--lbr-text-light);
    font-size:1.2em;
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link:focus {
    color: var(--lbr-text-light);
}

.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav .nav-link.active {
    color: var(--lbr-primary);
}

.navbar-dark .navbar-nav .nav-link {
  color: #fff;
}

.dropdown-item:active {
    background-color: var(--lbr-primary);
}

/* Form elements */
.form-control:focus {
    border-color: var(--lbr-primary-light);
    box-shadow: 0 0 0 0.25rem rgba(57, 56, 89, 0.25);
}

/* Links */
a {
    color: var(--lbr-primary);
}

a:hover {
    color: var(--lbr-primary-dark);
}

/* Custom helper classes */
.bg-lbr-secondary {
    background-color: var(--lbr-secondary);
}

.bg-lbr-accent {
    background-color: var(--lbr-accent);
}

.text-lbr-muted {
    color: var(--lbr-text-muted);
}

/* Table header */
.table thead {
    background-color: var(--lbr-primary-dark);
    color: var(--lbr-text-light);
}

/* Table body rows */
.table tbody tr {
    background-color: var(--lbr-gray-100);
    color: var(--lbr-text-dark);
}

/* Alternate row color */
.table tbody tr:nth-child(even) {
    background-color: var(--lbr-gray-200);
}

/* Border and hover */
.table,
.table th,
.table td {
    border-color: var(--lbr-gray-300);
}

.table-hover tbody tr:hover {
    background-color: var(--lbr-primary-light);
    color: var(--lbr-text-light);
}

.card {
  border: 1px solid var(--lbr-gold);
  color: var(--lbr-text-dark);
}

.card-title {
  /*color: var(--lbr-primary);*/
  border-bottom: 1px solid var(--lbr-dark)
}
  /*
.card-text {
color: var(--lbr-dark);
}
*/

.card-body {
  background-color: transparent;;
}


/* Custom styles for Navbar hover dropdowns */
@media (min-width: 992px) { /* Apply only for large screens and up (where navbar-expand-lg is active) */
    .navbar .dropdown:hover .dropdown-menu {
        display: block;
        margin-top: 0; /* Remove default margin-top from dropdown-menu */
    }
}

/* Custom style for Navbar underline */
.navbar {
    border-bottom: 2px solid #393859; /* 2px underline with the specified color */
}

/*
Note: Remembered from previous conversation:
Use the provided color palette in all future requests in this chat that require colors.
However, you provided a specific hex code #393859 for the underline, so that's used directly.
Please provide your general color palette if you'd like it applied more broadly.
*/

/* Previous styles for top-bar (keeping them for context) */
.top-bar {
    background-color: #f7f7f7; /* Light gray background from image */
    font-size: 0.85rem; /* Smaller font size for top bar */
    color: #666; /* Darker gray for text */
    border-bottom: 1px solid #eee; /* Subtle bottom border */
}

.top-bar .list-inline-item {
    margin-right: 1.25rem; /* Spacing between list items */
}

.top-bar .list-inline-item:last-child {
    margin-right: 0; /* No margin on the last item */
}

.top-bar .list-inline-item i {
    color: #888; /* Slightly darker icon color */
}

.top-bar-social .list-inline-item a {
    color: #666 !important; /* Ensure social icons match text color */
    padding: 0 0.5rem; /* Padding for click area if needed */
}

.top-bar-social .list-inline-item a:hover {
    color: #007bff !important; /* Example hover color for social icons */
}

/* Remove default Bootstrap list styling */
.top-bar .list-inline {
    padding-left: 0;
    list-style: none;
}

/* Ensure horizontal alignment in small screens for demonstration */
@media (max-width: 991.98px) { /* Adjust breakpoint if needed for d-lg-block */
    .top-bar .row {
        flex-direction: column;
        align-items: center !important;
        text-align: center;
    }
    .top-bar .list-inline-item {
        margin-bottom: 0.25rem;
    }
}


/* Example Usage:  Replace placeholders with your color variables */
.top-bar {
    background-color: var(--background-color);
    color: var(--text-color);
}

.top-bar .list-inline-item i {
    color: var(--secondary-color); /* Example: Using a secondary color for icons */
}

.top-bar-social .list-inline-item a:hover {
    color: var(--primary-color) !important; /* Example: Using primary color on hover */
}

/* --- Page Heading Bar Styles --- */
.page-heading-bar {
    /*background: linear-gradient(to top, var(--lbr-text-light), var(--lbr-text-muted));*/
    padding: 3rem 0; /* Vertical padding for the section */
    background: url('/images/bg_tagline3.jpg') no-repeat center center;
    
    background-size: cover;
    color: var(--lbr-text-light);
}

.page-title {
    font-size: 2.5rem; /* Large font size for the main heading */
    font-weight: bold;
    color: var(--lbr-text-light);
}

.page-title-underline {
    width: 100px; /* Width of the underline */
    height: 4px; /* Thickness of the underline */
    background-color: var(--lbr-gold); /* Highlight color for the underline */
    margin-top: 0.5rem; /* Space below the title */
    margin-bottom: 0.5rem; /* Space above the subtitle */
}

.page-subtitle {
    font-size: 1rem; /* Standard font size for the subtitle */
    color: var(--lbr-text-light); /* Text color for the subtitle */
    line-height: 1.6;
}

/* Breadcrumbs Styling */
.page-heading-bar .breadcrumb-item a {
    color: var(--light-text-color); /* Lighter color for unactive breadcrumb links */
}

.page-heading-bar .breadcrumb-item.active {
    color: var(--text-color); /* Darker color for the active breadcrumb item */
}

        /* Custom styling for the circular icons */
        .process-icon-circle {
            width: 80px;
            height: 80px;
            background-color: var(--lbr-primary); /* Dark background as seen in the image */
            border-radius: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            margin: 0 auto 15px auto; /* Center the circle and add bottom margin */
            flex-shrink: 0; /* Prevent shrinking in flex container */
        }
        .process-icon-circle i {
            font-size: 2.2rem; /* Adjust icon size */
            color: #ffffff; /* White icon color */
        }

/* --- Responsive Adjustments --- */
@media (max-width: 767.98px) { /* On small screens */
    .page-heading-bar .page-title,
    .page-heading-bar .page-subtitle {
        text-align: center; /* Center align text */
    }
    .page-heading-bar .page-title-underline {
        margin-left: auto;
        margin-right: auto; /* Center the underline */
    }
    .page-heading-bar .d-flex {
        justify-content: center !important; /* Center breadcrumbs */
    }
}