/*Start Global*/
@font-face {
    font-family: 'Alexandria-Medium';
    src: url('../fonts/alex/Alexandria-Medium.ttf') format('truetype');
}

@font-face {
    font-family: 'Alexandria-Regular';
    src: url('../fonts/alex/Alexandria-Regular.ttf') format('truetype');
}

body {
    font-family: 'Alexandria-Regular', sans-serif;
    line-height: 1.6;
    background-color: #ffffff;
    overflow-x: hidden;
    font-size: 16px;
    color: #666;
}

body:before {
    content: "";
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.2);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

body.offcanvas-menu:before {
    opacity: 1;
    visibility: visible;
}

.text-black {
    color: #000000 !important;
}

.text-secondary {
    color: #00aeff !important;
}

.bg-primary-light {
    background-color: rgba(19, 106, 213, 0.05);
}

.bg-secondary-light {
    background-color: rgba(0, 174, 255, 0.05);
}

a {
    color: #136ad5;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

a:hover {
    color: #136ad5;
    text-decoration: none;
}

::-moz-selection {
    background: #000000;
    color: #ffffff;
}

::selection {
    background: #000000;
    color: #ffffff;
}

.text-primary {
    color: #136ad5 !important;
}

a.text-primary {
    color: #136ad5 !important;
}

a.text-primary:hover {
    color: #136ad5 !important;
}

/* Improved contrast for muted text - WCAG AA compliant */
.text-muted {
    color: #4a5568 !important;
    /* Darker than Bootstrap default #6c757d */
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4 {
    font-family: "Alexandria-Medium", serif;
    color: black;
}

.btn {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-right: 30px;
    padding-left: 30px;
    border-radius: 30px;
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: .05rem;
}

.btn:active,
.btn:focus {
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn.btn-primary {
    background: #136ad5;
    border-color: #136ad5;
}

.btn.btn-primary:hover {
    border-color: #1573e8;
    background: #1573e8;
}

.btn.btn-secondary {
    background: #00aeff;
    border-color: #00aeff;
}

.btn.btn-secondary:hover {
    border-color: #14b4ff;
    background: #14b4ff;
}

.btn.btn-sm {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 15px;
    padding-left: 15px;
}

.btn.btn-outline-primary {
    border-color: #136ad5;
    color: #136ad5;
}

.btn.btn-outline-primary:hover {
    background: #136ad5;
    color: #ffffff;
}

.form-control,
.custom-select {
    border: none;
    font-size: 16px;
    height: 55px;
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 7px;
    color: #000000;
}

.form-control:active,
.form-control:focus,
.custom-select:active,
.custom-select:focus {
    color: #000000;
    border-color: #136ad5;
    -webkit-box-shadow: none;
    box-shadow: none;
    background: transparent;
}

.form-control::-webkit-input-placeholder,
.custom-select::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: rgba(0, 0, 0, 0.5);
}

.form-control::-moz-placeholder,
.custom-select::-moz-placeholder {
    /* Firefox 19+ */
    color: rgba(0, 0, 0, 0.5);
}

.form-control:-ms-input-placeholder,
.custom-select:-ms-input-placeholder {
    /* IE 10+ */
    color: rgba(0, 0, 0, 0.5);
}

.form-control:-moz-placeholder,
.custom-select:-moz-placeholder {
    /* Firefox 18- */
    color: rgba(0, 0, 0, 0.5);
}

.gutter-v1 {
    margin-left: -20px;
    margin-right: -20px;
}

@media (max-width: 991.98px) {
    .gutter-v1 {
        margin-right: -15px;
        margin-left: -15px;
    }
}

.gutter-v1>.col,
.gutter-v1>[class*="col-"] {
    padding-left: 20px;
    padding-right: 20px;
}

@media (max-width: 991.98px) {

    .gutter-v1>.col,
    .gutter-v1>[class*="col-"] {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.gutter-v2 {
    margin-left: -5px;
    margin-right: -5px;
}

@media (max-width: 991.98px) {
    .gutter-v2 {
        margin-right: -15px;
        margin-left: -15px;
    }
}

.gutter-v2>.col,
.gutter-v2>[class*="col-"] {
    padding-left: 5px;
    padding-right: 5px;
}

@media (max-width: 991.98px) {

    .gutter-v2>.col,
    .gutter-v2>[class*="col-"] {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.gutter-v3 {
    margin-left: -40px;
    margin-right: -40px;
}

@media (max-width: 991.98px) {
    .gutter-v3 {
        margin-right: -15px;
        margin-left: -15px;
    }
}

.gutter-v3>.col,
.gutter-v3>[class*="col-"] {
    padding-left: 40px;
    padding-right: 40px;
}

@media (max-width: 991.98px) {

    .gutter-v3>.col,
    .gutter-v3>[class*="col-"] {
        padding-left: 15px;
        padding-right: 15px;
    }
}

.spinner-border {
    color: #136ad5;
}

/*PRELOADING------------ */
#overlayer {
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 7100;
    background: #ffffff;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
}

.loader {
    z-index: 7700;
    position: fixed;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

.top-bar a {
    color: #ffffff;
}

.logo {
    font-size: 24px;
    color: #ffffff;
    font-weight: 700;
    right: 15px;
}

@media (max-width: 991.98px) {
    .logo {
        right: 20px;
        top: 70px;
    }
}

.logo:hover {
    color: #ffffff;
}

.menu-absolute {
    position: absolute !important;
}

.btn-book {
    position: absolute;
    left: 15px;
    margin-top: -2px;
}

@media (max-width: 991.98px) {
    .btn-book {
        left: 60px;
    }
}

.site-nav {
    position: absolute;
    width: 100%;
    z-index: 9;
    top: 0;
}

.site-nav a {
    position: relative;
    z-index: 9;
    cursor: pointer;
}

.site-nav {
    padding-top: 3px;
    padding-bottom: 1px;
}

.site-nav h1 {
    margin: 0;
    padding: 0;
    font-size: 24px;
}

.site-nav .site-navigation .site-menu {
    margin-bottom: 0;
}

.site-nav .site-navigation .site-menu>li {
    display: inline-block;
}

.site-nav .site-navigation .site-menu>li>a {
    font-size: 14px;
    padding: 10px 15px;
    display: inline-block;
    text-decoration: none !important;
    color: rgba(255, 255, 255, 0.5);
    position: relative;
}

.site-nav .site-navigation .site-menu>li>a:hover {
    color: #ffffff;
}

.site-nav .site-navigation .site-menu>li.cta-button a {
    padding: 5px 22px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    color: #000000;
    border-radius: 30px;
}

.site-nav .site-navigation .site-menu>li.cta-button a:hover {
    color: #ffffff;
    background: #ffffff;
    border-color: #ffffff;
}

.site-nav .site-navigation .site-menu>li.cta-button.active a {
    color: #000000;
    background: #ffffff;
    border-color: #ffffff;
}

.site-nav .site-navigation .site-menu>li.active>a {
    color: #ffffff;
}

.site-nav .site-navigation .site-menu .has-children {
    position: relative;
}

.site-nav .site-navigation .site-menu .has-children>a {
    position: relative;
    padding-left: 20px;
}

.site-nav .site-navigation .site-menu .has-children>a:before {
    position: absolute;
    content: "\e313";
    font-size: 14px;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: 'icomoon';
}

.site-nav .site-navigation .site-menu .has-children .dropdown {
    visibility: hidden;
    opacity: 0;
    top: 100%;
    z-index: 999;
    position: absolute;
    text-align: right;
    -webkit-box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.1);
    padding: 20px 0;
    margin-top: 20px;
    margin-right: 0px;
    background: #ffffff;
    -webkit-transition: 0.2s 0s;
    -o-transition: 0.2s 0s;
    transition: 0.2s 0s;
}

.site-nav .site-navigation .site-menu .has-children .dropdown.arrow-top {
    position: absolute;
}

.site-nav .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
    display: none;
    bottom: 100%;
    right: 20%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

.site-nav .site-navigation .site-menu .has-children .dropdown.arrow-top:before {
    display: none;
    border-color: rgba(136, 183, 213, 0);
    border-bottom-color: #ffffff;
    border-width: 10px;
    margin-right: -10px;
}

.site-nav .site-navigation .site-menu .has-children .dropdown a {
    font-size: 14px;
    text-transform: none;
    letter-spacing: normal;
    -webkit-transition: 0s all;
    -o-transition: 0s all;
    transition: 0s all;
    color: #000000;
}

.site-nav .site-navigation .site-menu .has-children .dropdown .active {
    color: #136ad5 !important;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li {
    list-style: none;
    padding: 0;
    margin: 0;
    min-width: 180px;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li>a {
    padding: 5px 20px;
    display: block;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li>a:hover {
    color: #136ad5;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li.active>a {
    color: #136ad5;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children>a:before {
    content: "\e315";
    left: 20px;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children>.dropdown,
.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children>ul {
    right: 100%;
    top: 0;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children>.dropdown li a:hover,
.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children>ul li a:hover {
    color: #136ad5;
}

.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children:hover>a,
.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children:active>a,
.site-nav .site-navigation .site-menu .has-children .dropdown>li.has-children:focus>a {
    color: #136ad5;
}

.site-nav .site-navigation .site-menu .has-children:hover>a,
.site-nav .site-navigation .site-menu .has-children:focus>a,
.site-nav .site-navigation .site-menu .has-children:active>a {
    color: #ffffff;
}

.site-nav .site-navigation .site-menu .has-children:hover,
.site-nav .site-navigation .site-menu .has-children:focus,
.site-nav .site-navigation .site-menu .has-children:active {
    cursor: pointer;
}

.site-nav .site-navigation .site-menu .has-children:hover>.dropdown,
.site-nav .site-navigation .site-menu .has-children:focus>.dropdown,
.site-nav .site-navigation .site-menu .has-children:active>.dropdown {
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
    margin-top: 0px;
    visibility: visible;
    opacity: 1;
}

.site-nav.dark a {
    color: #000000;
}

.site-nav.dark .site-navigation .site-menu>li>a {
    color: rgba(0, 0, 0, 0.5);
}

.site-nav.dark .site-navigation .site-menu>li>a:hover {
    color: #000000;
}

.site-nav.dark .site-navigation .site-menu>li.active>a {
    color: #000000;
}

.site-nav.dark .site-navigation .site-menu>li.has-children.dropdown:hover>a,
.site-nav.dark .site-navigation .site-menu>li.has-children.dropdown:focus>a,
.site-nav.dark .site-navigation .site-menu>li.has-children.dropdown:active>a {
    color: #136ad5;
}

.site-nav.dark .site-navigation .site-menu>li.has-children:hover>a,
.site-nav.dark .site-navigation .site-menu>li.has-children:focus>a,
.site-nav.dark .site-navigation .site-menu>li.has-children:active>a {
    color: #000000;
}

.site-mobile-menu-close {
    display: block;
    position: relative;
    height: 30px;
    width: 30px;
    z-index: 99;
    cursor: pointer;
    top: -20px;
}

.site-mobile-menu-close>span {
    cursor: pointer;
    display: block;
    position: absolute;
    height: 30px;
    width: 30px;
}

.site-mobile-menu-close>span:before,
.site-mobile-menu-close>span:after {
    position: absolute;
    content: "";
    width: 2px;
    height: 30px;
    background: #000000;
}

.site-mobile-menu-close>span:before {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.site-mobile-menu-close>span:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.site-mobile-menu {
    width: 300px;
    position: fixed;
    left: 0;
    z-index: 2000;
    padding-top: 20px;
    background: #ffffff;
    height: calc(100vh);
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
    -o-transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
    transition: 0.8s all cubic-bezier(0.23, 1, 0.32, 1);
}

.offcanvas-menu .site-mobile-menu {
    -webkit-box-shadow: 10px 0 20px -10px rgba(0, 0, 0, 0.1);
    box-shadow: 10px 0 20px -10px rgba(0, 0, 0, 0.1);
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
}

.site-mobile-menu .site-mobile-menu-header {
    width: 100%;
    float: right;
    padding-right: 20px;
    padding-left: 20px;
}

.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close {
    float: left;
    margin-top: 8px;
}

.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close span {
    font-size: 30px;
    display: inline-block;
    padding-right: 10px;
    padding-left: 0px;
    line-height: 1;
    cursor: pointer;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo {
    float: right;
    margin-top: 10px;
    margin-right: 0px;
}

.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a {
    display: inline-block;
    text-transform: uppercase;
}

.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a img {
    max-width: 70px;
}

.site-mobile-menu .site-mobile-menu-header .site-mobile-menu-logo a:hover {
    text-decoration: none;
}

.site-mobile-menu .site-mobile-menu-body {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    position: relative;
    padding: 0 20px 20px 20px;
    height: calc(100vh - 52px);
    padding-bottom: 150px;
}

.site-mobile-menu .site-nav-wrap {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
}

.site-mobile-menu .site-nav-wrap a {
    padding: 5px 20px;
    display: block;
    position: relative;
    color: #000000;
}

.site-mobile-menu .site-nav-wrap a:hover {
    color: #136ad5;
}

.site-mobile-menu .site-nav-wrap li {
    position: relative;
    display: block;
}

.site-mobile-menu .site-nav-wrap li.active>a {
    color: #136ad5;
}

.site-mobile-menu .site-nav-wrap .arrow-collapse {
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 20;
    width: 36px;
    height: 36px;
    text-align: center;
    cursor: pointer;
    border-radius: 50%;
    border: 1px solid #f8f9fa;
}

.site-mobile-menu .site-nav-wrap .arrow-collapse:before {
    font-size: 14px;
    z-index: 20;
    font-family: "icomoon";
    content: "\e313";
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%) rotate(180deg);
    -ms-transform: translate(50%, -50%) rotate(180deg);
    transform: translate(50%, -50%) rotate(180deg);
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.site-mobile-menu .site-nav-wrap .arrow-collapse.collapsed:before {
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

.site-mobile-menu .site-nav-wrap>li {
    display: block;
    position: relative;
    float: right;
    width: 100%;
}

.site-mobile-menu .site-nav-wrap>li>a {
    padding-right: 20px;
    font-size: 14px;
}

.site-mobile-menu .site-nav-wrap>li>ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.site-mobile-menu .site-nav-wrap>li>ul>li {
    display: block;
}

.site-mobile-menu .site-nav-wrap>li>ul>li>a {
    padding-right: 40px;
    font-size: 14px;
}

.site-mobile-menu .site-nav-wrap>li>ul>li>ul {
    padding: 0;
    margin: 0;
}

.site-mobile-menu .site-nav-wrap>li>ul>li>ul>li {
    display: block;
}

.site-mobile-menu .site-nav-wrap>li>ul>li>ul>li>a {
    font-size: 14px;
    padding-right: 60px;
}

.sticky-wrapper {
    position: relative;
    z-index: 100;
    width: 100%;
}

.sticky-wrapper .site-navbar {
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.sticky-wrapper .site-navbar .site-menu-toggle {
    color: var(--sticky-nav-text, #000000);
}

.sticky-wrapper .site-navbar .site-logo a {
    color: var(--sticky-nav-text, #000000);
}

.sticky-wrapper .site-navbar .site-menu>li>a {
    color: var(--sticky-nav-text, rgba(0, 0, 0, 0.8)) !important;
}

.sticky-wrapper .site-navbar .site-menu>li>a:hover,
.sticky-wrapper .site-navbar .site-menu>li>a.active {
    color: var(--sticky-nav-hover, #000000) !important;
}

.sticky-wrapper.is-sticky .burger:before,
.sticky-wrapper.is-sticky .burger span,
.sticky-wrapper.is-sticky .burger:after {
    background: #000000;
    -webkit-transition: .0s all ease;
    -o-transition: .0s all ease;
    transition: .0s all ease;
}

.sticky-wrapper.is-sticky .site-navbar {
    background: var(--sticky-nav-bg, #ffffff);
    border-bottom: 1px solid var(--border-color, transparent);
    -webkit-box-shadow: -4px 0 20px -5px rgba(0, 0, 0, 0.1);
    box-shadow: -4px 0 20px -5px rgba(0, 0, 0, 0.1);
}

.sticky-wrapper.is-sticky .site-navbar .site-logo a {
    color: var(--sticky-nav-text, #000000) !important;
}

.sticky-wrapper.is-sticky .site-navbar .site-menu>li>a {
    color: var(--sticky-nav-text, #000000) !important;
}

.sticky-wrapper.is-sticky .site-navbar .site-menu>li>a:hover,
.sticky-wrapper.is-sticky .site-navbar .site-menu>li>a.active {
    color: var(--sticky-nav-hover, #136ad5) !important;
}

.sticky-wrapper.is-sticky .site-navbar .site-menu>li.active a {
    color: var(--sticky-nav-hover, #136ad5) !important;
}

/* Dark mode sticky navbar variables */
body.dark-mode {
    --sticky-nav-bg: #0f172a;
    --sticky-nav-text: #e2e8f0;
    --sticky-nav-hover: #60a5fa;
}

.sticky-wrapper .shrink {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}

.sticky-nav {
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    background: transparent;
}

.sticky-wrapper.is-sticky .sticky-nav {
    padding-top: 10px;
    padding-bottom: 10px;
    background: white;
    -webkit-box-shadow: -4px 0 20px -5px rgba(0, 0, 0, 0.1);
    box-shadow: -4px 0 20px -5px rgba(0, 0, 0, 0.1);
    -webkit-backdrop-filter: blur(1rem);
    backdrop-filter: blur(1rem);
}

.sticky-wrapper.is-sticky .sticky-nav .burger:before,
.sticky-wrapper.is-sticky .sticky-nav .burger span,
.sticky-wrapper.is-sticky .sticky-nav .burger:after {
    background: #000000;
    -webkit-transition: .0s all ease;
    -o-transition: .0s all ease;
    transition: .0s all ease;
}

.sticky-wrapper.is-sticky .sticky-nav .logo {
    color: var(--sticky-nav-text, #000000) !important;
}

.sticky-wrapper.is-sticky .sticky-nav .site-menu>li>a {
    color: var(--sticky-nav-text, #000000) !important;
}

.sticky-wrapper.is-sticky .sticky-nav .site-menu>li>a:hover,
.sticky-wrapper.is-sticky .sticky-nav .site-menu>li>a.active {
    color: var(--sticky-nav-hover, #136ad5) !important;
}

.sticky-wrapper.is-sticky .sticky-nav .site-menu>li.active a {
    color: var(--sticky-nav-hover, #136ad5) !important;
}

/* Burger */
.burger {
    width: 28px;
    height: 32px;
    cursor: pointer;
    position: relative;
}

.burger.light:before,
.burger.light span,
.burger.light:after {
    background: #ffffff;
}

.burger:before,
.burger span,
.burger:after {
    width: 100%;
    height: 2px;
    display: block;
    background: #000;
    border-radius: 2px;
    position: absolute;
    opacity: 1;
}

.burger:before,
.burger:after {
    -webkit-transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
    transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
    -o-transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
    transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
    transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-transition: top 0.35s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
    content: "";
}

.burger:before {
    top: 4px;
}

.burger span {
    top: 15px;
}

.burger:after {
    top: 26px;
}

/* Hover */
.burger:hover:before {
    top: 7px;
}

.burger:hover:after {
    top: 23px;
}

/* Click */
.burger.active span {
    opacity: 0;
}

.burger.active:before,
.burger.active:after {
    top: 40%;
}

.burger.active:before {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=5);
    /*for IE*/
}

.burger.active:after {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=-5);
    /*for IE*/
}

.burger:focus {
    outline: none;
}

.top-bar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.untree_co-hero,
.bg-img {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

.untree_co-hero.overlay,
.bg-img.overlay {
    position: relative;
}

.untree_co-hero.overlay:before,
.bg-img.overlay:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    /* Modern gradient overlay - less opaque to show background image */
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.75) 0%, rgba(19, 106, 213, 0.65) 100%);
    z-index: 1;
}

.untree_co-hero>.container,
.bg-img>.container {
    position: relative;
    z-index: 2;
}

.untree_co-hero,
.untree_co-hero>.container>.row,
.bg-img,
.bg-img>.container>.row {
    height: auto;
    min-height: 550px;
    padding-top: 80px;
    padding-bottom: 60px;
}

@media (max-width: 767.98px) {

    .untree_co-hero,
    .untree_co-hero>.container>.row,
    .bg-img,
    .bg-img>.container>.row {
        min-height: 480px;
        padding-top: 59px;
        padding-bottom: 40px;
    }
}

.untree_co-hero.inner-page,
.untree_co-hero.inner-page>.container>.row,
.bg-img.inner-page,
.bg-img.inner-page>.container>.row {
    height: 50vh;
    min-height: 450px;
}

@media (max-width: 767.98px) {

    .untree_co-hero.inner-page,
    .untree_co-hero.inner-page>.container>.row,
    .bg-img.inner-page,
    .bg-img.inner-page>.container>.row {
        min-height: 450px;
    }
}

.untree_co-hero .caption,
.bg-img .caption {
    text-transform: uppercase;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1rem;
}

.untree_co-hero .heading,
.bg-img .heading {
    font-size: 45px;
    font-weight: 700;
    line-height: 1.4;
    color: #ffffff !important;
}

/* Ensure hero text is always white in both modes */
.untree_co-hero h1,
.untree_co-hero h2,
.untree_co-hero p,
.untree_co-hero .text-white,
.untree_co-hero .mb-4,
body.dark-mode .untree_co-hero h1,
body.dark-mode .untree_co-hero h2,
body.dark-mode .untree_co-hero p,
body.dark-mode .untree_co-hero .heading {
    color: #ffffff !important;
}

@media (max-width: 991.98px) {

    .untree_co-hero .heading,
    .bg-img .heading {
        font-size: 30px;
    }
}

.untree_co-hero .link-highlight,
.bg-img .link-highlight {
    color: #ffffff;
    position: relative;
    display: inline;
    -webkit-box-shadow: 0 2px 0 0 rgba(255, 255, 255, 0.3);
    box-shadow: 0 2px 0 0 rgba(255, 255, 255, 0.3);
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.untree_co-hero .link-highlight:hover,
.bg-img .link-highlight:hover {
    -webkit-box-shadow: 0 2px 0 0 white;
    box-shadow: 0 2px 0 0 white;
}

.untree_co-hero .desc,
.bg-img .desc {
    font-size: 18px;
    max-width: 450px;
}

@media (max-width: 991.98px) {

    .untree_co-hero .desc,
    .bg-img .desc {
        margin: 0 auto;
    }
}

.untree_co-hero .cta-section,
.untree_co-hero .cta-section>.container>.row,
.bg-img .cta-section,
.bg-img .cta-section>.container>.row {
    height: 70vh;
    min-height: 450px;
}

.untree_co-section {
    padding: 100px 0;
    position: relative;
}

@media (max-width: 991.98px) {
    .untree_co-section {
        padding: 50px 0;
    }
}

.untree_co-section .heading h3 {
    font-size: 35px;
    color: #000000;
}

@media (max-width: 991.98px) {
    .untree_co-section .heading {
        font-size: 20px;
    }
}

.untree_co-section .heading strong {
    font-weight: 700;
}

.position-relative {
    position: relative;
}

.block-v1 {
    position: relative;
    z-index: 8;
    padding: 30px;
}

@media (max-width: 991.98px) {
    .block-v1 {
        margin-bottom: 70px;
    }
}

@media (max-width: 767.98px) {
    .block-v1 {
        margin-top: 0px;
        margin-bottom: 30px;
    }
}

.block-v1 [class^="icon-"] {
    font-size: 35px;
    color: #ffffff;
    margin-bottom: 30px;
    display: block;
    width: 75px;
    height: 75px;
    line-height: 75px;
    text-align: center;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.block-v1 h3 {
    font-size: 20px;
    color: #ffffff;
}

.block-v1 p {
    color: rgba(255, 255, 255, 0.7);
}

.block-v1 *:last-child {
    margin-bottom: 0;
}

.block-v1.color-1 {
    background-color: #5cb100;
}

.block-v1.color-2 {
    background-color: #ec661f;
}

.block-v1.color-3 {
    background-color: #4fb0dc;
}

.feature {
    margin-bottom: 40px;
    border: 1px solid rgba(0, 0, 0, 0.05);
    background: #ffffff;
    padding: 30px;
    border-radius: 4px;
    text-align: center;
}

.feature [class^="flaticon-"],
.feature [class^="icon-"],
.feature [class^="uil uil-"] {
    position: relative;
    margin-bottom: 30px;
    font-size: 30px;
    color: #136ad5;
    width: 50px;
    height: 50px;
    line-height: 50px;
    display: inline-block;
    border-radius: 50%;
    text-align: center;
}

.feature [class^="flaticon-"]:after,
.feature [class^="icon-"]:after,
.feature [class^="uil uil-"]:after {
    content: "";
    position: absolute;
    width: 60px;
    height: 60px;
    right: -5px;
    top: -5px;
    border-radius: 50%;
    border: 1px solid rgba(19, 106, 213, 0.2);
}

.feature [class^="flaticon-"].color-1,
.feature [class^="icon-"].color-1,
.feature [class^="uil uil-"].color-1 {
    background: rgba(92, 177, 0, 0.1);
    color: #5cb100;
}

.feature [class^="flaticon-"].color-1:after,
.feature [class^="icon-"].color-1:after,
.feature [class^="uil uil-"].color-1:after {
    border: 1px solid rgba(92, 177, 0, 0.2);
}

.feature [class^="flaticon-"].color-2,
.feature [class^="icon-"].color-2,
.feature [class^="uil uil-"].color-2 {
    background: rgba(236, 102, 31, 0.1);
    color: #ec661f;
}

.feature [class^="flaticon-"].color-2:after,
.feature [class^="icon-"].color-2:after,
.feature [class^="uil uil-"].color-2:after {
    border: 1px solid rgba(236, 102, 31, 0.2);
}

.feature [class^="flaticon-"].color-3,
.feature [class^="icon-"].color-3,
.feature [class^="uil uil-"].color-3 {
    background: rgba(79, 176, 220, 0.1);
    color: #4fb0dc;
}

.feature [class^="flaticon-"].color-3:after,
.feature [class^="icon-"].color-3:after,
.feature [class^="uil uil-"].color-3:after {
    border: 1px solid rgba(79, 176, 220, 0.2);
}

.feature [class^="flaticon-"].color-4,
.feature [class^="icon-"].color-4,
.feature [class^="uil uil-"].color-4 {
    background: rgba(107, 83, 171, 0.1);
    color: #6b53ab;
}

.feature [class^="flaticon-"].color-4:after,
.feature [class^="icon-"].color-4:after,
.feature [class^="uil uil-"].color-4:after {
    border: 1px solid rgba(107, 83, 171, 0.2);
}

.feature [class^="flaticon-"].color-5,
.feature [class^="icon-"].color-5,
.feature [class^="uil uil-"].color-5 {
    background: rgba(19, 106, 213, 0.1);
    color: #136ad5;
}

.feature [class^="flaticon-"].color-5:after,
.feature [class^="icon-"].color-5:after,
.feature [class^="uil uil-"].color-5:after {
    border: 1px solid rgba(19, 106, 213, 0.2);
}

.feature [class^="flaticon-"].color-6,
.feature [class^="icon-"].color-6,
.feature [class^="uil uil-"].color-6 {
    background: rgba(253, 152, 0, 0.1);
    color: #fd9800;
}

.feature [class^="flaticon-"].color-6:after,
.feature [class^="icon-"].color-6:after,
.feature [class^="uil uil-"].color-6:after {
    border: 1px solid rgba(253, 152, 0, 0.2);
}

.feature h3 {
    font-size: 18px;
    color: #136ad5;
}

.feature p {
    font-size: 14px;
    color: rgba(0, 0, 0, 0.5) !important;
}

.bg-1:before {
    content: "";
    position: absolute;
    width: 150%;
    height: 70%;
    left: -100%;
    top: -40px;
    z-index: -1;
    background: rgba(19, 106, 213, 0.2);
}

.bg-2:before {
    content: "";
    position: absolute;
    height: 40%;
    width: 70%;
    right: -50%;
    top: 0px;
    z-index: -1;
    background: rgba(236, 102, 31, 0.1);
}

@media (max-width: 991.98px) {
    .bg-2 {
        display: none;
    }
}

.line-bottom {
    position: relative;
    padding-bottom: 0px;
    color: #136ad5;
}

.line-bottom:before {
    display: none;
    content: "";
    position: absolute;
    width: 40px;
    height: 3px;
    background: #ec661f;
    bottom: 0;
}

.line-bottom.text-center:before {
    right: 50%;
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translateX(50%);
}

.media-h {
    margin-bottom: 30px;
    -webkit-box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.1);
    box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.1);
    background: #ffffff;
}

.media-h figure {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 170px;
    flex: 0 0 170px;
    position: relative;
    margin-bottom: 0;
    overflow: hidden;
}

.media-h figure img {
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    height: 100%;
    margin-bottom: 0;
    width: 100%;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .3s transform ease;
    -o-transition: .3s transform ease;
    transition: .3s transform ease;
}

.media-h .media-h-body {
    padding: 20px;
}

.media-h .media-h-body h2 {
    font-size: 20px;
}

.media-h:hover img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

.meta {
    font-size: 14px;
    color: #ccc;
}

.video-play-btn {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    position: relative;
    border-radius: 50%;
    background: #136ad5;
    color: #ffffff;
    display: inline-block;
}

.video-play-btn:before {
    width: 90px;
    height: 90px;
    border: 2px solid #136ad5;
    position: absolute;
    content: "";
    border-radius: 50%;
    right: -5px;
    top: -5px;
}

.video-play-btn span {
    font-size: 20px;
    position: absolute;
    top: 50%;
    right: 50%;
    color: #ffffff;
    -webkit-transform: translate(40%, -50%);
    -ms-transform: translate(40%, -50%);
    transform: translate(40%, -50%);
}

.video-play-btn:hover span {
    color: #ffffff;
}

.block-testimonial p {
    font-size: 18px;
    color: #000000;
    line-height: 2;
}

.block-testimonial .author {
    display: block;
}

.block-testimonial .author img {
    margin: 0 auto;
    width: 80px;
    margin-bottom: 20px;
    border-radius: 50%;
}

.block-testimonial .author h3 {
    font-size: 18px;
    color: #136ad5;
    margin-bottom: 0;
}

.block-testimonial .author .position {
    font-size: 14px;
}

.wide-slider-testimonial .owl-dots {
    position: absolute;
    display: inline-block;
    width: auto;
}

.accordion-img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 180px;
    flex: 0 0 180px;
}

.instagram-gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: -8px;
    margin-right: -8px;
}

.instagram-gallery li {
    -ms-flex-preferred-size: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%;
    padding-right: 8px;
    padding-bottom: 8px;
}

.count-numbers .counter {
    font-size: 26px;
    font-family: "Alexandria-Medium", serif;
    color: #136ad5;
}

.pricing {
    text-align: center;
    padding: 40px;
    border: 1px solid #efefef;
    border-radius: 4px;
}

.pricing .pricing-plan-title {
    color: #136ad5;
}

@media (max-width: 991.98px) {
    .pricing {
        padding: 40px 25px;
    }
}

.pricing .pricing-img {
    width: 90px;
    height: 90px;
    margin: 0 auto;
}

.pricing .pricing-img:before {
    position: absolute;
    content: "";
    background: rgba(19, 106, 213, 0.2);
    z-index: -1;
    width: 70px;
    height: 70px;
    border-radius: 50%;
}

.pricing .pricing-img img {
    height: 90px;
}

.pricing .pricing-body .price {
    margin-bottom: 20px;
}

.pricing .pricing-body .price .fig {
    color: #136ad5;
    font-size: 30px;
}

.staff {
    padding: 20px;
}

.staff img {
    border-radius: 40px;
    width: 200px;
}

.staff h3 {
    font-size: 20px;
    color: #136ad5;
}

.staff .position {
    color: rgba(52, 58, 64, 0.5);
}

.custom-pagination li {
    display: inline-block;
}

.custom-pagination li a {
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 18px;
    text-align: center;
}

.custom-pagination li.active>a {
    background: #136ad5;
    color: #ffffff;
    border-radius: 50%;
}

.contact-info i {
    font-size: 20px;
    float: right;
    width: 44px;
    height: 44px;
    background: #136ad5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 50px;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    color: #ffffff;
}

.contact-info h4 {
    font-size: 18px;
    padding: 0 60px 0 0;
}

.contact-info p {
    padding: 0 60px 0 0;
    margin-bottom: 0;
    font-size: 14px;
}

.item {
    border: none;
    margin-bottom: 30px;
    border-radius: 4px;
    display: block;
}

.item a {
    display: block;
    overflow: hidden;
    position: relative;
    border-radius: 4px;
    display: block;
}

.item a img {
    position: relative;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .3s all ease-in-out;
    -o-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out;
}

.item .item-wrap {
    display: block;
    position: relative;
}

.item .item-wrap:after {
    z-index: 2;
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    visibility: hidden;
    opacity: 0;
    -webkit-transition: .3s all ease-in-out;
    -o-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out;
}

.item .item-wrap>span {
    position: absolute;
    top: 50%;
    right: 50%;
    z-index: 3;
    -webkit-transform: translate(50%, -50%) scale(0);
    -ms-transform: translate(50%, -50%) scale(0);
    transform: translate(50%, -50%) scale(0);
    color: #ffffff;
    font-size: 1.7rem;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.item .item-wrap:hover:after {
    opacity: 1;
    visibility: visible;
}

.item .item-wrap:hover span {
    margin-top: 0px;
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(50%, -50%) scale(1);
    -ms-transform: translate(50%, -50%) scale(1);
    transform: translate(50%, -50%) scale(1);
}

.item:hover a img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transition: .3s all ease-in-out;
    -o-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out;
}

.category {
    display: inline-block;
    padding: 20px;
    background: rgba(19, 106, 213, 0.05);
    border-radius: 4px;
    text-decoration: none !important;
}

.category,
.category h3,
.category span {
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.category h3 {
    font-family: "Alexandria-Medium", sans-serif;
    margin: 0;
    font-size: 16px;
    line-height: 1;
    color: #343a40;
}

.category span {
    font-size: 13px;
    color: rgba(52, 58, 64, 0.4);
}

.category .uil {
    text-align: center;
    display: inline-block;
    color: #00aeff;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    margin-left: 20px;
    background: #ffffff;
    font-size: 30px;
    line-height: 40px;
}

.category:hover {
    background: #00aeff;
}

.category:hover h3,
.category:hover span {
    color: #ffffff;
}

.category:hover span {
    color: rgba(255, 255, 255, 0.5);
}

.section-title .heading {
    font-size: 30px;
    font-weight: 700;
}

@media (max-width: 991.98px) {
    .section-title .heading {
        font-size: 20px;
    }
}

.services-section {
    background: #f8f9fa;
    padding: 70px 0;
}

.img-wrap-2 {
    margin-top: -120px;
    position: relative;
    z-index: 9;
}

.img-wrap-2 .dotted:before {
    position: absolute;
    content: "";
    background-image: url("../images/dotted.png");
    height: 273px;
    width: 313px;
    z-index: -1;
    bottom: -50px;
    right: -50px;
}

.custom-media {
    background: #ffffff;
    -webkit-box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.1);
}

.custom-media h3 {
    font-family: "Alexandria-Medium", sans-serif;
    font-size: 18px;
    color: #000000;
}

.custom-media p {
    color: rgba(0, 0, 0, 0.4);
}

.custom-media .review {
    color: #ffc107;
}

.custom-media .custom-media-body {
    padding: 30px;
}

.custom-media .custom-media-body .price {
    font-size: 22px;
    color: #343a40;
}

.form-box {
    background: #ffffff;
    padding: 40px;
    margin-top: -200px;
    border-radius: 7px;
    -webkit-box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.1);
}

.custom-block {
    margin-bottom: 30px;
}

.custom-block .section-title {
    font-size: 18px;
    font-weight: 700;
}

.custom-accordion .accordion-item {
    margin-bottom: 0px;
    position: relative;
    border-radius: 0px;
    overflow: hidden;
}

.custom-accordion .accordion-item .btn-link {
    display: block;
    width: 100%;
    padding: 15px 0;
    text-decoration: none;
    text-align: right;
    color: #000000;
    background: transparent;
    border: none;
    padding-right: 40px;
    border-radius: 0;
    position: relative;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    font-weight: normal !important;
    font-family: "Alexandria-Medium", sans-serif;
    font-size: 16px !important;
}

.custom-accordion .accordion-item .btn-link:before {
    font-family: 'icomoon';
    content: "\f067";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 15px;
}

.custom-accordion .accordion-item .btn-link[aria-expanded="true"] {
    font-weight: 700;
    color: #ffffff !important;
    background: #136ad5;
}

.custom-accordion .accordion-item .btn-link[aria-expanded="true"]:before {
    font-family: 'icomoon';
    content: "\f068";
    position: absolute;
    color: #ffffff;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 15px;
}

.custom-accordion .accordion-item.active {
    z-index: 2;
}

.custom-accordion .accordion-item.active .btn-link {
    color: #000000;
    -webkit-box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.1);
}

.custom-accordion .accordion-item .accordion-body {
    padding: 20px 20px 20px 20px;
}

.control {
    display: block;
    position: relative;
    padding-right: 30px;
    margin-bottom: 15px;
    cursor: pointer;
    font-size: 18px;
}

.control .caption {
    position: relative;
    top: -3px;
    font-size: 16px;
}

.control input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.control__indicator {
    position: absolute;
    top: 2px;
    right: 0;
    height: 20px;
    width: 20px;
    background: #e6e6e6;
    border-radius: 4px;
}

.control--radio .control__indicator {
    border-radius: 50%;
}

.control:hover input~.control__indicator,
.control input:focus~.control__indicator {
    background: #ccc;
}

.control input:checked~.control__indicator {
    background: #136ad5;
}

.control:hover input:not([disabled]):checked~.control__indicator,
.control input:checked:focus~.control__indicator {
    background: #1776ea;
}

.control input:disabled~.control__indicator {
    background: #e6e6e6;
    opacity: 0.9;
    pointer-events: none;
}

.control__indicator:after {
    font-family: 'icomoon';
    content: '\e5ca';
    position: absolute;
    display: none;
    font-size: 14px;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.control input:checked~.control__indicator:after {
    display: block;
    color: #fff;
}

.control--checkbox .control__indicator:after {
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

.control--checkbox input:disabled~.control__indicator:after {
    border-color: #7b7b7b;
}

.control--checkbox input:disabled:checked~.control__indicator {
    background-color: #136ad5;
    opacity: .2;
}

.gal-item {
    display: block;
    margin-bottom: 8px;
}

.gal-item img {
    border-radius: 4px;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
    opacity: 1;
}

.gal-item:hover img {
    opacity: .5;
}

.social-icons li {
    display: inline-block;
}

.social-icons li a {
    color: rgba(255, 255, 255, 0.5);
    display: inline-block;
    width: 40px;
    height: 40px;
    position: relative;
    border-radius: 50%;
    background: #303030;
}

.social-icons li a span {
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

.social-icons li a:hover {
    color: #ffffff;
}

.social-icons li:first-child a {
    padding-right: 0;
}

.social-icons.light li a {
    color: #000000;
    display: inline-block;
    width: 40px;
    height: 40px;
    position: relative;
    border-radius: 50%;
    background: #f8f9fa;
}

.video-wrap {
    position: relative;
    display: block;
}

.video-wrap .play-wrap {
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    width: 50px;
    height: 50px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease;
}

.video-wrap .play-wrap>span {
    position: absolute;
    top: 50%;
    right: 50%;
    color: #ffffff;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

.video-wrap:hover .play-wrap {
    width: 60px;
    height: 60px;
}

.owl-single.dots-absolute .owl-dots,
.owl-carousel.dots-absolute .owl-dots {
    bottom: 40px;
}

.owl-single.dots-absolute .owl-dots .owl-dot span,
.owl-carousel.dots-absolute .owl-dots .owl-dot span {
    background: rgba(255, 255, 255, 0.5);
}

.owl-single .owl-dots,
.owl-carousel .owl-dots {
    text-align: center;
    position: absolute;
    width: 100%;
    right: 50%;
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    transform: translateX(50%);
}

.owl-single .owl-dots .owl-dot,
.owl-carousel .owl-dots .owl-dot {
    display: inline-block;
    margin: 5px;
}

.owl-single .owl-dots .owl-dot span,
.owl-carousel .owl-dots .owl-dot span {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.2);
}

.owl-single .owl-dots .owl-dot.active span,
.owl-carousel .owl-dots .owl-dot.active span {
    background: #136ad5;
}

.owl-single.no-dots .owl-dots,
.owl-carousel.no-dots .owl-dots {
    display: none;
}

.owl-single.no-nav .owl-nav,
.owl-carousel.no-nav .owl-nav {
    display: none;
}

.testimonial {
    max-width: 500px;
    text-align: center;
    margin-bottom: 30px;
}

.testimonial .name {
    font-size: 18px;
    color: #000000;
}

.testimonial .img-wrap img {
    margin: 0 auto;
    width: 70px;
    border-radius: 50%;
}

.list-check li {
    display: block;
    padding-right: 30px;
    position: relative;
}

.list-check li:before {
    content: "\e5ca";
    font-family: 'icomoon';
    position: absolute;
    top: -.3rem;
    font-size: 20px;
    right: 0;
}

.owl-single .owl-nav {
    position: absolute;
    top: 50%;
    width: 100%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media (max-width: 767.98px) {
    .owl-single .owl-nav {
        display: none;
    }
}

.owl-single .owl-nav .owl-prev,
.owl-single .owl-nav .owl-next {
    position: absolute;
    top: 0;
}

.owl-single .owl-nav .owl-prev span,
.owl-single .owl-nav .owl-next span {
    display: block;
    background: #ffffff;
    padding: 15px;
}

.owl-single .owl-nav .owl-prev {
    right: -30px;
}

.owl-single .owl-nav .owl-next {
    left: -30px;
}

.owl-single .owl-nav .owl-next>span {
    position: relative;
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

.ul-check li {
    position: relative;
    padding-right: 30px;
    margin-bottom: 10px;
}

.ul-check li:before {
    position: absolute;
    right: 0;
    top: -.2rem;
    content: "\e5ca";
    font-size: 20px;
    font-family: 'icomoon';
}

.ul-check.primary li:before {
    color: #136ad5;
}

.ul-check.white li:before {
    color: #ffffff;
}

.section-title {
    color: #000000;
    margin-bottom: 30px;
}

.site-footer {
    background: #136ad5;
    font-size: 14px;
    color: #ffffff;
    padding: 20px 0;
}

.site-footer a {
    color: #ffffff !important;
    position: relative;
    display: inline-block;
}

.site-footer h3,
.site-footer p,
.site-footer .text-muted,
.site-footer .copyright,
.site-footer .widget .links li a {
    color: #ffffff !important;
}

.site-footer .widget .links li a:hover {
    color: #ffffff !important;
    opacity: 0.8;
}

.site-footer .btn:before {
    display: none;
}

.site-footer .widget {
    margin-bottom: 40px;
    display: block;
    position: relative;
    z-index: 1;
}

.site-footer .widget h3 {
    font-size: 16px;
    color: #ffffff;
    margin-bottom: 30px;
}

.site-footer .widget .links {
    width: 150px;
}

.site-footer .widget .links li {
    margin-bottom: 10px;
}

.site-footer .widget .links li a {
    color: rgba(255, 255, 255, 0.8);
    /* Improved contrast from 0.5 */
}

.site-footer .widget .links li a:hover {
    color: #ffffff;
}

.site-footer .social li {
    display: inline-block;
}

.site-footer .social li a {
    display: inline-block;
    width: 30px;
    height: 30px;
    position: relative;
    background-color: #ffffff;
    border-radius: 50%;
    color: #000000;
}

.site-footer .social li a:before {
    display: none;
}

.site-footer .social li a>span {
    position: absolute;
    top: 50%;
    right: 50%;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

.site-footer .social li a:hover {
    background: #2f84ec;
    color: #ffffff;
}

.site-footer .copyright {
    color: rgba(255, 255, 255, 0.8);
    /* Improved contrast from 0.5 */
}

.owl-carousel,
.bx-wrapper {
    direction: ltr;
}

.owl-carousel .owl-item {
    direction: rtl;
}


.whatsapp-float {
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: flex;
    align-items: center;
    background-color: #25d366;
    color: white;
    padding: 10px 20px;
    border-radius: 20px;
    text-decoration: none;
    z-index: 1000;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.2s ease;
    flex-direction: row-reverse;
    font-family: 'Alexandria-Medium', sans-serif;
}

.whatsapp-float:hover {
    background-color: #128c7e;
    transform: scale(1.05);
    /* Scale on hover */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    /* Increased shadow on hover */
}

.whatsapp-float i {
    font-size: 20px;
    margin-right: 0.5rem;
}

.whatsapp-float span {
    padding-right: .5rem;
}

@media (max-width: 768px) {
    .whatsapp-float {
        bottom: 10px;
        right: 10px;
        padding: 8px 15px;
    }

    .whatsapp-float i {
        font-size: 18px;
    }

    /* Mobile sticky navigation adjustments */
    .sticky-wrapper.is-sticky .sticky-nav {
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .hero-webinar {
        padding-top: 120px !important;
    }

    .sticky-wrapper.is-sticky~.hero-webinar {
        padding-top: 100px !important;
    }
}

/* --- Additional RTL overrides for the new classes --- */

/* Flip margin-right to margin-left */
.course-sidebar .block-v1.course-features ul li span {
    margin-left: 5px;
    /* was margin-right in LTR */
    margin-right: 0;
    /* remove if set previously */
}

/* Flip the float direction for .video-time */
.video-time {
    float: left;
    /* was float: right in LTR */
}

/* If you want to flip .video-status margin-left to margin-right */
.video-status {
    margin-right: 10px;
    /* was margin-left in LTR */
    margin-left: 0;
    /* remove if set previously */
}

/*package*/
.package {
    margin-top: 75px;
}

.package .package_title {
    text-align: center;
    max-width: 800px;
    margin: 0px auto;
    margin-bottom: 50px;
}

.package>div h4 {
    color: rgb(51 132 226);
}

.package_item {
    border: 3px solid #fff;
    border-radius: 16px;
    width: 335px;
    position: relative;
    margin: 6px 0px;
}

.package_item .package_item_head {
    background-color: #2a9df4;
    padding: 25px 25px 0px 25px;
    border-radius: 12px;
}

.package_item>.package_item_head>div {
    display: flex;
    justify-content: space-around;
    align-items: end;
    color: #fff;
    margin-bottom: 8px;
}

.package_item>.package_item_head>div>p {
    margin: 0px;
}

.package_item>.package_item_head>p {
    text-align: center;
    color: #000;
    font-size: 12px;
    line-height: 2.5;
    margin-bottom: 2px;
}

.package_item>.package_item_head a {
    display: block;
    text-align: left;
    color: #fff;
    font-size: 13px;
    text-decoration: none;
    margin-bottom: 9px
}

.package_item>.package_item_head img.package_icon {
    display: block;
    margin: 30px auto 0px;
    width: 157px;
    max-width: 100%;
}

.package_item .arrow {
    position: absolute;
    top: 137px;
    left: -108px;
    width: 115px;
    z-index: 7
}

.package_item>div:last-of-type {
    padding: 0px 10px;
    text-align: center;
    margin-top: -11px;
    padding-top: 25px;
    border: 3px solid #2a9df4;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
}

.package_item>div:last-of-type h4 {
    color: #24BB8C
}

.package_item>div:last-of-type ul {
    list-style-type: none;
}

.package_item>div:last-of-type ul li {
    margin: 12px 0px;
}


.package_item.package2>div:last-of-type {
    border-color: #3384e2;
}

.package_item.package2>.package_item_head {
    background-color: #3384e2
}

.package_item.package3>div:last-of-type {
    border-color: #005AD1;
}

.package_item.package3>.package_item_head {
    background-color: #005AD1;
    position: inherit;
}

.package_item.package3>.package_item_head:first-of-type {
    z-index: 5;
    border-bottom: 5px solid #fff;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

.package_item.package3>.package_item_head:nth-child(2) {
    z-index: 4;
    transform: translateY(-3px);
    padding-bottom: 2px;
    padding-top: 18px;
}

.package_item .arrow_empty {
    position: absolute;
    top: 135px;
    background-color: #fff;
    right: -0.4px;
    width: 62px;
    z-index: 6;
}

.package_item.package3 .arrow_empty {
    right: 0px
}

@media (max-width: 1250px) {
    .package_item {
        width: 300px
    }

    .package_item .arrow {
        top: 142px;
        left: -94px;
        width: 100px;
    }
}

@media (max-width: 1100px) {

    .package_item .arrow_empty,
    .package_item .arrow {
        display: none
    }
}

@media (max-width: 938px) {
    .package_item {
        width: 360px
    }
}

/* ============================================
   COURSE CARDS - Homepage Course Catalog
   ============================================ */

/* Course Card Container */
.course-card {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.course-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

/* Course Card Image Area */
.course-card-image {
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.course-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}

/* Course Card Icon (for gradient fallback) */
.course-icon {
    width: 70px;
    height: 70px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(10px);
}

.course-icon i {
    font-size: 28px;
    color: #ffffff;
}

/* Course Badge */
.course-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    /* RTL: badge on right side */
    background: rgba(255, 255, 255, 0.95);
    color: #333;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Course Card Body */
.course-card-body {
    padding: 20px;
}

.course-title {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1a202c;
    margin-bottom: 8px;
    line-height: 1.4;
}

.course-codes {
    font-size: 0.85rem;
    color: #4a5568;
    /* Improved contrast from #718096 */
    margin-bottom: 12px;
    font-weight: 500;
    letter-spacing: 0.5px;
}

.course-value {
    font-size: 0.95rem;
    color: #4a5568;
    margin-bottom: 16px;
    padding: 10px 12px;
    background: #f7fafc;
    border-radius: 8px;
    border-right: 3px solid #136ad5;
    /* RTL: border on right side */
}

/* Course Card Footer */
.course-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 16px;
    border-top: 1px solid #e2e8f0;
}

.course-price {
    display: flex;
    align-items: center;
    gap: 4px;
}

.price-amount {
    font-size: 1.5rem;
    font-weight: 800;
    color: #1a202c;
    /* Black color for price */
}

/* Original price with strikethrough */
.price-original {
    font-size: 1rem;
    font-weight: 500;
    color: #718096;
    /* Improved contrast from #a0aec0 */
    text-decoration: line-through;
    margin-left: 8px;
}

.riyal-icon {
    height: 1em;
    vertical-align: middle;
}

/* Subscribe Button */
.btn-subscribe {
    background: linear-gradient(135deg, #136ad5 0%, #0d5bba 100%);
    color: #ffffff;
    border: none;
    padding: 10px 24px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.95rem;
    transition: all 0.3s ease;
}

.btn-subscribe:hover {
    background: linear-gradient(135deg, #0d5bba 0%, #0a4a9e 100%);
    color: #ffffff;
    transform: scale(1.05);
}

/* ============================================
   FAKE DOOR MODAL - Lead Capture Popup
   ============================================ */

.subscribe-modal-content {
    border-radius: 20px;
    border: none;
    overflow: hidden;
}

.modal-icon {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #136ad5 0%, #0d5bba 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

.modal-icon i {
    font-size: 32px;
    color: #ffffff;
}

.modal-title {
    font-weight: 700;
    color: #1a202c;
}

.modal-message {
    color: #4a5568;
    font-size: 1rem;
    line-height: 1.7;
}

.selected-course-name {
    background: #f0f9ff;
    color: #136ad5;
    padding: 10px 16px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.95rem;
}

/* Interest Form */
.interest-form .form-control {
    border: 2px solid #e2e8f0;
    border-radius: 10px;
    padding: 14px 16px;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.interest-form .form-control:focus {
    border-color: #136ad5;
    box-shadow: 0 0 0 3px rgba(19, 106, 213, 0.15);
}

.interest-form .btn-success {
    background: linear-gradient(135deg, #38a169 0%, #2f855a 100%);
    border: none;
    border-radius: 10px;
    padding: 14px 24px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.interest-form .btn-success:hover {
    background: linear-gradient(135deg, #2f855a 0%, #276749 100%);
    transform: translateY(-2px);
}

/* Success Message */
.success-icon {
    width: 70px;
    height: 70px;
    background: #c6f6d5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

.success-icon i {
    font-size: 36px;
    color: #38a169;
}

/* ============================================
   DARK MODE TOGGLE BUTTON
   ============================================ */

.theme-toggle-item {
    display: inline-flex;
    align-items: center;
    margin-right: 15px;
}

/* Toggle Switch Container */
.theme-toggle-btn {
    background: linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);
    border: none;
    border-radius: 50px;
    width: 60px;
    height: 30px;
    cursor: pointer;
    position: relative;
    transition: all 0.3s ease;
    padding: 3px;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Sliding Knob */
.theme-toggle-btn::after {
    content: '';
    position: absolute;
    top: 3px;
    right: 3px;
    width: 24px;
    height: 24px;
    background: #ffffff;
    border-radius: 50%;
    transition: all 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.theme-toggle-btn:hover {
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1), 0 0 10px rgba(59, 130, 246, 0.3);
}

.theme-toggle-btn:focus {
    outline: none;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1), 0 0 0 3px rgba(59, 130, 246, 0.3);
}

/* Icons positioning */
.theme-toggle-btn .theme-icon-light,
.theme-toggle-btn .theme-icon-dark {
    font-size: 12px;
    transition: all 0.3s ease;
    z-index: 1;
    position: relative;
}

/* Sun icon - hidden by default (light mode shows moon) */
.theme-toggle-btn .theme-icon-light {
    color: #fef3c7;
    margin-right: auto;
    margin-left: 6px;
    display: none;
}

/* Moon icon - visible in light mode */
.theme-toggle-btn .theme-icon-dark {
    color: #60a5fa;
    margin-left: auto;
    margin-right: 6px;
    display: inline-block;
}

/* ===== Dark Mode Active - Slide knob to left ===== */
body.dark-mode .theme-toggle-btn {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
}

/* Move knob to LEFT in dark mode */
body.dark-mode .theme-toggle-btn::after {
    right: auto;
    left: 3px;
    background: #fbbf24;
}

body.dark-mode .theme-toggle-btn:hover {
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.3), 0 0 10px rgba(251, 191, 36, 0.3);
}

/* Sun icon visible in dark mode */
body.dark-mode .theme-toggle-btn .theme-icon-light {
    color: #fef3c7;
    display: inline-block;
}

/* Moon icon hidden in dark mode */
body.dark-mode .theme-toggle-btn .theme-icon-dark {
    display: none;
}

/* ============================================
   DARK MODE - CSS VARIABLES
   ============================================ */

:root {
    --bg-primary: #ffffff;
    --bg-secondary: #f7fafc;
    --text-primary: #1a202c;
    --text-secondary: #4a5568;
    --text-muted: #718096;
    --border-color: #e2e8f0;
    --card-bg: #ffffff;
    --shadow-color: rgba(0, 0, 0, 0.08);
}

/* ============================================
   LIGHT MODE - EXPLICIT STYLES (Default)
   ============================================ */

/* Light Mode - Default body styles */
body:not(.dark-mode) {
    background-color: #ffffff !important;
    color: #1a202c !important;
}

body:not(.dark-mode) .bg-light,
body:not(.dark-mode) .untree_co-section {
    background-color: #f7fafc !important;
}

body:not(.dark-mode) h1,
body:not(.dark-mode) h2,
body:not(.dark-mode) h3,
body:not(.dark-mode) h4,
body:not(.dark-mode) h5,
body:not(.dark-mode) h6 {
    color: #1a202c !important;
}

body:not(.dark-mode) p {
    color: #4a5568 !important;
}

body:not(.dark-mode) .text-muted {
    color: #718096 !important;
}

body:not(.dark-mode) .top-bar {
    background-color: #136ad5 !important;
}

body:not(.dark-mode) .site-nav {
    background: linear-gradient(135deg, #136ad5, #0d5bbd) !important;
}

body:not(.dark-mode) .sticky-wrapper.is-sticky .sticky-nav {
    background: #ffffff !important;
}

body:not(.dark-mode) .card,
body:not(.dark-mode) .feature {
    background-color: #ffffff !important;
    border-color: #e2e8f0 !important;
}



/* Fallback for body without explicit class */
body {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

body.dark-mode {
    --bg-primary: #0f172a;
    --bg-secondary: #1e293b;
    --text-primary: #f1f5f9;
    --text-secondary: #cbd5e1;
    --text-muted: #94a3b8;
    --border-color: #334155;
    --card-bg: #1e293b;
    --shadow-color: rgba(0, 0, 0, 0.3);
}

/* ============================================
   DARK MODE - GLOBAL STYLES
   ============================================ */

body.dark-mode {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

body.dark-mode .bg-light,
body.dark-mode .untree_co-section {
    background-color: var(--bg-secondary) !important;
}

body.dark-mode .text-muted {
    color: var(--text-muted) !important;
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6 {
    color: var(--text-primary);
}

body.dark-mode p {
    color: var(--text-secondary);
}

/* ============================================
   DARK MODE - NAVBAR
   ============================================ */

body.dark-mode .top-bar {
    background-color: #0f172a;
}

body.dark-mode .top-bar a {
    color: #94a3b8 !important;
}

body.dark-mode .top-bar a:hover {
    color: #f1f5f9 !important;
}

body.dark-mode .sticky-nav.js-sticky-header {
    background-color: #1e293b;
}

body.dark-mode .site-nav {
    background: #0f172a !important;
}

body.dark-mode .site-menu>li>a {
    color: #cbd5e1 !important;
}

body.dark-mode .site-menu>li>a:hover,
body.dark-mode .site-menu>li.active>a {
    color: #ffffff !important;
}

body.dark-mode .site-mobile-menu {
    background-color: #1e293b;
}

body.dark-mode .site-mobile-menu a {
    color: #f1f5f9;
}

/* Sticky wrapper when scrolled */
body.dark-mode .sticky-wrapper .site-navbar {
    background-color: #1e293b !important;
}

body.dark-mode .sticky-wrapper .site-navbar .site-menu-toggle {
    color: #f1f5f9 !important;
}

body.dark-mode .sticky-wrapper .site-navbar .site-logo a {
    color: #f1f5f9 !important;
}

body.dark-mode .sticky-wrapper .site-navbar .site-menu>li>a {
    color: #cbd5e1 !important;
}

body.dark-mode .sticky-wrapper .site-navbar .site-menu>li>a:hover,
body.dark-mode .sticky-wrapper .site-navbar .site-menu>li>a.active {
    color: #ffffff !important;
}

body.dark-mode .sticky-wrapper.is-sticky .burger:before,
body.dark-mode .sticky-wrapper.is-sticky .burger span,
body.dark-mode .sticky-wrapper.is-sticky .burger:after {
    background: #f1f5f9 !important;
}

/* ===== CRITICAL: Sticky navbar when scrolled in dark mode ===== */
body.dark-mode .sticky-wrapper.is-sticky .site-navbar {
    background: #1e293b !important;
    border-bottom: 1px solid #334155 !important;
}

body.dark-mode .sticky-wrapper.is-sticky .site-navbar .site-logo a {
    color: #f1f5f9 !important;
}

body.dark-mode .sticky-wrapper.is-sticky .site-navbar .site-menu>li>a {
    color: #cbd5e1 !important;
}

body.dark-mode .sticky-wrapper.is-sticky .site-navbar .site-menu>li>a:hover,
body.dark-mode .sticky-wrapper.is-sticky .site-navbar .site-menu>li>a.active,
body.dark-mode .sticky-wrapper.is-sticky .site-navbar .site-menu>li.active>a {
    color: #60a5fa !important;
}

/* ============================================
   THEME TOGGLE BUTTON - DESKTOP FIX
   ============================================ */

/* Ensure toggle is visible and clickable on desktop */
.theme-toggle-item {
    display: inline-flex !important;
    align-items: center;
    vertical-align: middle;
    margin-right: 10px;
}

.theme-toggle-btn {
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 1000;
}

/* User welcome section in navbar */
body.dark-mode .user-info,
body.dark-mode .welcome-message {
    color: #cbd5e1 !important;
}

body.dark-mode .user-welcome-section strong {
    color: #f1f5f9 !important;
}

/* ============================================
   DARK MODE - COURSE CARDS
   ============================================ */

body.dark-mode .course-card {
    background: var(--card-bg);
    border-color: var(--border-color);
    box-shadow: 0 4px 20px var(--shadow-color);
}

body.dark-mode .course-card:hover {
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);
}

body.dark-mode .course-title {
    color: var(--text-primary);
}

body.dark-mode .course-codes {
    color: var(--text-muted);
}

body.dark-mode .course-value {
    background: var(--bg-secondary);
    color: var(--text-secondary);
    border-color: #3b82f6;
}

body.dark-mode .course-footer {
    border-color: var(--border-color);
}

body.dark-mode .price-amount {
    color: var(--text-primary);
}

body.dark-mode .course-badge {
    background: rgba(30, 41, 59, 0.95);
    color: #f1f5f9;
}

/* ============================================
   DARK MODE - MODAL
   ============================================ */

body.dark-mode .modal-content,
body.dark-mode .subscribe-modal-content {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

body.dark-mode .modal-title {
    color: var(--text-primary);
}

body.dark-mode .modal-message {
    color: var(--text-secondary);
}

body.dark-mode .selected-course-name {
    background: #1e3a5f;
    color: #60a5fa;
}

body.dark-mode .form-control {
    background-color: var(--bg-secondary);
    border-color: var(--border-color);
    color: var(--text-primary);
}

body.dark-mode .form-control::placeholder {
    color: var(--text-muted);
}

/* ============================================
   DARK MODE - FOOTER
   ============================================ */

body.dark-mode .site-footer {
    background-color: #0f172a !important;
}

body.dark-mode .site-footer h3,
body.dark-mode .site-footer a {
    color: #f1f5f9;
}

body.dark-mode .site-footer p,
body.dark-mode .site-footer .text-muted {
    color: #94a3b8 !important;
}

/* ============================================
   DARK MODE - BUTTONS
   ============================================ */

body.dark-mode .btn-light {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

body.dark-mode .btn-outline-primary {
    border-color: #3b82f6;
    color: #60a5fa;
}

body.dark-mode .btn-outline-primary:hover {
    background-color: #3b82f6;
    color: #ffffff;
}

/* ============================================
   DARK MODE - MISC ELEMENTS
   ============================================ */

body.dark-mode .ul-check li::before {
    color: #60a5fa;
}

body.dark-mode .line-bottom::after {
    background-color: #3b82f6;
}

body.dark-mode .feature {
    background-color: var(--card-bg);
}

body.dark-mode .icon-wrap.bg-primary {
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%) !important;
}

/* Dark mode transition */
body,
body * {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

/* ============================================
   DARK MODE - HOMEPAGE SPECIFIC ELEMENTS
   ============================================ */

/* White backgrounds must become dark */
body.dark-mode .bg-white {
    background-color: var(--card-bg) !important;
}

/* Program cards (IT, CS, DS) */
body.dark-mode .program-card {
    background: var(--bg-secondary) !important;
}

body.dark-mode .program-card h5 {
    color: #60a5fa !important;
}

/* Shadow adjustments */
body.dark-mode .shadow,
body.dark-mode .shadow-sm {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4) !important;
}

/* Text dark class */
body.dark-mode .text-dark {
    color: #cbd5e1 !important;
}

/* Lead text */
body.dark-mode .lead {
    color: var(--text-secondary);
}

/* Make toggle visible on desktop */
.site-menu .theme-toggle-item {
    display: inline-flex !important;
    align-items: center;
    vertical-align: middle;
}

/* Dark mode navbar */
body.dark-mode .site-nav {
    background: #0f172a !important;
}

body.dark-mode .sticky-nav {
    background-color: #1e293b !important;
}

/* Override inline styles for headings */
body.dark-mode h2[style*="color"],
body.dark-mode h3[style*="color"],
body.dark-mode h4[style*="color"],
body.dark-mode h5[style*="color"],
body.dark-mode h6[style*="color"] {
    color: var(--text-primary) !important;
}

body.dark-mode p[style*="color"] {
    color: var(--text-secondary) !important;
}

body.dark-mode strong.text-dark,
body.dark-mode span.text-dark {
    color: #e2e8f0 !important;
}

/* Section with light gray background */
body.dark-mode .untree_co-section[style*="background-color: #f8fafc"],
body.dark-mode div[style*="background-color: #f8fafc"] {
    background-color: var(--bg-secondary) !important;
}

/* White cards with shadow */
body.dark-mode div.bg-white,
body.dark-mode div[class*="bg-white"] {
    background-color: var(--card-bg) !important;
    border-color: var(--border-color) !important;
}

/* ============================================
   DARK MODE - FEATURE SECTION
   ============================================ */

/* Feature box */
body.dark-mode .feature {
    background-color: transparent;
}

body.dark-mode .feature h3 {
    color: #f1f5f9 !important;
}

body.dark-mode .feature p {
    color: #94a3b8 !important;
}

/* All paragraphs in sections */
body.dark-mode .untree_co-section p,
body.dark-mode .container p {
    color: var(--text-secondary);
}

/* All h3 headings */
body.dark-mode h3 {
    color: var(--text-primary);
}

/* Badge styling */
body.dark-mode .badge-primary {
    background-color: #3b82f6 !important;
}

/* List items */
body.dark-mode .ul-check li {
    color: var(--text-secondary);
}

/* Section title */
body.dark-mode .section-title h2 {
    color: var(--text-primary) !important;
}

/* ============================================
   DARK MODE - GOLDEN GUARANTEE SECTION
   ============================================ */

/* Override inline background: white */
body.dark-mode div[style*="background: white"],
body.dark-mode div[style*="background:white"],
body.dark-mode div[style*="background:#fff"],
body.dark-mode div[style*="background: #fff"] {
    background: var(--card-bg) !important;
}

/* Golden section outer container */
body.dark-mode [style*="background-color: #fffdf2"] {
    background-color: var(--bg-secondary) !important;
}

/* Golden guarantee heading and text */
body.dark-mode div[style*="border: 2px dashed"] h2 {
    color: #fbbf24 !important;
}

body.dark-mode div[style*="border: 2px dashed"] p {
    color: var(--text-secondary) !important;
}

body.dark-mode div[style*="border: 2px dashed"] strong {
    color: var(--text-primary) !important;
}

/* Golden icon color stays gold */
body.dark-mode .fa-shield-alt[style*="color: #d4af37"] {
    color: #fbbf24 !important;
}


/* ============================================
   FOOTER COLOR FIX (ID-BASED SUPREMACY)
   ============================================ */

/* Using ID selector (#main-footer) gives 1-0-0 specificity */
/* This overrides classes, pseudo-classes, and attributes */
#main-footer,
#main-footer * {
    color: #ffffff !important;
}

#main-footer a,
#main-footer h3,
#main-footer p,
#main-footer li,
#main-footer span,
#main-footer .text-muted,
#main-footer .copyright {
    color: #ffffff !important;
}

#main-footer a:hover {
    color: #ffffff !important;
    opacity: 0.8;
}