/* PDP */
.reviews-actions a.action.add {
    text-decoration: underline;
    color: #e9b15a;
}

.product-info-main .product.attribute.sku .type {
    font-weight: bold;
    color: black;
}

.product-info-price .product-info-stock-sku .stock.available,
.product-info-price .product-info-stock-sku .product.attribute.sku .value {
    color: #e9b15a;
    font-weight: bold;
}

.product-info-price .product-info-stock-sku .product.attribute.sku .type {
    color: black;
    font-weight: bold;
}

.field.review-field-nickname.required .control #nickname_field,
.field.review-field-summary.required .control #summary_field {
    width: 100%;
}

.field.review-field-text.required .control #review_field {
    width: 100%;
    height: 100px;
}

/* Product page review section */
.block.review-add
    .block-content
    .fieldset.review-fieldset
    .legend.legend.review-legend {
    font-size: 1.2rem;
}
/* Product details and Review accordion */

.product.data.items.accordion-style .item.title.resp-accordion.active {
    background-color: #fbfbfb;
    border: none !important;
}

.product.data.items.accordion-style .resp-tab-content {
    border: none !important;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.product.data.items.accordion-style .item.title.resp-accordion {
    background-color: #fbfbfb !important;
    border: none !important;
}

.product-info-main .product-info-price .price-box.price-final_price {
    text-align: start;
    padding: 15px 0px !important;
}

.product-info-main
    .product-info-price
    .price-box.price-final_price
    .price-container.price-final_price.tax.weee
    .price {
    font-size: 130%;
}

.product-info-main .page-title-wrapper.product .page-title .base {
    font-size: 140%;
}

.product.media a.action.towishlist {
    z-index: 1;
}

/* Make all Fotorama images contain inside the frame */
/* Main container - remove padding and fit image perfectly */
.fotorama__stage {
    max-width: 100%;
    width: 100%;
    background-color: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    padding: 0 !important;
    margin: 0 !important;
}

/* Image styling - fill container completely */
.fotorama__img {
    object-fit: cover !important; /* Changed from contain to cover */
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block;
}

/* Remove any wrapper padding */
.fotorama__stage__frame {
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Mobile devices (up to 480px) */
@media (max-width: 480px) {
    .fotorama__stage {
        height: 300px !important;
        width: 300px !important;
        margin: 0 auto !important;
    }
}

/* Small tablets (481px to 768px) */
@media (min-width: 481px) and (max-width: 768px) {
    .fotorama__stage {
        height: 320px !important;
        width: 320px !important;
        margin: 0 auto !important;
    }
}

/* Large tablets (769px to 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
    .fotorama__stage {
        height: 360px !important;
        width: 360px !important;
        margin: 0 auto !important;
    }
}

/* Desktop (1025px and above) */
@media (min-width: 1025px) {
    .fotorama__stage {
        height: 380px !important;
        width: 380px !important;
        margin: 0 auto !important;
    }
}

/* Large desktop screens */
@media (min-width: 1440px) {
    .fotorama__stage {
        height: 420px !important;
        width: 420px !important;
        margin: 0 auto !important;
    }
}

/* Remove any default Fotorama padding/margins */
.fotorama {
    padding: 0 !important;
    margin: 0 !important;
}

.fotorama__wrap {
    padding: 0 !important;
    margin: 0 !important;
}

/* Optional: If you want to keep aspect ratio and avoid cropping, use this instead */
/*
.fotorama__img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.fotorama__stage {
    background-color: #f8f8f8 !important;
}
*/

/* Price instock area */

.catalog-product-view
    .page-wrapper
    #maincontent
    .columns
    .column.main
    .product-info-main
    .product-info-price
    .price-box {
    display: flex !important;
    flex-direction: column-reverse !important;
    gap: 10px !important;
}

.catalog-product-view
    .page-wrapper
    #maincontent
    .columns
    .column.main
    .product-info-main
    .price-box
    .old-price
    .price {
    font-size: 80% !important;
}

.product-info-main
    .product-info-price
    .price-box.price-final_price
    .price-container.price-final_price.tax.weee
    .price {
    font-size: 120% !important;
    color: #000;
}

.catalog-product-view .product-info-main .product-info-stock-sku {
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.catalog-product-view
    .product-info-main
    .product-info-price
    .product-info-stock-sku
    .stock.available {
    color: rgb(52, 146, 15);
}

.catalog-product-view
    .product-info-main
    .product-info-price
    .product-info-stock-sku
    .product.attribute.sku
    .value {
    color: rgb(95, 95, 95);
}

.product.data.items .item.title > .switch {
    text-decoration: none;
}

/* Mobile view of pdp page add to cart section */
/* SET ADD TO CART BUTTON FIXED BOTTOM FOR MOBILE AND TABLET VIEW */
@media (max-width: 1024px) {
    .box-tocart .fieldset {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 9999;
        background-color: #fff; /* Optional: make it visible */
        box-shadow: 0 -2px rgba(0, 0, 0, 0.1); /* Optional shadow */
        padding: 10px 15px; /* Optional padding */
        display: flex;
        flex-direction: row;
        margin: 0px;
    }

    .box-tocart .fieldset:last-child {
        margin-bottom: 50px;
        gap: 20px;
    }

    .box-tocart .fieldset .actions .action.primary.tocart {
        margin-top: 25px;
    }

    .box-tocart .fieldset .actions {
        width: 45%;
    }

    .box-tocart .fieldset .field.qty {
        width: 50%;
    }
}

#product-buynow-button {
    display: none;
}

/* GRID SYSTEM WITH RIGHT SIDE BAR */

/* Right Side - Sidebar */

html
    .page-layout-2columns-right
    .sidebar.sidebar-main
    .product-addtocart-wrapper {
    padding: 30px !important;
    border: 1px solid #e7e7e7;
    border-radius: 10px;
}

@media screen and (max-width: 1024px) {
    html
        .page-layout-2columns-right
        .sidebar.sidebar-main
        .product-addtocart-wrapper {
        padding: 0px;
        border: none;
        border-radius: none;
    }

    .columns .sidebar.sidebar-main .price-box.price-final_price {
        display: none !important;
    }

    .product-addtocart-wrapper.moved-addtocart-wrapper
        .price-box.price-final_price {
        display: none !important;
    }
}

.box-tocart .actions .action.primary.tocart {
    width: 100%;
}

.box-tocart .fieldset .field.qty .control.control.qty-control {
    width: 100%;
}

.sidebar.sidebar-main .price-box.price-final_price {
    display: flex !important;
    flex-direction: column-reverse !important;
}

.sidebar.sidebar-main .price-box.price-final_price .special-price .price {
    font-size: 28px;
}

.sidebar.sidebar-main .price-box.price-final_price .old-price .price {
    font-size: 12px;
}

.columns .sidebar.sidebar-main .price-box.price-final_price {
    text-align: left;
}

.right-side-grids .payment-support {
    border: 1px solid #e7e7e7;
    border-radius: 10px;
    margin-top: 30px;
}

@media screen and (max-width: 1024px) {
    .right-side-grids .payment-support {
        margin-top: -30px;
    }
}

.right-side-grids .chat-call-mail {
    border: 1px solid #e7e7e7;
    border-radius: 10px;
    margin-top: 30px;
    padding: 50px;
}

.tabby-section {
    display: flex;
    flex-direction: row;
    gap: 10px;
    padding: 15px 10px;
    border: 1px solid #e7e7e7;
    border-radius: 12px;
    margin-top: 20px;
    font-size: 12px;
}

@media screen and (max-width: 768px) {
    .tabby-section {
        margin-bottom: 20px;
    }
}

.right-side-grids .payment-support .support {
    display: flex;
    justify-content: space-around;
    gap: 20px;
}

.right-side-grids .payment-support .support > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

/* Hide block (right sidebar block) for PC and show on mobile

    /* Default - hide both versions initially */
.single-product-sidebar-grid {
    display: none !important;
}

/* Desktop view (1025px and above) */
@media (min-width: 1025px) {
    /* Show sidebar and ensure it's visible */
    .sidebar-main {
        display: block !important;
    }

    /* Show only the desktop version in sidebar */
    .sidebar-main .single-product-sidebar-grid {
        display: block !important;
    }

    /* Hide mobile version completely on desktop */
    .content .single-product-sidebar-grid,
    .column.main .single-product-sidebar-grid {
        display: none !important;
    }
}

/* Tablet and Mobile view (1024px and below) */
@media (max-width: 1024px) {
    /* Hide entire sidebar to prevent overlap */
    .sidebar-main {
        display: none !important;
    }

    /* Hide sidebar version completely */
    .sidebar-main .single-product-sidebar-grid {
        display: none !important;
    }

    /* Show mobile version in main content area */
    .content .single-product-sidebar-grid,
    .column.main .single-product-sidebar-grid {
        display: block !important;
        width: 100%;
        margin: 20px 0;
        clear: both;
        float: none;
        position: relative;
    }

    /* Make main column full width */
    .column.main {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Ensure proper spacing and no overlap */
    .product-info-details {
        margin-top: 20px;
        clear: both;
    }

    /* Additional reset for any conflicting styles */
    .single-product-sidebar-grid .right-side-grids {
        position: static !important;
        float: none !important;
        width: 100% !important;
    }

    /* Fix any absolute positioning that might cause overlap */
    .single-product-sidebar-grid * {
        position: static !important;
    }
}

/* Default - show normally */
.product-addtocart-wrapper {
    display: block;
}

/* Hide sidebar on tablet/mobile */
@media (max-width: 1024px) {
    .sidebar-main {
        display: none !important;
    }

    .column.main {
        width: 100% !important;
    }

    .product-addtocart-wrapper {
        display: block !important;
        width: 100%;
        margin-bottom: 20px;
    }
}

/* Left side - main */
.custom-under-price {
    padding: 20px 0px;
    border-bottom: 1px solid #e7e7e7;
}

.shopping-benefits {
    padding: 10px 0px;
    border: 1px solid #f7f7f77d;
    border-radius: 1px;
    margin-top: 20px;
    background: #f7f7f77d;
}

.payment-support .payment {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    padding: 10px 0px;
    border-bottom: 1px solid #e7e7e7;
}

.payment-support .support {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    padding-top: 20px;
    background: #f9f7f799;
}

.payment-support .support p {
    font-size: 12px;
    margin-top: 10px;
    text-align: center;
}

.chat-call-mail {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

.chat-call-mail .chat,
.chat-call-mail .call,
.chat-call-mail .mail {
    border: 1px solid #e7e7e7;
    padding: 8px 15px;
    border-radius: 20px;
    background: rgba(247, 247, 247, 0.77);
}

.chat-call-mail .chat div,
.chat-call-mail .call div,
.chat-call-mail .mail div {
    font-size: 12px;
    font-weight: bold;
    color: rgb(37, 37, 37);
}

.chat-call-mail .chat a,
.chat-call-mail .call a,
.chat-call-mail .mail a {
    text-decoration: none;
}

.del-pri-ref-free {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    margin-left: 20px;
}

.del-pri-ref-free > div > div > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    font-size: 12px;
}

@media screen and (max-width: 768px) {
    .chat-call-mail .chat div,
    .chat-call-mail .call div,
    .chat-call-mail .mail div {
        font-size: 10px;
    }

    .del-pri-ref-free > div > div > div {
        font-size: 10px;
    }

    .payment-support .support p {
        font-size: 10px;
    }
}

/* temporary short description */
.short-desc {
    font-size: 15px;
    font-weight: bold;
    margin-top: 20px;
    text-decoration: underline;
    color: #000;
}

/* Related products section */
.catalog-product-view
    .product-slider.max-height-items
    .block.detail-product-slider
    .block-content.content {
    border: none;
}

/* Related Products section height */
@media screen and (min-width: 1200px) {
    .products-grid.products-related
        .owl-carousel
        .owl-stage-outer
        .owl-stage
        .owl-item.active {
        width: 250px !important;
    }

    .products-grid.products-related .owl-carousel .owl-stage-outer {
        width: 1100px !important;
    }
}

/* Success notice after added to cart */
.page.messages .messages .message-success.success.message {
    font-size: 0.9rem;
}

/* === REMOVE ALL TAB BORDERS === */
.product.data.items .resp-tabs-list .data.item.title {
    all: unset;
    display: inline-block;
    cursor: pointer;
    padding: 12px 20px;
    margin-right: 10px;
    font-size: 16px;
    color: #333;
    border-bottom: 2px solid transparent;
    transition: all 0.3s ease;
    text-transform: uppercase;
    font-weight: 500;
}

/* REMOVE YELLOW LINE OR BACKGROUND ON ACTIVE TAB */
.product.data.items .resp-tabs-list .data.item.title.active {
    background: none !important;
    border: none !important;
    border-bottom: 2px solid #e9b15a !important; /* Red underline */
    color: #e9b15a !important;
    font-weight: 600;
}

/* ON HOVER (OPTIONAL) */
.product.data.items .resp-tabs-list .data.item.title:hover {
    color: #e9b15a;
}

/* REMOVE OUTLINE BOX AROUND CONTENT */
.product.data.items .data.item.content {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

@media (min-width: 767px) {
    .product.data.items .data.item.content {
        padding-top: 25px;
    }
}

/* REMOVE ANY LINE ABOVE TABS */
.product.info.detailed::before,
.page-title-wrapper::before,
.product.data.items .section-title::before {
    content: none !important;
    display: none !important;
    border: none !important;
    background: none !important;
    height: 0 !important;
}

.default-style .resp-tabs-list li.active:before {
    background-color: #ffffff00 !important;
}

.default-style .resp-tabs-container {
    border: none !important;
    padding: 0 !important;
}

/* Tab color */
.product.info.detailed
    .product.data.items
    .resp-tabs-list
    .data.item.title
    > .switch {
    color: #cfcccc;
}

.product.info.detailed
    .product.data.items
    .resp-tabs-list
    .data.item.title.active
    a {
    color: #e9b15a;
    transition: 0.3s;
}

.product.info.detailed
    .product.data.items
    .resp-tabs-list
    .data.item.title
    > .switch:hover {
    color: #e9b15a;
    transition: 0.3s;
    font-weight: 600;
}

@media (max-width: 480px) {
    .default-style .resp-tabs-list {
        border-bottom: none !important;
    }

    .resp-tabs-list li.data.item.title {
        border: none !important;
    }
}

/* Hide ALL possible existing quantity controls */
.qty-button,
.qty-btn:not(.custom-qty-btn),
.qty-plus:not(.custom-qty-plus),
.qty-minus:not(.custom-qty-minus),
span.qty-btn,
span.qty-plus,
span.qty-minus {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    left: -10000px !important;
    top: -10000px !important;
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    z-index: -999 !important;
    overflow: hidden !important;
}

/* Reset qty-control */
.qty-control {
    position: relative !important;
    overflow: hidden !important;
    z-index: 1 !important;
}

.qty-control * {
    position: static !important;
    float: none !important;
}

/* Custom quantity wrapper */
.custom-qty-wrapper {
    display: flex !important;
    align-items: stretch !important;
    border: 1px solid #f3f3f3 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    width: 100% !important;
    height: 40px !important;
    background: white !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 10 !important;
}

/* Custom quantity buttons */
.custom-qty-btn {
    background: #f8f8f8 !important;
    border: none !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    font-size: 20px !important;
    font-weight: normal !important;
    color: #666 !important;
    transition: all 0.2s ease !important;
    flex-shrink: 0 !important;
    user-select: none !important;
    outline: none !important;
    position: relative !important;
    z-index: 11 !important;
}

.custom-qty-btn:hover {
    background: #e8e8e8 !important;
    color: #333 !important;
}

.custom-qty-btn:active {
    background: #ddd !important;
    transform: scale(0.98) !important;
}

.custom-qty-minus {
    border-right: 1px solid #eee !important;
}

.custom-qty-plus {
    border-left: 1px solid #eee !important;
}

/* Custom quantity input */
.custom-qty-input {
    border: none !important;
    text-align: center !important;
    flex: 1 !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    background: white !important;
    color: #333 !important;
    box-sizing: border-box !important;
    outline: none !important;
    position: relative !important;
    z-index: 11 !important;
}

.custom-qty-input:focus {
    outline: none !important;
    box-shadow: none !important;
    background: white !important;
}

/* Remove number input spinners */
.custom-qty-input::-webkit-outer-spin-button,
.custom-qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
    display: none !important;
}

.custom-qty-input[type="number"] {
    -moz-appearance: textfield !important;
}

/* Match the Add to Cart button styling */
.field.qty {
    margin-bottom: 15px !important;
}

/* Extra safety - hide any remaining elements that might appear */
.qty-control > *:not(.custom-qty-wrapper) {
    display: none !important;
}
