/* =========================
   BASE LAYOUT
========================= */
.cgst-equipt-product-page {
    max-width: 1380px;
    margin: 0 auto;
    padding: 28px 20px 0;
    font-family: 'Inter', sans-serif;
}

.cgst-equipt-seller-avatar {
    display: inline-flex;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #f1f5f9;
    overflow: hidden;
    flex: 0 0 46px;
}

.cgst-equipt-seller-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 999px;
    display: block;
}

.cgst-equipt-top {
    display: block !important;
    width: 100%;
    position: relative !important;
}

.cgst-equipt-gallery,
.cgst-equipt-summary-wrap,
.cgst-equipt-bottom {
    min-width: 0;
    width: 100% !important;
}

.cgst-equipt-summary-wrap {
    margin-top: 28px;
    position: relative !important;
}

.cgst-equipt-bottom {
    clear: both !important;
    display: block !important;
    width: 100% !important;
    margin-top: 40px !important;
}

.woocommerce-tabs,
.woocommerce-tabs.wc-tabs-wrapper,
.wc-tabs-wrapper {
    clear: both !important;
    display: block !important;
    width: 100% !important;
}

.single-product div.product,
.woocommerce div.product {
    display: block !important;
}

.single-product div.product .images,
.single-product div.product .summary,
.woocommerce div.product div.images,
.woocommerce div.product div.summary {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
}

.cgst-equipt-seller-name-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.cgst-ssm-verified-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    background: #e8f5e9;
    color: #2e7d32;
    border: 1px solid #2e7d32;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

/* =========================
   HIDE UNUSED TAB UI
========================= */
.woocommerce-tabs ul.tabs,
.woocommerce-tabs .wc-tabs {
    display: none !important;
}

#tab-cgst_specs,
.woocommerce-Tabs-panel--cgst_specs,
.woocommerce-Tabs-panel[id="tab-cgst_specs"] {
    display: none !important;
}

/* =========================
   SUMMARY STACK
========================= */
.cgst-equipt-summary-stack {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100% !important;
    margin: 0 !important;
}

.cgst-equipt-header-card,
.cgst-equipt-price-card,
.cgst-equipt-overview-card,
.cgst-equipt-description-card {
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
}

.cgst-equipt-header-card,
.cgst-equipt-price-card,
.cgst-equipt-description-card {
    padding: 28px;
}

.cgst-equipt-overview-card {
    padding: 28px;
    background: #f8fafc;
}

.cgst-equipt-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
}

.cgst-equipt-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    padding: 8px 14px;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #c2410c;
}

.cgst-equipt-title {
    margin: 0;
    font-size: 52px;
    line-height: 1.04;
    font-weight: 900;
    letter-spacing: -0.03em;
    color: #0f172a;
}

.cgst-equipt-seller-row {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid #e5e7eb;
}

.cgst-equipt-seller-avatar {
    display: inline-flex;
    width: 46px;
    height: 46px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #f1f5f9;
    color: #64748b;
    font-size: 18px;
    flex: 0 0 46px;
}

.cgst-equipt-seller-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.cgst-equipt-seller-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #94a3b8;
}

.cgst-equipt-seller-name {
    font-size: 16px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.3;
    word-break: break-word;
}

.cgst-equipt-seller-link {
    color: inherit;
    text-decoration: none;
}

.cgst-equipt-seller-link:hover,
.cgst-equipt-seller-link:focus {
    color: #ea580c;
}

.cgst-equipt-location {
    margin-left: auto;
    font-size: 15px;
    font-weight: 800;
    color: #ea580c;
    text-align: right;
    max-width: 140px;
}

.cgst-equipt-price-label {
    display: block;
    margin-bottom: 10px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #94a3b8;
}

.cgst-equipt-price-value {
    font-size: 36px;
    line-height: 1.03;
    font-weight: 900;
    letter-spacing: -0.03em;
    color: #0f172a;
    word-break: break-word;
}

.cgst-equipt-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 24px;
}

.cgst-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 0 18px;
    border-radius: 18px;
    text-align: center;
    text-decoration: none;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.cgst-btn:hover {
    transform: translateY(-1px);
}

.cgst-btn-primary {
    background: #f97316;
    color: #fff;
    border: 1px solid #f97316;
    box-shadow: 0 12px 24px rgba(249, 115, 22, 0.18);
}

.cgst-btn-primary:hover {
    background: #ea580c;
    border-color: #ea580c;
    color: #fff;
}

.cgst-btn-secondary {
    border: 1px solid #fdba74;
    background: #fff;
    color: #c2410c;
}

.cgst-btn-secondary:hover {
    background: #fff7ed;
    color: #c2410c;
}

.cgst-pdf-link {
    text-align: center;
    text-decoration: none;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #94a3b8;
    transition: color 0.2s ease;
}

.cgst-pdf-link:hover {
    color: #475569;
}

.cgst-equipt-overview-title,
.cgst-equipt-description-title {
    margin: 0 0 18px;
    font-size: 22px;
    line-height: 1.15;
    font-weight: 800;
    color: #0f172a;
}

.cgst-equipt-description-toggle:hover .cgst-equipt-description-icon {
    color: #ea580c;
}

.cgst-equipt-description-toggle:hover .cgst-equipt-description-title {
    color: #ea580c;
}

.cgst-equipt-overview-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.cgst-equipt-overview-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 0;
    border-bottom: 1px solid #e2e8f0;
}

.cgst-equipt-overview-row:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.cgst-equipt-overview-label {
    font-size: 14px;
    font-weight: 600;
    color: #64748b;
}

.cgst-equipt-overview-value {
    font-size: 14px;
    font-weight: 800;
    color: #0f172a;
    text-align: right;
    word-break: break-word;
}

.cgst-equipt-description-body {
    color: #475569;
    font-size: 16px;
    line-height: 1.8;
    word-break: break-word;
    margin-top: 18px;
}

.cgst-equipt-description-body p {
    margin: 0 0 14px;
}

.cgst-equipt-description-body p:last-child {
    margin-bottom: 0;
}

.cgst-equipt-description-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    cursor: pointer;
    text-align: left;
}

.cgst-equipt-description-icon {
    font-size: 18px;
    line-height: 1;
    color: #f97316;
    font-weight: 900;
    transition: transform 0.2s ease, color 0.2s ease;
}

.cgst-equipt-description-card:not(.is-collapsed) .cgst-equipt-description-icon {
    transform: rotate(180deg);
}

.cgst-equipt-description-body.is-hidden {
    display: none;
}

/* =========================
   CLEANUP
========================= */
.single-product div.product .product_title,
.summary > .product_title,
.single-product div.product p.price,
.single-product div.product span.price,
.summary > p.price,
.summary > .price,
.summary .woocommerce-review-link,
.product_meta,
.summary .product_meta,
.posted_in,
.tagged_as,
.related.products,
.up-sells,
#tab-reviews,
.woocommerce-Reviews,
li.reviews_tab,
li.description_tab,
li.additional_information_tab,
.woocommerce-product-details__short-description {
    display: none !important;
}

/* =========================
   GALLERY STAGE
========================= */
.cgst-equipt-gallery .woocommerce-product-gallery,
.cgst-equipt-gallery .ct-product-gallery {
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
    padding: 18px;
}

.cgst-equipt-gallery .flexy-view,
.cgst-equipt-gallery .flexy-items,
.cgst-equipt-gallery .woocommerce-product-gallery__wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    background: #f8fafc !important;
    border-radius: 22px !important;
    overflow: hidden !important;
}

.cgst-equipt-gallery .flexy-item,
.cgst-equipt-gallery .flexy-item.flexy-item-is-visible,
.cgst-equipt-gallery .woocommerce-product-gallery__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 680px !important;
    background: #f8fafc !important;
    border-radius: 22px !important;
    overflow: hidden !important;
}

.cgst-equipt-gallery .flexy-item img,
.cgst-equipt-gallery .woocommerce-product-gallery__image img {
    display: block !important;
    max-width: 100% !important;
    max-height: 680px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}

.cgst-equipt-gallery .flexy-pills[data-type="thumbs"] {
    margin-top: 14px !important;
}

.cgst-equipt-gallery .flexy-pills[data-type="thumbs"] .flexy-pill {
    border-radius: 16px !important;
    overflow: hidden !important;
    border: 1px solid #e5e7eb !important;
    background: #fff !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease !important;
}

.cgst-equipt-gallery .flexy-pills[data-type="thumbs"] .flexy-pill:hover,
.cgst-equipt-gallery .flexy-pills[data-type="thumbs"] .flexy-pill-active {
    border-color: #fb923c !important;
    box-shadow: 0 8px 18px rgba(249, 115, 22, 0.12) !important;
    transform: translateY(-1px) !important;
}

.cgst-equipt-gallery .flexy-pills[data-type="thumbs"] img {
    border-radius: 12px !important;
    background: #f8fafc !important;
    display: block !important;
}

/* =========================
   CAROUSEL PANELS
========================= */
.woocommerce-tabs {
    margin-top: 0;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    background: #fff;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
}

.woocommerce-Tabs-panel {
    margin: 0 !important;
    padding: 0 !important;
}

/* seller plugin tab + custom seller block + similar block */
#tab-more_seller_product,
.woocommerce-Tabs-panel[id="tab-more_seller_product"],
#cgst-other-seller-products,
#cgst-similar-products,
#cgst-recently-viewed-products {
    position: relative;
    width: 100%;
}

#tab-more_seller_product,
.woocommerce-Tabs-panel[id="tab-more_seller_product"] {
    display: block !important;
    padding-top: 0 !important;
}

#tab-more_seller_product .section-title,
#tab-more_seller_product .related-title {
    display: none !important;
}

#tab-more_seller_product::before {
    content: "Other listings from this seller";
    display: block;
    font-size: 28px;
    line-height: 1.2;
    font-weight: 800;
    color: #0f172a;
    margin-bottom: 22px;
}

.cgst-similar-products-wrap {
    max-width: 1380px;
    margin: 36px auto 0;
    padding: 0 20px;
    box-sizing: border-box;
}

.cgst-carousel-title {
    margin: 0 0 22px;
    font-size: 28px;
    line-height: 1.2;
    font-weight: 800;
    color: #0f172a;
}

.cgst-carousel-panel {
    position: relative;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    background: #fff;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
}

/* shared horizontal track */
#tab-more_seller_product ul.products,
#cgst-other-seller-products ul.products,
#cgst-similar-products ul.products,
#cgst-recently-viewed-products ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 18px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    padding: 0 56px 10px 56px !important;
    margin: 0 !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
    position: relative;
}

#tab-more_seller_product ul.products::-webkit-scrollbar,
#cgst-other-seller-products ul.products::-webkit-scrollbar,
#cgst-similar-products ul.products::-webkit-scrollbar,
#cgst-recently-viewed-products ul.products::-webkit-scrollbar {
    display: none !important;
}

/* shared card shell */
#tab-more_seller_product ul.products > li.product,
#cgst-other-seller-products ul.products > li.product,
#cgst-similar-products ul.products > li.product,
#cgst-recently-viewed-products ul.products > li.product,
.cgst-similar-products-list > li.product {
    flex: 0 0 320px !important;
    width: 320px !important;
    min-width: 320px !important;
    max-width: 320px !important;
    margin: 0 !important;
    scroll-snap-align: start;
    float: none !important;
    list-style: none !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    background: #fff !important;
    box-shadow: none !important;
}

#tab-more_seller_product ul.products > li.product a,
#cgst-other-seller-products ul.products > li.product a,
#cgst-similar-products ul.products > li.product a,
#cgst-recently-viewed-products ul.products > li.product a,
.cgst-carousel-card a {
    display: block;
    text-decoration: none;
    color: inherit;
}

/* shared image area */
.cgst-carousel-image {
    background: #f8fafc;
    min-height: 180px;
    max-height: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 12px;
}

.cgst-carousel-image img {
    max-width: 100%;
    max-height: 156px;
    width: auto;
    height: auto;
    object-fit: contain;
}

/* shared content */
.cgst-carousel-content {
    padding: 14px 16px 16px;
}

.cgst-carousel-meta {
    display: none !important;
}

.cgst-carousel-card .woocommerce-loop-product__title,
#cgst-other-seller-products ul.products li.product .woocommerce-loop-product__title,
#cgst-similar-products ul.products li.product .woocommerce-loop-product__title,
#cgst-recently-viewed-products ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin: 0 0 8px !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 42px;
    text-align: left !important;
}

.cgst-carousel-category,
.cgst-carousel-location {
    font-size: 13px;
    line-height: 1.4;
    color: #64748b;
    margin-top: 4px;
    text-align: left;
}

.cgst-carousel-price {
    margin-top: 10px;
    font-size: 17px;
    line-height: 1.2;
    font-weight: 800;
    color: #0f172a;
    text-align: left;
}

/* hide extra buttons */
#tab-more_seller_product ul.products .button,
#tab-more_seller_product ul.products .read-more,
#tab-more_seller_product ul.products a.read-more,
#tab-more_seller_product ul.products .added_to_cart,
#tab-more_seller_product ul.products .product_type_simple,
#tab-more_seller_product ul.products .product_type_variable,
#tab-more_seller_product ul.products .product_type_external,
#cgst-other-seller-products .button,
#cgst-other-seller-products .read-more,
#cgst-other-seller-products a.read-more,
#cgst-similar-products .button,
#cgst-similar-products .read-more,
#cgst-similar-products a.read-more,
#cgst-recently-viewed-products .button,
#cgst-recently-viewed-products .read-more,
#cgst-recently-viewed-products a.read-more,
.cgst-similar-products-list .button,
.cgst-similar-products-list .read-more,
.cgst-similar-products-list a.read-more {
    display: none !important;
}
/* arrows */
.cgst-more-products-nav {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 245px;
    pointer-events: none;
    z-index: 6;
    opacity: 0;
    transition: opacity 0.2s ease;
}

/* Breadcrumb links */
.woocommerce-breadcrumb a,
.ct-breadcrumbs a,
.breadcrumbs a {
    color: #f97316 !important; /* change to your theme orange */
}

#tab-more_seller_product:hover .cgst-more-products-nav,
#cgst-other-seller-products:hover .cgst-more-products-nav,
#cgst-similar-products:hover .cgst-more-products-nav,
#cgst-recently-viewed-products:hover .cgst-more-products-nav{
    opacity: 1;
}

.cgst-more-products-arrow {
    position: absolute;
    width: 64px;
    height: 64px;
    border: 0;
    border-radius: 14px;
    background: rgba(0, 0, 0, 0.45);
    color: #f97316;
    cursor: pointer;
    font-size: 38px;
    line-height: 1;
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: auto;
    transition: background 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.cgst-more-products-prev {
    left: 14px;
}

.cgst-more-products-next {
    right: 14px;
}

.cgst-more-products-arrow:hover {
    background: rgba(0, 0, 0, 0.65);
    transform: translateY(-1px);
}

.cgst-more-products-arrow.is-disabled {
    opacity: 0.28;
    pointer-events: none;
}

/* old seller-plugin block specific fix */
#tab-more_seller_product ul.products > li.product img.wp-post-image {
    aspect-ratio: auto !important;
    width: 100% !important;
    height: 180px !important;
    max-height: 180px !important;
    object-fit: contain !important;
    background: #f8fafc !important;
    padding: 12px !important;
    box-sizing: border-box !important;
    display: block !important;
    margin: 0 auto !important;
}

#tab-more_seller_product ul.products > li.product .woocommerce-LoopProduct-link.woocommerce-loop-product__link {
    display: block !important;
    padding: 14px 20px 16px !important;
    text-align: left !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

#tab-more_seller_product ul.products > li.product .woocommerce-LoopProduct-link.woocommerce-loop-product__link img {
    display: block !important;
    margin: -14px -20px 14px -20px !important;
}

#tab-more_seller_product .posted_in,
#tab-more_seller_product .product-cat,
#tab-more_seller_product .location,
#tab-more_seller_product .cgst-carousel-category,
#tab-more_seller_product .cgst-carousel-location {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    color: #64748b !important;
    margin: 4px 20px 0 !important;
    text-align: left !important;
}

#tab-more_seller_product .price,
#tab-more_seller_product .woocommerce-Price-amount,
#tab-more_seller_product .cgst-carousel-price {
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

#tab-more_seller_product .price,
#tab-more_seller_product .cgst-carousel-price {
    display: block !important;
    margin: 10px 20px 16px !important;
    text-align: left !important;
}

#tab-more_seller_product .star-rating,
#tab-more_seller_product .cgst-carousel-meta {
    display: none !important;
}

/* =========================
   TABLET / MOBILE
========================= */
@media (max-width: 1023px) {
    #tab-more_seller_product::before,
    .cgst-carousel-title {
        font-size: 22px;
        margin-bottom: 16px;
    }

    #tab-more_seller_product ul.products,
    #cgst-other-seller-products ul.products,
    #cgst-similar-products ul.products,
    #cgst-recently-viewed-products ul.products {
        padding: 0 0 10px 0 !important;
    }

    #tab-more_seller_product ul.products > li.product,
    #cgst-other-seller-products ul.products > li.product,
    #cgst-similar-products ul.products > li.product,
    #cgst-recently-viewed-products ul.products > li.product,
    .cgst-similar-products-list > li.product {
        flex: 0 0 280px !important;
        width: 280px !important;
        min-width: 280px !important;
        max-width: 280px !important;
    }

    .cgst-carousel-image,
    #tab-more_seller_product ul.products > li.product img.wp-post-image {
        min-height: 160px !important;
        max-height: 160px !important;
        height: 160px !important;
    }

    .cgst-carousel-image img {
        max-height: 136px;
    }

    .cgst-more-products-nav {
        display: none !important;
    }
}
/* =========================
   SPEC TABLE
========================= */
.shop_attributes {
    width: 100% !important;
    border-collapse: collapse !important;
    border: 0 !important;
    margin: 0 !important;
}

.shop_attributes tr {
    border-bottom: 1px solid #e2e8f0 !important;
}

.shop_attributes tr:last-child {
    border-bottom: 0 !important;
}

.shop_attributes th {
    background: #f8fafc !important;
    color: #64748b !important;
    padding: 14px 16px !important;
    width: 30% !important;
    text-align: left !important;
    font-weight: 700 !important;
    border: 0 !important;
    vertical-align: top !important;
}

.shop_attributes td {
    padding: 14px 16px !important;
    border: 0 !important;
    color: #0f172a !important;
    vertical-align: top !important;
}

/* =========================
   STICKY SAFETY
========================= */
@media (min-width: 1024px) {
    body,
    #main,
    #main-container,
    .site-main,
    .content-area,
    .ct-container,
    .ct-content,
    .ct-main-content,
    .ct-page-title,
    .hero-section,
    .entry-content,
    .post-content,
    .product-entry-wrapper,
    .woocommerce,
    .single-product div.product,
    .cgst-equipt-product-page,
    .cgst-equipt-top,
    .cgst-equipt-gallery,
    .cgst-equipt-summary-wrap {
        overflow: visible !important;
    }
}

/* =========================
   DESKTOP
========================= */
@media (min-width: 1024px) {
    .cgst-equipt-top {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 360px !important;
        gap: 28px !important;
        align-items: start !important;
        position: relative !important;
        overflow: visible !important;
    }

    .cgst-equipt-top > * {
        min-height: 0 !important;
    }

    .cgst-equipt-gallery {
        min-width: 0 !important;
        width: 100% !important;
        max-width: none !important;
        overflow: visible !important;
    }

    .cgst-equipt-summary-wrap {
        position: sticky !important;
        top: 100px !important;
        width: 100% !important;
        max-width: 360px !important;
        min-width: 0 !important;
        margin-top: 0 !important;
        justify-self: end !important;
        align-self: start !important;
        overflow: hidden !important;
    }

    .cgst-equipt-summary-stack {
        display: flex !important;
        flex-direction: column !important;
        gap: 20px !important;
        width: 100% !important;
        margin: 0 !important;
        will-change: transform;
    }

    .cgst-equipt-bottom {
        display: block !important;
        width: 100% !important;
        clear: both !important;
        margin-top: 40px !important;
    }

    .cgst-equipt-gallery .woocommerce-product-gallery,
    .cgst-equipt-gallery .ct-product-gallery,
    .cgst-equipt-gallery .flexy-view,
    .cgst-equipt-gallery .flexy-items,
    .cgst-equipt-gallery .woocommerce-product-gallery__wrapper {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .cgst-equipt-price-value {
        font-size: 32px !important;
        line-height: 1.05 !important;
    }
}

/* =========================
   TABLET / MOBILE
========================= */
@media (max-width: 1023px) {
    .cgst-equipt-product-page {
        padding: 24px 14px 0;
    }

    .cgst-equipt-title {
        font-size: 38px;
    }

    .cgst-equipt-price-value {
        font-size: 34px;
    }

    .cgst-equipt-gallery .flexy-item,
    .cgst-equipt-gallery .flexy-item.flexy-item-is-visible,
    .cgst-equipt-gallery .woocommerce-product-gallery__image {
        min-height: 420px !important;
    }

    .cgst-equipt-gallery .flexy-item img,
    .cgst-equipt-gallery .woocommerce-product-gallery__image img {
        max-height: 420px !important;
    }

    #tab-more_seller_product::before,
    .cgst-carousel-title {
        font-size: 22px;
        margin-bottom: 16px;
    }

    #tab-more_seller_product ul.products,
    #cgst-similar-products ul.products {
        padding: 0 0 10px 0 !important;
    }

    #tab-more_seller_product ul.products > li.product,
    #cgst-similar-products ul.products > li.product,
    .cgst-similar-products-list > li.product {
        flex: 0 0 280px !important;
        width: 280px !important;
        min-width: 280px !important;
    }

    .cgst-carousel-image {
        min-height: 160px;
        max-height: 160px;
    }

    .cgst-carousel-image img {
        max-height: 136px;
    }

    .cgst-more-products-nav {
        display: none !important;
    }
}

/* =========================
   SMALL MOBILE
========================= */
@media (max-width: 640px) {
    .cgst-equipt-title {
        font-size: 30px;
    }

    .cgst-equipt-price-value {
        font-size: 30px;
    }

    .cgst-equipt-seller-row,
    .cgst-equipt-overview-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .cgst-equipt-location {
        margin-left: 0;
        text-align: left;
        max-width: none;
    }

    .cgst-equipt-gallery .woocommerce-product-gallery,
    .cgst-equipt-gallery .ct-product-gallery,
    .woocommerce-tabs,
    .cgst-equipt-description-card,
    .cgst-carousel-panel {
        border-radius: 22px !important;
        padding: 14px !important;
    }

    .cgst-equipt-gallery .flexy-view,
    .cgst-equipt-gallery .flexy-items,
    .cgst-equipt-gallery .woocommerce-product-gallery__wrapper,
    .cgst-equipt-gallery .flexy-item,
    .cgst-equipt-gallery .flexy-item.flexy-item-is-visible,
    .cgst-equipt-gallery .woocommerce-product-gallery__image {
        border-radius: 18px !important;
    }

    .cgst-equipt-gallery .flexy-item,
    .cgst-equipt-gallery .flexy-item.flexy-item-is-visible,
    .cgst-equipt-gallery .woocommerce-product-gallery__image {
        min-height: 300px !important;
    }

    .cgst-equipt-gallery .flexy-item img,
    .cgst-equipt-gallery .woocommerce-product-gallery__image img {
        max-height: 300px !important;
    }

    .woocommerce-tabs {
        padding: 18px 16px;
        border-radius: 20px;
    }

    .shop_attributes th,
    .shop_attributes td {
        display: block;
        width: 100% !important;
        padding: 12px 0 !important;
    }

    .shop_attributes th {
        background: transparent !important;
        padding-bottom: 4px !important;
    }

    .shop_attributes td {
        padding-top: 0 !important;
    }
}

/* =========================
   INQUIRY MODAL
========================= */
#cgst-inquiry-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(15, 23, 42, 0.62);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

.cgst-phone-prefix-wrap {
    display: flex;
    align-items: center;
    border: 1px solid #dbe3ec;
    border-radius: 14px;
    background: #ffffff;
    overflow: hidden;
}

.cgst-phone-prefix {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 58px;
    height: 100%;
    padding: 0 14px;
    background: #f8fafc;
    color: #334155;
    font-size: 14px;
    font-weight: 800;
    border-right: 1px solid #dbe3ec;
}

.cgst-phone-input {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.cgst-phone-prefix-wrap:focus-within {
    border-color: #f97316;
    box-shadow: 0 0 0 4px rgba(249, 115, 22, 0.12);
}

.cgst-inquiry-dialog {
    width: 100%;
    max-width: 680px;
    max-height: min(88vh, 900px);
    overflow: hidden;
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 28px 70px rgba(15, 23, 42, 0.26);
    border: 1px solid rgba(226, 232, 240, 0.9);
    display: flex;
    flex-direction: column;
}

.cgst-inquiry-dialog-inner {
    padding: 22px 22px 20px;
    overflow-y: auto;
}

.cgst-inquiry-header {
    margin-bottom: 18px;
    padding-bottom: 14px;
    border-bottom: 1px solid #f1f5f9;
}

.cgst-inquiry-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    padding: 6px 10px;
    border-radius: 999px;
    background: #fff7ed;
    border: 1px solid #fdba74;
    color: #c2410c;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.cgst-inquiry-title {
    margin: 0 0 8px;
    font-size: 28px;
    line-height: 1.1;
    font-weight: 900;
    color: #0f172a;
    letter-spacing: -0.02em;
}

.cgst-inquiry-subtitle {
    margin: 0;
    color: #64748b;
    font-size: 14px;
    line-height: 1.6;
}

.cgst-inquiry-form {
    display: grid;
    gap: 14px;
}

.cgst-inquiry-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.cgst-inquiry-field label {
    display: block;
    margin-bottom: 6px;
    color: #334155;
    font-size: 13px;
    font-weight: 800;
}

.cgst-inquiry-input,
.cgst-inquiry-textarea {
    width: 100%;
    border: 1px solid #dbe3ec;
    border-radius: 14px;
    background: #ffffff;
    color: #0f172a;
    padding: 13px 15px;
    font-size: 15px;
    line-height: 1.4;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.cgst-inquiry-input:focus,
.cgst-inquiry-textarea:focus {
    outline: none;
    border-color: #f97316;
    box-shadow: 0 0 0 4px rgba(249, 115, 22, 0.12);
}

.cgst-inquiry-input[readonly] {
    background: #f8fafc;
    color: #64748b;
    border-color: #e2e8f0;
    cursor: not-allowed;
}

.cgst-inquiry-textarea {
    min-height: 150px;
    resize: vertical;
}

#cgst-inquiry-response {
    display: none;
    padding: 12px 14px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
}

.cgst-inquiry-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 4px;
}

.cgst-inquiry-btn {
    min-height: 52px;
    border-radius: 14px;
    border: 1px solid transparent;
    padding: 0 18px;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.cgst-inquiry-btn:hover {
    transform: translateY(-1px);
}

.cgst-inquiry-btn-primary {
    background: #f97316;
    color: #ffffff;
    border-color: #f97316;
    box-shadow: 0 12px 24px rgba(249, 115, 22, 0.18);
}

.cgst-inquiry-btn-primary:hover {
    background: #ea580c;
    border-color: #ea580c;
}

.cgst-inquiry-btn-secondary {
    background: #ffffff;
    color: #334155;
    border-color: #dbe3ec;
}

.cgst-inquiry-btn-secondary:hover {
    background: #f8fafc;
    border-color: #cbd5e1;
}

.cgst-inquiry-close-x {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 38px;
    height: 38px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #ffffff;
    color: #64748b;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s ease;
}

.cgst-inquiry-close-x:hover {
    color: #0f172a;
    border-color: #cbd5e1;
    background: #f8fafc;
}

.cgst-inquiry-dialog-wrap {
    position: relative;
}

@media (max-width: 767px) {
    #cgst-inquiry-modal {
        padding: 12px;
        align-items: flex-end;
    }

    .cgst-inquiry-dialog {
        max-width: 100%;
        max-height: 92vh;
        border-radius: 22px 22px 0 0;
    }

    .cgst-inquiry-dialog-inner {
        padding: 18px 16px 16px;
    }

    .cgst-inquiry-title {
        font-size: 23px;
    }

    .cgst-inquiry-grid-2,
    .cgst-inquiry-actions {
        grid-template-columns: 1fr;
    }

    .cgst-inquiry-textarea {
        min-height: 130px;
    }
}

/* =========================
   SMALL CLEANUP ONLY
   no redesign, just neat title + rental rows
========================= */
.cgst-equipt-title{
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    max-width: 100% !important;
    line-height: 1.02 !important;
}

.cgst-equipt-price-label{
    margin-bottom: 8px !important;
}

.cgst-equipt-price-value--rental{
    display: block !important;
    font-size: inherit !important;
    line-height: 1.15 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.cgst-rental-price-line{
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
}

.cgst-rental-price-line:first-child{
    padding-top: 0 !important;
}

.cgst-rental-price-line:last-child{
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.cgst-rental-price-term{
    display: block !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #94a3b8 !important;
    flex: 1 1 auto !important;
}

.cgst-rental-price-amount{
    display: block !important;
    font-size: 30px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: -0.03em !important;
    color: #0f172a !important;
    text-align: right !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
}

.cgst-rental-price-fallback{
    font-size: 30px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
    letter-spacing: -0.03em !important;
    color: #0f172a !important;
}

@media (max-width: 1023px){
    .cgst-equipt-title{
        line-height: 1.03 !important;
    }

    .cgst-rental-price-amount{
        font-size: 28px !important;
    }
}

@media (max-width: 640px){
    .cgst-equipt-title{
        font-size: 30px !important;
        line-height: 1.04 !important;
    }

    .cgst-rental-price-line{
        gap: 12px !important;
        padding: 8px 0 !important;
    }

    .cgst-rental-price-term{
        font-size: 12px !important;
    }

    .cgst-rental-price-amount{
        font-size: 24px !important;
        line-height: 1.02 !important;
    }

    .cgst-rental-price-fallback{
        font-size: 24px !important;
    }
}

