*, *:before, *:after,
*::before, *::after {
    box-sizing: border-box;
    scroll-behavior: smooth;
}

html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

html {
    margin: 0;
    padding: 0;
    position: relative;
    font-family: 'Kumbh Sans', sans-serif !important;
    font-optical-sizing: auto;
}

body {
    background: #000000;
    min-height: 100vh;
    font-family: 'Kumbh Sans', sans-serif !important;
    font-optical-sizing: auto;
}

[data-bs-theme="dark"] body {
    background: #0a0a0a;
}

.content {
    min-height: 100vh;
}

.form-control:focus {
    outline: none;
    box-shadow: none;
}

.field-validation-error {
    font-size: 10pt;
    color: red;
    padding-left: 6px;
}

[data-bs-theme="dark"] .field-validation-error {
    color: #ff6b6b;
}

/* _Layout.cshtml css */

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.border-top {
    border-top: 1px solid #e5e5e5;
}

[data-bs-theme="dark"] .border-top {
    border-top: 1px solid #495057;
}

.border-bottom {
    border-bottom: 1px solid #e5e5e5;
}

[data-bs-theme="dark"] .border-bottom {
    border-bottom: 1px solid #495057;
}

.box-shadow {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

[data-bs-theme="dark"] .box-shadow {
    box-shadow: 0 .25rem .75rem rgba(255, 255, 255, .05);
}

button.accept-policy {
    font-size: 1rem;
    line-height: inherit;
}

/* Remove bootstrap outline and box shadow */
.form-control:focus,
.btn:focus {
    box-shadow: none;
}

/* Optionally, you can also remove the outline */
.form-control:focus,
.btn:focus {
    outline: none;
}

.object-fit-contain {
    object-fit: contain;
}

.object-fit-cover {
    object-fit: cover;
}

.object-fit-fill {
    object-fit: fill;
}

.responsive-img-contain {
    min-width: 100%;
    min-height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.responsive-img-cover {
    min-width: 100%;
    min-height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
}

.aspect-ratio-1-1 {
    aspect-ratio: 1/1;
}

.aspect-ratio-4-3 {
    aspect-ratio: 4/3;
}

.aspect-ratio-16-9 {
    aspect-ratio: 16/9;
}

/* home page counter css */
.counter-box, .counter-item, .counter-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    text-align: center;
}

.counter-box {
    justify-content: flex-start;
    margin-bottom: 16px;
}

.counter-item {
    background: conic-gradient(from 180deg at 50% 81.93%, #298dff 0deg, #45f7f9 190.79998970031738deg, #fbfefe 360deg);
    border-radius: 50%;
    height: 238px;
    width: 238px;
}

[data-bs-theme="dark"] .counter-item {
    background: conic-gradient(from 180deg at 50% 81.93%, #1a73cc 0deg, #2dd4d6 190.79998970031738deg, #c8e6e6 360deg);
}

.counter-content {
    background: rgba(255, 255, 255, 1);
    border-radius: 50%;
    height: 220px;
    width: 220px;
}

[data-bs-theme="dark"] .counter-content {
    background: #1a1a1a;
}

.counter-icon {
    margin-bottom: 12px;
}

[data-bs-theme="dark"] .counter-icon svg path {
    fill: #e9ecef;
}

.counter-data, .counter-title {
    text-align: center;
    font-family: "Kumbh Sans";
    font-style: normal;
}

.counter-data {
    color: #181821;
    font-size: 64px;
    font-weight: 200;
    line-height: 112%;
    letter-spacing: -1.92px;
}

[data-bs-theme="dark"] .counter-data {
    color: #f8f9fa;
}

.counter-title {
    color: #ddd;
    font-size: 24px;
    font-weight: 500;
    line-height: 110%;
    width: 289px;
}

[data-bs-theme="dark"] .counter-title {
    color: #adb5bd;
}

@media only screen and (max-width: 991px) {
    .counter-item {
        height: 154.46px;
        width: 154.46px;
    }

    .counter-content {
        height: 142.78px;
        width: 142.78px;
    }

    .counter-data {
        font-size: 42px;
        letter-spacing: -1.26px;
    }

    .counter-title {
        width: 187.562px;
        font-size: 16px;
    }
}

/* contact us form - autocomplete */
.autocomplete {
    position: relative;
}

.autocomplete-items {
    position: absolute;
    border: 1px solid #d4d4d4;
    border-bottom: none;
    border-top: none;
    z-index: 99;
    top: 100%;
    left: 0;
    right: 0;
}

[data-bs-theme="dark"] .autocomplete-items {
    border: 1px solid #495057;
}

.autocomplete-items div {
    padding: 10px;
    cursor: pointer;
    background-color: #fff;
    border-bottom: 1px solid #d4d4d4;
}

[data-bs-theme="dark"] .autocomplete-items div {
    background-color: #2b3035;
    border-bottom: 1px solid #495057;
    color: #f8f9fa;
}

.autocomplete-items div:hover {
    background-color: #e9e9e9;
}

[data-bs-theme="dark"] .autocomplete-items div:hover {
    background-color: #3d4349;
}

.autocomplete-active {
    background-color: DodgerBlue !important;
    color: #ffffff;
}

[data-bs-theme="dark"] .autocomplete-active {
    background-color: #0d6efd !important;
}

section.contact-us input,
section.contact-us textarea {
    color: #181821;
    font-family: "Kumbh Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
}

[data-bs-theme="dark"] section.contact-us input,
[data-bs-theme="dark"] section.contact-us textarea {
    color: #f8f9fa;
    background-color: #2b3035;
    border-color: #495057;
}

section.contact-us input::placeholder,
section.contact-us textarea::placeholder {
    color: #778;
    font-family: "Kumbh Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
}

[data-bs-theme="dark"] section.contact-us input::placeholder,
[data-bs-theme="dark"] section.contact-us textarea::placeholder {
    color: #adb5bd;
}

section.contact-us .submit-btn {
    position: relative;
    margin-bottom: -68px;
}

section.contact-us .submit-btn button {
    border-radius: 50px;
    background: #c0ffeb;
    color: #000000;
    text-align: center;
    font-family: "Kumbh Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    text-transform: uppercase;
    width: 100%;
    padding: 8px 0;
}

[data-bs-theme="dark"] section.contact-us .submit-btn button {
    background: #c0ffeb;
    color: #000000;
}

[data-bs-theme="dark"] section.contact-us .submit-btn button:hover {
    background: #1aa179;
}

section.contact-us .contact-method-icon .icon {
    padding: 6px;
    transition: all .25s;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0);
    filter: grayscale(100%);
}

section.contact-us .contact-method-icon .icon:hover {
    cursor: pointer;
}

section.contact-us .contact-method-icon .icon.active {
    background: #DEDEE8;
    filter: grayscale(0);
}

[data-bs-theme="dark"] section.contact-us .contact-method-icon .icon {
    opacity: 0.7;
}

[data-bs-theme="dark"] section.contact-us .contact-method-icon .icon:hover {
    opacity: 0.9;
}

[data-bs-theme="dark"] section.contact-us .contact-method-icon .icon.active {
    background: #495057;
    filter: grayscale(0);
    opacity: 1;
}

/* subtle blur + glassy background for the navbar */
.navbar.fixed-top {
    backdrop-filter: saturate(110%) blur(6px);
    border: none !important;
}

[data-bs-theme="dark"] .navbar.fixed-top {
    backdrop-filter: saturate(110%) blur(8px) brightness(0.9);
}

/* reduce the default navbar-brand image jump on small screens */
.navbar-brand img {
    display: inline-block;
    vertical-align: middle;
}

/* Additional dark mode form controls */
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
    background-color: #2b3035;
    border-color: #495057;
    color: #f8f9fa;
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
    background-color: #2b3035;
    border-color: #86b7fe;
    color: #f8f9fa;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

[data-bs-theme="dark"] .form-control:disabled,
[data-bs-theme="dark"] .form-select:disabled {
    background-color: #212529;
    opacity: 0.5;
}

[data-bs-theme="dark"] .input-group-text {
    background-color: #2b3035;
    border-color: #495057;
    color: #f8f9fa;
}

/* Dark mode card styling */
[data-bs-theme="dark"] .card {
    background-color: #212529;
    border-color: #495057;
}

[data-bs-theme="dark"] .bg-white {
    background-color: #212529 !important;
}

[data-bs-theme="dark"] .shadow-sm {
    box-shadow: 0 .125rem .25rem rgba(255, 255, 255, .075) !important;
}

/* Dark mode label text */
[data-bs-theme="dark"] label {
    color: #f8f9fa;
}