﻿@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&display=swap");

:root {
    --primary-green: #1b8354;
    --primary-green-light: #26b977;
    --primary-green-dark: #074d31;
    --secondary-green: #067647;
    --footer-green: #074d31;
    --light-green-accent: #e7f4ee;
    --light-green-bg: #f3fcf6;
    --border-color: #d2d6db;
    --text-primary: #161616;
    --text-secondary: #6c757d;
    --darkblue-bg: #1e2a36;
    --font-family: "IBM Plex Sans Arabic", sans-serif;
    --bs-body-text-align: right;
    --bs-accordion-border-radius: 0.4rem;
    --info-color: #5899f3;
    --success-color: #4fb486;
    --warning-color: #e6944c;
    --error-color: #e46b61;
    --netural-color: #ebedf0;
    --blue-text: #384250;
    /*added by haya for badge*/
    --kt-light: #f5f8fa;
    --kt-primary: #009ef7;
    --kt-secondary: #E4E6EF;
    --kt-success: #50cd89;
    --kt-info: #7239ea;
    --kt-warning: #ffc700;
    --kt-danger: #f1416c;
    --kt-dark: #181C32;
    --kt-primary-active: #0095e8;
    --kt-secondary-active: #B5B5C3;
    --kt-light-active: #eff2f5;
    --kt-success-active: #47be7d;
    --kt-info-active: #5014d0;
    --kt-warning-active: #f1bc00;
    --kt-danger-active: #d9214e;
    --kt-dark-active: #131628;
    --kt-primary-light: #f1faff;
    --kt-secondary-light: #f5f8fa;
    --kt-success-light: #e8fff3;
    --kt-info-light: #f8f5ff;
    --kt-warning-light: #fff8dd;
    --kt-danger-light: #fff5f8;
    --kt-dark-light: #eff2f5;
    --kt-primary-inverse: #ffffff;
    --kt-secondary-inverse: #3F4254;
    --kt-light-inverse: #7E8299;
    --kt-success-inverse: #ffffff;
    --kt-info-inverse: #ffffff;
    --kt-warning-inverse: #ffffff;
    --kt-danger-inverse: #ffffff;
    --kt-dark-inverse: #ffffff;
}

html {
    font-size: 62.5%;
}

body {
    font-family: var(--font-family);
    background-color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
}

a {
    text-decoration: none;
}

    a:hover {
        text-decoration: none;
        color: var(--primary-green);
    }

form {
    width: 100%;
}

.loader_wrapper {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 9999;
    background: rgba(255, 255, 255, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    display: none;
}

    .loader_wrapper .load-wrapp {
        width: 100%;
        height: 100%;
        text-align: center;
        position: relative;
        display: block;
    }

        .loader_wrapper .load-wrapp svg {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 125px;
            height: 125px;
        }

            .loader_wrapper .load-wrapp svg path {
                fill: var(--primary-green);
            }

        .loader_wrapper .load-wrapp img {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -55%);
            width: 65px;
        }

        .loader_wrapper .load-wrapp h4 {
            position: absolute;
            top: 61%;
            left: 50%;
            transform: translate(-50%, -50%);
            color: var(--primary-green);
            font-size: 1.2rem;
        }

@media (prefers-reduced-motion: reduce) {
    .loader_wrapper .load-wrapp svg path {
        animation: none;
    }
}

.header-sticky {
    position: sticky;
    top: 0;
    z-index: 1030;
    width: 100%;
    background: #fff;
    box-shadow: none;
    transition: box-shadow 0.3s ease;
}

    .header-sticky.is-sticky {
        box-shadow: 0 5px 16px rgba(0, 0, 0, 0.1);
    }

.topbar {
    background-color: #f3f4f6;
    border-bottom: 1px solid var(--border-color);
    padding: 0;
    position: relative;
}

    .topbar .container-fluid {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

.logged-out-top {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1.5rem;
    width: 100%;
}

.logged-in-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.user-info {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.user-details {
    text-align: right;
}

.user-name {
    font-weight: 700;
    font-size: 1.4rem;
    color: var(--primary-green);
    margin: 2px 0;
}

.user-fullname {
    font-weight: 700;
    font-size: 1.2rem;
    color: #9b9ba5;
}

.user-details {
    display: flex;
    align-items: center;
    gap: 2rem;
    margin: 0.5rem 0;
}

    .user-details:after {
        content: "";
        display: block;
        width: 1px;
        height: 2.5rem;
        background-color: black;
    }

.user-type {
    font-size: 1.2rem;
    color: #fff;
    background-color: #401b5e;
    padding: 1rem;
    border-radius: 1.5rem;
}

.user-menu {
    display: flex;
    gap: 2rem;
    align-items: center;
}

    .user-menu a {
        font-size: 1.5rem;
        color: var(--primary-green);
    }

.top-actions {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.lang-btn {
    color: var(--primary-green);
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: 500;
}

.login-btn {
    background-color: var(--primary-green);
    color: white !important;
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: 500;
    padding: 1.2rem 2rem;
    border-radius: 0;
    border-bottom: 1px solid #d3f0d6;
    transition: background-color 0.3s ease;
}

    .login-btn:hover {
        background-color: var(--secondary-green);
        color: white !important;
    }

.logout-btn {
    color: #b93d35;
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: 500;
    padding: 0.8rem 0rem;
    border-radius: 0.4rem;
    transition: background-color 0.3s ease;
    display: flex;
    align-items: center;
    gap: 1rem;
    position: relative;
    z-index: 1;
    transition: 3s fade-out;
}

    .logout-btn:before {
        content: '';
        position: absolute;
        background: #ffdfde;
        left: -7.5%;
        top: 0;
        width: 115%;
        height: 100%;
        z-index: -1;
        border-radius: 0.6rem;
        visibility: hidden;
        transition: 0.5s fade-out;
    }

    .logout-btn:hover:before {
        visibility: visible;
    }

    .logout-btn:hover {
        color: #b93d35;
    }

.notification-btn {
    color: var(--text-primary);
    font-size: 1.8rem;
    text-decoration: none;
    transition: color 0.3s ease;
}

    .notification-btn:hover {
        color: var(--primary-green);
    }

.main-nav {
    background-color: #fff;
    padding: 0;
}

    .main-nav .navbar {
        padding-block-end: 0;
        padding: 0;
    }

        .main-nav .navbar .navbar-nav {
            column-gap: 0.5em;
            padding: 0;
        }

            .main-nav .navbar .navbar-nav .nav-item {
                position: relative;
                transition: all 0.3s ease;
                border-radius: 0.225rem;
            }

                .main-nav .navbar .navbar-nav .nav-item .nav-link {
                    font-size: 1.6rem;
                    line-height: 2.4rem;
                    color: var(--text-primary);
                    padding-inline: 1em;
                    padding-block: 1.225em;
                    border-radius: 0.225rem;
                    transition: all 0.3s ease;
                }

                .main-nav .navbar .navbar-nav .nav-item a img {
                    margin-inline-end: 0.6rem;
                }

                .main-nav .navbar .navbar-nav .nav-item::before {
                    content: "";
                    position: absolute;
                    bottom: 0;
                    height: 0;
                    background-color: transparent;
                    right: 0.5rem;
                    left: 0.5rem;
                    border-radius: 6.25rem;
                    display: flex;
                    align-self: center;
                    transition: all 0.3s ease;
                }

            .main-nav .navbar .navbar-nav .dropdown-menu {
                border-radius: 0;
                padding: var(--spacing-3xl, 1.5rem);
                margin-top: 0;
                box-shadow: 0 12px 16px rgba(16, 24, 40, 0.08), 0 4px 6px rgba(16, 24, 40, 0.03);
                border: 0;
                background-color: #fff;
            }

.nav-item.active {
    background-color: var(--primary-green) !important;
    color: white !important;
}

    .nav-item.active > a:not(.dropdown-item) {
        color: #fff !important;
    }

.active .dropdown-toggle::after {
    filter: invert(1);
}

.main-nav .navbar .navbar-nav > li.nav-item:hover {
    color: var(--text-primary);
    background-color: #f3f4f6;
    border-radius: 0.225rem;
}

.main-nav .navbar .navbar-nav > li.nav-item.active > .nav-link {
    color: #fff !important;
}

.main-nav .navbar .navbar-nav > li.nav-item:hover::before {
    background-color: #9da4ae;
    height: 0.5rem;
    display: flex;
}

@media (min-width: 768px) {
    .navbar-icon {
        padding: 1.3rem 0;
    }

    .main-nav .navbar .navbar-nav > li.nav-item.active::before {
        background-color: #54c08a;
        height: 0.5rem;
        display: flex;
    }

    .main-nav .navbar .navbar-nav > li.nav-item:hover.dropdown .dropdown-menu {
        display: block;
    }
}

.nav-search .input-holder {
    position: relative;
}

.nav-search .form-control {
    border-radius: 0.4rem;
    border: 1px solid var(--border-color);
    padding-right: 4rem;
    font-size: 1.6rem;
    height: 4rem;
}

.nav-search .search-box-toggle {
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translateY(-50%);
    cursor: pointer;
    width: 2rem;
}

.dropdown-item {
    color: var(--text-primary) !important;
    font-size: 1.6rem;
    line-height: 24px;
    padding-inline: 1em;
    padding-block: 0.5em;
    border-radius: 0.4rem;
    text-align: start;
}

.dropdown-toggle::after {
    background-image: url(../img/icons/down-arrow.svg);
    width: 1.5rem;
    border: unset;
    height: 1rem;
    background-repeat: no-repeat;
    background-position: center center;
}

.logged-out-view {
    display: flex !important;
}

/*.logged-in-view {
  display: none !important;
}*/

.logged-in .logged-out-view {
    display: none !important;
}

.logged-in .logged-in-view {
    display: flex !important;
}

.offcanvas {
    background-color: #fff;
}

.close-offcanvas {
    padding: 1rem;
}

    .close-offcanvas .btn {
        color: var(--text-primary);
        font-size: 1.6rem;
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }

.nav-search.bg-white {
    padding: 1rem;
    margin-bottom: 1rem;
}

.offcanvas .navbar-nav .nav-link {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    color: var(--text-primary);
    font-size: 1.6rem;
}

    .offcanvas .navbar-nav .nav-link i {
        font-size: 2rem;
    }

@media (max-width: 991px) {
    .navbar-toggler {
        border: none;
        padding: 0;
    }

    .navbar-icon {
        padding: 1.3rem 0;
        margin: 0.5rem auto;
    }

    .nav-search .input-holder {
        width: 100%;
    }
}

.navbar-brand img {
    max-height: 65px;
    max-width: 150px;
}

.nav-search-trigger .btn {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    background-color: #f3f4f6;
    border: 1px solid var(--border-color, #e5e7eb);
    padding: 0.8rem 1.5rem;
    border-radius: 0.4rem;
    font-size: 1.6rem;
    color: var(--text-primary);
    text-decoration: none;
    transition: background-color 0.3s;
}

    .nav-search-trigger .btn:hover {
        background-color: #e5e7eb;
    }

    .nav-search-trigger .btn img {
        width: 1.8rem;
        height: 1.8rem;
    }

.full-width-search-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: white;
    padding: 2.5rem 10rem 0;
    border-bottom: 1px solid var(--border-color);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    z-index: 1020;
    border-top: 1px solid var(--border-color);
    min-height: 292px;
    align-items: center;
    border-radius: 0 0 1.6rem 1.6rem;
}

    .full-width-search-menu.is-open {
        display: flex;
    }

    .full-width-search-menu .container {
        position: relative;
        text-align: right;
    }

.search-menu-close {
    position: absolute;
    left: 2%;
    top: -40%;
    font-size: 3.5rem;
    color: var(--text-primary);
    text-decoration: none;
    line-height: 1;
}

    .search-menu-close:hover {
        color: #333;
    }

.search-input-group {
    display: flex;
    /* width: 80%; */
    margin: 0 auto;
    justify-content: center;
}

    .search-input-group img {
        position: relative;
        right: 2%;
    }

    .search-input-group input[type="search"] {
        flex-grow: 1;
        border: 1px solid var(--border-color);
        border-left: 1px solid var(--border-color);
        font-size: 1.6rem;
        padding: 1.2rem 4.2rem;
        border-radius: 0.4rem;
        max-width: 100%;
    }

    .search-input-group button {
        border: 1px solid var(--primary-green, #008000);
        background-color: var(--primary-green, #008000);
        color: white;
        font-size: 1.6rem;
        padding: 1.2rem 2.5rem;
        cursor: pointer;
        border-radius: 0.4rem;
        margin-inline-start: 10px;
        font-weight: 500;
    }

.search-suggestions {
    margin-top: 4.5rem;
}

    .search-suggestions strong {
        margin-left: 1rem;
    }

    .search-suggestions .suggestion-item {
        color: var(--text-primary);
        background-color: #f3f4f6;
        padding: 0.5rem 1.5rem;
        border-radius: 0.4rem;
        text-decoration: none;
        margin: 0 0.5rem;
        font-size: 1.6rem;
    }

        .search-suggestions .suggestion-item img {
            margin-inline-end: 0.5rem;
        }

    .search-suggestions p {
        color: var(--primary-green);
        font-weight: 700;
        margin-bottom: 2rem;
        font-size: 1.8rem;
    }

    .search-suggestions a:hover {
        background-color: #e5e7eb;
    }

.invert-icon {
    filter: invert(1);
}


.mobile-menu-btn {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 5px;
    margin-right: 10px;
    border-radius: 4px;
    transition: background-color 0.3s ease;
}



.responsive-user-menu span {
    width: 100%;
    height: 2px;
    background-color: #333;
    transition: all 0.3s ease;
}



.navbar-brand img {
    max-height: 50px;
}

.mobile-menu-btn {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.5rem;
    margin-right: 1rem;
}



@media (max-width: 768px) {
    .user-menu {
        padding: 0.5rem 2rem;
        display: none;
        position: absolute;
        top: 100%;
        right: 1.5rem;
        background-color: white;
        border: 1px solid var(--border-color);
        border-radius: 0.6rem;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
        min-width: 20rem;
        z-index: 99;
        margin-top: 0;
        flex-direction: column;
        gap: 0;
    }

    a.tab-link img {
        display: none;
    }

    .user-img {
        display: none;
    }

    .user-fullname {
        font-size: 1rem;
    }

    .user-menu.show {
        display: flex;
        align-content: center;
    }

    .user-menu a {
        text-decoration: none;
        color: var(--text-primary);
        font-size: 1.4rem;
        padding: 0.8rem 1.2rem;
        border-radius: 0.6rem;
        transition: background-color 0.3s ease;
    }

        .user-menu a:hover {
            background-color: #f5f5f5;
        }

    .user-menu a {
        display: block;
        padding: 1.2rem 0;
        border-bottom: 1px solid var(--border-color);
        border-radius: 0;
        display: block;
        width: 100%;
        text-align: center;
    }

        .user-menu a:last-child {
            border-bottom: none;
        }

    .mobile-menu-btn {
        display: block;
    }

    .top-actions {
        gap: 0.5rem;
    }

    .user-details:after {
        content: unset;
    }

    .top-actions img {
        width: 2rem;
    }
}

@media (max-width: 480px) {
    .user-name {
        font-size: 1.4rem;
    }

    .notification-btn, .logout-btn {
        padding: 0.6rem 0.8rem;
    }
}



.hero-section {
    position: relative;
    color: #fff;
    min-height: 70vh;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-text h1 {
    font-size: 6rem;
    font-weight: 700;
    margin-bottom: 2.5rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
}

.hero-text p {
    font-size: 2.1rem;
    max-width: 50%;
    margin-bottom: 0;
    line-height: 1.7;
    font-weight: 400;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.6);
}

.hero-action-btn {
    background-color: #fff;
    border-radius: 0.8rem;
    display: block;
}

.dropdown-menu {
    text-align: right;
}

.primary-btn {
    color: var(--text-primary);
    background-color: #fff;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 0.8rem 2rem;
    border-radius: 0.4rem;
    margin-top: 3.2rem;
    display: inline-block;
}

    .primary-btn:hover {
        background-color: var(--light-green-accent); /* light green */
        color: var(--text-primary);
        border-color: #b6e3d9;
        box-shadow: 0 6px 18px rgba(19,138,114,.16);
        transform: translateY(-1px);
    }

    .primary-btn:active {
        transform: translateY(0);
        box-shadow: 0 3px 10px rgba(19,138,114,.12);
    }

    .primary-btn:focus-visible {
        outline: 2px solid #b6e3d9;
        outline-offset: 3px;
    }

.section {
    padding-top: 4rem;
}

.section-title {
    font-size: 3rem;
    font-weight: 600;
    margin-bottom: 2.5rem;
    color: var(--text-primary);
}

.section-subtitle {
    font-size: 1.6rem;
    color: var(--text-primary);
    margin-bottom: 3.2rem;
}

.section-header-button {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    .section-header-button .primary-btn {
        margin-top: 0;
        border: 1px solid var(--border-color);
        background-color: transparent;
    }

    .section-header-button .section-title {
        margin-bottom: 0;
    }

.section-header-button {
    margin-bottom: 2.5rem;
}

.stats {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    max-width: 77.7%;
    margin: 0 auto;
}

.stats-item {
    flex-basis: clamp( calc(25% - 0.75rem), (800px - 100vw) * 999, calc(50% - 0.5rem) );
    flex-grow: 1;
    text-align: center;
    margin-bottom: 3.2rem;
}

.icon-container {
    width: 5.5rem;
    height: 5.5rem;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background-color: var(--light-green-bg);
    margin-bottom: 2.4rem;
}

.stats-item i {
    color: var(--secondary-green);
    font-size: 2.5rem;
}

.stat-number {
    font-size: 4.8rem;
    color: var(--primary-green);
    margin-bottom: 1rem;
}

.stat-label {
    font-size: 1.6rem;
    color: var(--text-primary);
}

.services-section {
    padding: 4rem 0;
    background-color: #f9fafb;
}

.service-card-icon {
    width: 4.8rem;
    height: 4.8rem;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background-color: var(--light-green-bg);
    margin-bottom: 2.4rem;
}

.service-card-icon {
    color: var(--secondary-green);
    font-size: 2.5rem;
}

.services-card {
    background-color: #fff;
    border: 1px solid var(--border-color);
    border-radius: 1.6rem;
    padding: 1.6rem;
    transition: transform 0.3s ease-in-out;
}

    .services-card:hover {
        transform: translateY(-5px);
    }

.services-item {
    margin: 0 0.8rem;
}

.services-card-title {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.8rem;
}

.services-card-text {
    font-size: 1.6rem;
    color: var(--text-primary);
    margin-bottom: 2.4rem;
}

.services-carousel .slick-track {
    padding: 1rem 0;
}

.partners-carousel .slick-track {
    margin: 0;
}

.tag {
    display: inline-block;
    padding: 0.4rem 0.8rem;
    border-radius: 0.4rem;
    font-size: 1.2rem;
    color: var(--text-primary);
    border: 1px solid var(--border-color);
    margin-inline-end: 0.8rem;
}

.grey-tag {
    background-color: #f9fafb;
    color: #1f2a37;
    border-color: #e5e7eb;
}

.blue-tag {
    background-color: #eff8ff;
    color: #1849a9;
    border-color: #b2ddff;
}

.green-tag {
    background-color: #ecfdf3;
    color: #085d3a;
    border-color: #abefc6;
}

.primary-btn.secondary-card-btn {
    border: 1px solid var(--border-color);
    margin-inline-end: 1.6rem;
}

.primary-btn.main-card-btn {
    border: 1px solid var(--primary-green);
    background-color: var(--primary-green);
    color: #fff;
    font-weight: 500;
    font-size: 1.6rem;
}

.slick-dots {
    bottom: -5rem;
}

    .slick-dots li {
        padding: 0;
        width: 1.2rem;
        height: 1.2rem;
        margin: 0 0.4rem;
    }

        .slick-dots li button:before {
            content: "";
            width: 1.2rem;
            height: 1.2rem;
            border-radius: 50%;
            background-color: #e5e7eb;
            opacity: 1;
            font-size: 0;
            line-height: 0;
        }

        .slick-dots li.slick-active button:before {
            background-color: var(--primary-green);
        }

.news-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}

.festivaledition .news-item {
    flex-basis: calc((100% - 4rem) / 3);
    margin: 0;
}

section.news-section.allfestivalpage .news-flex {
    justify-content: center;
}

.news-card-icon {
    color: var(--secondary-green);
    font-size: 2.5rem;
}

.news-card {
    background-color: #fff;
    border: 1px solid var(--border-color);
    border-radius: 1.6rem;
    padding: 1.6rem;
}

.news-item {
    margin: 0 0.8rem 4rem;
}

.news-card-title {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.8rem;
}

.news-card-text {
    font-size: 1.6rem;
    color: var(--text-primary);
    margin-bottom: 2.4rem;
}

.news-card-img img {
    width: 100%;
    border-radius: 0.8rem;
    margin-bottom: 2.4rem;
}

.partners-card {
    background-color: #fff;
    border: 1px solid var(--border-color);
    border-radius: 1.6rem;
    padding: 1.6rem;
}

    .partners-card img {
        margin: 0 auto;
        width: 100% !important;
        max-height: 7rem !important;
        min-height: 7rem !important;
    }

.partners-item {
    margin: 0 0.8rem 4rem;
}

.footer {
    background-color: var(--footer-green);
    padding: 5rem 0;
    width: 100%;
}

.footer-content {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 80px;
    margin-bottom: 40px;
}

.footer-column h3 {
    font-size: 1.6rem;
    margin-bottom: 0.8rem;
    color: #ffffff;
}

    .footer-column h3:after {
        content: "";
        display: block;
        width: 100%;
        height: 1px;
        background-color: lch(100 0 0 / 0.3);
        margin-top: 0.8rem;
    }

.footer-column ul {
    list-style: none;
    padding: 0;
}

    .footer-column ul li {
        margin-bottom: 0.8rem;
    }

        .footer-column ul li a {
            color: #fff;
            text-decoration: none;
            font-size: 1.4rem;
        }

            .footer-column ul li a:hover {
                color: #ffffff;
            }

.social-links {
    display: flex;
    gap: 0.8rem;
}

    .social-links a {
        display: inline-block;
        width: 3.2rem;
        height: 3.2rem;
        color: #fff;
        text-align: center;
        line-height: 32px;
        border: 1px solid lch(100 0 0 / 0.3);
        border-radius: 0.4rem;
    }

.footer-tools {
    display: flex;
    gap: 0.8rem;
    margin-top: 2rem;
}

    .footer-tools a {
        display: inline-block;
        width: 3.2rem;
        height: 3.2rem;
        background-color: #ffffff;
        color: #fff;
        text-align: center;
    }

        .footer-tools a:hover {
            background-color: #f0f0f0;
        }

.footer-images {
    display: flex;
    gap: 0.8rem;
    margin-top: 1.5rem;
}

.footer-image {
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-bottom {
    padding-top: 2.5rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.footer-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.footer-links {
    display: flex;
    gap: 4rem;
    margin-bottom: 2rem;
}

    .footer-links a {
        color: #fff;
        text-decoration: none;
        font-size: 1.4rem;
    }

        .footer-links a:hover {
            color: #ffffff;
        }

.copyright {
    font-size: 1.3rem;
    color: #fff;
    text-align: right;
}

.footer-right {
    display: flex;
    gap: 0.8rem;
}

@media (max-width: 1024px) {
    .footer-content {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
    }

    .festivaledition .news-item {
        flex-basis: 100%;
    }

    section.news-section.allfestivalpage .news-flex {
        margin: 2rem;
    }
}

@media (min-width: 992px) {
    .header-sticky .container,
    .container,
    .logged-in .topbar-container {
        max-width: 100%;
    }

    .header-sticky .container,
    .logged-in .topbar-container {
        padding-left: 4rem;
        padding-right: 4rem;
    }

    .container {
        padding-left: 8rem;
        padding-right: 8rem;
    }

    .services-container .section-header {
        padding-left: 8rem;
        padding-right: 8rem;
    }
}

@media (max-width: 991.98px) {
    html {
        font-size: 55%;
    }
}

@media (max-width: 767.98px) {
    html {
        font-size: 50%;
    }

    .container {
        padding: 0 2rem;
    }

    .hero-text p {
        max-width: 100%;
    }

    .services-container .section-header {
        padding: 0 2rem;
    }

    .section.partners-section .container {
        padding: 0;
    }

        .section.partners-section .container .section-header {
            padding: 0 2rem;
        }


    .footer-content {
        grid-template-columns: 1fr;
        gap: 3rem;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 2rem;
    }

    .footer-left .footer-links {
        flex-direction: column;
        gap: 1.5rem;
    }
}


.dark-header .main-nav {
    background-color: var(--primary-green);
}

    .dark-header .main-nav .navbar .navbar-nav .nav-item .nav-link {
        color: #fff;
    }

.dark-header .dropdown-toggle::after {
    filter: invert(1);
}

.dark-header .main-nav .navbar .navbar-nav > li.nav-item:hover {
    background-color: #25935f;
}

    .dark-header .main-nav .navbar .navbar-nav > li.nav-item:hover::before {
        background-color: #f5faff;
    }

.text_green {
    color: var(--primary-green) !important;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--primary-green);
    --bs-btn-border-color: var(--primary-green);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #176f47;
    --bs-btn-hover-border-color: #166943;
    --bs-btn-focus-shadow-rgb: 61, 150, 110;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #166943;
    --bs-btn-active-border-color: #14623f;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--primary-green);
    --bs-btn-disabled-border-color: var(--primary-green);
    font-size: 1.5rem;
}


.password-field-container {
    position: relative;
}

/* Popup styling */
#password-popup {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #f7fafc;
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    padding: 1rem;
    margin-top: 0.5rem;
    z-index: 10;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
}

    #password-popup p {
        font-size: 1.4rem;
        font-weight: 600;
        margin-top: 0;
        margin-bottom: 0.75rem;
        color: var(--text-primary);
    }

    #password-popup ul {
        list-style: none;
        padding: 0;
        margin: 0;
        font-size: 0.875rem;
    }

.validation-item {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
    transition: color 0.3s ease;
    font-size: 1.4rem;
}

    .validation-item:last-child {
        margin-bottom: 0;
    }

    .validation-item svg {
        width: 20px;
        height: 20px;
        margin-left: 0.5rem;
    }

    .validation-item.invalid {
        color: #e53e3e;
    }

        .validation-item.invalid .icon-check {
            display: none;
        }

        .validation-item.invalid .icon-cross {
            display: inline-block;
        }

    .validation-item.valid {
        color: var(--primary-green);
    }

        .validation-item.valid .icon-check {
            display: inline-block;
        }

        .validation-item.valid .icon-cross {
            display: none;
        }

/* LOGIN STYLE */

.login-section {
    overflow: auto;
    width: 100%;
    background: var(--primary-green);
    background-size: cover;
    background-position: center;
    justify-content: space-between;
}

@media (max-width: 850px) {
    .login-section > .wrapper {
        margin: auto;
    }
}

@media (max-width: 575px) {
    .login-section {
        padding-bottom: 30px;
    }
}

.login-section:has(.login_screen) {
    justify-content: space-between;
}

.login-section header.dark_header {
    background-color: transparent;
    width: 100%;
    padding: 10px 30px;
}

    .login-section header.dark_header img {
        filter: invert(1) brightness(5);
    }

    .login-section header.dark_header .accessbility-icons img {
        filter: none;
    }

    .login-section header.dark_header .navbar-nav li a {
        color: #fff;
    }

    .login-section header.dark_header .lang span {
        color: #fff;
    }

@media (max-width: 991px) {
    .login-section header.dark_header .navbar-toggler {
        width: 50px;
        height: 40px;
    }

    .login-section header.dark_header .navbar-toggler-icon {
        height: 4px;
        width: 25px;
        display: block;
        position: relative;
        border-radius: 5px;
        background-color: #fff;
    }

        .login-section header.dark_header .navbar-toggler-icon::before {
            content: "";
            height: 4px;
            width: 25px;
            display: block;
            position: absolute;
            left: 0;
            top: -8px;
            border-radius: 5px;
            background-color: #fff;
        }

        .login-section header.dark_header .navbar-toggler-icon::after {
            content: "";
            height: 4px;
            width: 25px;
            display: block;
            position: absolute;
            left: 0;
            bottom: -8px;
            border-radius: 5px;
            background-color: #fff;
        }
}

.login-section .navbar-nav li a {
    color: #fff;
}

.login-section .navbar-nav li.active a {
    color: #008941;
}

.login-section .navbar-nav ul li {
    text-align: right;
}

.login-section .header_mewa {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
}

@media (max-width: 991px) {
    .login-section .header_mewa {
        flex-direction: column;
        align-items: flex-start;
        order: 4;
        width: 100%;
        padding-inline-start: 6px;
        margin-block: 8px;
    }
}

.login-section .header_mewa .left_form-lang {
    display: flex;
    align-items: center;
}

    .login-section .header_mewa .left_form-lang .btn_second {
        border-color: #fff;
        color: #fff;
    }

.login-section .header_mewa .lang {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
}

    .login-section .header_mewa .lang span {
        margin-inline-end: 10px;
        color: #fff;
    }

@media (max-width: 991px) {
    .login-section .navbar-collapse {
        position: absolute;
        top: 79px;
        width: 95%;
        background: #fff;
        box-shadow: 0 5px 15px rgba(0, 52, 98, 0.3);
        z-index: 100;
        max-height: 80vh;
        overflow: auto;
        overflow-x: hidden;
    }

        .login-section .navbar-collapse::-webkit-scrollbar {
            width: 7px;
        }

        .login-section .navbar-collapse::-webkit-scrollbar-track {
            background-color: #ebebeb;
            border-radius: 100px;
        }

        .login-section .navbar-collapse::-webkit-scrollbar-thumb {
            background-color: #727f8c;
            border-radius: 100px;
        }
}

@media (max-width: 991px) and (max-width: 575px) {
    .login-section .navbar-collapse {
        left: 10px;
        top: 68px;
    }
}

@media (max-width: 991px) {
    .login-section .navbar-collapse > ul {
        padding: 0 !important;
        margin: 0 !important;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        border-bottom: 1px solid #ddd;
    }

        .login-section .navbar-collapse > ul li {
            width: 100%;
            text-align: start;
        }

            .login-section .navbar-collapse > ul li a {
                color: var(--Text-text-primary) !important;
                padding: 10px 20px !important;
                border-bottom: 1px solid #ddd;
            }

                .login-section .navbar-collapse > ul li a:hover,
                .login-section .navbar-collapse > ul li a:active {
                    color: var(--colors-brand-400) !important;
                }

                .login-section .navbar-collapse > ul li a.btn {
                    min-width: auto;
                    border-radius: 0;
                    border: 0;
                    width: 100%;
                    color: #003462 !important;
                    margin: 0;
                }

                    .login-section .navbar-collapse > ul li a.btn span {
                        justify-content: flex-start;
                    }

                    .login-section .navbar-collapse > ul li a.btn:hover {
                        transform: none;
                        color: #fff !important;
                    }

    .dark-header .navbar-toggler-icon {
        filter: invert(1);
        width: 4rem;
        height: 4rem;
    }
}

.login-section .nic-login-card {
    background-color: #fff;
    border-radius: 8px;
    display: flex;
    align-items: center;
    padding: 1rem 1.5rem 1rem;
}

@media (max-width: 768px) {
    .login-section .nic-login-card {
        padding: 0.5rem 1rem 0.5rem;
    }
}

.login-section .nic-login-card img {
    margin-inline-end: 12px;
}

.login-section .nic-login-card h2 {
    color: #1f2a37;
    font-size: 20px;
    font-weight: bold;
    line-height: 30px;
    margin-bottom: 0.75rem;
}

@media (max-width: 768px) {
    .login-section .nic-login-card h2 {
        font-size: 18px;
    }
}

@media (max-width: 550px) {
    .login-section .nic-login-card h2 {
        font-size: 16px;
    }
}

.login-section .nic-login-card p {
    color: #6c737f;
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 0;
}

.login-section .nic-login-card .icon {
    margin-inline-end: 0;
    margin-inline-start: auto;
}

.btn-secondary-solid .icon {
    margin-inline-start: 1.5rem;
}

.login-section .login-disabled {
    padding: 2rem;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-radius: 1rem;
}

    .login-section .login-disabled h2 {
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }

    .login-section .login-disabled p {
        font-size: 1.1rem;
    }

    .login-section .login-disabled img {
        width: 80px;
        height: 80px;
    }

.login-section .main-login_form {
    background-color: #fff;
    border-radius: 8px;
    display: flex;
    align-items: center;
    padding: 2rem;
}

@media (max-width: 768px) {
    .login-section .main-login_form {
        padding: 1.3rem;
    }
}

.login-section .main-login_form .username-div .form-control::placeholder,
.login-section .main-login_form .password-div .form-control::placeholder {
    font-size: 12px;
}

.login-section .main-login_form .btn i {
    display: inline-flex;
}

html[dir="ltr"] .login-section .main-login_form .btn i {
    transform: rotate(180deg);
}

.login-section .separator {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 0.7rem;
}

.login-section .separator-line {
    width: 100%;
    height: 1px;
    background-color: #fff;
    opacity: 0.6;
}

.login-section .separator h3 {
    font-size: 1.6rem;
    line-height: 24px;
    color: #fff;
    white-space: nowrap;
    padding-inline: 1rem;
}

.login-section .separator.text-dark .separator-line {
    background-color: #6c737f;
}

.login-section .separator.text-dark h3 {
    color: #6c737f;
}

.login-section .nic-login-form {
    background-color: #fff;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    padding: 2rem;
}

@media (max-width: 768px) {
    .login-section .nic-login-form {
        padding: 1.3rem;
    }
}

.login-section .nic-login-form .btn i {
    display: inline-flex;
}

html[dir="ltr"] .login-section .nic-login-form .btn i {
    transform: rotate(180deg);
}

.login-section .nic-download-app .stores a {
    border: 1px solid #e0e6f1;
    border-radius: 4px;
    background-color: #f3f4f6;
    transition: all 0.3s ease-in-out;
}

    .login-section .nic-download-app .stores a:hover {
        background-color: #e5e7eb;
        transition: all 0.3s ease-in-out;
    }

    .login-section .nic-download-app .stores a img {
        width: 100px;
        transition: all 0.3s ease-in-out;
    }

.login-section .nafath-code {
    text-align: center;
}

    .login-section .nafath-code .nafath-random {
        font-size: 72px;
        line-height: 90px;
        font-weight: bold;
        color: #161616;
    }

    .login-section .nafath-code h3 {
        font-size: 18px;
        line-height: 28px;
        color: #161616;
    }

    .login-section .nafath-code .count-number {
        color: #175cd3;
        font-weight: bold;
    }

.login-section .nic_login {
    -webki-border-radius: 20px;
    -moz-border-radius: 20px;
    -o-border-radius: 20px;
    border-radius: 20px;
    padding: 0;
    text-align: center;
}

@media (max-width: 991px) {
    .login-section .nic_login {
        margin-top: 50px;
    }

    .dark-header .main-nav .navbar .navbar-nav .nav-item .nav-link {
        color: #000;
    }

    .login-section .input input {
        padding-inline-start: 4rem;
    }
}

.login-section .nic_login img {
    width: 100%;
    margin: 33px auto;
    transition: width 0.5s ease-in-out;
    object-fit: contain;
    height: 100%;
    min-height: 120px;
}

@media (max-width: 990px) {
    .login-section .nic_login img {
        min-height: auto;
        margin: 0;
    }
}

.login-section .nic_login .btn {
    margin-top: 10px;
}

.btn-link {
    color: var(--primary-green);
    text-decoration: unset;
}

    .btn-link:hover {
        text-decoration: underline;
        color: #54c08a;
    }

.login-section .login_screen {
    position: relative;
    margin: auto;
    background-color: #fff !important;
    padding: 40px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    border-radius: 10px;
}

    .login-section .login_screen.forgetPassword_screen {
        max-width: 650px;
    }

@media (max-width: 500px) {
    .login-section .login_screen {
        padding-inline: 30px;
    }
}

.login-section .title-form {
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    color: #1f2a37 !important;
    margin-bottom: 1rem;
}

@media (max-width: 768px) {
    .login-section .title-form {
        font-size: 18px;
    }
}

.login-section .outline-wrapper {
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.3);
    -webki-border-radius: 30px 0 30px 30px;
    -moz-border-radius: 30px 0 30px 30px;
    -o-border-radius: 30px 0 30px 30px;
    border-radius: 30px 0 30px 30px;
    position: relative;
}

@media (max-width: 991px) {
    .login-section .outline-wrapper {
        padding-inline: 0;
        margin: 0 !important;
    }
}

.login-section .outline-wrapper .form-control {
    border-radius: var(--radius-xs);
    position: relative;
    background-repeat: no-repeat;
    background-position: 98% 50%;
}

.login-section .outline-wrapper input[type="submit"] i:lang(en) {
    transform: rotate(180deg);
}

.login-section .outline-wrapper .form-otp input[type="submit"] {
    background-position: 42% 50%;
}

.login-section .outline-wrapper.nic {
    border-radius: 10px;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 305px;
}

@media (max-width: 990px) {
    .login-section .outline-wrapper.nic {
        padding-block-end: 1rem;
        border-bottom: 1px solid #ddd;
        border-radius: 0;
        margin-bottom: 2rem !important;
    }
}

@media (max-width: 991px) {
    .login-section .outline-wrapper {
        margin-bottom: 70px;
    }
}

@media (max-width: 991px) {
    .login-section .outline-wrapper .nic_login {
        min-height: auto;
        margin: 0;
    }
}

@media (max-width: 768px) {
    .login-section .outline-wrapper .nic_login {
        padding: 0;
    }
}

.login-section input.form-control {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #cbd5e0;
    border-radius: 0.4rem;
    font-size: 1.6rem !important;
}

.login-content-wrapper {
    display: grid;
    grid-template-rows: auto 1fr;
    min-height: 100vh;
    width: 100%;
}

    .login-content-wrapper .wrapper.container {
        display: grid;
        place-items: center;
        --bs-gutter-x: 2.4rem;
        --bs-gutter-y: 0;
        padding-right: calc(var(--bs-gutter-x) * 0.5);
        padding-left: calc(var(--bs-gutter-x) * 0.5);
        max-width: 1280px;
        margin: 0 auto;
        width: 100%;
    }

        .login-content-wrapper .wrapper.container .row {
            min-width: 50%;
        }

.input.username-div {
    position: relative;
}

.login-section .input.password-div:before {
    inset-inline-start: 1px;
    content: "";
    background-image: url(../img/icons/password.svg);
    z-index: 1;
    width: 35px;
    height: 39px;
    display: block;
    background-size: 50%;
    background-repeat: no-repeat;
    position: absolute;
    background-position: center;
}

.login-section .input.username-div:before {
    inset-inline-start: 1px;
    content: "";
    background-image: url(../img/icons/user.svg);
    z-index: 1;
    width: 35px;
    height: 45px;
    display: block;
    background-size: 50%;
    background-repeat: no-repeat;
    position: absolute;
    background-position: center;
}

.btn-secondary-solid {
    background-color: #f3f4f6;
}

    .btn-secondary-solid:hover {
        background-color: #e5e7eb;
    }

.login-section .input input {
    padding-inline-start: 3.2rem;
}

.form-control:focus {
    border-color: unset !important;
    box-shadow: unset !important;
    background-color: #fff !important;
}

input.form-control:-webkit-autofill,
input.form-control:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
    box-shadow: 0 0 0 1000px #fff inset !important;
    background-color: #fff !important;
    color: #161616 !important;
}

input:-internal-autofill-selected,
input:-internal-autofill-previewed {
    background-color: transparent !important;
    border-color: unset !important;
    box-shadow: unset !important;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
    box-shadow: 0 0 0 1000px #fff inset !important;
    background-color: #fff !important;
    color: #161616 !important;
    border-color: var(--primary-green) !important;
}


/* body container */
.body-pages .container {
    width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .body-pages .container {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .body-pages .container {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .body-pages .container {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .body-pages .container {
        max-width: 1280px;
    }
}

.header-dark-blue {
    background-color: #2c3e50;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.breadcrumb-nav {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

#breadcrumb-list {
    list-style: none;
    display: flex;
    align-items: center;
    font-size: 1.2rem;
    color: #d1d5db;
    margin: 0.5rem 0;
    padding: 0;
}

.white-breadcrumb #breadcrumb-list {
    margin: 0;
    padding: 0;
}

.white-breadcrumb {
    margin-bottom: 5rem;
}

    .white-breadcrumb #breadcrumb-list li a:hover {
        color: inherit;
    }

#breadcrumb-list li a:hover {
    color: #ffffff;
}

#breadcrumb-list li span {
    margin: 0 0.5rem;
}

#breadcrumb-list a {
    font-size: 1.4rem;
    color: var(--blue-text);
}

#breadcrumb-list .active-breadcrumb {
    color: #8490a0;
    font-weight: 600;
    text-decoration: none;
}

.white-breadcrumb-bg .active-breadcrumb:hover {
    color: #8490a0;
}

.header-green {
    background: var(--gradient-brand-80060090-deg, linear-gradient(63deg, #14573a 16.72%, #1b8354 83.39%));
    box-shadow: inset 0 0 0 50px rgba(22, 22, 22, .1);
}

    .header-green #breadcrumb-list .active-breadcrumb {
        color: #9da4ae;
    }

.profile {
    background-color: var(--darkblue-bg);
}

    .profile.green-profile {
        background-color: var(--primary-green);
        padding: 5rem 0;
    }

        .profile.green-profile .tab-content-title h1 {
            padding: 0;
        }

.profile-header-card {
    background-color: #1a3a3a;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
    padding: 3rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #ffffff;
    margin: 5rem 0;
}

.profile-info {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.profile-avatar {
    background-color: #6c757d;
    border-radius: 9999px;
    height: 4rem;
    width: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.profile-name {
    font-size: 2.5rem;
    font-weight: 500;
}

.account-settings-btn {
    background-color: #2b6159;
    color: #ffffff;
    font-weight: 600;
    padding: 0.5rem 1.5rem;
    border-radius: 0.4rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: background-color 0.2s;
    border: none;
}

    .account-settings-btn img {
        width: 1.75rem;
        margin-inline-end: 0.5rem;
    }

    .account-settings-btn:hover {
        background-color: #24524a;
    }

.tabs-container {
    margin-top: 1rem;
    border-radius: 0.4rem;
}

#tabs {
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    gap: 1.5rem;
    margin-bottom: -1px;
}

.tab-link {
    cursor: pointer;
    padding: 1rem 0.25rem;
    margin-left: 2rem;
    border-bottom: 3px solid transparent;
    color: #a1afba;
    font-weight: 500;
    font-size: 1.5rem;
}

a.tab-link img {
    width: 1.75rem;
    margin-inline-end: 0.5rem;
}

.tab-link:hover {
    color: #fff;
    border-bottom-color: #c0e8ce;
}

.tab-link.tab-active {
    border-bottom-color: #c0e8ce;
    color: #fff;
}

.tab-link i {
    margin-left: 0.5rem;
}

.input-icon-wrapper {
    position: relative;
    width: 100%;
}

.input-icon {
    position: absolute;
    left: 1rem;
    top: 70.5%;
    transform: translateY(-50%);
    color: #1b8354;
    font-size: 1.2rem;
    pointer-events: none;
}

span.input-icon img {
    width: 2rem;
    height: 2rem;
}

.input-holder.input-wrapper .input-icon {
    top: 24%;
    transform: unset;
    left: unset;
    right: 1rem;
}

.input-holder.input-wrapper input {
    padding-inline-start: 5rem;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
}
select.SearchSelectField {
    padding-inline-start:1rem;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.5;
    height:45px;
}

.input::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 50%;
    width: 0%;
    height: 1px;
    transform: translate(-50%);
    background-color: #191919;
    transition: width .2s ease-in-out;
    border-radius: 2px 2px 7.25rem .25rem;
}

.input:has(:focus)::after {
    width: 100%;
}

.password-eye {
    position: relative;
}

    .password-eye:after {
        content: "";
        position: absolute;
        bottom: -1px;
        left: 50%;
        width: 0%;
        height: 1px;
        transform: translate(-50%);
        background-color: #191919;
        transition: width .2s ease-in-out;
        border-radius: 2px 2px 7.25rem .25rem;
    }

    .password-eye:has(:focus)::after {
        width: 100%;
    }


.password-div.input::after {
    content: unset;
}



.search-holder .input-holder {
    box-shadow: 0 4px 8px -2px rgba(16,24,40,.1),0 2px 4px -2px rgba(16,24,40,.06);
    border-radius: 0.6rem;
}

.results-count h6 {
    display: flex;
    flex-direction: column;
    font-size: 1.6rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.8rem;
    color: var(--text-primary);
    margin-bottom: 0;
}

results-count h6 span.count {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8rem;
    color: var(--Text-text-secondary-paragraph, #6c737f);
}

.results-count .tag {
    font-size: 1.3rem;
    font-weight: 500;
}

.results-count .services-tags-container {
    margin-top: 1rem;
}

.main-content {
    margin-top: 2rem;
    margin-bottom: 10rem;
}

#content-title {
    font-size: 2rem;
    font-weight: 600;
    color: #1f2937;
    margin: 4rem 0;
}

.parent-content-title {
    margin: 0 0;
}

.tab-content {
    display: none;
}

    .tab-content.active {
        display: block;
    }

.tab-content-title h1 {
    color: #fff;
    padding-top: 5rem;
    font-size: 3rem;
    font-weight: 600;
}

.accordion-wrapper {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.accordion-item {
    background-color: #ffffff;
    box-shadow: 0 0px 3px 0 rgba(0, 0, 0, 0.25);
    border: 1px solid var(--border-color);
    border-radius: 0.4rem;
}

.accordion-header {
    cursor: pointer;
    padding: 1.25rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.accordion-title {
    font-weight: 600;
    font-size: 1.5rem;
    color: #1f2937;
}

.accordion-controls {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.accordion-btn {
    background-color: white;
    border: 1px solid #e2e8f0;
    color: #4a5568;
    font-weight: 600;
    padding: 0.5rem 1rem;
    border-radius: 0.4rem;
    transition: background-color 0.2s;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer !important;
}

    .accordion-btn:hover {
        background-color: #f7fafc;
        cursor: pointer !important;
    }

.accordion-primary-btn {
    background-color: var(--primary-green) !important;
    color: white !important;
    cursor: pointer !important;
}

    .accordion-primary-btn:hover {
        background-color: var(--secondary-green) !important;
        color: white !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        transform: translateY(-2px);
        cursor: pointer;
    }







.accordion-icon {
    transition: transform 0.2s;
    margin-right: 0.75rem;
}

    .accordion-icon.rotate-180 {
        transform: rotate(180deg);
    }

.accordion-content {
    display: none;
    border-top: 1px solid #e5e7eb;
    padding: 1.5rem;
}

.form-grid {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

@media (min-width: 768px) {
    .form-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .form-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.form-label {
    display: block;
    margin-bottom: 0.5rem;
    color: #495057;
    font-weight: 500;
}

.required-star {
    color: #dc3545;
}

.form-input {
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 0.375rem;
    padding: 0.75rem 1rem;
    width: 100%;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    font-size: 1.5rem;
}

    .form-input:focus {
        border-color: var(--primary-green);
        outline: 0;
        box-shadow: 0 0 0 0.25rem rgb(27 131 84 / 12%);
    }

    .form-input:disabled {
        background-color: #e9ecef;
        opacity: 1;
    }

.simple-card {
    background-color: #ffffff;
    border-radius: 0.5rem;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    border: 1px solid #e5e7eb;
    padding: 1.5rem;
}

.simple-card-title {
    font-weight: 600;
    font-size: 1.125rem;
    color: #1f2937;
    margin-bottom: 1rem;
}

.simple-card-text {
    color: #6b7280;
}

.custom-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: url("../img/icons/down-arrow.svg") no-repeat left 1rem center;
    padding-inline-end: 2.5em;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 6px;
}

    .custom-select::-ms-expand {
        display: none;
    }

a.tab-link img {
    width: 1.75rem;
    margin-inline-end: 0.5rem;
}

.upload-container {
    width: 100%;
    padding: 2rem;
    border-radius: 0.5rem;
    text-align: center;
}

.upload-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1f2937;
    margin-top: 0;
    margin-bottom: 1rem;
}

.upload-rules {
    font-size: 1.4rem;
    color: var(--text-primary);
    margin-top: 0;
    margin-bottom: 1rem;
    transition: color 0.3s ease-in-out;
}

    .upload-rules.error {
        color: #ef4444;
    }

#file-input, .file-input-cls {
    display: none;
}

.browse-label {
    cursor: pointer;
    background-color: #0e1319;
    color: #fff;
    font-weight: 500;
    padding: 0.75rem 1.5rem;
    border-radius: 0.4rem;
    transition: background-color 0.3s ease-in-out;
    font-size: 1.5rem;
}

    .browse-label:hover {
        background-color: #374151;
    }

#after-upload {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 0.75rem;
    border: 2px solid #e5e7eb;
    border-radius: 0.4rem;
    box-sizing: border-box;
}

.file-info {
    display: flex;
    align-items: center;
}

#file-name {
    color: var(--text-primary);
    font-weight: 600;
    font-size: 1.3rem;
    margin-right: 0.75rem;
}

#success-icon {
    width: 1.5rem;
    height: 1.5rem;
    color: #22c55e;
}

#remove-file {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    color: #6b7280;
    transition: color 0.3s ease-in-out;
}

    #remove-file:hover {
        color: #dc2626;
    }

    #remove-file img {
        width: 1.5rem;
        height: 1.5rem;
    }

.hidden {
    display: none !important;
}

.flatpickr-calendar .flatpickr-months .flatpickr-month {
    background: var(--primary-green);
    color: #fff;
}

.flatpickr-calendar .flatpickr-weekday {
    color: #fff;
    font-weight: bold;
    background: var(--primary-green);
}

input.numInput.cur-year {
    margin-right: 2rem;
}


.flatpickr-calendar {
    direction: rtl;
}

    .flatpickr-calendar .flatpickr-day.selected,
    .flatpickr-calendar .flatpickr-day.startRange,
    .flatpickr-calendar .flatpickr-day.endRange,
    .flatpickr-calendar .flatpickr-day.selected.inRange,
    .flatpickr-calendar .flatpickr-day.startRange.inRange,
    .flatpickr-calendar .flatpickr-day.endRange.inRange,
    .flatpickr-calendar .flatpickr-day:focus,
    .flatpickr-calendar .flatpickr-day.today {
        background: var(--primary-green);
        border-color: var(--primary-green);
        color: #fff;
    }

.flatpickr-current-month .flatpickr-monthDropdown-months {
    background: var(--primary-green);
    color: #fff;
}

.flatpickr-calendar .flatpickr-day:hover {
    background: #e6f4ef;
    color: var(--primary-green);
}

.flatpickr-months .flatpickr-prev-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg {
    fill: #fff;
}

.flatpickr-weekdays,
.flatpickr-weekdays .flatpickr-weekdaycontainer {
    background: var(--primary-green);
    color: #fff;
}

.flatpickr-calendar.arrowTop:after {
    border-bottom-color: var(--primary-green);
}

.flatpickr-calendar.arrowBottom:after {
    border-top-color: var(--primary-green);
}

.flatpickr-current-month
.flatpickr-monthDropdown-months
.flatpickr-monthDropdown-month {
    background-color: var(--primary-green);
}

/* Form style */
.form-page {
    margin: 5rem 0;
}

.shadow-body header {
    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.1);
}

.mobile-stepper {
    display: none;
    background-color: #f8f9fa;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 2rem;
    align-items: center;
    gap: 1rem;
}

.progress-circle {
    position: relative;
    width: 70px;
    height: 70px;
    flex-shrink: 0;
}

    .progress-circle svg {
        width: 100%;
        height: 100%;
        transform: rotate(-90deg);
    }

    .progress-circle .circle-bg {
        fill: none;
        stroke: #e9ecef;
        stroke-width: 8;
    }

    .progress-circle .circle-fg {
        fill: none;
        stroke: #28a745;
        stroke-width: 8;
        stroke-linecap: round;
        transition: stroke-dashoffset 0.35s;
    }

    .progress-circle .progress-text {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: 1.5rem;
        font-weight: bold;
        color: #495057;
    }

.mobile-step-info .step-title {
    font-weight: bold;
    font-size: 1.6rem;
    color: #343a40;
}

.mobile-step-info .step-description {
    font-size: 1.5rem;
    color: #6c757d;
}

.mobile-step-info .next-step-info {
    font-size: 1.4rem;
    color: #6c757d;
    margin-top: 4px;
}

.desktop-stepper {
    flex: 0 0 50rem;
    display: flex;
    flex-direction: column;
    position: relative;
    background-color: #f9fafb;
    padding: 3rem 2rem;
    border-radius: 8px;
    height: fit-content;
    border-radius: 1.6rem;
}

.step {
    display: flex;
    align-items: center;
    margin-bottom: 3.5rem;
    position: relative;
    z-index: 1;
}

    .step:last-child {
        margin-bottom: 0;
    }

    .step .line {
        width: 2px;
        background-color: #e2e8f0;
        position: absolute;
        height: 6rem;
        top: 3.2rem;
        right: 1.6rem;
        transform: translateX(50%);
        z-index: -1;
        transition: background-color 0.4s ease;
    }

    .step:last-child .line {
        display: none;
    }

.step-icon {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    background-color: #ffffff;
    border: 2px solid #cbd5e0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    color: #d2d6db;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

    .step-icon img {
        width: 3.2rem;
        height: 3.2rem;
    }

.step-content {
    margin-right: 1rem;
}

.step-title {
    font-size: 1.6rem;
    color: #a0aec0;
}

.step-description {
    font-size: 1.4rem;
    color: #a0aec0;
}

.step.active .step-icon {
    border-color: var(--primary-green);
    color: var(--primary-green);
}

.step.active .step-title,
.step.completed .step-title {
    color: #1f2a37;
}

.step.active .step-description,
.step.completed .step-description {
    color: var(--blue-text);
}

.step.completed .step-icon {
    background-color: transparent;
    border-color: transparent;
    color: #fff;
}

.step.completed .line {
    background-color: var(--primary-green);
}

.form-container {
    flex: 1;
    /*background-color: #f9fafb;*/
}

.form-wrapper {
    display: flex;
    gap: 5rem;
    flex-direction: row-reverse;
}

.form-header {
    padding-bottom: 1rem;
    margin-bottom: 1.5rem;
}

    .form-header h1 {
        margin-bottom: 1.6rem;
        font-size: 3rem;
        font-weight: 600;
        color: var(--text-primary);
    }

    .form-header p {
        margin: 0.5rem 0 0;
        margin-bottom: 1.6rem;
        font-size: 1.6rem;
        font-weight: 500;
        color: var(--text-primary);
    }

.form-step {
    display: none;
}

    .form-step.active {
        display: block;
    }

.form-group {
    margin-bottom: 1.5rem;
}

.form-row {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 4rem;
}

    .form-row .form-group {
        flex: 1;
        min-width: 200px;
    }

div#RulesDiv {
    max-width: 100%;
}

label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
}

    label span {
        color: #e53e3e;
    }

.input-wrapper {
    position: relative;
}

input[type="text"] {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #cbd5e0;
    border-radius: 0.4rem;
    font-size: 1.6rem;
}

    input[type="text"]:focus {
        outline: none;
        border-color: #3182ce;
        box-shadow: 0 0 0 1px #3182ce;
    }

    input[type="text"]::placeholder {
        color: #a0aec0;
    }

.input-wrapper .icon {
    position: absolute;
    top: 50%;
    left: 0.75rem;
    transform: translateY(-50%);
    color: #a0aec0;
}

.input-wrapper.has-icon input {
    padding-left: 2.5rem;
}

.helper-text {
    font-size: 1.4rem;
    color: var(--blue-text);
    margin-top: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.8rem;
}

    .helper-text.error {
        color: #e53e3e;
    }

.is-invalid input {
    border-color: #e53e3e;
}

    .is-invalid input:focus {
        box-shadow: 0 0 0 1px #e53e3e;
    }

.form-navigation {
    margin-top: 0;
    padding-top: 1.5rem;
    display: flex;
    gap: 1rem;
}

.btn {
    padding: 0.75rem 1.5rem;
    border-radius: 6px;
    border: 1px solid transparent;
    font-size: 1.5rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-primary {
    background-color: var(--primary-green);
    color: white;
    border-color: #2c7a7b;
    font-size: 1.5rem;
}

    .btn-primary:hover {
        background-color: var(--secondary-green);
    }

.btn-secondary {
    background-color: #ffffff;
    color: #4a5568;
    border-color: #cbd5e0;
}

    .btn-secondary:hover {
        background-color: #f7fafc;
        color: #4a5568 !important;
    }

.btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.input-with-icon {
    position: relative;
}

    .input-with-icon img {
        position: absolute;
        top: 50%;
        right: 0.75rem;
        transform: translateY(-50%);
        color: #6c757d;
        pointer-events: none;
        width: 2rem;
    }

    .input-with-icon .form-control {
        padding-inline-start: 3.25rem;
    }

.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not( .valid-feedback ):not(.invalid-tooltip):not(.invalid-feedback) {
    margin-left: calc(var(--bs-border-width) * -1);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n + 3),
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select,
.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not( .form-floating ) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 0.4rem;
    border-bottom-right-radius: 0.4rem;
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: 0.4rem 1.5rem;
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--text-primary);
    text-align: center;
    white-space: nowrap;
    background-color: #f3f4f6;
    border: 1px solid var(--border-color);
    border-radius: 0.4rem;
}

@media (max-width: 1200px) {
    .form-wrapper {
        flex-direction: column;
    }

    .desktop-stepper {
        display: none;
    }

    .mobile-stepper {
        display: flex;
    }

    .form-row {
        flex-direction: column;
        gap: 0;
    }
}


.form-header .error-messages {
    color: #b42318;
    font-size: 1.4rem;
}

@media (max-width: 768px) {

    .form-page {
        margin: 2rem 0;
    }

    .white-breadcrumb {
        margin-bottom: 2rem;
    }
}

/* custom radio button */
.radio-cards-container {
    display: grid;
    grid-template-columns: repeat(5, minmax(2rem, 20rem));
    gap: 1.5rem;
    margin: 1rem 0;
}

@media (min-width: 1200px) {
    .radio-cards-container {
        grid-template-columns: repeat(3, minmax(2rem, 20rem));
    }
}

@media (min-width: 1400px) {
    .radio-cards-container {
        grid-template-columns: repeat(4, minmax(2rem, 20rem));
    }
}

@media (min-width: 1600px) {
    .radio-cards-container {
        grid-template-columns: repeat(4, minmax(2rem, 30rem));
    }
}

.radio-card {
    position: relative;
    background: white;
    border-radius: 12px;
    padding: 1.6rem 1rem;
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid #e5e7eb;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

    .radio-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
        border-color: #d1d5db;
    }

    .radio-card.selected {
        border-color: var(--primary-green);
        transform: translateY(-4px);
        box-shadow: 0 0px 20px rgb(27 131 84 / 48%);
    }

    .radio-card .card-icon {
        font-size: 2.5rem;
        margin-bottom: 12px;
        transition: all 0.3s ease;
    }

    .radio-card.selected .card-icon {
        transform: scale(1.1);
    }

    .radio-card .card-label {
        font-size: 1.6rem;
        font-weight: 500;
        color: var(--text-primary);
        line-height: 1.4;
    }

    .radio-card.selected .card-label {
        font-weight: 600;
    }

    .radio-card .checkmark {
        position: absolute;
        top: 1.35rem;
        left: 1rem;
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 0.4rem;
        border: 2px solid #e5e7eb;
        background: white;
        display: flex;
        justify-content: center;
        transition: all 0.3s ease;
        align-items: center;
    }

    .radio-card.selected .checkmark {
        border: unset;
        transform: scale(1.05);
        background-color: var(--primary-green);
    }

        .radio-card.selected .checkmark::after {
            content: '';
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5' d='M3 8l3 3 7-7'/%3e%3c/svg%3e");
            width: 1.8rem;
            height: 1.8rem;
            background-repeat: no-repeat;
            background-position: center;
        }

    .radio-card input[type="radio"] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

@media (max-width: 768px) {
    .radio-cards-container {
        grid-template-columns: repeat(2, minmax(50%, 20rem));
        gap: 1rem;
    }



    .radio-card .card-icon {
        font-size: 2rem;
    }

    .radio-card .card-label {
        max-width: 75%;
        line-height: 1.2;
    }
}

h2#swal2-title {
    font-size: 2.5rem;
}

div#swal2-html-container {
    font-size: 1.5rem;
}

.swal2-styled {
    font-size: 1.4rem;
}

button.swal2-confirm.swal2-styled {
    background-color: var(--primary-green);
    font-size: 1.6rem;
}

.custom-swal-popup {
    border-radius: 0.6rem;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
}

.custom-swal-title {
    font-size: 3rem !important;
    font-weight: 600;
    color: #333;
    text-align: right;
    margin-bottom: 10px;
    padding-inline-start: 0;
}

.custom-swal-text {
    font-size: 1.6rem !important;
    color: #666;
    text-align: right;
    line-height: 1.6;
    margin-bottom: 2rem;
}

.custom-swal-actions {
    display: flex;
    gap: 1rem;
    margin-top: 2.5rem;
    margin-right: auto;
    text-align: left;
    margin-left: 0;
}

.custom-confirm-btn,
.custom-cancel-btn {
    padding: 10px 24px;
    border-radius: 6px;
    font-size: 1.6rem;
    font-weight: 500;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    min-width: 80px;
}

.custom-swal-icon {
    margin: 0;
    width: 25px;
    height: 25px;
}

.swal2-icon-content {
    display: none !important;
}

.custom-swal-icon.swal2-info {
    border-color: #9CA3AF;
    color: #9CA3AF;
    align-items: center;
}

    .custom-swal-icon.swal2-info:before {
        content: "!";
        font-size: 18px;
        font-weight: 600;
    }


.custom-confirm-btn {
    background-color: #333;
    color: white;
}

    .custom-confirm-btn:hover {
        background-color: #1a1a1a;
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

.custom-cancel-btn {
    background-color: #f5f5f5;
    color: #333;
}

    .custom-cancel-btn:hover {
        background-color: #e8e8e8;
        transform: translateY(-1px);
    }

.swal2-close {
    font-size: 28px;
    color: #999;
    font-weight: normal;
    line-height: 1;
    padding: 0;
    width: 30px;
    height: 30px;
    background: transparent;
    border: none;
    transition: color 0.2s;
}

.swal2-actions {
    margin-left: 0;
    margin-right: auto;
}

.swal2-close:hover {
    color: #333;
    background: transparent;
}

.custom-confirm-btn:focus,
.custom-cancel-btn:focus {
    outline: none;
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
}

.swal2-backdrop {
    background-color: rgba(0, 0, 0, 0.4);
}

.swal2-rtl .custom-swal-popup {
    direction: rtl;
}

.swal2-html-container {
    margin: 0;
    padding: 0;
}

.payment_method_item svg, .payment_method_item img {
    opacity: 0.2;
    transition: 0.5s all;
}

.payment_method_item.active_method svg, .payment_method_item.active_method img {
    opacity: 1;
}

.payment_method_items {
    display: flex;
    flex-wrap: wrap;
}

.payment_method_item {
    margin: 20px 0 0;
    flex-basis: 23%;
    border: 3px solid #ccc;
    text-align: center;
}

    .payment_method_item svg, .payment_method_item img {
        width: 80px;
        height: 100px;
    }


    .payment_method_item:nth-child(3n+2) {
        margin: 20px 10px 0;
    }

    .payment_method_item:nth-child(3) {
        margin-left: 10px;
    }

    .payment_method_item.active_method {
        border-color: #24572d;
    }


.termsandconditions {
    display: flex;
    align-items: center;
    margin-top: 2rem;
}

.custom-checkbox {
    display: none;
}

    .custom-checkbox ~ label {
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        user-select: none;
        font-size: 1.6rem;
    }

        .custom-checkbox ~ label::before {
            content: '';
            display: inline-block;
            width: 20px;
            height: 20px;
            border: 2px solid #adb5bd;
            border-radius: 4px;
            margin-inline-end: 10px;
            background-color: #ffffff;
            transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
        }

    .custom-checkbox:checked ~ label::before {
        background-color: var(--primary-green);
        border-color: var(--primary-green);
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5' d='M3 8l3 3 7-7'/%3e%3c/svg%3e");
        background-size: 80%;
        background-position: center;
        background-repeat: no-repeat;
    }

    .custom-checkbox:indeterminate ~ label::before {
        background-color: var(--primary-green);
        border-color: var(--primary-green);
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5' d='M3 8h10'/%3e%3c/svg%3e");
        background-size: 70%;
        background-position: center;
        background-repeat: no-repeat;
    }

    .custom-checkbox:not(:checked) ~ label:hover::before {
        border-color: var(--primary-green);
    }

    .custom-checkbox:focus-visible ~ label::before {
        outline: 2px solid #0d6efd;
        outline-offset: 2px;
    }

.icon_input:before {
    content: '';
    background-repeat: no-repeat;
    width: 2rem;
    height: 2rem;
    position: absolute;
    left: 0.75rem;
    top: 1rem;
    background-position: center;
    z-index: 9;
}

.icon_input.select_input {
    position: relative;
}

input.form-control {
    width: 100%;
    border-radius: 0.6rem;
    outline: 1px inset transparent;
    border: 1px solid #CCCCCC;
    height: 45px;
    padding-inline-start: 0.5vw;
    background-color: #fff;
}

.icon_input.select_input:before {
    background-image: url(../img/icons/down-arrow.svg);
}

@media(max-width:768px) {
    .payment_method_item {
        margin: 0;
        flex-basis: 48%;
    }

    .payment_method_items {
        gap: 1.5rem;
    }

    .payment_method_item:nth-child(3n+2), .payment_method_item:nth-child(3) {
        margin: 0;
        margin-left: 0;
    }
}


/* Notification Styles */
#notification-container {
    position: fixed;
    top: 15rem;
    right: 2rem;
    z-index: 10000;
    width: 30rem;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.notification {
    display: flex;
    align-items: flex-start;
    padding: 1rem;
    border-radius: 0.6rem;
    background-color: #fff;
    box-shadow: 0 5px 15px rgba(0,0,0,0.15);
    border-right: 0.5rem solid;
    opacity: 0;
    transform: translateX(100%);
    transition: all 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

    .notification.show {
        opacity: 1;
        transform: translateX(0);
    }

    .notification .icon {
        font-size: 2.5rem;
        margin-inline-end: 1rem;
    }

    .notification .content {
        flex-grow: 1;
    }

    .notification .title {
        font-weight: 700;
        margin: 0 0 0.25rem 0;
        font-size: 1.8rem;
        color: var(--text-primary);
    }

    .notification .message {
        margin: 0;
        font-size: 1.6rem;
        color: var(--text-primary);
    }

    .notification .close-btn {
        background: none;
        border: none;
        color: #888;
        cursor: pointer;
        font-size: 1.6rem;
        padding: 0;
        font-weight: 700;
    }



    .notification.info {
        border-color: var(--info-color);
        background-color: #f5faff;
    }

        .notification.info .icon {
            color: var(--info-color);
        }

    .notification.success {
        border-color: var(--success-color);
        background-color: #f6fef9;
    }

        .notification.success .icon {
            color: var(--success-color);
        }

    .notification.warning {
        border-color: var(--warning-color);
        background-color: #fffcf5;
    }

        .notification.warning .icon {
            color: var(--warning-color);
        }

    .notification.error {
        border-color: var(--error-color);
        background-color: #fffbfa;
    }

        .notification.error .icon {
            color: var(--error-color);
        }

    .notification.neutral {
        border-color: var(--neutral-color);
        background-color: #fcfcfd;
    }

        .notification.neutral .icon {
            color: var(--neutral-color);
        }


.profile.competition-profile {
    margin-bottom: 4rem;
}

.profile.competition-profile {
    padding: 5rem 0;
}

    .profile.competition-profile .profile-header-card {
        margin: 0;
    }


    .profile.competition-profile .tab-content-title h1 {
        padding: 0;
        margin-bottom: 3rem;
    }

section.competition-page {
    margin-bottom: 6rem;
}

@media (max-width:768px) {
    .tab-content-title h1 {
        font-size: 2rem
    }

    .profile-name {
        font-size: 1.8rem;
        line-height: 2;
    }
}

.toast-container {
    margin-top: 10px;
    max-width: 100%;
    position: unset;
    min-width: 30%;
}

.toast {
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    margin-bottom: 10px;
    padding: 16px 20px;
    position: relative;
    overflow: hidden;
    transform: translateY(-20px);
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.23, 1, 0.320, 1);
    border-right: 4px solid #ddd;
    font-size: 14px;
    line-height: 1.4;
    width: 100%;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

    .toast.show {
        transform: translateY(0);
        opacity: 1;
    }

    .toast.hide {
        transform: translateY(-20px);
        opacity: 0;
    }

    .toast .content {
        flex: 1;
    }

    .toast .title {
        font-weight: 600;
        color: #2c3e50;
        margin-bottom: 4px;
        font-size: 14px;
    }

    .toast .message {
        color: #7f8c8d;
        font-size: 13px;
        line-height: 1.4;
    }



.payment-container {
    max-width: 400px;
    width: 100%;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    overflow: hidden;
    margin-top: 2rem;
}

.payment-method {
    background: #f8f9fa;
    padding: 12px 16px;
    border-bottom: 1px solid #e5e7eb;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
}

.payment-method-item {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    justify-content: space-between;
}


.payment-method.collapsed + .form-section {
    max-height: 0;
    transition: max-height 0.3s ease-in;
}

.collapse-arrow {
    transition: transform 0.3s ease;
}

.payment-method.collapsed .collapse-arrow {
    transform: rotate(-90deg);
}

.payment-method-icon {
    display: flex;
    gap: 0.5rem;
}

    .payment-method-icon img {
        width: 4rem;
        height: 2.5rem;
        border-radius: 0.4rem;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px solid #000;
        padding: 0.2rem;
    }


.form-section {
    max-height: 350px;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}



.saddad-pay-section {
    padding: 16px 20px;
    border-top: 1px solid #e5e7eb;
}

.saddad-pay-section {
    width: 100%;
    padding: 10px 12px;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    justify-content: space-between;
}

    .saddad-pay-section:hover {
        background: #f9fafb;
        border-color: #9ca3af;
    }

.saddad-pay-button {
    gap: 1rem;
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: center;
}

.pay-icon {
    width: 6rem;
    height: 4rem;
}

.payment-method-item h3 {
    font-size: 1.6rem;
    color: var(--text-primary);
    font-weight: 500;
    margin-bottom: 0;
}

.saddad-pay-button .payment-method-item {
    width: unset;
}



.modal-header {
    border-bottom: none !important;
}

.modal-footer {
    border-top: none !important;
}

.modal-header .btn-close {
    margin-right: auto !important;
    margin-left: 0 !important;
}


.badge {
    --bs-badge-color: var(--kt-badge-color);
    display: inline-flex;
    align-items: center;
    font-size:1.4rem !important;
}

    .badge.badge-circle, .badge.badge-square {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 1.75rem;
        min-width: 1.75rem;
        padding: 0 0.1rem;
        line-height: 0;
    }

    .badge.badge-circle {
        border-radius: 50%;
        padding: 0;
        min-width: unset;
        width: 1.75rem;
    }

    .badge.badge-sm {
        min-width: 1.5rem;
        font-size: 0.8rem;
    }

        .badge.badge-sm.badge-square {
            height: 1.5rem;
        }

        .badge.badge-sm.badge-circle {
            width: 1.5rem;
            height: 1.5rem;
        }

    .badge.badge-lg {
        min-width: 2rem;
        font-size: 1rem;
    }

        .badge.badge-lg.badge-square {
            height: 2rem;
        }

        .badge.badge-lg.badge-circle {
            width: 2rem;
            height: 2rem;
        }

.info-massages {
    display: inline-flex;
    align-items: center;
    background-color: #ccc;
    padding: 1rem 1rem;
    margin: 1rem 0 3rem;
}

    .info-massages p {
        margin: 0;
    }

    .info-massages.notification {
        opacity: 1;
        transform: unset;
        border-bottom: 0.5rem solid;
        border-right: unset;
    }


        .info-massages.notification.info {
            border-color: var(--info-color);
        }

        .info-massages.notification.success {
            border-color: var(--success-color);
        }

        .info-massages.notification.warning {
            border-color: var(--warning-color);
        }

        .info-massages.notification.error {
            border-color: var(--error-color);
        }

        .info-massages.notification.neutral {
            border-color: var(--neutral-color);
        }



.modal-header {
    border-bottom: none !important;
}

.modal-footer {
    border-top: none !important;
}

.modal-header .btn-close {
    margin-right: auto !important;
    margin-left: 0 !important;
}


.badge {
    --bs-badge-color: var(--kt-badge-color);
    display: inline-flex;
    align-items: center;
}

    .badge.badge-circle, .badge.badge-square {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 1.75rem;
        min-width: 1.75rem;
        padding: 0 0.1rem;
        line-height: 0;
    }

    .badge.badge-circle {
        border-radius: 50%;
        padding: 0;
        min-width: unset;
        width: 1.75rem;
    }

    .badge.badge-sm {
        min-width: 1.5rem;
        font-size: 0.8rem;
    }

        .badge.badge-sm.badge-square {
            height: 1.5rem;
        }

        .badge.badge-sm.badge-circle {
            width: 1.5rem;
            height: 1.5rem;
        }

    .badge.badge-lg {
        min-width: 2rem;
        font-size: 1rem;
    }

        .badge.badge-lg.badge-square {
            height: 2rem;
        }

        .badge.badge-lg.badge-circle {
            width: 2rem;
            height: 2rem;
        }

.badge-white {
    color: var(--kt-white-inverse);
    background-color: var(--kt-white);
}

    .badge-white.badge-outline {
        border: 1px solid var(--kt-white);
        color: var(--kt-white);
        background-color: transparent;
    }

.badge-light-white {
    color: var(--kt-white);
    background-color: var(--kt-white-light);
}

.badge-light {
    color: var(--kt-light-inverse);
    background-color: var(--kt-light);
}

    .badge-light.badge-outline {
        border: 1px solid var(--kt-light);
        color: var(--kt-light);
        background-color: transparent;
    }

.badge-light-light {
    color: var(--kt-light);
    background-color: var(--kt-light-light);
}

.badge-primary {
    color: var(--kt-primary-inverse);
    background-color: var(--kt-primary);
}

    .badge-primary.badge-outline {
        border: 1px solid var(--kt-primary);
        color: var(--kt-primary);
        background-color: transparent;
    }

.badge-light-primary {
    color: var(--kt-primary);
    background-color: var(--kt-primary-light);
}

.badge-secondary {
    color: var(--kt-secondary-inverse);
    background-color: var(--kt-secondary);
}

    .badge-secondary.badge-outline {
        border: 1px solid var(--kt-secondary);
        color: var(--kt-secondary);
        background-color: transparent;
    }

.badge-light-secondary {
    color: var(--kt-secondary);
    background-color: var(--kt-secondary-light);
}

.badge-success {
    color: var(--kt-success-inverse);
    background-color: var(--kt-success);
}

    .badge-success.badge-outline {
        border: 1px solid var(--kt-success);
        color: var(--kt-success);
        background-color: transparent;
    }

.badge-light-success {
    color: var(--kt-success);
    background-color: var(--kt-success-light);
}

.badge-info {
    color: var(--kt-info-inverse);
    background-color: var(--kt-info);
}

    .badge-info.badge-outline {
        border: 1px solid var(--kt-info);
        color: var(--kt-info);
        background-color: transparent;
    }

.badge-light-info {
    color: var(--kt-info);
    background-color: var(--kt-info-light);
}

.badge-warning {
    color: var(--kt-warning-inverse);
    background-color: var(--kt-warning);
}

    .badge-warning.badge-outline {
        border: 1px solid var(--kt-warning);
        color: var(--kt-warning);
        background-color: transparent;
    }

.badge-light-warning {
    color: var(--kt-warning);
    background-color: var(--kt-warning-light);
}

.badge-danger {
    color: var(--kt-danger-inverse);
    background-color: var(--kt-danger);
}

    .badge-danger.badge-outline {
        border: 1px solid var(--kt-danger);
        color: var(--kt-danger);
        background-color: transparent;
    }

.badge-light-danger {
    color: var(--kt-danger);
    background-color: var(--kt-danger-light);
}

.badge-dark {
    color: var(--kt-dark-inverse);
    background-color: var(--kt-dark);
}

    .badge-dark.badge-outline {
        border: 1px solid var(--kt-dark);
        color: var(--kt-dark);
        background-color: transparent;
    }

.badge-light-dark {
    color: var(--kt-dark);
    background-color: var(--kt-dark-light);
}

.slick-arrow {
    width: 50px;
    height: 50px;
    background-color: var(--primary-green);
    border-radius: 50% !important;
    border: none !important;
    z-index: 10 !important;
    transition: all 0.3s ease !important;
    top: auto !important;
    bottom: -55px !important;
    left: 3% !important;
    right: auto !important;
}

    .slick-arrow:hover {
        background-color: var(--primary-green);
    }

.slick-prev {
    transform: translateX(60px);
}

.slick-next {
    transform: translateX(-10px);
}


[dir='rtl'] .slick-arrow:before {
    content: '';
    display: block;
    width: 100%;
    height: 2rem;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

[dir='rtl'] .slick-next:before {
    background-image: url('../img/icons/left-slider-arrow.svg')
}

[dir='rtl'] .slick-prev:before {
    background-image: url('../img/icons/right-slider-arrow.svg')
}

.slick-prev:focus, .slick-next:focus {
    background-color: var(--primary-green);
}

.slick-prev:hover, .slick-next:hover {
    background-color: var(--primary-green);
}

/* Table style */

.invoice-container {
    max-width: 1200px;
    margin: 0 auto;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    overflow: hidden;
}

.table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.table-view {
    position: relative;
}

.invoice-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    font-size: 16px;
    min-width: 600px;
    position: relative;
}



@media screen and (max-width: 768px) {
    .invoice-table {
        min-width: 500px;
    }


    .table-wrapper::after {
        content: "← مرر للمشاهدة الكاملة";
        position: absolute;
        top: -30px;
        left: 0;
        background: var(--primary-green);
        color: white;
        padding: 5px 10px;
        border-radius: 15px;
        font-size: 12px;
        animation: fadeInOut 3s infinite;
        pointer-events: none;
        z-index: 9;
    }

    @keyframes fadeInOut {
        0%, 100% {
            opacity: 0;
        }

        50% {
            opacity: 1;
        }
    }
}

@media screen and (max-width: 480px) {
    .invoice-table {
        min-width: 480px;
    }

        .invoice-table th,
        .invoice-table td {
            padding: 10px 6px;
            font-size: 1.4rem;
        }

    .currency-icon {
        width: 14px;
        height: 14px;
    }
}

/* ALL services */

.services-boxes {
    margin-bottom: 12rem;
}

.service-type {
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.8rem;
    border-radius: 4rem;
    padding: 0.4rem 0.8rem;
    width: fit-content;
}

.secondary-service .service-type {
    background-color: #eff8ff;
    color: #1849a9;
    border-color: #b2ddff;
}



.main-service .service-type {
    background-color: #ecfdf3;
    color: #085d3a;
    border-color: #abefc6;
}



.cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
    margin-top: 4rem;
    height: 100%;
    min-height: 230px;
}

.service-card {
    border-radius: 1.6rem;
    padding: 2.4rem 3.4rem 1.6rem 3.4rem;
    box-shadow: 0 0px 8px rgb(0 0 0 / 10%);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border: 1px solid var(--border-color);
}


.service-number {
    display: inline-block;
    background: #e8f4fd;
    color: #4a90e2;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 25px;
}

.service-title {
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 2.8rem;
    color: var(--blue-text);
}

.service-description {
    font-size: 1.5rem;
    font-weight: 400;
    color: var(--blue-text);
    margin-bottom: 2.4rem;
    line-height: 1.8;
}


.service-tag {
    border-radius: 0.6rem;
    border: 1px solid var(--border-color);
    background: #f9fafb;
    color: var(--primary-text);
    font-size: 1.2rem;
    font-weight: 500;
    line-height: 1.8rem;
    padding: 0.4rem 0.8rem;
    width: fit-content;
}

.service-card:not(.disableCard):hover {
    transform: translateY(-5px);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    cursor: pointer;
}

.service-card.disableCard {
    opacity: 0.6;
    cursor: not-allowed;
}

@media (max-width: 1024px) {
    .cards-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 25px;
    }
}

@media (max-width: 768px) {
    .cards-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .service-card {
        padding: 30px 20px;
    }

    .service-title {
        font-size: 2rem;
    }

    .service-description {
        font-size: 1.5rem;
    }
}

@media (max-width: 480px) {
    .cards-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .service-card {
        padding: 3rem;
        min-height: 30rem;
        height: 100%;
    }
}


/* Services-details */
/*
        .services-details-bg:before {
            content: '';
            position: absolute;
            background-color: red;
            width: 100%;
            max-height: 200px;
            height: 100%;
        }*/
.services-details-page {
    display: grid;
    grid-template-columns: 1fr;
    gap: 4rem;
    margin-top: 4rem;
}

.main-content {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.sidebar {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.breadcrumbs {
    font-size: 0.9rem;
    color: var(--text-muted);
}

    .breadcrumbs a {
        color: var(--text-muted);
        text-decoration: none;
    }

.main-header-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.header h1 {
    font-size: 3rem;
    margin: 0;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 2rem;
}

.description {
    line-height: 1.8;
    color: var(--text-primary);
    max-width: 90%;
    font-size: 1.6rem;
}

.service-agreement {
    color: var(--primary-green);
    text-decoration: none;
    font-weight: 600;
}


.service-quilty a {
    font-size: 1.6rem;
    font-weight: 500;
    color: var(--light-green-accent);
    line-height: 1;
}

.service-quilty img {
    margin-inline-start: 1rem;
    vertical-align: middle;
}

.tabs-container {
    margin-top: 4rem;
}

.tabs-nav {
    display: flex;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

    .tabs-nav::-webkit-scrollbar {
        display: none;
    }

.services-details-page .tab-link {
    padding: 1rem 1.5rem;
    cursor: pointer;
    position: relative;
    border-bottom: 3px solid transparent;
    transition: color 0.3s, border-color 0.3s;
    margin-bottom: -1px;
    font-weight: 500;
    font-size: 1.6rem;
    color: var(--blue-text);
}

    .services-details-page .tab-link.active, .services-details-page .tab-link:hover {
        color: var(--primary-green);
    }

    .services-details-page .tab-link.active {
        border-bottom-color: var(--primary-green);
        font-weight: 700;
    }

.tab-content {
    display: none;
    padding-top: 1.5rem;
}

    .tab-content.active {
        display: block;
        margin-top: 2rem;
    }

.steps-list {
    list-style: none;
    padding: 0;
    margin: 1.5rem 0 0 0;
}

.video-placeholder {
    background-color: var(--light-gray-bg);
    border: 1px solid var(--border-color);
    height: 350px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.play-button {
    width: 70px;
    height: 70px;
    background-color: var(--primary-green);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 167, 157, 0.3);
}

.sidebar-card {
    border: 1px solid var(--border-color);
    border-radius: 1.6rem;
    padding: 4rem;
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

    .sidebar-card hr {
        border: 0;
        height: 2px;
        background-color: var(--border-color);
        margin: 1rem 0rem;
        opacity: 1;
    }

.payment-info-img img {
    width: 8rem;
    height: 6rem;
    border: 1px solid var(--border-color);
    padding: 0.5rem 0.5rem;
    border-radius: 0.4rem;
}

.start-service-btn {
    display: block;
    background-color: var(--primary-green);
    color: white;
    text-align: center;
    padding: 1rem 3rem;
    border-radius: 0.4rem;
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: 500;
    transition: background-color 0.3s;
    width: fit-content;
    border: 1px solid #fff;
}

    .start-service-btn:hover {
        background-color: var( --secondary-green);
        color: #fff;
    }

.info-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.info-content p, .info-content a {
    margin: 0;
    font-weight: 400;
    color: var(--blue-text);
    text-decoration: none;
    font-size: 1.6rem;
}

.info-content a {
    color: var(--primary-green);
    font-weight: 500;
}

    .info-content a img {
        margin-inline-start: 1rem;
    }

.info-mobile-links a {
    border: 1px solid #e0e6f1;
    border-radius: 4px;
    background-color: #f3f4f6;
    transition: all 0.3s ease-in-out;
    margin-inline-end: 1rem;
    padding: 0.4rem;
}

.section.services-section {
    padding-bottom: 10rem;
    background-color: #F7FDF9;
    margin-top: 5rem;
}

.info-item i {
    color: var(--primary-green);
    font-size: 1.2rem;
    width: 20px;
    text-align: center;
    margin-top: 4px;
}

.info-content h4 {
    margin-bottom: 1rem;
    font-size: 1.6rem;
    color: var(--blue-text);
    font-weight: 700;
}


.download-guide-link {
    text-align: center;
    color: var(--primary-green);
    text-decoration: none;
    font-weight: 600;
}

a.download-guide-link {
    color: var(--text-primary);
    background-color: #F3F4F6;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 0.8rem 2rem;
    border-radius: 0.4rem;
    display: inline-block;
}

@media (min-width: 992px) {
    .services-details-page {
        grid-template-columns: 2fr 1fr;
    }
}

@media (max-width: 991px) {
    .main-header-wrapper {
        flex-direction: column;
        align-items: stretch;
    }

    .start-service-btn {
        margin-bottom: 1rem;
    }

    .header h1 {
        font-size: 2rem;
    }
}

@media (max-width: 767px) {

    .header h1 {
        font-size: 1.8rem;
    }

    .services-details-page .tab-link {
        padding: 0.8rem 1rem;
    }

    .sidebar-card {
        padding: 3rem;
    }
}

@media (max-width: 650px) {
    ol, ul {
        padding: 0;
        margin: 0;
        width: 100%;
    }

    .tab-content p, .tab-content li {
        font-size: 1.4rem !important;
    }

    .tab-content span {
        font-size: 1.6rem !important;
    }

    .tab-content .MsoListParagraphCxSpFirst, .tab-content .MsoListParagraphCxSpMiddle, .tab-content .MsoListParagraphCxSpLast {
        margin: 0 4rem !important;
    }
}

/* contact us */

.contact-us-form .form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contact-us-form .upload-container {
    text-align: right;
    padding: 0;
}

    .contact-us-form .upload-container .browse-label {
        display: inline-block;
    }


.contact-us-form .form-grid {
    gap: 3rem;
}

    .contact-us-form .form-grid input, .contact-us-form .form-grid select, .contact-us-form .form-grid textarea {
        background-color: #F3F4F6;
    }

.info-content h4 a {
    margin-inline-start: 1rem;
}

.contact-us-side .info-content {
    display: flex;
    gap: 0.8rem;
}

    .contact-us-side .info-content img {
        max-height: 2.2rem;
    }

.contact-us-form-btn .primary-btn {
    background-color: var(--primary-green);
    color: #fff;
}

@media(max-width:768px) {
    .contact-us-form .form-grid {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .sidebar.contact-us-side {
        margin-bottom: 10rem;
    }
}

.Invoice-Header-Value {
    font-weight: 300;
}

/* Faq's */
.faq-details-page {
    padding-top: 4rem;
}

.faq-section {
    position: relative;
    padding-bottom: 0;
}

    .faq-section:before {
        content: '';
        background-color: #F7FDF9;
        width: 100%;
        height: 100%;
        display: block;
        position: absolute;
        z-index: -1;
        top: 0;
        right: 0;
    }

.faq-details-page .main-content {
    padding: 4rem 0;
    margin-bottom: 5rem;
    margin-top: 0;
}

.faq-main-content .input-holder.input-wrapper {
    width: 32rem;
}

.faq-main-content .tab-link {
    padding: 1rem 1.5rem;
    cursor: pointer;
    position: relative;
    border-bottom: 3px solid transparent;
    transition: color 0.3s, border-color 0.3s;
    margin-bottom: -1px;
    font-weight: 500;
    font-size: 1.6rem;
    color: var(--blue-text);
}

    .faq-main-content .tab-link.active, .faq-main-content .tab-link:hover {
        color: var(--primary-green);
    }

    .faq-main-content .tab-link.active {
        border-bottom-color: var(--primary-green);
        font-weight: 700;
    }

.faq-main-content .tabs-container {
    margin-bottom: 2rem;
    box-shadow: unset;
}

.faq-main-content .accordion-item {
    border: unset;
    box-shadow: unset;
    border-bottom: 1px solid var(--border-color);
}

.faq-main-content .accordion-wrapper {
    gap: 0;
}

.faq-main-content {
    margin-bottom: 8rem;
}


.inner-main-content .tab-link {
    padding: 1rem 1.5rem;
    cursor: pointer;
    position: relative;
    border-bottom: 3px solid transparent;
    transition: color 0.3s, border-color 0.3s;
    font-weight: 500;
    font-size: 1.6rem;
    color: var(--blue-text);
}

    .inner-main-content .tab-link.active, .inner-main-content .tab-link:hover {
        color: var(--primary-green);
    }

    .inner-main-content .tab-link.active {
        border-bottom-color: var(--primary-green);
        font-weight: 700;
    }


.inner-main-content #tabs {
    border-bottom: unset;
}


.info-service-container .payment-info-img img {
    width: 24%;
}

.club-tabs .club-primary-btn {
    padding: 4px 16px;
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 16px;
    color: #fff;
    background: #067647;
    border: 1px solid #067647;
    border-radius: 4px;
}

.club-title-share-page .title-share-container .title-box .club-primary-btn {
    margin-top: 18px;
    width: -moz-fit-content;
    width: fit-content;
    font-family: "boldFont";
}

.club-title-share-page {
    background: #f3f4f6;
    padding-bottom: 5rem;
}

@media(max-width: 768px) {
    .club-title-share-page {
        padding-top: 42px
    }
}

.club-title-share-page .title-share-container {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    margin-top: 2rem;
}

.club-title-share-page .service-quilty {
    margin: 2rem 0;
}

@media(max-width: 768px) {
    .club-title-share-page .title-share-container {
        flex-direction: column
    }
}

.club-title-share-page .title-share-container .title-box {
    width: 70%
}

@media(max-width: 768px) {
    .club-title-share-page .title-share-container .title-box {
        width: 100%
    }
}


.club-title-share-page .title-share-container .title-box h1 {
    font-size: 3rem;
    margin: 0;
    font-weight: 700;
    color: #fff;
    margin-bottom: 2rem;
}

.club-title-share-page .title-share-container .title-box p {
    line-height: 1.8;
    color: #fff;
    max-width: 90%;
    font-size: 1.6rem;
}


.club-tabs {
    margin-top: 64px;
    padding: 24px 32px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
    min-height: 502px;
    border: 1px solid #d2d6db
}

@media(max-width: 768px) {
    .club-tabs {
        padding: 24px 16px
    }
}

.club-tabs .club-tab-header {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-top: 16px;
    border-radius: 8px;
    background: #f9fafb
}

    .club-tabs .club-tab-header > * {
        margin-left: 10rem;
    }

    .club-tabs .club-tab-header .tab {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 2rem;
        color: var(--text-primary);
        cursor: pointer;
        position: relative;
        padding-bottom: 16px;
        padding-right: 0.9rem !important;
    }

@media(max-width: 768px) {
    .club-tabs .club-tab-header .tab {
        font-size: 14px
    }

    .club-tabs .club-tab-header > * {
        margin-left: 6rem;
    }
}

.club-tabs .club-tab-header .tab::before {
    content: "";
    position: absolute;
    bottom: 0px;
    right: 0px;
    width: 100%;
    height: 5px;
    background: #f9fafb;
    border-radius: 10px
}

.club-tabs .club-tab-header .tab.active {
    color: #161616
}

    .club-tabs .club-tab-header .tab.active::before {
        background: #1b8354
    }

.club-tabs .club-tabContent {
    padding: 40px 10px 10px 10px;
    font-size: 16px;
    color: #384250
}

    .club-tabs .club-tabContent.show {
        display: block
    }

    .club-tabs .club-tabContent.hide {
        display: none
    }

    .club-tabs .club-tabContent ul {
        padding-right: 40px
    }

    .club-tabs .club-tabContent ol {
        padding-right: 40px
    }

.club-tabs.tabs-larg-contant {
    background: inherit;
    box-shadow: none;
    border: 0px
}

    .club-tabs.tabs-larg-contant .club-tab-header {
        padding: 16px 32px;
        justify-content: space-between;
        background: #f3f4f6
    }

        .club-tabs.tabs-larg-contant .club-tab-header .tab {
            font-size: 20px
        }

@media(max-width: 768px) {
    .club-tabs.tabs-larg-contant .club-tab-header .tab {
        margin-bottom: 16px;
        font-size: 18px
    }

    .club-tabs .club-tab-header .tab svg {
        display: none;
    }
}

.club-tabs.tabs-larg-contant .club-tab-header .tab::before {
    background: #f3f4f6
}

.club-tabs.tabs-larg-contant .club-tab-header .tab.active::before {
    background: #1b8354
}

.club-tabs.tab-pages {
    margin-top: 32px;
    padding: 24px 0px;
    border-radius: 0px;
    background: inherit;
    box-shadow: none;
    min-height: auto
}

.info-service-container .info-service-card {
    margin-top: 8px;
    padding: 4px 12px;
    border-radius: 4px;
    background: #f9fafb
}

.info-service-container {
    margin-top: 64px;
    padding: 2.4rem 3.2rem;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
    border: 1px solid #d2d6db
}

    .info-service-container .info-service-card .info-box {
        margin-top: 8px;
        display: flex;
        align-items: center;
        gap: 8px;
    }

        .info-service-container .info-service-card .info-box img {
            width: 1.8rem;
            height: 1.8rem;
        }

        .info-service-container .info-service-card .info-box .payment-info-img img {
            width: 7rem;
            height: 4rem;
        }



#ChangePhotoBtn {
    min-width: 12rem;
}

.about-us {
    margin-bottom: 8rem;
}

.title-box h1 {
    font-size: 3rem;
    margin: 0;
    font-weight: 700;
    color: #fff;
    margin-bottom: 2rem;
}

.title-box p {
    line-height: 1.8;
    color: #fff;
    max-width: 90%;
    font-size: 1.6rem;
}

.about-section .section-header {
    text-align: center;
    margin-bottom: 60px;
}

.about-section .section-title {
    font-size: 2.5rem;
    color: var(--primary-green);
    margin-bottom: 15px;
    position: relative;
    display: inline-block;
}

    .about-section .section-title::after {
        content: '';
        position: absolute;
        bottom: -10px;
        right: 50%;
        transform: translateX(50%);
        width: 80px;
        height: 4px;
        background: var(--primary-green);
        border-radius: 0.6rem;
    }

.stats-zigzag {
    padding-bottom: 6rem;
    background: white;
    position: relative;
}


.zigzag-container {
    display: flex;
    gap: 60px;
}

.zigzag-item {
    display: flex;
    align-items: center;
    gap: 6rem;
    opacity: 0;
    animation: fadeInZigzag 0.8s ease forwards;
    flex-wrap: wrap;
    justify-content: center;
}


    .zigzag-item:nth-child(1) {
        animation-delay: 0.2s;
    }

    .zigzag-item:nth-child(2) {
        animation-delay: 0.4s;
    }

    .zigzag-item:nth-child(3) {
        animation-delay: 0.6s;
    }

    .zigzag-item:nth-child(4) {
        animation-delay: 0.8s;
    }

@keyframes fadeInZigzag {
    to {
        opacity: 1;
    }
}

.zigzag-number {
    flex: 0 0 200px;
    height: 200px;
    background: var(--primary-green);
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: white;
    position: relative;
    box-shadow: 0 20px 40px rgba(27, 131, 84, 0.3);
    transition: all 0.4s ease;
}

    .zigzag-number:hover {
        transform: scale(1.1);
        background: var(--primary-green-light);
    }

.zigzag-value {
    font-size: 3rem;
    font-weight: 700;
}

.zigzag-label {
    font-size: 1.6rem;
    opacity: 0.95;
}

.zigzag-content {
    flex: 1;
    text-align: center;
}

.zigzag-title {
    font-size: 3rem;
    color: var(--blue-text);
    margin-bottom: 15px;
    font-weight: 700;
}

.zigzag-text {
    color: var(--text-secondary);
    line-height: 1.8;
    font-size: 1.6rem;
}

.hexagon-section {
    padding: 100px 0;
    background: linear-gradient(to bottom, white, var(--light-green-bg));
}

.hexagon-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    padding: 0 50px;
}

.hex-card {
    background: white;
    border-radius: 30px;
    padding: 50px 40px;
    position: relative;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    overflow: hidden;
}

    .hex-card::before {
        content: '';
        position: absolute;
        top: -100%;
        left: -100%;
        width: 300%;
        height: 300%;
        background: radial-gradient(circle, var(--primary-green-light) 0%, transparent 70%);
        opacity: 0;
        transition: all 0.6s ease;
    }

    .hex-card:hover {
        transform: translateY(-15px) rotateX(5deg);
        box-shadow: 0 20px 50px rgba(27, 131, 84, 0.2);
    }

        .hex-card:hover::before {
            opacity: 0.05;
            top: -50%;
            left: -50%;
        }

.hex-icon {
    width: 100px;
    height: 100px;
    background: var(--primary-green);
    margin: 0 auto 30px;
    clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease;
}

.hex-card:hover .hex-icon {
    background: var(--primary-green-light);
}

.hex-icon::after {
    font-size: 40px;
    filter: brightness(0) invert(1);
    display: block;
    text-align: center;
}

.hex-icon[data-category="Foundation"]::after {
    content: "🏛️";
}

.hex-icon[data-category="Goals & Missions"]::after {
    content: "📌";
}

.hex-icon[data-category="Economic Development"]::after {
    content: "💰";
}

.hex-icon[data-category="Major Events"]::after {
    content: "🎉";
}

.hex-icon[data-category="Investment & Development"]::after {
    content: "💡";
}

.hex-icon[data-category="Cultural Role"]::after {
    content: "🎭";
}

.hex-title {
    font-size: 2rem;
    color: var(--blue-text);
    margin-bottom: 20px;
    font-weight: 600;
    text-align: center;
}

.hex-text {
    color: var(--text-secondary);
    line-height: 1.8;
    text-align: center;
    font-size: 1.6rem;
}

.parallax-section {
    min-height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.quote-container {
    max-width: 900px;
    text-align: center;
    color: white;
    padding: 60px 40px;
    position: relative;
    z-index: 2;
    color: var(--text-primary);
}

.quote-mark {
    font-size: 100px;
    opacity: 0.2;
    margin-bottom: -30px;
    font-family: Georgia, serif;
}

.quote-text {
    font-size: 2rem;
    line-height: 2;
    margin-bottom: 30px;
    font-weight: 300;
}

.quote-author {
    font-size: 1.6rem;
    opacity: 0.9;
    font-style: italic;
}




@media (max-width: 768px) {
    .section-header {
        margin-bottom: 2rem;
    }


    .zigzag-container {
        flex-wrap: wrap;
    }

    .zigzag-number {
        flex: 0 0 100px;
        height: 100px;
    }


    about-section .section-title::before,
    about-section .section-title::after {
        display: none;
    }

    .hexagon-grid {
        padding: 0 1rem;
    }
}


.wave-section {
    padding: 1.2rem 2rem;
    background: #fff;
    position: relative;
}

.wave-content {
    padding: 4rem;
}

.section-badge {
    display: inline-block;
    background: var(--primary-green);
    color: #fff;
    padding: 1rem 3rem;
    border-radius: 3rem;
    font-size: 1.6rem;
    margin-bottom: 2rem;
    font-weight: 600;
}


.section-text {
    font-size: 1.6rem;
    color: var(--text-primary);
    line-height: 2;
}


.closing-container {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

.closing-section {
    padding: 10rem 2rem;
    background: linear-gradient(180deg, var(--light-green-bg) 0%, white 100%);
    position: relative;
    overflow: hidden;
}

    .closing-section::before,
    .closing-section::after {
        position: absolute;
        font-size: 200px;
        opacity: 0.05;
        animation: camelFloat 15s ease-in-out infinite;
    }

    .closing-section::before {
        top: 10%;
        left: 5%;
    }

    .closing-section::after {
        bottom: 10%;
        right: 5%;
        animation-delay: 7s;
    }

@keyframes camelFloat {
    0%, 100% {
        transform: translateY(0) rotate(-5deg);
    }

    50% {
        transform: translateY(-30px) rotate(5deg);
    }
}

.closing-badge {
    display: inline-block;
    background: linear-gradient(135deg, var(--primary-green), var(--secondary-green));
    color: #fff;
    padding: 1.2rem 4rem;
    border-radius: 4rem;
    font-size: 1.8rem;
    margin-bottom: 3rem;
    font-weight: 600;
    box-shadow: 0 10px 30px rgba(27, 131, 84, 0.3);
}

.closing-container {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
}

.closing-text {
    font-size: 1.6rem;
    color: var(--text-primary);
    line-height: 2;
    position: relative;
    padding: 40px;
    background: white;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.08);
}



@media (max-width: 768px) {

    .closing-title {
        font-size: 2.5rem;
    }

    .closing-text {
        padding: 30px 20px;
    }
}


/* Make the modal body fill space nicely */
#fileModal.modal-wide #fileModal > .modal-dialog {
    width: 90%;
}

@@media (min-width: 992px) {
    #fileModal > .modal-lg {
        --bs-modal-width: 70% !important;
    }
}

@@media (min-width: 576px) {
    #fileModal > .modal-dialog
    Specificity: (0,1,0) {
        max-width: var(--bs-modal-width);
        margin-left: auto;
        margin-right: auto;
    }
}

.filemodalbody {
    height: 70vh; /* adjustable */
    padding: 0;
    overflow: hidden;
}

.preview-wrap, .preview-wrap iframe, .preview-wrap img {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
}

.preview-fallback {
    padding: 20px;
}

.general-status p {
    font-size: 1.5rem;
    font-weight: 500;
    text-align: center;
    margin: 0;
    padding: 0.5rem;
    border: 1px solid #fff;
    border-radius: 0.6rem;
}

.general-status.incompleted p {
    border-color: var(--error-color);
    background-color: #fffbfa;
    color: var(--error-color);
}

.general-status.completed p {
    border-color: var(--success-color);
    background-color: #f6fef9;
    color: var(--success-color);
}

.general-status.waitingFromClub p {
    border-color: var(--info-color);
    background-color: #f5faff;
    color: var(--info-color);
}

.general-status.waiting p {
    border-color: var(--warning-color);
    background-color: #fffcf5;
    color: var(--warning-color);
}

.general-status.neutral p {
    border-color: var(--neutral-color);
    background-color: #fcfcfd;
    color: var(--neutral-color);
}

.iti__selected-flag {
    direction: ltr;
}

.iti__country-list {
    direction: ltr;
}

/*Cookies*/

.cookies-modal-container {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding: 20px;
    z-index: 1000;
}

.cookies-modal-content {
    background: white;
    border-radius: 12px;
    width: 80%;
    padding: 30px;
    position: relative;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
}

.cookies-close-btn {
    position: absolute;
    top: 15px;
    left: 15px;
    background: none;
    border: none;
    font-size: 28px;
    color: #666;
    cursor: pointer;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
}

    .cookies-close-btn:hover {
        color: #333;
    }

.cookies-header {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 20px;
    gap: 10px;
    flex: 100%;
}

    .cookies-header h2 {
        font-size: 18px;
        color: #333;
        font-weight: 600;
    }

.cookies-description {
    line-height: 1.8;
    margin-bottom: 25px;
    font-size: 14px;
    text-align: right;
    color: #666;
    flex: 100%;
}

.cookies-privacy-link {
    color: #2e7d32;
    text-decoration: none;
    display: inline-block;
}

    .cookies-privacy-link:hover {
        text-decoration: underline;
    }

.cookies-accept-btn, .cookies-manage-btn {
    padding: 12px 24px;
    display: inline-block;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.cookies-accept-btn {
    background: #2e7d32;
    color: white;
}

    .cookies-accept-btn:hover {
        background: #1b5e20;
    }

.cookies-manage-btn {
    background: white;
    color: #666;
    border: 1px solid #ddd;
}

    .cookies-manage-btn:hover {
        background: #f5f5f5;
    }

.cookies-manage-link {
    display: block;
    text-align: center;
    color: #2e7d32;
    text-decoration: none;
    font-size: 14px;
    margin-top: 0;
    flex: 100%;
}

    .cookies-manage-link:hover {
        text-decoration: underline;
    }

.cookies-btns {
    flex: 100%;
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.manage-modal-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    z-index: 1001;
}

.manage-modal-content {
    background: white;
    border-radius: 12px;
    max-width: 600px;
    width: 100%;
    padding: 30px;
    position: relative;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    max-height: 90vh;
    overflow-y: auto;
}

.manage-close-btn {
    position: absolute;
    top: 15px;
    left: 15px;
    background: none;
    border: none;
    font-size: 28px;
    color: #666;
    cursor: pointer;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
}

    .manage-close-btn:hover {
        color: #333;
    }

.manage-header {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 20px;
    gap: 10px;
}

    .manage-header h2 {
        font-size: 18px;
        color: #333;
        font-weight: 600;
        text-align: right;
    }

.manage-description {
    color: #666;
    line-height: 1.8;
    margin-bottom: 25px;
    font-size: 13px;
    text-align: right;
}

.cookie-options {
    margin-bottom: 25px;
}

.cookie-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #eee;
}

    .cookie-item:last-child {
        border-bottom: none;
    }

.cookie-text h3 {
    font-size: 14px;
    color: #333;
    font-weight: 500;
}

.toggle {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 26px;
}

    .toggle.disabled {
        opacity: 0.6;
        cursor: not-allowed;
    }

    .toggle input {
        opacity: 0;
        width: 0;
        height: 0;
    }

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .3s;
    border-radius: 26px;
}

    .slider:before {
        position: absolute;
        content: "";
        height: 20px;
        width: 20px;
        right: 3px;
        bottom: 3px;
        background-color: white;
        transition: .3s;
        border-radius: 50%;
    }

input:checked + .slider {
    background-color: #2e7d32;
}

    input:checked + .slider:before {
        transform: translateX(-24px);
    }

.toggle.disabled .slider {
    background-color: #2e7d32;
    cursor: not-allowed;
}

.manage-btns {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.manage-confirm-btn, .manage-reject-btn {
    flex: 1;
    padding: 12px;
    border: none;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.manage-confirm-btn {
    background: #2e7d32;
    color: white;
}

    .manage-confirm-btn:hover {
        background: #1b5e20;
    }

.manage-reject-btn {
    background: white;
    color: #666;
    border: 1px solid #ddd;
}

    .manage-reject-btn:hover {
        background: #f5f5f5;
    }

/*.site-map-sec .sitemap-item {
    border-bottom: 1px solid var(--border-color);
}*/

.site-map-sec .sitemap-item:last-child {
    border-bottom: none;
}

.site-map-sec .main-link {
    display: inline-block;
    align-items: center;
    padding: 1.5rem 0;
    background: white;
    border: none;
    text-align: right;
    cursor: pointer;
    font-size: 1.6rem;
    color: var(--blue-text);
    transition: background-color 0.3s ease;
    font-weight: 500;
}

.site-map-sec .arrow {
    margin-inline-start: 2rem;
}

    .site-map-sec .arrow.rotated img {
        transform: rotate(180deg);
    }

.site-map-sec .submenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.site-map-sec .submenu.open {
    max-height: 500px;
}
.site-map-sec .submenu-item {
    display: block;
    margin-bottom: 0.8rem;
    padding: 0.5rem 1rem;
    color: var(--blue-text);
    cursor: pointer;
    transition: background-color 0.3s ease;
    border-right: 4px solid var(--bs-green);
    line-height: 1.5;
    font-size: 1.4rem;
}
    .site-map-sec .submenu-item:hover {
        cursor: pointer;
    }
    .site-map-sec .no-submenu {
        cursor: pointer;
    }

.site-map-box {
    box-shadow: 0 1px 20px rgba(0,0,0,0.15);
    border-radius: 0.6rem;
    padding: 2rem;
    margin-bottom: 10rem;
}

.title-box h2 {
    line-height: 1.8;
    color: #fff;
    max-width: 90%;
    font-size: 1.6rem;
}

.password-div {
    position: relative;
}

/* زر العين يبقى يسار ومتمركز عموديًا بلا اعتماد على top:xx% */
.password-toggle {
    position: absolute;
    left: 10px; /* يسار */
    inset-block: 0; /* top:0; bottom:0; */
    display: flex; /* لتوسيط الأيقونة عموديًا */
    align-items: center; /* مركز عمودي */
    background: none;
    border: none;
    color: #666;
    cursor: pointer;
    z-index: 10;
    transition: color 0.3s ease;
}

    .password-toggle:hover {
        color: var(--primary-green, #3E5C76);
    }

/* مساحة يسار للحقل حتى لا يتداخل النص مع الأيقونة */
.password-div .form-control,
.password-div .form-input {
    padding-left: 45px;
}


.home-timer {
    text-align: center;
}

.home-timer {
    text-align: center;
}

.home-timer {
    text-align: center;
}

#label {
    font-size: 1.5em;
    color: #fff;
    margin-bottom: 25px;
}

.timer-boxes {
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
    flex-direction: row-reverse;
}

.time-box {
    background: #00000000;
    border: 2px solid #ffffff7a;
    border-radius: 2.5rem;
    padding: 0;
    width: 100px;
    height: 100px;
    text-align: center;
    box-shadow: 0 0 20px rgb(13 21 9 / 30%);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    backdrop-filter: blur(5px);
}

    .time-box:hover {
        transform: translateY(-4px);
        box-shadow: 0 0 30px #38552966;
    }

.time-value {
    font-size: 3rem;
    color: #dbdbd8;
    padding: 1.5rem 0 0.5rem;
}

.time-label {
    padding-top: 0.3rem;
    font-size: 1.6rem;
    color: var(--primary-green);
    margin-top: 0;
    background: #ffffffd6;
    border-radius: 0 0 2.4rem 2.4rem;
    height: 33px;
}

@media (max-width: 600px) {
    #label {
        font-size: 1.2em;
    }

    .home-timer {
        margin-top: 4rem;
    }

    .time-box {
        width: 80px;
        height: 83px;
    }
    .timer-boxes {
        gap: 1rem;
    }

    .time-value {
        font-size: 1.6em;
    }
}

@media(max-width: 400px) {
    .timer-boxes {
        display: flex;
        justify-content: center;
        gap: 0.5rem;
        flex-wrap: wrap;
        margin-bottom: 5rem;
    }
}