@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Rajdhani:wght@300;400;500;600;700&display=swap');

body.light-dashboard {
    font-family: 'DM Sans', sans-serif;
}

body.light-dashboard :is(h1, h2, h3, h4, h5, h6),
#navigation.style-1 ul li a,
#navigation.style-1 ul li,
#footer ul.menu li,
#footer ul.menu li a,
.footer-contact li span {
    font-family: "Rajdhani", Sans-serif;
}

#footer ul.menu li,
.footer-contact li span {
    font-weight: 600 !important;
}

.theme-container {
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    padding: 0 16px;
}

.single-listing-page .listing-titlebar-title {
    gap: 16px;
}

.single-listing-page .listing-titlebar-title h1,
.single-listing-page .listing-titlebar-title span {
    margin: 0 !important;
    padding: 0;
}

.single-listing-page .listing-titlebar-title span {
    display: inline-block;
    padding: 8px 16px;
    background-color: #FAFFE6;
    color: #566B00 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 20px !important;
    border-radius: 32px;

}

.listing-section p {
    font-size: 18px;
    line-height: 28px;
    font-weight: 500;
    color: #6B7280;
}

#listing-overview h2,
.mm-opening-hours h3,
h2.listing-desc-headline {
    font-size: 32px;
    font-weight: 700;
    line-height: 40px;
    color: #111928;
    margin-top: 40px !important;
    margin-bottom: 16px !important;
}

.listing-features li i {
    display: none;

}

.listing-features {
    gap: 12px;
}

.listing-features li {
    display: inline-block;
    max-width: fit-content;
}

.listing-features.checkboxes li {
    display: inline-block;
    padding: 8px 12px !important;
    padding-left: 12px !important;
    background-color: #F9FAFB;
    border: 1px solid #E5E7EB;
    color: #4B5563 !important;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500 !important;
    border-radius: 8px;
    margin: 0 !important;
}

.opening-outer-hours {
    display: flex;
    gap: 56px;
    flex-flow: row wrap;
}

.opening-outer-hours .mm-row {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.opening-outer-hours .mm-row .mm-days,
.opening-outer-hours .mm-row .mm-time {
    font-size: 14px;
    line-height: 20px;
    color: #0A0A0A;
}

.opening-outer-hours .mm-row .mm-days {
    font-weight: 700;
}

.opening-outer-hours .mm-row .mm-time {
    font-weight: 400;

}

.accordion.ui-accordion h3 {
    background-color: #F6F6F6 !important;
    padding: 24px 30px 24px 24px;
    font-size: 22px;
    color: #111928;
    font-weight: 700;
    line-height: 28px;
    border-radius: 10px;
}

.accordion.ui-accordion h3:hover {
    color: #111928;
}

.ui-accordion-header .fa-angle-down::before {
    content: '';
    display: inline-flex;
    width: 16px;
    height: 17px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="17" viewBox="0 0 16 17" fill="none"><path d="M16 7.67188H8.53125V0.203125H7.46875V7.67188H0V8.73438H7.46875V16.2031H8.53125V8.73438H16V7.67188Z" fill="%23002F47"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    justify-content: center;
    align-items: center;
}

.ui-accordion-header.ui-accordion-header-active .fa-angle-down::before {
    content: '';
    display: inline-flex;
    width: 16px;
    height: 2px;
    background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 7.67188H16V8.73438H0V7.67188Z" fill="white"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    justify-content: center;
    align-items: center;
    background-color: white !important;
    top: -12px;
    position: absolute;
}

.ui-accordion-header.ui-accordion-header-active+.ui-accordion-content,
.accordion.ui-accordion h3.ui-accordion-header-active {
    background-color: #000 !important;
    color: #fff !important;
}

.ui-accordion-header.ui-accordion-header-active+.ui-accordion-content p {
    color: #fff !important;
    max-width: 762px;
    width: 100%;
    font-size: 18px;
    line-height: 28px;
}

.listing-section .ui-accordion {
    border: none !important;
}

.accordion.ui-accordion h3.ui-accordion-header-active {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

.ui-accordion-header.ui-accordion-header-active+.ui-accordion-content {
    border-bottom-left-radius: 12px !important;
    border-bottom-right-radius: 12px !important;
    margin-bottom: 16px !important;
    padding-top: 8px !important;
}

.ui-accordion-header.ui-accordion-header-active {
    padding-bottom: 0 !important;
}

.ui-accordion .ui-accordion-content {
    padding: 8px 24px 24px 24px;
}

.ui-accordion-header {
    margin-bottom: 16px !important;
}

.ui-accordion-header.ui-accordion-header-active {
    margin-bottom: 0 !important;
}

.listing-card-container-nl .listing-card-nl {
    flex-direction: row !important;
}

#listing-overview .listing-features .feature-no-icons::before {
    content: none;
}

.listing-features.checkboxes li {
    padding-left: 0;
}

body.woocommerce-order-pay #titlebar.gradient {
    padding-top: 20px !important;
    padding-bottom: 10px !important;
}

.listeo-single-listing-sidebar .boxed-widget {
    padding: 20px 24px;
}

.listing-card-container-nl.listing-geo-data .listing-card-nl {
    flex-direction: column !important;
    padding: 30px 28px;

}

.single-listing-page .details-main-col-nl h2.listing-title-nl {
    color: #111928 !important;
}

.col-md-12.listeo-grid-gallery-title {
    padding: 10px !important;
}

.home p.listing-excerpt-nl,
.single-listing-page p.listing-excerpt-nl {
    margin: 0 !important;
}

.single-listing .listeo-single-listing-sidebar a {
    background-color: #000000;
    color: #CCFF00;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    padding: 12px 0;
}

.booking-estimated-cost span,
.booking-estimated-cost strong {
    color: #000 !important;
    font-weight: 700;
}

.custom-booking-text p {
    margin-bottom: 0;
}

.verify-otp-page #header.custom-header,
.enrollment-form #header.custom-header,
.organisation-booking #header.custom-header,
.page-template-template-dashboard #header.custom-header,
.woocommerce-order-pay #header,
.woocommerce-order-received #header {
    background-color: #000000 !important;
    position: relative;
}

.verify-otp-page #header-container,
.enrollment-form #header-container,
.organisation-booking #header-container,
.page-template-template-dashboard #header-container,
.woocommerce-order-pay #header-container,
.woocommerce-order-received .header-container {
    height: 72px !important;
}

.page-template-template-dashboard .custom-header.not-sticky #logo {
    background-color: #000000 !important;
}

.dashboard-nav-inner li a {
    display: flex;
    align-items: center;
}

body.light-dashboard.page-template-template-dashboard .dashboard-nav ul li a i {
    color: #000000 !important;
    font-size: 17px;
}

.header-widget .user-menu {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.header-widget .user-menu .user-name span {
    display: none !important;
}

.sports-training .ibc-ico {
    display: none;
}

.verify-container {
    display: flex;
    justify-content: space-between;
    gap: 94px;
    padding-top: 64px;
    padding-bottom: 84px;
}

.sports-training .icon-box-color-icon h3 {
    margin-top: 0;
}

.verify-container .verify-left {
    flex: 1;
    display: flex;
    flex-direction: column;
}

#otp-form {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    gap: 16px;
}

.verify-container .verify-right {
    max-width: 480px;
    width: 100%;
    padding: 34px;
    background-color: #F9FAFB;
    border-radius: 16px;
    border: 1px solid #E5E7EB;
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.1),
        0 1px 3px 0 rgba(0, 0, 0, 0.1);
}

.verify-right .details-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}


.details-card h3 {
    font-size: 20px;
    line-height: 28px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 24px;
}

#verifyotpBtn {
    max-width: fit-content;
    margin: 0 auto;
    background-color: #000000;
    color: #CCFF00;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    max-width: 196px;
    width: 100%;
    height: 48px;
}

#otp-form p {
    text-align: center;
    font-size: 12px;
    line-height: 16px;
    font-weight: 700;
    letter-spacing: 4px;
    color: #374151;
}

.details-card .detail-row {

    padding: 12px 0;
}

.details-card .detail-row+.detail-row {
    margin-top: 16px;
}

.details-card .detail-row:not(:last-of-type) {
    border-bottom: 1px solid #E5E7EB;
}

.detail-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}

.detail-row span,
.detail-row strong {
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    color: #6A7282;
}

.detail-row strong {
    font-weight: 700;
    color: #0A0A0A;
}

.back-btn-verify {
    margin-left: auto;
}

.back-btn-verify .back-btn {
    background-color: #000000;
    color: #CCFF00;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    max-width: 202px;
    display: inline-block;
    padding: 12px 34px;
    width: fit-content;
    border-radius: 32px;
}

.mahamaya-otp-badge.success {
    background-color: #DCFCE7;
    color: #008236;
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.1),
        0 1px 3px 0 rgba(0, 0, 0, 0.1);
    border-radius: 32px;
    margin-bottom: 16px;
    padding: 16px 24px;
    margin-top: 0;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    max-width: 320px;
    width: 100%;
}

.mahamaya-otp-badge.success {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
}

.slot-carousel-nav-btn:hover:not(:disabled) {
    background-color: #CCFF00 !important;
}

.verify-left h1,
.woocommerce-order-received {
    margin: 0;
    color: #0A0A0A;
    font-size: 48px;
    line-height: 1;
    font-weight: 700;
    font-family: 'Rajdhani';
    margin-bottom: 16px;
}

#otp-form {
    padding: 20px;
    background: linear-gradient(180deg, #BAE800, #CFFF3B);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    border-radius: 24px;
}

.verify-left p {
    font-size: 16px !important;
    line-height: 24px !important;
    color: #6A7282;
    margin: 0;
}

input[type="text"].otp-box {
    max-width: 320px;
    width: 100%;
    height: 40px;
    border: 1px solid #00b800;
    border-radius: 10px;
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    margin: 0;
    padding: 0;
}

input[type="text"].otp-box::placeholder {
    color: #808080;
}

.booking-estimated-cost {
    display: none !important;
}

#place_order,
#btn-razorpay,
#btn-razorpay-cancel {
    background-color: #000000 !important;
    color: #CCFF00 !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    width: 100%;
    transition: 0.3s;
    max-width: 200px;
    border-radius: 32px !important;
    float: clear;
    margin: 0 auto;
}

#btn-razorpay-cancel {
    padding: 12px 0;
    background-color: #CCFF00 !important;
    color: #000 !important;
    border: none;
}

#btn-razorpay {
    padding: 12px 0;
}

.custom-order-meta p,
.woocommerce-privacy-policy-text p,
.woocommerce-order-pay p {
    font-size: 18px !important;
    line-height: 28px !important;
    font-weight: 500 !important;
}

.final-total h3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    font-size: 32px;
    line-height: 40px;
    font-weight: 700;
    color: #111928;
}

#payment #place_order {
    float: clear !important;
}

#place_order:hover {
    opacity: 0.8;
}

a.button.book-now.fullwidth.margin-top-5 {
    display: none !important;
}

.order_details li.order,
.order_details li.date,
.order_details li.total,
.order_details li.method {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px 0;
    border-bottom: 1px solid #E5E7EB;
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    color: #6A7282 !important;
}

.order_details li.total,
.order_details li.method {
    border-bottom: none;
}

.order_details li strong {
    color: #1E2939;
}

.woocommerce-order-received .notification.woo-summary {
    padding: 28px;
    background: linear-gradient(180deg, #BAE800, #CFFF3B);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    border-radius: 24px;
}

.woo-summary h3,
.woo-summary p {
    color: #374151 !important;
}

.listing-image-container-nl img {
    max-width: 318px !important;
    width: 100% !important;
}

.home .listing-image-container-nl img {
    max-width: 340px !important;
    width: 100% !important;
}


.woocommerce-order-pay #titlebar,
.woocommerce-order-received,
.lost-password-page #titlebar {
    background-color: #000 !important;
}

.woocommerce-order-pay #titlebar h1,
.woocommerce-order-received #titlebar h1,
.lost-password-page #titlebar h1 {
    text-align: center !important;
    color: #fff !important;
}

body .woocommerce #payment #place_order,
.woocommerce-page #payment #place_order {
    height: 44px !important;
    padding: 0 !important;
    max-width: 240px;
}

.woocommerce-order-received #titlebar h1 {
    margin-top: 20px !important;
}

#btn-razorpay:hover {
    background-color: #CCFF00 !important;
    color: #000 !important;
    border-color: transparent;
}

#btn-razorpay-cancel:hover {
    background-color: #000 !important;
    color: #CCFF00 !important;
    border-color: transparent;
}

#msg-razorpay-success {
    color: #000;
    border-radius: 12px;
    font-size: 20px !important;
    width: 100%;
    left: 0;
    margin-left: 0;
    text-align: center;
}

.woocommerce-error {
    border-color: none !important;
    border-radius: 12px !important;
}

#navigation ul>li>a {}

.password-strength-requirements strong {
    color: red !important;
}

#lostpasswordform .lostpassword-submit {
    display: flex;
    justify-content: center;
    align-items: center;
}

.lost-password-parent {
    display: flex;
    justify-content: center;
    align-items: center;
}

.lostpassword-button {
    margin: 0;
    color: #000 !important;
    height: 44px;
    padding: 0;
    max-width: 160px;
    width: 100%;
    line-height: 28px !important;
}

.lostpassword-button:hover {
    color: #000 !important;
    background-color: #ccff00 !important;
}

.lostpassword-submit {
    margin-bottom: 0 !important;
}

.my-account.lost-password {
    max-width: 540px;
    width: 100%;
}

.lost-password-parent .row-passowrd {
    max-width: 540px;
    width: 100%;
}

.sign-in-form.sign-in-child {
    display: flex;
    justify-content: center;
}

.login-form-child {
    max-width: 540px;
    width: 100%;
}

.form-forget {
    display: flex;
    justify-content: space-between;
}

.checkboxes label {
    margin: 0 !important;

}

.file-upload span {
    display: inline-flex;
    padding-left: 8px;
    font-size: 12px;
    font-weight: 600;
    font-style: italic;
    color: #a84c4c;
}

.language-translator {
    position: fixed;
    bottom: 16px;
    left: 16px;
}

.language-translator .gt-current-lang {
    background-color: #ccff00 !important;
}

.language-translator .gt-current-lang .gt-lang-code {
    color: #000 !important;
}
.gt_float_switcher .gt-selected,.gt_float_switcher{
    background-color: transparent !important;
}
.gt_float_switcher .gt-selected .gt-current-lang{
    border-radius: 12px !important;
}
.mm-header h2{
    margin-bottom: 12px;
}
@media (max-width:1025px) {
    .verify-container {
        flex-direction: column;
    }

    .verify-container .verify-right {
        max-width: 100%;
    }
}

@media (max-width:992px) {
    .single-facility-page .col-sm-12 {
        width: 50%;
    }

    #widget_booking_listings-2 {
        margin-top: 32px;
    }

    .slot-carousel-day-column {
        flex: 0 0 calc(33.333% - 10px);
        min-width: calc(33.333% - 10px);
        max-width: calc(33.333% - 10px);
        width: calc(33.333% - 10px);
    }

    .verify-left h1,
    .woocommerce-order-pay h1,
    .woocommerce-order-received h1 {
        font-size: 40px !important;
        line-height: 1 !important;
    }

    .verify-container {
        gap: 60px
    }

    .verify-container {
        padding-top: 50px;
        padding-bottom: 60px;
    }
}

@media (max-width: 768px) {
    #listing-gallery #titlebar {
        padding: 40px 0 0 0 !important;
    }

    .single-listing .container.service {
        padding: 0 24px !important;
    }

    #listing-overview h2,
    .mm-opening-hours h3,
    h2.listing-desc-headline {
        font-size: 24px;
        line-height: 32px;
    }

    .ui-accordion-header {
        padding-right: 48px !important;
    }

    .ui-accordion-header.ui-accordion-header-active .fa-angle-down::before {
        top: -19px;
        right: -12px;
    }

    .ui-accordion-header .fa-angle-down::before {
        position: absolute;
        top: 8px;
        right: -2px;
    }

    .single-facility-page .col-sm-12:not(:first-child) .listing-card-container-nl.listing-geo-data {
        margin-top: 20px !important;
    }

    .single-facility-page .col-sm-12 {
        width: 100%;
    }

    .listing-image-container-nl.facility-single-wrapper {
        max-width: 100%;
    }

    .listing-card-container-nl.listing-geo-data .listing-card-nl {
        padding: 20px;
    }

    .verify-left h1,
    .woocommerce-order-pay h1,
    .woocommerce-order-received h1 {
        font-size: 38px !important;
        line-height: 1 !important;
    }

    .woocommerce-order-pay .container {
        padding: 0 15px !important;
    }

    .final-total h3 {
        font-size: 26px;
        line-height: 32px;
    }

    .woocommerce-order-received #titlebar {
        padding: 30px 0 !important;
    }

    .home .listing-image-container-nl img {
        max-width: 100% !important;
    }

    .woocommerce-order-received #titlebar h1,
    .lost-password-page #titlebar h1 {
        margin-top: 60px !important;
    }

    .lost-password-page #titlebar h1 {
        font-size: 52px;
        line-height: 60px;
    }
}

@media (max-width: 568px) {


    #listing-overview h2,
    .mm-opening-hours h3,
    h2.listing-desc-headline {
        font-size: 20px;
        line-height: 28px;
    }

    #listing-overview h2,
    .mm-opening-hours h3,
    h2.listing-desc-headline {
        margin-top: 30px !important;
        margin-bottom: 12px !important;
    }

    .accordion.ui-accordion h3 {
        padding: 18px 24px 18px 18px;
        font-size: 18px;
    }

    .slot-carousel-day-column {
        flex: 0 0 calc(50% - 10px);
        min-width: calc(50% - 10px);
        max-width: calc(50% - 10px);
        width: calc(50% - 10px);
    }

    .verify-left h1,
    .woocommerce-order-received {
        font-size: 24px;
    }

    .verify-container {
        gap: 22px;
    }

    .verify-container {
        padding-top: 20px;
        padding-bottom: 24px;
    }

    .verify-container .verify-right {
        padding: 24px;
    }

    #otp-form {
        border-radius: 12px;
    }

    .mahamaya-otp-badge.success {
        padding: 12px 16px;
    }

    body.woocommerce-order-pay #titlebar.gradient {
        margin: 24px 0 !important;
        padding: 0 !important;
    }

    .woocommerce-order-pay .container {
        padding: 0 24px !important;
    }

    #place_order {
        max-width: 100%;
    }

    .final-total h3 {
        font-size: 22px;
        line-height: 28px;
    }

    #place_order,
    #btn-razorpay,
    #btn-razorpay-cancel {
        max-width: 170px;
    }

    .woocommerce-order-received #titlebar {
        padding: 20px !important;
    }

    .woocommerce-order-pay #titlebar h1 {
        font-size: 30px !important;
    }

    .woocommerce-order-pay #titlebar {
        padding-top: 36px !important;
    }

    body .woocommerce #payment #place_order,
    .woocommerce-page #payment #place_order {
        max-width: 100%;
    }

    .woocommerce-order-received #titlebar h1 {
        margin-top: 70px !important;
    }

    .lost-password-page #titlebar h1 {
        font-size: 46px;
        line-height: 50px;
    }

    .form-forget {
        flex-direction: column;
        gap: 12px;
        align-items: center;
    }
}

@media (max-width: 380px) {
    #btn-razorpay-cancel {
        margin-top: 20px;
    }

    #btn-razorpay,
    #btn-razorpay-cancel {
        max-width: 100%;
    }
}