/* =========================================================
   2026 MODERN WOOCOMMERCE UI
========================================================= */

.modern-shop-products {
    padding: 80px 0;
    background: #0b1120;
}

.modern-shop-description {
    max-width: 100% !important;
}

.modern-shop-description p {
    color: #fff;
}

.modern-shop-title {
    font-weight: 800 !important;
}

.modern-shop-description p a {
    cursor: pointer;
    text-decoration: underline;
}

.modern-shop-description p a:hover {
    color: #f4f4f4 !important;
}

.woocommerce ul.products {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;

}

.woocommerce ul.products::before {
    display: none;
}

.woocommerce ul.products li {
    margin: 0 !important;
    width: 23% !important;
}

.modern-product-card {
    list-style: none;
}

.modern-product-inner {
    position: relative;
    overflow: hidden;
    height: 100%;
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(20px);
    transition: all .4s ease;
}

.modern-product-inner:hover {
    transform: translateY(-10px);
    border-color: rgba(255, 255, 255, 0.18);
    box-shadow:
        0 20px 50px rgba(0, 0, 0, 0.25);
}

.modern-product-image-wrap {
    position: relative;
    display: block;
    overflow: hidden;
}

.modern-product-image-wrap img {
    width: 100%;
    transition: transform .6s ease;
}

.modern-product-inner:hover img {
    transform: scale(1.06);
}

.modern-sale-badge {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 5;
    padding: 10px 14px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    background: linear-gradient(135deg, #7c3aed, #2563eb);
}

.modern-product-content {
    padding: 24px;
}

.modern-product-title {
    margin-bottom: 12px;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
}

.modern-product-title a {
    color: #fff;
    text-decoration: none;
}

.modern-product-price {
    margin-bottom: 18px;
    color: #7dd3fc;
    font-size: 20px;
    font-weight: 700;
}

.modern-product-rating {
    margin-bottom: 20px;
}

.modern-product-button .button {
    width: 100%;
    border-radius: 16px !important;
    padding: 14px 20px !important;
    background:
        linear-gradient(135deg, #7c3aed, #2563eb) !important;
    color: #fff !important;
    border: 0 !important;
}

.modern-shop-hero {
    position: relative;
    overflow: hidden;
    padding: 140px 0 100px;
    background: linear-gradient(135deg, #0f172a, #111827);
}

.modern-shop-hero-bg {
    position: absolute;
    inset: 0;
}

.modern-shop-hero-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .15;
}

.modern-shop-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to bottom,
            rgba(15, 23, 42, .85),
            rgba(15, 23, 42, .96));
}

.modern-shop-content {
    position: relative;
    z-index: 5;
}

.modern-shop-badge {
    display: inline-flex;
    margin-bottom: 24px;
    padding: 10px 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .1);
    color: #fff;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .12em;
}

.modern-shop-title {
    margin-bottom: 20px;
    color: #fff;
    font-size: clamp(42px, 7vw, 72px);
    line-height: 1;
}

.modern-shop-description {
    max-width: 700px;
    color: rgba(255, 255, 255, .72);
    line-height: 1.9;
}

.modern-shop-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
    padding: 24px;
    border-radius: 24px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .08);
}

.modern-shop-toolbar * {
    color: #fff !important;
}

.modern-empty-state {
    padding: 80px;
    border-radius: 30px;
    text-align: center;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .08);
}

.modern-empty-state h3 {
    margin-bottom: 20px;
    color: #fff;
}

.modern-empty-state p {
    color: rgba(255, 255, 255, .72);
}

@media (max-width: 1200px) {

    .woocommerce ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {

    .woocommerce ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .modern-shop-toolbar {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
}

@media (max-width: 576px) {

    .woocommerce ul.products {
        grid-template-columns: 1fr;
    }

    .modern-shop-hero {
        padding: 110px 0 70px;
    }
}

/* =========================================================
   MODERN SHOP ARCHIVE IMPROVEMENTS
========================================================= */

.modern-shop-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 40px;
    padding: 24px 28px;
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.modern-shop-toolbar-left,
.modern-shop-toolbar-right {
    display: flex;
    align-items: center;
    gap: 20px;
}

.modern-shop-toolbar * {
    color: #fff !important;
}

.woocommerce-ordering select {
    min-width: 240px;
    height: 54px;
    padding: 0 18px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.06);
    color: #fff;
    backdrop-filter: blur(14px);
    outline: none;
}

.woocommerce-ordering select option {
    color: #111;
}

.woocommerce-result-count {
    margin: 0 !important;
    font-size: 15px;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.72);
}

/* Pagination */
.modern-shop-pagination {
    display: flex;
    justify-content: center;
    margin-top: 70px;
}

.woocommerce nav.woocommerce-pagination ul {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    border: 0;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(18px);
}

.woocommerce nav.woocommerce-pagination ul li {
    border: 0;
}

.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    color: #fff;
    background: rgba(255, 255, 255, 0.06);
    transition: all .3s ease;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background:
        linear-gradient(135deg, #7c3aed, #2563eb);
}

.woocommerce nav.woocommerce-pagination ul li a:hover {
    transform: translateY(-2px);
    background:
        linear-gradient(135deg, #7c3aed, #2563eb);
}

/* WooCommerce Notices */
.woocommerce-notices-wrapper {
    margin-bottom: 30px;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border-top: none !important;
}

.woocommerce-message:focus-visible,
.woocommerce-info:focus-visible,
.woocommerce-error:focus-visible {
    outline: 3px solid #3B9189 !important;
    outline-offset: 2px !important;
}

/* Mobile */
@media (max-width: 768px) {

    .modern-shop-toolbar {
        flex-direction: column;
        align-items: stretch;
    }

    .modern-shop-toolbar-left,
    .modern-shop-toolbar-right {
        width: 100%;
    }

    .woocommerce-ordering,
    .woocommerce-ordering form,
    .woocommerce-ordering select {
        width: 100%;
    }
}

/* =========================================================
   MARKETPLACE 2026
========================================================= */

.marketplace-2026 {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at top left,
            rgba(124, 58, 237, .15),
            transparent 28%),

        radial-gradient(circle at bottom right,
            rgba(37, 99, 235, .12),
            transparent 32%),

        linear-gradient(180deg,
            #0b1120 0%,
            #111827 100%);

    color: #fff;
}

/* =========================================================
   GLOBAL SECTION SPACING
========================================================= */

.marketplace-2026 .section {
    position: relative;
    padding: 90px 0;
}

/* =========================================================
   HEADINGS
========================================================= */

.marketplace-2026 .section-header {
    margin-bottom: 14px;
    font-size: clamp(34px, 4vw, 46px);
    line-height: 1.05;
    letter-spacing: -0.04em;
    font-weight: 700;
    color: #fff;
}

.marketplace-2026 .small-pop-header {
    font-size: 16px;
    line-height: 1.9;
    color: rgba(255, 255, 255, .68);
}

/* =========================================================
   BUTTONS
========================================================= */

.marketplace-2026 .btn-primary,
.marketplace-2026 .button {
    position: relative;
    overflow: hidden;
    border: 0;
    border-radius: 18px;
    padding: 16px 28px;
    font-weight: 600;
    letter-spacing: .02em;
    color: #fff !important;

    background:
        linear-gradient(135deg,
            #7c3aed 0%,
            #2563eb 100%);

    box-shadow:
        0 10px 30px rgba(37, 99, 235, .28);

    transition: all .35s ease;
}

.marketplace-2026 .btn-primary:hover,
.marketplace-2026 .button:hover {
    transform: translateY(-3px);
    box-shadow:
        0 18px 40px rgba(37, 99, 235, .42);
}

.marketplace-2026 .btn-text-only {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    color: #7dd3fc;
    font-weight: 600;
    text-decoration: none;

    transition: all .3s ease;
}

.marketplace-2026 .btn-text-only:hover {
    transform: translateX(4px);
}

/* =========================================================
   HERO MARKETPLACE CARDS
========================================================= */

.marketplace-2026 .carousel-slide-1-marketplace,
.marketplace-2026 .carousel-slide-2-marketplace {

    position: relative;
    overflow: hidden;

    min-height: 640px;

    border-radius: 38px;

    background-size: cover;
    background-position: center;

    isolation: isolate;
}

.marketplace-2026 .carousel-slide-1-marketplace::before,
.marketplace-2026 .carousel-slide-2-marketplace::before {

    content: '';

    position: absolute;
    inset: 0;

    background:
        linear-gradient(to bottom,
            rgba(15, 23, 42, .25),
            rgba(15, 23, 42, .92));

    z-index: 1;
}

.marketplace-2026 .white-card {

    position: relative;
    z-index: 5;

    width: min(480px, 92%);

    margin: auto;
    padding: 48px;

    border-radius: 34px;

    background:
        rgba(255, 255, 255, .08);

    border:
        1px solid rgba(255, 255, 255, .12);

    backdrop-filter: blur(22px);

    box-shadow:
        0 20px 60px rgba(0, 0, 0, .28);
}

.marketplace-2026 .page-header {
    font-size: clamp(42px, 5vw, 56px);
    line-height: .95;
    letter-spacing: -.05em;
    color: #fff;
}

/* =========================================================
   CATEGORY TILES
========================================================= */

.marketplace-2026 .category-tile {

    position: relative;
    overflow: hidden;

    min-height: 320px;

    border-radius: 32px;

    background-size: cover;
    background-position: center;

    transition: all .45s ease;
}

.marketplace-2026 .category-tile::before {

    content: '';

    position: absolute;
    inset: 0;

    background:
        linear-gradient(to top,
            rgba(15, 23, 42, .95),
            rgba(15, 23, 42, .2));
}

.marketplace-2026 .category-tile:hover {
    transform:
        translateY(-8px) scale(1.02);
}

.marketplace-2026 .rectangle-div {

    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 24px;

    z-index: 5;

    padding: 20px 24px;

    border-radius: 22px;

    background:
        rgba(255, 255, 255, .08);

    border:
        1px solid rgba(255, 255, 255, .12);

    backdrop-filter: blur(18px);
}

.marketplace-2026 .rectangle-div p {
    margin: 0;
    font-size: 22px;
    font-weight: 600;
    color: #fff;
}

/* =========================================================
   COLLECTION CARDS
========================================================= */

.marketplace-2026 .collection-card {

    overflow: hidden;

    border-radius: 32px;

    background:
        rgba(255, 255, 255, .06);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(18px);

    transition: all .4s ease;
}

.marketplace-2026 .collection-card:hover {
    transform:
        translateY(-8px);
}

.marketplace-2026 .collection-card-img {
    width: 100%;
    height: 440px;
    object-fit: cover;

    transition: transform .6s ease;
}

.marketplace-2026 .collection-card:hover .collection-card-img {
    transform: scale(1.05);
}

.marketplace-2026 .collection-link-container {
    padding: 30px;
}

.marketplace-2026 .sub-section-header {
    margin-bottom: 16px;
    font-size: 26px;
    font-weight: 600;
    color: #fff !important;
}

/* =========================================================
   GREEN CTA SECTION
========================================================= */

.marketplace-2026 .green-paint-bg {

    position: relative;
    overflow: hidden;

    border-radius: 42px;

    background:
        linear-gradient(135deg,
            #7c3aed,
            #2563eb);

    box-shadow:
        0 30px 70px rgba(37, 99, 235, .25);
}

.marketplace-2026 .cta-header {
    font-size: clamp(42px, 5vw, 52px);
    line-height: 1;
    letter-spacing: -.05em;
}

.collection-card .collection-link-container {
    background: rgba(74, 74, 74, 0.8) !important;
}

.marketplace-2026 .cta-expanded-img {
    position: relative;
    bottom: -60px;

    border-radius: 28px;

    box-shadow:
        0 30px 60px rgba(0, 0, 0, .28);
}

/* =========================================================
   SELLER CARDS
========================================================= */

.marketplace-2026 .owl-carousel .item {

    height: 100%;
}

.marketplace-2026 .owl-carousel .item>* {

    display: flex;
    flex-direction: column;

    height: 100%;
}

.marketplace-2026 .owl-carousel .item img.fw-img {

    border-radius: 24px;

    transition: all .45s ease;
}

.marketplace-2026 .owl-carousel .item:hover img.fw-img {

    transform:
        translateY(-6px);
}

.marketplace-2026 .owl-carousel .item p {
    color: rgba(255, 255, 255, .7);
    line-height: 1.8;
}

/* =========================================================
   GLASS PANELS
========================================================= */

.marketplace-2026 .container.is-small-container {

    position: relative;
    z-index: 5;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 1024px) {

    .marketplace-2026 .section {
        padding: 70px 0;
    }

    .marketplace-2026 .carousel-slide-1-marketplace,
    .marketplace-2026 .carousel-slide-2-marketplace {

        min-height: 520px;
    }

    .marketplace-2026 .white-card {
        padding: 36px;
    }
}

@media (max-width: 768px) {

    .marketplace-2026 .section {
        padding: 60px 0;
    }

    .marketplace-2026 .carousel-slide-1-marketplace {

        min-height: 420px;
        border-radius: 28px;
    }

    .marketplace-2026 .white-card {

        padding: 28px;
        border-radius: 24px;
    }

    .marketplace-2026 .category-tile {
        min-height: 240px;
    }

    .marketplace-2026 .collection-card-img {
        height: 320px;
    }

    .marketplace-2026 .cta-expanded-img {
        bottom: 0;
        margin-top: 30px;
    }
}

@media (max-width: 576px) {

    .marketplace-2026 .page-header {
        font-size: 42px;
    }

    .marketplace-2026 .section-header {
        font-size: 34px;
    }

    .marketplace-2026 .white-card {
        width: calc(100% - 32px);
    }
}

/* =========================================================
   SINGLE PRODUCT 2026
========================================================= */

.modern-single-product-page {
    padding: 100px 0;
    background:
        linear-gradient(180deg,
            #0b1120,
            #111827);
}

/* GRID */
.modern-single-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 60px;
    align-items: start;
}

/* GALLERY */
.modern-product-gallery {

    position: unset;
    top: 0px;
    padding: 30px;
    border-radius: 36px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .08);
    backdrop-filter: blur(20px);
    min-height: unset !important;
}

/* SUMMARY */
.modern-product-summary {

    padding: 40px;

    border-radius: 36px;

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(20px);
}

.modern-product-vendor-top {

    display: inline-flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 20px;

    padding: 10px 18px;

    border-radius: 999px;

    background:
        rgba(255, 255, 255, .06);

    color: rgba(255, 255, 255, .7);
}

.modern-product-vendor-top a {
    color: #7dd3fc;
    font-weight: 600;
}

.modern-single-title {

    margin-bottom: 24px;

    font-size: clamp(42px, 5vw, 72px);

    line-height: .95;

    letter-spacing: -.05em;

    color: #fff;
}

.modern-single-rating {
    margin-bottom: 24px;
}

.modern-single-price {

    margin-bottom: 30px;

    font-size: 42px;
    font-weight: 700;

    color: #7dd3fc;
}

.modern-single-excerpt {

    margin-bottom: 40px;

    color: rgba(255, 255, 255, .72);

    line-height: 1.9;
}

.modern-single-cart {
    margin-bottom: 40px;
}

.modern-single-cart .quantity input {

    height: 56px;

    border-radius: 18px;

    background:
        rgba(255, 255, 255, .06);

    border:
        1px solid rgba(255, 255, 255, .1);

    color: #fff;
}

.modern-single-cart .single_add_to_cart_button {

    border-radius: 18px !important;

    height: 56px;

    background:
        linear-gradient(135deg,
            #7c3aed,
            #2563eb) !important;

    border: 0 !important;
}

.modern-single-meta {
    margin-top: 30px;
    color: rgba(255, 255, 255, .65);
}

/* VENDOR BOX */
.modern-vendor-box {

    overflow: hidden;

    margin-top: 50px;

    border-radius: 32px;

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(18px);
}

.modern-vendor-banner {
    height: 180px;
}

.modern-vendor-banner img {

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.modern-vendor-content {
    padding: 30px;
}

.modern-vendor-avatar {

    margin-top: -70px;
    margin-bottom: 24px;
}

.modern-vendor-avatar img {

    border-radius: 50%;

    border:
        5px solid rgba(255, 255, 255, .12);
}

.modern-vendor-details h3 {

    margin-bottom: 16px;

    font-size: 32px;

    color: #fff;
}

.modern-vendor-details p {

    margin-bottom: 24px;

    color: rgba(255, 255, 255, .72);

    line-height: 1.8;
}

/* RELATED */
.modern-related-products,
.modern-vendor-products {

    padding: 100px 0;
}

/* MOBILE */
@media (max-width: 1024px) {

    .modern-single-grid {
        grid-template-columns: 1fr;
    }

    .modern-product-gallery {
        position: relative;
        top: 0;
    }
}

@media (max-width: 768px) {

    .modern-single-product-page {
        padding: 70px 0;
    }

    .modern-product-gallery,
    .modern-product-summary {

        padding: 24px;

        border-radius: 28px;
    }

    .modern-single-title {
        font-size: 42px;
    }

    .modern-single-price {
        font-size: 34px;
    }
}

/* =========================================================
   SINGLE PRODUCT POLISH
========================================================= */

/* PAGE */
.modern-single-product-page {
    position: relative;
    overflow: hidden;
    padding: 90px 0 40px;
}

/* GRID */
.modern-single-grid {
    grid-template-columns: 1.15fr .85fr;
    gap: 40px;
}

/* =========================================================
   GALLERY
========================================================= */

.modern-product-gallery {

    padding: 40px;

    border-radius: 40px;

    background:
        linear-gradient(145deg,
            rgba(255, 255, 255, .08),
            rgba(255, 255, 255, .03));

    min-height: 780px;
}

.modern-product-gallery .woocommerce-product-gallery {
    width: 100%;
}

.modern-product-gallery .woocommerce-product-gallery__image img {

    width: 100%;

    border-radius: 28px;
}

.modern-product-gallery ol.flex-control-nav {

    display: flex;
    gap: 14px;

    margin-top: 20px;
}

.modern-product-gallery ol.flex-control-nav li {

    overflow: hidden;

    border-radius: 16px;

    border:
        2px solid transparent;

    transition: all .3s ease;
}

.modern-product-gallery ol.flex-control-nav li:hover {

    border-color:
        rgba(255, 255, 255, .25);
}

/* =========================================================
   SUMMARY
========================================================= */

.modern-product-summary {

    padding: 34px;

    border-radius: 36px;
}

/* TITLE */
.modern-single-title {

    max-width: 520px;

    margin-bottom: 18px;

    font-size: clamp(42px, 3vw, 62px);

    line-height: .95;

    letter-spacing: -.05em;
}

/* PRICE */
.modern-single-price .amount {

    margin-bottom: 26px;
    font-size: 38px !important;
    font-weight: 700 !important;
    color: #7dd3fc !important;
}

.modern-single-price del {
    opacity: .45;
}

.modern-single-price ins {
    background: transparent;
}

/* VARIATIONS */
.modern-single-cart table.variations {

    margin-bottom: 28px;
}

.modern-single-cart table.variations td,
.modern-single-cart table.variations th {

    color: #fff;
}

.modern-single-cart select {

    min-width: 240px;

    height: 52px;

    padding: 0 16px;

    border-radius: 14px;

    background:
        rgba(255, 255, 255, .08);

    border:
        1px solid rgba(255, 255, 255, .1);

    color: #fff;
}

/* QUANTITY + CART */
.modern-single-cart form.cart {

    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
}

.modern-single-cart .quantity {

    margin: 0 !important;
}

.modern-single-cart .quantity input.qty {

    width: 74px;

    height: 56px;

    border-radius: 16px;

    text-align: center;

    font-size: 18px;
}

.modern-single-cart .single_add_to_cart_button {

    flex: 1;

    min-width: 220px;

    font-size: 16px;
    font-weight: 600;

    letter-spacing: .02em;

    box-shadow:
        0 18px 40px rgba(37, 99, 235, .28);
}

/* META */
.modern-single-meta {

    margin-top: 36px;

    padding-top: 30px;

    border-top:
        1px solid rgba(255, 255, 255, .08);

    font-size: 14px;

    line-height: 2;
}

.modern-single-meta a {
    color: #7dd3fc;
}

/* =========================================================
   VENDOR CARD
========================================================= */

.modern-vendor-box {

    margin-top: 46px;

    border-radius: 34px;

    background:
        linear-gradient(145deg,
            rgba(255, 255, 255, .08),
            rgba(255, 255, 255, .03));
}

.modern-vendor-banner {
    height: 220px;
}

.modern-vendor-content {
    position: relative;
    padding: 34px;
}

.modern-vendor-avatar {

    position: absolute;

    top: -48px;

    left: 34px;
}

.modern-vendor-avatar img {

    width: 92px;
    height: 92px;

    border:
        5px solid #111827;

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .22);
}

.modern-vendor-details {
    padding-top: 54px;
}

.modern-vendor-details h3 {

    margin-bottom: 14px;

    font-size: 34px;
}

.modern-vendor-details p {

    margin-bottom: 24px;

    font-size: 15px;

    line-height: 1.9;
}

/* =========================================================
   PRODUCT DISCOVERY SECTIONS
========================================================= */

.modern-product-discovery {

    position: relative;

    padding: 90px 0;

    background:
        linear-gradient(180deg,
            #111827,
            #0b1120);
}

.modern-section-heading {
    margin-bottom: 50px;
}

/* =========================================================
   TABS
========================================================= */

.modern-product-tabs-wrap {

    margin-top: 80px;

    padding: 40px;

    border-radius: 36px;

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(18px);
}

.woocommerce div.product .woocommerce-tabs ul.tabs {

    display: flex;
    gap: 14px;

    padding: 0;

    margin-bottom: 40px;

    border: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before {
    display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {

    border: 0 !important;

    border-radius: 999px !important;

    background:
        rgba(255, 255, 255, .06) !important;

    margin: 0 !important;

    padding: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {

    padding: 12px 20px;

    color: #fff !important;

    font-weight: 600;
    text-decoration: none !important;
    border: 0px !important;
}

.modern-single-product-page .dokan-vendor-info .dokan-vendor-name h5 {
    color: #fff !important;
    text-transform: uppercase;
    letter-spacing: 0.25px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {

    background:
        linear-gradient(135deg,
            #7c3aed,
            #2563eb) !important;
}

.woocommerce-Tabs-panel {

    color: rgba(255, 255, 255, .78);

    line-height: 1.9;
}

/* =========================================================
   RELATED PRODUCTS FIX
========================================================= */

.modern-product-discovery .section-header,
.modern-product-discovery h2,
.modern-product-discovery h3 {

    color: #fff !important;
}

.modern-product-discovery .products {

    margin-top: 20px;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 1024px) {

    .modern-single-grid {
        grid-template-columns: 1fr;
    }

    .modern-product-gallery {
        min-height: auto;
    }
}

@media (max-width: 768px) {

    .modern-single-title {

        font-size: 42px;
    }

    .modern-product-gallery,
    .modern-product-summary,
    .modern-product-tabs-wrap {

        padding: 24px;

        border-radius: 28px;
    }

    .modern-vendor-details h3 {

        font-size: 28px;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs {

        overflow-x: auto;

        flex-wrap: nowrap;
    }
}

/* =========================================================
   ABOUT VENDOR
========================================================= */

.modern-about-vendor {

    position: relative;

    overflow: hidden;

    padding: 140px 0;

    isolation: isolate;
}

.modern-about-vendor-bg {

    position: absolute;
    inset: 0;

    z-index: 1;
}

.modern-about-vendor-bg img {

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.modern-about-vendor-overlay {

    position: absolute;
    inset: 0;

    background:
        linear-gradient(135deg,
            rgba(11, 17, 32, .92),
            rgba(15, 23, 42, .96));

    z-index: 2;
}

.modern-about-vendor-inner {

    position: relative;

    z-index: 5;

    max-width: 980px;

    padding: 60px;

    border-radius: 42px;

    background:
        rgba(255, 255, 255, .06);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(24px);

    box-shadow:
        0 30px 70px rgba(0, 0, 0, .3);
}

.modern-about-vendor-avatar {

    margin-bottom: 34px;
}

.modern-about-vendor-avatar img {

    width: 120px;
    height: 120px;

    border-radius: 50%;

    border:
        5px solid rgba(255, 255, 255, .12);
}

.modern-about-vendor-title {

    margin-bottom: 20px;

    font-size: clamp(42px, 5vw, 72px);

    line-height: .95;

    letter-spacing: -.05em;

    color: #fff;
}

.modern-about-vendor-rating {

    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 28px;

    color: #fff;
}

.modern-about-vendor-description {

    max-width: 760px;

    margin-bottom: 36px;

    color: rgba(255, 255, 255, .78);

    font-size: 17px;

    line-height: 2;
}

.modern-about-vendor-description p {

    margin-bottom: 24px;
    color: #fff !important;
}

.modern-single-product-page p,
.modern-single-product-page p strong {
    color: #fff !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before {
    display: none !important;
}


@media (max-width: 768px) {

    .modern-about-vendor {

        padding: 80px 0;
    }

    .modern-about-vendor-inner {

        padding: 32px;

        border-radius: 28px;
    }

    .modern-about-vendor-title {

        font-size: 42px;
    }
}

/* =========================================================
   CART + CHECKOUT 2026
========================================================= */

.modern-cart-page,
.modern-checkout-page {

    position: relative;

    overflow: hidden;

    padding: 100px 0;

    background:
        radial-gradient(circle at top left,
            rgba(124, 58, 237, .14),
            transparent 28%),

        radial-gradient(circle at bottom right,
            rgba(37, 99, 235, .12),
            transparent 32%),

        linear-gradient(180deg,
            #0b1120,
            #111827);
}

/* HEADINGS */
.modern-page-heading {
    margin-bottom: 70px;
}

/* LAYOUTS */
.modern-cart-layout,
.modern-checkout-grid {

    display: grid;

    grid-template-columns: 1.2fr .8fr;

    gap: 34px;

    align-items: start;
}

/* CARDS */
.modern-cart-card,
.modern-checkout-card,
.modern-cart-totals,
.modern-checkout-summary {

    padding: 30px;

    border-radius: 32px;

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(20px);

    box-shadow:
        0 20px 50px rgba(0, 0, 0, .18);
}

/* CART CARD */
.modern-cart-card {

    display: grid;

    grid-template-columns: 140px 1fr auto;

    gap: 24px;

    margin-bottom: 24px;
}

.modern-cart-image img {

    width: 100%;

    border-radius: 22px;
}

.modern-cart-title {

    margin-bottom: 14px;

    font-size: 24px;

    line-height: 1.3;
}

.modern-cart-title a {

    color: #fff;
}

.modern-cart-price {

    height: 56px;

    border-radius: 18px !important;

    border:
        1px solid rgba(255, 255, 255, .1) !important;

    background:
        rgba(255, 255, 255, .06) !important;

    color: #fff !important;
}

.modern-checkout-page textarea {

    min-height: 140px;

    padding-top: 18px;
}

/* LABELS */
.modern-checkout-page label {

    margin-bottom: 10px;

    color: #fff;

    font-weight: 600;
}

/* PLACE ORDER */
#place_order,
.checkout-button,
.modern-cart-page .button {

    width: 100%;

    min-height: 58px;

    border-radius: 18px !important;

    background:
        linear-gradient(135deg,
            #7c3aed,
            #2563eb) !important;

    border: 0 !important;

    color: #fff !important;

    font-weight: 700;

    transition: all .35s ease;

    box-shadow:
        0 18px 40px rgba(37, 99, 235, .28);
}

#place_order:hover,
border: 0 !important;

color: #fff;
}

.shop_table td,
.shop_table th {

    border-color:
        rgba(255, 255, 255, .08) !important;
}

/* PAYMENT */

#payment div.payment_box {

    border-radius: 18px;
    background: #dcd7e2 !important;
}

#payment div.payment_box p {
    color: #141414;
}

/* MOBILE */
@media (max-width: 1024px) {

    .modern-cart-layout,
    .modern-checkout-grid {

        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {

    .modern-cart-page,
    .modern-checkout-page {

        padding: 70px 0;
    }

    .modern-cart-card {

        grid-template-columns: 1fr;
    }

    .modern-cart-subtotal {

        margin-top: 10px;
    }
}

/* =========================================================
   CART + CHECKOUT REFINEMENTS
========================================================= */

/* OUTER WRAPPER */
.modern-cart-page .container.is-small-container,
.modern-checkout-page .container.is-small-container {

    position: relative;

    padding: 70px;

    border-radius: 48px;

    background:
        linear-gradient(180deg,
            rgba(17, 24, 39, .96),
            rgba(15, 23, 42, .98));

    border:
        1px solid rgba(255, 255, 255, .08);

    box-shadow:
        0 30px 80px rgba(0, 0, 0, .28);

    overflow: hidden;
}

/* SOFT GLOW */
.modern-cart-page .container.is-small-container::before,
.modern-checkout-page .container.is-small-container::before {

    content: '';

    position: absolute;

    inset: 0;

    background:
        radial-gradient(circle at top left,
            rgba(124, 58, 237, .12),
            transparent 28%),

        radial-gradient(circle at bottom right,
            rgba(37, 99, 235, .12),
            transparent 32%);

    pointer-events: none;
}

/* ENSURE CONTENT ABOVE GLOW */
.modern-cart-page .container.is-small-container>*,
.modern-checkout-page .container.is-small-container>* {

    position: relative;
    z-index: 5;
}

/* =========================================================
   GLOBAL TEXT COLORS
========================================================= */

.modern-cart-page,
.modern-checkout-page,

.modern-cart-page p,
.modern-checkout-page p,

.modern-cart-page span,
.modern-checkout-page span,

.modern-cart-page div,
.modern-checkout-page div,

.modern-cart-page td,
.modern-checkout-page td,

.modern-cart-page th,
.modern-checkout-page th,

.modern-cart-page li,
.modern-checkout-page li,

.modern-cart-page label,
.modern-checkout-page label,

.modern-cart-page small,
.modern-checkout-page small {

    color: #f4f4f4;
}

/* LINKS */
.modern-cart-page a,
.modern-checkout-page a {

    color: #7dd3fc;

    transition: all .3s ease;
}

.modern-cart-page a:hover,
.modern-checkout-page a:hover {

    color: #fff;
}

/* =========================================================
   HEADINGS
========================================================= */

.modern-cart-page h1,
.modern-cart-page h2,
.modern-cart-page h3,
.modern-cart-page h4,

.modern-checkout-page h1,
.modern-checkout-page h2,
.modern-checkout-page h3,
.modern-checkout-page h4 {

    color: #fff;
}

/* =========================================================
   WOOCOMMERCE TABLES
========================================================= */

.modern-cart-page .shop_table,
.modern-checkout-page .shop_table {

    background: transparent !important;

    color: #f4f4f4 !important;
}

.modern-cart-page .shop_table strong,
.modern-checkout-page .shop_table strong {

    color: #fff;
}

/* TOTALS */
.order-total td,
.order-total th,

.cart-subtotal td,
.cart-subtotal th {

    color: #fff !important;

    font-weight: 700;
}

/* SELECT OPTIONS */
.modern-cart-page select option,
.modern-checkout-page select option {

    color: #111827;
}

/* =========================================================
   PAYMENT SECTION
========================================================= */

#payment label {

    color: #fff !important;
}

#payment .payment_method_paypal,
#payment .payment_method_stripe {

    color: #f4f4f4;
}

/* =========================================================
   COUPON
========================================================= */

.coupon label {

    color: #fff;
}

/* =========================================================
   REMOVE DEFAULT WC BACKGROUNDS
========================================================= */

.woocommerce-cart-form,
.checkout {

    background: transparent;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

    .modern-cart-page .container.is-small-container,
    .modern-checkout-page .container.is-small-container {

        padding: 24px;

        border-radius: 28px;
    }
}

/* =========================================================
   MODERN DOKAN STORE
========================================================= */

.modern-store-hero {

    position: relative;

    overflow: hidden;

    padding: 140px 0 100px;

    isolation: isolate;
}

.modern-store-hero-bg {

    position: absolute;
    inset: 0;

    z-index: 1;
}

.modern-store-hero-bg img {

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.modern-store-overlay {

    position: absolute;
    inset: 0;

    background:
        linear-gradient(135deg,
            rgba(11, 17, 32, .92),
            rgba(15, 23, 42, .96));

    z-index: 2;
}

.modern-store-hero-content {

    position: relative;

    z-index: 5;

    display: flex;
    align-items: flex-start;
    gap: 40px;

    max-width: 1000px;

    padding: 50px;

    border-radius: 42px;

    background:
        rgba(255, 255, 255, .06);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(22px);

    box-shadow:
        0 30px 70px rgba(0, 0, 0, .28);
}

.modern-store-avatar img {

    width: 120px;
    height: 120px;

    border-radius: 50%;

    border:
        5px solid rgba(255, 255, 255, .12);
}

.modern-store-title {

    margin-bottom: 20px;

    font-size: clamp(46px, 5vw, 80px);

    line-height: .95;

    letter-spacing: -.05em;

    color: #fff;
}

.modern-store-meta {

    display: flex;
    flex-wrap: wrap;
    gap: 24px;

    margin-bottom: 28px;

    color: #fff;
}

.modern-store-rating,
.modern-store-location {

    display: inline-flex;
    align-items: center;
    gap: 10px;

    padding: 10px 18px;

    border-radius: 999px;

    background:
        rgba(255, 255, 255, .06);

    border:
        1px solid rgba(255, 255, 255, .08);
}

.modern-store-description {

    max-width: 720px;

    color: rgba(255, 255, 255, .78);

    line-height: 2;
}

.modern-store-products {

    padding: 100px 0;

    background:
        linear-gradient(180deg,
            #111827,
            #0b1120);
}

.modern-store-toolbar {

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    margin-bottom: 50px;

    padding: 24px 28px;

    border-radius: 28px;

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(18px);
}

.modern-store-toolbar * {
    color: #fff !important;
}

.modern-store-pagination {
    margin-top: 70px;
}

@media (max-width: 1024px) {

    .modern-store-hero-content {

        flex-direction: column;
    }
}

@media (max-width: 768px) {

    .modern-store-hero {

        padding: 90px 0 70px;
    }

    .modern-store-hero-content {

        padding: 30px;

        border-radius: 28px;
    }

    .modern-store-title {

        font-size: 42px;
    }

    .modern-store-toolbar {

        flex-direction: column;
        align-items: stretch;
    }
}

.dokan-store .modern-store-description p,
.dokan-store .modern-store-description p strong {
    color: #fff;
}

/* =========================================================
   SHOP LAYOUT
========================================================= */

.modern-shop-layout {

    display: grid;

    grid-template-columns: 320px 1fr;

    gap: 34px;

    align-items: start;
}

/* =========================================================
   SIDEBAR
========================================================= */

.modern-shop-sidebar {

    position: sticky;

    top: 120px;
}

.modern-filter-card {

    margin-bottom: 24px;

    padding: 28px;

    border-radius: 28px;

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(18px);
}

.modern-filter-title {

    margin-bottom: 22px;

    font-size: 20px;

    color: #fff;
}

/* SEARCH */
.modern-shop-search {

    display: flex;
    flex-direction: column;
    gap: 14px;
}

.modern-shop-search input {

    width: 100%;
    height: 56px;

    padding: 0 18px;

    border-radius: 16px;

    border:
        1px solid rgba(255, 255, 255, .08);

    background:
        rgba(255, 255, 255, .06);

    color: #fff;
}

.modern-shop-search button {

    height: 54px;

    border: 0;

    border-radius: 16px;

    color: #fff;

    font-weight: 600;

    background:
        linear-gradient(135deg,
            #7c3aed,
            #2563eb);
}

/* CATEGORY LIST */
.modern-category-list {

    display: flex;
    flex-direction: column;
    gap: 12px;
}

.modern-category-list li {

    list-style: none;
}

.modern-category-list li a {

    color: #f4f4f4;

    transition: all .3s ease;
}

.modern-category-list li a:hover {

    color: #7dd3fc;
}

/* COUNTS */
.modern-category-list .count {

    opacity: .6;
}

/* PRICE FILTER */
.widget_price_filter .price_slider_wrapper {

    margin-top: 18px;
}

.widget_price_filter .ui-slider {

    background:
        rgba(255, 255, 255, .08);
}

.widget_price_filter .ui-slider-range {

    background:
        linear-gradient(135deg,
            #7c3aed,
            #2563eb);
}

.widget_price_filter .ui-slider-handle {

    border: 0 !important;

    background: #fff !important;
}

.widget_price_filter .price_label {

    color: #fff;
}

/* =========================================================
   MAIN
========================================================= */

.modern-shop-main {
    min-width: 0;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 1024px) {

    .modern-shop-layout {

        grid-template-columns: 1fr;
    }

    .modern-shop-sidebar {

        position: relative;
        top: 0;
    }
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce-page form .form-row-first,
.woocommerce-page form .form-row-last {
    width: 100% !important;
}

.payment_method_dokan_paypal_marketplace {
    color: #fff !important;
}

.modern-single-product-page table th {
    color: #fff !important;
}

/* =========================================================
   MODERN STORE REVIEWS
========================================================= */

.modern-store-review-hero {

    position: relative;

    overflow: hidden;

    padding: 140px 0 100px;

    isolation: isolate;
}

.modern-store-review-bg {

    position: absolute;
    inset: 0;

    z-index: 1;
}

.modern-store-review-bg img {

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.modern-store-review-overlay {

    position: absolute;
    inset: 0;

    background:
        linear-gradient(135deg,
            rgba(11, 17, 32, .92),
            rgba(15, 23, 42, .96));

    z-index: 2;
}

.modern-store-review-content {

    position: relative;

    z-index: 5;

    display: flex;
    gap: 40px;

    align-items: flex-start;

    max-width: 1000px;

    padding: 50px;

    border-radius: 42px;

    background:
        rgba(255, 255, 255, .06);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(24px);

    box-shadow:
        0 30px 70px rgba(0, 0, 0, .28);
}

.modern-store-review-avatar img {

    width: 120px;
    height: 120px;

    border-radius: 50%;

    border:
        5px solid rgba(255, 255, 255, .12);
}

.modern-store-review-title {

    margin-bottom: 20px;

    font-size: clamp(44px, 5vw, 72px);

    line-height: .95;

    letter-spacing: -.05em;

    color: #fff;
}

.modern-store-review-meta {

    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;

    margin-bottom: 26px;
}

.modern-store-review-rating {

    display: inline-flex;
    align-items: center;
    gap: 10px;

    padding: 10px 18px;

    border-radius: 999px;

    background:
        rgba(255, 255, 255, .06);

    border:
        1px solid rgba(255, 255, 255, .08);

    color: #fff;
}

.modern-review-store-link {

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 50px;

    padding: 0 22px;

    border-radius: 999px;

    background:
        linear-gradient(135deg,
            #7c3aed,
            #2563eb);

    color: #fff !important;

    font-weight: 600;

    text-decoration: none;
}

.modern-store-review-description {

    max-width: 720px;

    color: rgba(255, 255, 255, .76);

    line-height: 2;
}

.modern-store-reviews {

    padding: 100px 0;

    background:
        linear-gradient(180deg,
            #111827,
            #0b1120);
}

.modern-review-card {

    padding: 40px;

    border-radius: 36px;

    background:
        rgba(255, 255, 255, .05);

    border:
        1px solid rgba(255, 255, 255, .08);

    backdrop-filter: blur(18px);
}

.modern-review-heading {

    margin-bottom: 40px;
}

.modern-review-list {

    margin: 0;
    padding: 0;

    list-style: none;
}

.modern-review-list li {

    margin-bottom: 28px;

    padding: 28px;

    border-radius: 24px;

    background:
        rgba(255, 255, 255, .04);

    border:
        1px solid rgba(255, 255, 255, .06);
}

.woocommerce a.remove {
    font-size: 12px !important;
    padding-top: 10px;
    font-weight: 500;
}

/* TYPOGRAPHY */
.modern-store-review-hero *,
.modern-store-reviews * {

    color: #f4f4f4;
}

.modern-store-review-hero h1,
.modern-store-review-hero h2,
.modern-store-review-hero h3,

.modern-store-reviews h1,
.modern-store-reviews h2,
.modern-store-reviews h3 {

    color: #fff;
}

/* LINKS */
.modern-store-review-hero a,
.modern-store-reviews a {

    color: #7dd3fc;
}

.modern-store-review-hero a:hover,
.modern-store-reviews a:hover {

    color: #fff;
}

/* PAGINATION */
.modern-review-pagination {

    margin-top: 50px;
}

.modern-review-pagination *,
.modern-review-pagination a,
.modern-review-pagination span {

    color: #fff !important;
}

/* MOBILE */
@media (max-width: 768px) {

    .modern-store-review-hero {

        padding: 90px 0 70px;
    }

    .modern-store-review-content {

        flex-direction: column;

        padding: 30px;

        border-radius: 28px;
    }

    .modern-store-review-title {

        font-size: 42px;
    }

    .modern-review-card {

        padding: 24px;
    }
}

/* MOBILE STYLES FOR WEB SITE */

@media all and (max-width:767px) {

    .woocommerce ul.products[class*=columns-] li.product,
    .woocommerce-page ul.products[class*=columns-] li.product {
        width: 100% !important;
    }

    .btn-bronze,
    .btn-bronze-secondary {
        display: block !important;
        text-align: center;
    }

    .columns.is-mobile>.column.is-four-fifths {
        width: 70% !important;
    }

    .column.is-half-mobile {
        width: 100% !important;
    }
}