/* Shared UI/UX foundation, version 27, for public, account, and admin layouts. */

/* Reserve media geometry before native lazy images and carousel plugins settle. */
main img.lazy:not([width]):not([height]) {
    aspect-ratio: auto 4 / 3;
}

main .testimonial_slide img.lazy:not([width]):not([height]),
main .testimonial-carousel img.lazy:not([width]):not([height]),
main .team_slide img.lazy:not([width]):not([height]),
main .team-carousel img.lazy:not([width]):not([height]) {
    aspect-ratio: auto 1 / 1;
}

main .partner_slide img.lazy:not([width]):not([height]),
main .partner-carousel img.lazy:not([width]):not([height]),
main .brand-carousel-active img.lazy:not([width]):not([height]),
main .sponsor-slide img.lazy:not([width]):not([height]) {
    aspect-ratio: auto 3 / 2;
}

main .owl-carousel:not(.owl-loaded) {
    display: block;
}

main .hero2-carousel:not(.owl-loaded) > *:not(:first-child),
main .common-carousel:not(.owl-loaded) > *:not(:first-child),
main .hero_slide_v1:not(.slick-initialized) > .single_slider:not(:first-child),
main .hero-carousel-active:not(.slick-initialized) > .single-carousel-active:not(:first-child),
main .service-slick:not(.slick-initialized) > *:not(:first-child),
main .project-slick:not(.slick-initialized) > *:not(:first-child),
main .team-slick:not(.slick-initialized) > *:not(:first-child),
main .pricing-slick:not(.slick-initialized) > *:not(:first-child),
main .blog-slick:not(.slick-initialized) > *:not(:first-child),
main .course-slide:not(.slick-initialized) > *:not(:first-child),
main .featured-slide:not(.slick-initialized) > *:not(:first-child),
main .categories-slide:not(.slick-initialized) > *:not(:first-child),
main .shop-categories-slide:not(.slick-initialized) > *:not(:first-child),
main .sponsor-slide:not(.slick-initialized) > *:not(:first-child) {
    display: none;
}

.theme-gym main .hero_slide_v1,
.theme-gym main .hero_slide_v1 > .single_slider {
    min-height: 829px;
}

@media (min-width: 768px) {
    .theme-gym main .hero_slide_v1,
    .theme-gym main .hero_slide_v1 > .single_slider {
        min-height: 937px;
    }
}

@media (max-width: 991px) {
    html.ux-loader-fallback body:not(:has(.mobile_menu.mean-container)):not(:has(.slicknav_menu)) .primary_menu,
    html.ux-loader-fallback body:not(:has(.mobile_menu.mean-container)):not(:has(.slicknav_menu)) .primary-menu,
    html.ux-loader-fallback body:not(:has(.mobile_menu.mean-container)):not(:has(.slicknav_menu)) nav.main-menu {
        display: block !important;
    }

    html.ux-loader-fallback body:not(:has(.mobile_menu.mean-container)):not(:has(.slicknav_menu)) .main-menu > ul {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    html.ux-loader-fallback body:not(:has(.mobile_menu.mean-container)):not(:has(.slicknav_menu)) .main-menu > ul > li {
        display: block !important;
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    html.ux-loader-fallback body:not(:has(.mobile_menu.mean-container)):not(:has(.slicknav_menu)) .main-menu li ul,
    html.ux-loader-fallback body:not(:has(.mobile_menu.mean-container)):not(:has(.slicknav_menu)) .main-menu li .mega-menu {
        display: none !important;
    }
}
.ux-skip-link {
    position: fixed;
    top: 0.75rem;
    left: 0.75rem;
    z-index: 100000;
    max-width: calc(100vw - 1.5rem);
    padding: 0.75rem 1rem;
    border: 2px solid currentColor;
    border-radius: 0.25rem;
    background: #fff;
    color: #111827 !important;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    transform: translateY(calc(-100% - 1rem));
    transition: transform 0.15s ease-out;
}

[dir="rtl"] .ux-skip-link {
    right: 0.75rem;
    left: auto;
}

.ux-skip-link:focus,
.ux-skip-link:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 2px;
    box-shadow: 0 0 0 5px #111827;
    transform: translateY(0);
}

#main-content:focus {
    outline: none;
}

.ux-loader-fallback-hidden {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.main-menu li:focus-within > ul.sub-menu {
    top: 100%;
    visibility: visible;
    opacity: 1;
    transform: scale(1);
}

.main-menu li.submenus:focus-within > ul {
    display: block;
}

.main-menu li.dropdown:focus-within > .dropdown-lists,
.top-header-language li:focus-within > .language-dropdown,
.language:focus-within > .language-dropdown {
    top: 100%;
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}

header nav a[aria-current="page"],
header nav a.ux-current-ancestor,
.header-area nav a[aria-current="page"],
.header-area nav a.ux-current-ancestor {
    text-decoration: underline !important;
    text-decoration-thickness: 0.14em !important;
    text-underline-offset: 0.35em !important;
}

.mega-dropdown-content .mega-tab .ux-menu-category a {
    display: block;
    margin: 16px 0 13px;
    padding: 0;
    font-size: 16px;
    text-align: left;
}

.mega-dropdown-content .mega-tab .ux-menu-category a::before,
.mega-dropdown-content .mega-tab .ux-menu-category a::after {
    display: none;
}

.sidebar-main-wrapper .mega-row .ux-menu-category {
    margin: 10px 0;
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
}

.sidebar-main-wrapper .mega-row .ux-menu-category a,
.sidebar-main-wrapper .box-item .box-info .ux-menu-item-title a {
    padding: 0 !important;
    color: #fff !important;
}

.sidebar-main-wrapper .box-item .box-info .ux-menu-item-title {
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.ux-rating-option {
    min-width: 44px;
    min-height: 44px;
    padding: 8px 4px;
    border: 0 !important;
    background: transparent !important;
    color: inherit;
    line-height: 1;
    appearance: none;
}

@media (max-width: 991px) {
    .ux-touch-target {
        box-sizing: border-box !important;
        min-width: 44px !important;
        min-height: 44px !important;
    }

    a.ux-touch-target-inline,
    button.ux-touch-target-inline,
    [role="button"].ux-touch-target-inline {
        display: inline-flex !important;
        align-items: center;
    }

    a.ux-touch-target-block,
    button.ux-touch-target-block,
    [role="button"].ux-touch-target-block {
        display: flex !important;
        align-items: center;
    }

    a[aria-label].ux-touch-target,
    button[aria-label].ux-touch-target {
        justify-content: center;
    }

    .pagination {
        flex-wrap: wrap;
        justify-content: center;
        row-gap: 0.5rem;
    }
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
    outline: 3px solid #fff !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 5px #111827 !important;
}

/* Keep configurable brand colors readable without discarding their hue. */
body .base-color {
    color: var(--ux-brand-on-light, #7f1d1d) !important;
}

input[type="submit"],
button[type="submit"] {
    color: var(--ux-text-on-brand) !important;
}

input:not([type="button"]):not([type="checkbox"]):not([type="color"]):not([type="file"]):not([type="hidden"]):not([type="image"]):not([type="radio"]):not([type="range"]):not([type="reset"]):not([type="submit"]),
select,
textarea {
    border: 1px solid #767676 !important;
}

input[type="submit"]:hover,
input[type="submit"]:focus,
button[type="submit"]:hover,
button[type="submit"]:focus {
    color: var(--ux-brand-on-light) !important;
}

/* Disabled controls remain visibly distinct without relying on low opacity. */
button:disabled,
input:disabled,
select:disabled,
textarea:disabled,
[role="button"][aria-disabled="true"],
a[aria-disabled="true"] {
    border-color: #767676 !important;
    background-color: #f5f5f5 !important;
    color: #595959 !important;
    cursor: not-allowed !important;
    opacity: 1 !important;
}

.ux-empty-state {
    width: 100%;
    margin: 1.5rem 0;
    padding: clamp(2rem, 6vw, 4rem) 1.25rem;
    border: 2px dashed #767676;
    border-radius: 0.5rem;
    background: #f8fafc;
    color: #374151;
    text-align: center;
}

.ux-empty-state__icon {
    display: inline-flex;
    width: 3rem;
    height: 3rem;
    margin-bottom: 1rem;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #e5e7eb;
    color: #374151;
    font-size: 1.25rem;
}

.ux-empty-state__title {
    margin-bottom: 0.5rem;
    color: #111827 !important;
}

.ux-empty-state p {
    margin: 0 auto;
    color: #374151 !important;
}

.ux-empty-state__action {
    display: inline-flex;
    min-height: 44px;
    margin-top: 1.25rem;
    padding: 0.65rem 1rem;
    align-items: center;
    border: 2px solid #0056b3;
    border-radius: 0.25rem;
    background: #fff;
    color: #0056b3 !important;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 0.16em;
}

main h1,
main h2,
main h3,
main h4,
main h5,
main h6,
main p,
main li,
main label,
main a,
main button,
main .alert,
main [role="status"],
main [role="alert"] {
    overflow-wrap: anywhere;
    word-break: normal;
}

.subscribe-section span {
    color: var(--ux-brand-on-dark, #fca5a5) !important;
}

.header_v1 {
    background-color: rgba(9, 9, 11, 0.78);
}

.breadcrumb-area-overlay {
    background-color: #09090b !important;
    opacity: 0.72 !important;
}

.hero_slide_v1 .single_slider .banner_content p span {
    padding: 0.08em 0.25em;
    border-radius: 0.12em;
    background-color: rgba(9, 9, 11, 0.9);
    color: var(--ux-brand-on-dark, #fca5a5) !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.breadcrumb-txt nav {
    display: inline-block;
    padding: 0.35rem 0.75rem;
    border-radius: 0.25rem;
    background-color: rgba(9, 9, 11, 0.9);
}

.subscribe-form input[type="submit"],
.subscribe-form button[type="submit"],
.pagination-nav li.page-item.active a,
.package-order,
a.readmore-btn {
    color: var(--ux-text-on-brand, #fff) !important;
}

.subscribe-form input[type="submit"],
.subscribe-form button[type="submit"],
.footer_v1 button[type="submit"] {
    border: 2px solid var(--ux-brand-on-dark, #fca5a5) !important;
}

.js-cookie-consent-agree.cookie-consent__agree {
    border: 2px solid #fff !important;
}

.subscribe-form input[type="submit"]:hover,
.subscribe-form input[type="submit"]:focus,
.subscribe-form button[type="submit"]:hover,
.subscribe-form button[type="submit"]:focus {
    color: var(--ux-brand-on-light, #7f1d1d) !important;
}

a.see-more {
    color: #0056b3 !important;
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

.footer_v1 .footer_top .widget_box p,
.footer_v1 .footer_top .widget_box a:not(.finlance_btn) {
    color: #c5c5c8 !important;
}

.footer_v1 .footer_top .widget_box .widget_title {
    color: #fff !important;
}

/* Theme-scoped contrast corrections for the real inactive-theme surfaces. */
.theme-default .services-area span.section-title,
.theme-default .service-categories span.section-title,
.theme-default .approach-summary span.section-title,
.theme-default .case-section span.section-title,
.theme-default .testimonial-section span.section-title,
.theme-default .pricing-tables span.section-title,
.theme-default .blog-section span.section-title {
    color: #595959 !important;
}

.theme-default .intro-txt span.section-title {
    color: var(--ux-text-on-brand, #fff) !important;
}

.theme-default .footer-section a.see-more,
.theme-dark a.see-more,
.theme-dark .single-category .text a.readmore,
.theme-dark .member-info small,
.theme-dark .blog-txt .date,
.theme-dark .blog-txt .date small,
.theme-dark .blog-txt .date .username {
    color: #c5c5c8 !important;
}

.theme-cleaning .hero-content > span,
.theme-construction .feature_v1 .finlance_content .h4,
.theme-logistic .feature_v1 .logistics_content .h4,
.theme-logistic .service_v1 .logistics_content .h4 {
    color: #fff !important;
}

/* Deterministic scrims for theme sections whose text sits over configurable imagery. */
.theme-default .statistics-section::before,
.theme-default .cta-section::before,
.theme-dark .statistics-section::before,
.theme-dark .cta-section::before,
.theme-cleaning .single-carousel-active::before,
.theme-logistic .hero_slide_v1 .single_slider::before,
.theme-lawyer .lawyer_fun_v1::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(9, 9, 11, 0.82);
    content: "";
}

.theme-cleaning .single-carousel-active,
.theme-lawyer .lawyer_fun_v1,
.theme-ecommerce .hero-slide .single-hero {
    position: relative;
}

.theme-cleaning .single-carousel-active > .container,
.theme-logistic .hero_slide_v1 .single_slider > .container,
.theme-lawyer .lawyer_fun_v1 > .container,
.theme-ecommerce .hero-slide .single-hero > .container {
    position: relative;
    z-index: 1;
}

.theme-ecommerce .hero-slide .single-hero::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(255, 255, 255, 0.84);
    content: "";
}

.theme-car .about_v1 .section_title > span,
.theme-car .about_v1 .section_title > h2,
.theme-car .cta_v1 .section_title > h2 {
    display: inline-block;
    padding: 0.12em 0.3em;
    border-radius: 0.15em;
    background: rgba(255, 255, 255, 0.94);
    color: #111827 !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.theme-car .team_v1 .finlance_content p {
    color: #595959 !important;
}

.theme-lawyer .hero_slide_v1 .banner_content > span {
    display: inline-block;
    padding: 0.08em 0.25em;
    border-radius: 0.12em;
    background: #09090b;
    color: var(--ux-brand-on-dark, #fca5a5) !important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.theme-lawyer .hero_slide_v1 .banner_content {
    box-sizing: border-box;
    width: fit-content;
    max-width: 100%;
    padding: 1.25rem 1.5rem;
    border-radius: 0.25rem;
    background: #09090b;
}

.theme-lawyer .hero_slide_v1 .scroll_down a {
    display: inline-block;
    padding: 0.2em 0.45em;
    border-radius: 0.2em;
    background: #09090b;
    color: #fff !important;
    opacity: 1;
}

.theme-logistic .service_v1 .section_title > span,
.theme-lawyer .footer_v1 .contact_widget p > span {
    color: var(--ux-brand-on-dark, #fca5a5) !important;
}

.theme-logistic .service_v1 a.see-more,
.theme-logistic .footer_v1 .copyright_text p {
    color: #c5c5c8 !important;
}

.cookie-consent__message {
    color: #fff !important;
}

@media (min-width: 992px) {
    .theme-ecommerce .header-navigation .main-menu > ul > li > a {
        color: #595959 !important;
    }
}

.theme-ecommerce .features-box .info .h5,
.theme-ecommerce .categories-item .cat-content .h5,
.theme-ecommerce .featured-tabs .nav-link,
.theme-ecommerce .blog-grid-section .post-meta a,
.theme-ecommerce .plus-footer .footer-widget p,
.theme-ecommerce .plus-footer .footer-widget a {
    color: #595959 !important;
}

.theme-ecommerce .js-cookie-consent-agree.cookie-consent__agree {
    color: #111827 !important;
}

body .footer_v1 .footer_top .base-color,
.footer_v1 .footer_top a.see-more {
    color: var(--ux-brand-on-dark, #fca5a5) !important;
}

.blog-txt .date,
.blog-txt .date small {
    color: #595959 !important;
}

.contact-form-section span.section-title {
    color: #5b5d66;
}

.product-area .shop-category .category-item ul li a,
.product-area .shop-tag .tag-item ul li a {
    color: #59616a;
}

.logistics_pricing .pricing_slide .filter-nav .filter-btn li:hover,
.logistics_pricing .pricing_slide .filter-nav .filter-btn li:focus,
.logistics_pricing .pricing_slide .filter-nav .filter-btn li.active {
    color: #006b3c;
}

.course-item .course-img .course-overlay {
    background: linear-gradient(to top, rgba(0, 0, 0, 0.78), rgba(0, 0, 0, 0.12) 70%);
}

.course-item .course-content .course-admin-price .price span {
    color: #006b3c;
}

.course-item .course-content .course-admin-price .price span:hover {
    background: #006b3c;
    color: #fff;
}

main.login-page .login-form button[type="submit"] {
    color: #111827 !important;
}

main.login-page .form a.forget-link {
    color: #78baff;
}

main.login-page {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 600px;
    padding-right: 1rem;
    padding-left: 1rem;
}

main.login-page .form {
    box-sizing: border-box;
    width: 100%;
}

@media (max-width: 991px) {
    .mean-container a.meanmenu-reveal {
        width: 22px;
        height: 22px;
        padding: 11px !important;
    }

    .slicknav_btn,
    .navbar-toggler,
    .navbar-close {
        min-width: 44px !important;
        min-height: 44px !important;
        border: 0;
    }
}

@media (forced-colors: active) {
    .ux-skip-link,
    a:focus-visible,
    button:focus-visible,
    input:focus-visible,
    select:focus-visible,
        textarea:focus-visible,
        [tabindex]:not([tabindex="-1"]):focus-visible {
        outline: 3px solid CanvasText !important;
        box-shadow: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html:focus-within {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-delay: 0s !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-delay: 0s !important;
        transition-duration: 0.01ms !important;
    }
}
