body {
    /*font-size: 17px;*/
}

@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1300px;
    }
}

/*@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1200px;
    }
}*/

@media(min-width: 992px) {
    .main-content {
        padding-top: 0px;
    }
}

.text-justify {
    text-align: justify;
}

a.text-primary:focus, a.text-primary:hover {
    color: #0B3655 !important;
}

/* Bootstrap Component Overrides to force usage of variables */

/* Background Utilities with Opacity Support */
.bg-primary {background-color: var(--bs-primary) !important; }
.bg-secondary { background-color: var(--bs-secondary) !important; }
.bg-success { background-color: var(--bs-success) !important; }
.bg-info { background-color: var(--bs-info) !important; }
.bg-warning { background-color: var(--bs-warning) !important; }
.bg-danger { background-color: var(--bs-danger) !important; }
.bg-light { background-color: var(--bs-light) !important; }
.bg-dark { background-color: var(--bs-dark) !important; }

.bg-light-blue {background-color: var(--bs-light-blue) !important; }

.primary-bg-100 {
    background-color: var(--bs-primary-color-100);
}
.primary-bg-200 {
    background-color: var(--bs-primary-color-200);
}
.primary-bg-300 {
    background-color: var(--bs-primary-color-300);
}
.primary-bg-400 {
    background-color: var(--bs-primary-color-400);
}
.primary-bg-500 {
    background-color: var(--bs-primary-color-500);
}
.primary-bg-600 {
    background-color: var(--bs-primary-color-600);
}
.primary-bg-700 {
    background-color: var(--bs-primary-color-700);
}
.primary-bg-800 {
    background-color: var(--bs-primary-color-800);
}
.primary-bg-900 {
    background-color: var(--bs-primary-color-900);
}
.primary-bg-1000 {
    background-color: var(--bs-primary-color-1000);
}

.gray-bg-100 {
    background-color: var(--bs-gray-100);
}
.gray-bg-200 {
    background-color: var(--bs-gray-200);
}
.gray-bg-300 {
    background-color: var(--bs-gray-300);
}
.gray-bg-400 {
    background-color: var(--bs-gray-400);
}
.gray-bg-500 {
    background-color: var(--bs-gray-500);
}
.gray-bg-600 {
    background-color: var(--bs-gray-600);
}
.gray-bg-700 {
    background-color: var(--bs-gray-700);
}
.gray-bg-800 {
    background-color: var(--bs-gray-800);
}
.gray-bg-900 {
    background-color: var(--bs-gray-900);
}
.gray-bg-1000 {
    background-color: var(--bs-gray-1000);
}

/* Text Utilities with Opacity Support */
.text-primary { color: var(--bs-primary) !important; }
.text-secondary { color: var(--bs-secondary) !important; }
.text-success { color: var(--bs-success) !important; }
.text-info { color: var(--bs-info) !important; }
.text-warning { color: var(--bs-warning) !important; }
.text-danger { color: var(--bs-danger) !important; }
.text-light { color: var(--bs-light) !important; }
.text-dark { color: var(--bs-dark) !important; }
.text-gold { color: var(--bs-gold) !important; }
.text-orange { color: var(--bs-orange) !important; }
.text-yellow { color: var(--bs-yellow) !important; }
.text-teal { color: var(--bs-teal) !important; }

.text-navy-blue { color: var(--bs-navy-blue) !important; }
.text-orange { color: var(--bs-orange) !important; }
.text-light-blue { color: var(--bs-light-blue) !important; }

/* letter spacing */
.no-letter-spacing {letter-spacing:0px}
.letter-spacing-1 {letter-spacing:1px}
.letter-spacing-2 {letter-spacing:2px}
.letter-spacing-3 {letter-spacing:3px}
.letter-spacing-4 {letter-spacing:4px}
.letter-spacing-5 {letter-spacing:5px}
.letter-spacing-6 {letter-spacing:6px}
.letter-spacing-7 {letter-spacing:7px}
.letter-spacing-8 {letter-spacing:8px}
.letter-spacing-9 {letter-spacing:9px}
.letter-spacing-10 {letter-spacing:10px}
.letter-spacing-minus-1 {letter-spacing:-1px}
.letter-spacing-minus-2 {letter-spacing:-2px}
.letter-spacing-minus-3 {letter-spacing:-3px}
.letter-spacing-minus-4 {letter-spacing:-4px}
.letter-spacing-minus-5 {letter-spacing:-5px}
.letter-spacing-minus-6 {letter-spacing:-6px}
.letter-spacing-minus-7 {letter-spacing:-7px}
.letter-spacing-minus-8 {letter-spacing:-8px}
.letter-spacing-minus-9 {letter-spacing:-9px}
.letter-spacing-minus-10 {letter-spacing:-10px}

.btn {
    padding: 10px 20px;
    outline: 0;
    text-decoration: none;
    font-size: 15px;
    letter-spacing: 0;    
    font-weight: 500;
    border-radius: 0px;
    box-shadow: none;
    -webkit-transition: all .3s;
    transition: all .3s;
}

/* Buttons */
.btn-primary {
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-active-bg: var(--bs-primary);
    --bs-btn-active-border-color: var(--bs-primary);
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.btn-secondary {
    --bs-btn-bg: var(--bs-secondary);
    --bs-btn-border-color: var(--bs-secondary);
    --bs-btn-hover-bg: var(--bs-secondary);
    --bs-btn-hover-border-color: var(--bs-secondary);
    --bs-btn-active-bg: var(--bs-secondary);
    --bs-btn-active-border-color: var(--bs-secondary);
}

.btn-success {
    --bs-btn-bg: var(--bs-success);
    --bs-btn-border-color: var(--bs-success);
    --bs-btn-hover-bg: var(--bs-success);
    --bs-btn-hover-border-color: var(--bs-success);
}

.btn-danger {
    --bs-btn-bg: var(--bs-danger);
    --bs-btn-border-color: var(--bs-danger);
    --bs-btn-hover-bg: var(--bs-danger);
    --bs-btn-hover-border-color: var(--bs-danger);
}

.btn-warning {
    --bs-btn-bg: var(--bs-warning);
    --bs-btn-border-color: var(--bs-warning);
    --bs-btn-hover-bg: var(--bs-warning);
    --bs-btn-hover-border-color: var(--bs-warning);
}

.btn-info {
    --bs-btn-bg: var(--bs-info);
    --bs-btn-border-color: var(--bs-info);
    --bs-btn-hover-bg: var(--bs-info);
    --bs-btn-hover-border-color: var(--bs-info);
}

/* Outline Buttons */
.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-active-bg: var(--bs-primary);
}

/* List Groups */
.list-group-item.active {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
    color: #fff !important;
}



/* Navbar */
.navbar-dark .navbar-nav .nav-link.active {
    color: #fff;
}

.lead {
    font-size: calc(1.275rem + 0.3vw);
    font-weight: 400
}

@media(min-width: 1200px) {
    .lead {
        font-size:1.5rem
    }
}

.display-1 {
    font-weight: 600;
    line-height: 1.2;
    font-size: calc(1.625rem + 4.5vw)
}

@media(min-width: 1200px) {
    .display-1 {
        font-size:5rem
    }
}

.display-2 {
    font-weight: 600;
    line-height: 1.2;
    font-size: calc(1.575rem + 3.9vw)
}

@media(min-width: 1200px) {
    .display-2 {
        font-size:4.5rem
    }
}

.display-3 {
    font-weight: 600;
    line-height: 1.2;
    font-size: calc(1.525rem + 3.3vw)
}

@media(min-width: 1200px) {
    .display-3 {
        font-size:4rem
    }
}

.display-4 {
    font-weight: 600;
    line-height: 1.2;
    font-size: calc(1.475rem + 2.7vw)
}

@media(min-width: 1200px) {
    .display-4 {
        font-size:3.5rem
    }
}

.display-5 {
    font-weight: 600;
    line-height: 1.2;
    font-size: calc(1.425rem + 2.1vw)
}

@media(min-width: 1200px) {
    .display-5 {
        font-size:3rem
    }
}

.display-6 {
    font-weight: 600;
    line-height: 1.2;
    font-size: calc(1.3875rem + 1.65vw)
}

@media(min-width: 1200px) {
    .display-6 {
        font-size:2.5rem
    }
}

/***************************************
FONT WEIGHT
***************************************/

.font-weight-100 {
    font-weight: 100
}

.font-weight-200 {
    font-weight: 200
}

.font-weight-300 {
    font-weight: 300
}

.font-weight-400 {
    font-weight: 400
}

.font-weight-500 {
    font-weight: 500
}

.font-weight-600 {
    font-weight: 600
}

.font-weight-700 {
    font-weight: 700
}

.font-weight-800 {
    font-weight: 800
}

.font-weight-900 {
    font-weight: 900
}

/***************************************
BG Opacity
***************************************/

.bg-opacity-0 {
    opacity: 0;
}

.bg-opacity-5 {
    opacity: 0.05;
}

.bg-opacity-10 {
    opacity: 0.1;
}

.bg-opacity-20 {
    opacity: 0.2;
}

.bg-opacity-30 {
    opacity: 0.3;
}

.bg-opacity-40 {
    opacity: 0.4;
}

.bg-opacity-50 {
    opacity: 0.5;
}

.bg-opacity-60 {
    opacity: 0.6;
}

.bg-opacity-70 {
    opacity: 0.7;
}

.bg-opacity-80 {
    opacity: 0.8;
}

.bg-opacity-90 {
    opacity: 0.9;
}

.bg-opacity-95 {
    opacity: 0.95;
}

.bg-opacity-100 {
    opacity: 1;
}

/* ===================================
    Background image
====================================== */

.parallax {position: relative; background-size: cover; overflow: hidden; background-attachment: fixed  }
.fix-background {position: relative;  background-size: cover; animation-duration: 0s; animation-fill-mode: none; -webkit-animation-duration: 0s;  -webkit-animation-fill-mode: none; -moz-animation-duration: 0s;  -moz-animation-fill-mode: none; -ms-animation-duration: 0s; -ms-animation-fill-mode: none; -o-animation-fill-mode: none; overflow: hidden; background-position: center center; background-repeat: no-repeat; background-attachment: fixed }
.cover-background {position: relative !important; background-size: cover !important; overflow: hidden !important; background-position: center !important; background-repeat: no-repeat !important;}
.background-size-inherit {background-size: inherit}
.background-size-100{background-size: 100% auto !important}
.background-attachment-inherit {background-attachment: inherit}
.background-position-center {background-position: center center !important;}
.background-position-left {background-position: left center !important;}
.background-position-right {background-position: right center !important;}
.background-position-left-bottom {background-position: left bottom !important;}
.background-position-right-bottom {background-position: right bottom !important;}
.background-position-top {background-position: center top !important;}
.background-position-bottom {background-position: center bottom !important;}
.up-down-ani { display:table; position: relative; -webkit-animation-name: up-down-animation; -webkit-animation-duration:.7s; -webkit-animation-timing-function: linear; -webkit-animation-delay:.7s; -webkit-animation-iteration-count: infinite; -webkit-animation-direction: alternate; -moz-animation-name: up-down-animation; -moz-animation-duration:.7s; -moz-animation-timing-function: linear; -moz-animation-delay:.7s; -moz-animation-iteration-count: infinite; -ms-animation-name: up-down-animation; -ms-animation-duration:.7s; -ms-animation-timing-function: linear; -ms-animation-delay:.7s; -ms-animation-iteration-count: infinite; -ms-animation-direction: alternate; -o-animation-direction: alternate; -o-animation-name: up-down-animation; -o-animation-duration:.7s; -o-animation-timing-function: linear; -o-animation-delay:.7s; -o-animation-iteration-count: infinite; -o-animation-direction: alternate; animation-direction: alternate; animation-name: up-down-animation; animation-duration:.7s; animation-timing-function: linear; animation-delay:.7s; animation-iteration-count: infinite; animation-direction: alternate; margin:0 auto; }
.background-position-x-50 {background-position-x: 50% !important;}

.hexagon-shape-bg::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='64'%3E%3Cpolygon points='28,2 54,16 54,48 28,62 2,48 2,16' fill='none' stroke='%231B6B3D' stroke-width='1'/%3E%3C/svg%3E");
    background-size: 56px 64px;
    background-repeat: repeat;
    opacity: 0.13;
    pointer-events: none;
    z-index: 0;
}


.square-shape-bg::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, .03) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .03) 1px, transparent 1px);
    background-size: 48px 48px;
}

.angle-line-shape::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Cline x1='0' y1='20' x2='20' y2='0' stroke='%231B6B3D' stroke-width='1'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-repeat: repeat;
    opacity: 0.045;
    pointer-events: none;
    z-index: 0;
}

.circle-shape-bg::after {
    content: '';
    position: absolute;
    width: 600px; height: 600px;
    border-radius: 50%;
    border: 60px solid rgba(255,255,255,.03);
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

/*************************************
Anchor will cover the whole item by default
For some effects it will show as a button 
*****************************************/

a.link-absolute {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
a.link-absolute {
    z-index: 1000;
    text-indent: 200%;
    white-space: nowrap;
    font-size: 0;
    opacity: 0;
}

.card-link {
    cursor: pointer;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}



/******************************************** 
        Form Controls 
********************************************/
.form-label, .form-check-label {
    font-weight: 500;
    font-size: 14px; 
}
.form-control, form-select {
    border: 1px solid #A4A4A4;
    font-size: 14px;
    line-height: 26px;
    border-radius: 2px;
    color: #212529;
    text-align: left;
    padding: 0.5rem 1.2rem;
}

.form-control:focus {
    border-color: #0B3655;
    box-shadow: 0 0 0 0.25rem rgba(31, 95, 59, 0.25);
}

.form-check-input:checked {
    background-color: #0B3655;
    border-color: #0B3655;
}

.form-control:focus {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    border-color: var(--bs-primary);
    outline: 0;
    box-shadow: 0 0.1rem 0.3rem 0 rgba(var(--bs-primary-rgb), 0.2), 0 0 0 1px var(--bs-primary);
}

.form-control::placeholder {
    color: var(--bs-gray-500);; /* Replace with your desired color */
    opacity: 1;    /* Required for Firefox to display full color opacity */
}


.form-check {
    display: block;
    min-height: 1.4rem;
    padding-left: 2em;
    margin-bottom: 0.125rem;
}
.form-check .form-check-input {
    float: left;
    margin-left: -2em;
}

.form-check-reverse {
    padding-right: 2em;
    padding-left: 0;
    text-align: right;
}
.form-check-reverse .form-check-input {
    float: right;
    margin-right: -2em;
    margin-left: 0;
}

/*  CHECKBOX    */
.form-check-input {
    --bs-form-check-bg: var(--bs-body-bg);
    flex-shrink: 0;
    width: 1.5em;
    height: 1.5em;
    margin-top: 0.05em;
    vertical-align: top;
    appearance: none;
    background-color: var(--bs-form-check-bg);
    background-image: var(--bs-form-check-bg-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid #A4A4A4;
    print-color-adjust: exact;
}
.form-check-input {
    border: 1px solid #A4A4A4;
    background-color: #ffffff;
}
.form-check-input[type=checkbox] {
    border-radius: var(--bs-border-radius);
}
.form-check-input[type=radio] {
    border-radius: 50%;
}
.form-check-input:active {
    filter: brightness(90%);
}
.form-check-input:focus {
    border-color: var(--bs-primary);
    outline: 0;
    box-shadow: none;
}
.form-check-input:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}
.form-check-input:checked[type=checkbox] {
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M5 10l3 3 7-7'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23ffffff'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
    cursor: default;
    opacity: 0.5;
}

.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}


/*  Form Validation */
.error, .help-block,
.invalid-feedback {
    width: 100%;
    margin-top: 2px;
    font-size: .875em;
    color: #e43f52;
}


/* Remove valid and invalid icons from inputs and textareas */
.was-validated .form-control:valid, 
.was-validated .form-check-input:valid, 
.form-control.is-valid,
.form-check-input.is-valid,
.was-validated .form-control:invalid,
.form-control.is-invalid {
    border-color: #0B3655;
    background-image: none !important;
    padding-right: 0.75rem !important; /* Resets right padding to standard Bootstrap layout */
    box-shadow: none;
}

/* Remove valid and invalid icons from dropdown selects */
.was-validated .form-select:valid, 
.was-validated .form-check-input:valid, 
.form-select.is-valid,
.form-check-input.is-valid,
.was-validated .form-select:invalid,
.form-select.is-invalid {
    border-color: #0B3655;
    background-image: none !important;
    box-shadow: none;
}

.form-check-input.is-valid~.form-check-label, .was-validated .form-check-input:valid~.form-check-label {
    color: inherit;
}

.ui-timepicker-standard a {
    border: 0px solid transparent;
    border-bottom: 1px solid #333;
    padding: 5px 6px;
}


.iti { width: 100%; }
/* Force the flag picker to align to the center or match the height of your input */
.iti__selected-flag {
    height: 100% !important;
}

