#header {
    position: relative !important;
}
#images_box{
    position: sticky;
    top:50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index:5;
    width:100%;
}
#productImageCarousel{
    --f-carousel-slide-width: 100%;
    --f-carousel-spacing: 10px;
}
#productImageCarousel .f-carousel__slide {
    display: flex;
    justify-content: center;
    align-items: start;
    margin-right: 10px !important;
}
.f-carousel{
    width: 100%;
}
.video-carousel-item,
.image-carousel-item{
    width: 100% !important;
    max-width: 550px !important;
}
.f-thumbs.is-horizontal .f-thumbs__track {
    padding-top: 8px !important;
    padding-bottom: 0px !important;
}
.f-carousel__thumbs,.fancybox__thumbs{
    width:100% !important;
    margin-top:15px !important;
}
.f-carousel__thumbs .f-spinner {
    background: transparent !important;
}
.f-carousel__thumbs.is-classic,
.fancybox__thumbs.is-classic{
    --f-thumb-width: 100px;
    --f-thumb-height: 100px;
    --f-thumb-opacity: 1;
    --f-thumb-hover-opacity: 1;
    --f-thumb-selected-opacity: 1;
    --f-thumb-gap: 12px;
    --f-thumb-offset: 5px;
    --f-thumb-outline: 0;
}
.fancybox__thumbs.is-classic{
    margin-bottom: 20px !important;
}
.f-carousel__thumbs.is-classic .f-thumbs__slide,
.fancybox__thumbs.is-classic .f-thumbs__slide{
    border: 2px solid #3a3a3a;
    border-radius: 4px;
    background-color: transparent;
}
.f-thumbs__slide:hover,
.f-thumbs__slide.is-nav-selected
{
    border: 2px solid #fff !important;
}

.overlay{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    transition: opacity 0.3s;
}
.play-icon{
    position:absolute;
    top:50%;
    left:50%;
    width:26px;
    height:26px;
    color:#fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}


.image-item{
    max-width: 100%;
    height: 100%;
}


.tip-info{
    font-size: 1.0rem;
    font-weight: bold;
    color: #2d2a26;
}
.product-title{
    font-size: clamp(0.9rem,2.75vw,1.0rem) !important;
    line-height: 1.2 !important;
    font-weight: bold !important;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    text-overflow: ellipsis;
}

.sale-price,
.original-price,
.save-info{
    display: inline-block;
    font-weight: bold;
    text-align: center;
    align-content: center;
    padding:5px 10px;
    border-radius:4px;
    font-size: clamp(0.85rem,2.75vw,0.95rem);
}
.sale-price{
    font-size: clamp(0.95rem,2.75vw,1.1rem);
    color:#fff;
    background-color: #ea0029;
}
.original-price{
    color:#fff;
    background-color: #7431f9;
    text-decoration: line-through;
    text-decoration-thickness: 2px;
}
.save-info{
    color:#fff;
    background-color: #fc7d93;
}
.activity-item{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    background-color: #e8f0fe;
    padding:5px 10px;
    border-radius: 4px;
}
.activity-tag{
    display: flex;
    justify-content: start;
    align-items: center;
    font-size: clamp(0.75rem,2.75vw,0.95rem);
    line-height: 1.1;
    font-weight: bold;

    color:#313233;
    text-align: start;
}
.tag-high-light{
    color:#fff;
    background-color: #272727;
    padding:5px;
    border-radius: 4px;
    margin-left: 5px;
}
#sale_points_box,
#sku_info_box,
#add_to_cart_box{
    border-top:1px solid #525252;
    padding-top: 25px;
    font-size: clamp(0.85rem,2.75vw,1.0rem);
}

#sale_points_box{
    color:#dedede;
    font-size: clamp(0.75rem,2.75vw,0.95rem);
}
.size-chart-btn{
    color:#fff;
    font-size: clamp(0.85rem,3.0vw,1.0rem);
    cursor: pointer;
}
.size-chart-btn:hover{
    text-decoration: underline;
    text-decoration-thickness: 2px;
}

.sku-color-item button{
    width:clamp(66px,10.0vw,88px);
    aspect-ratio:1/1;
    border: 1px solid #525252;
    border-radius: 4px;
    background-color:transparent;
    padding:5px;
}
.sku-color-item button.selected,
.sku-color-item button:hover{
    border: 1px solid #fff;
    outline: 1px solid #fff;
}
.sku-color-img{
    width: 100%;
    height: 100%;
}
.selected-color{
    margin-left: 10px;
    font-weight: bold;
}
.color-tip,
.size-tip,
.quantity-tip{
    font-weight: bold;
    font-size:clamp(0.80rem,3vw,1.0rem);
}

#sku-color-box:has(.sku-color-item button.selected) .selected-color::before{
    content: '(';
    color:#fff;
    font-width:bold;
}
#sku-color-box:has(.sku-color-item button.selected) .selected-color::after{
    content: ')';
    color:#fff;
    font-width:bold;
}
.sku-size-item button,
.spec-item button{
    border: 1px solid #e9e9e9;
    font-size:clamp(0.75rem,3vw,0.95rem);
    font-weight: bold;
    min-width: 55px;
    height: clamp(35px,3vw,40px);
    color:#fff;
    background-color: #000;
    padding:5px 10px;
    border-radius: 4px;
}
.spec-item button:hover,
.spec-item button.selected,
.sku-size-item button:hover,
.sku-size-item button.selected
{
    border: 1px solid #fff;
    color:#000;
    background-color: #fdfdfd;
}
.spec-item button.disabled,
.sku-size-item button.disabled{
    color:#3a3a3a;
    border: 1px solid #2a2a2a;
    background-color:#121212 !important;
    cursor: not-allowed;
    text-decoration: line-through;
}
.spec-item .disabled:hover,
.sku-size-item .disabled:hover {
    outline: none !important;
}
.selected-spec,
.selected-size{
    margin-left: 10px;
    font-weight: bold;
}

#spec-box:has(.spec-item button.selected) .selected-spec::before,
#sku-size-box:has(.sku-size-item button.selected) .selected-size::before{
    content: '(';
    color:#fff;
    font-width:bold;
}
#spec-box:has(.spec-item button.selected) .selected-spec::after,
#sku-size-box:has(.sku-size-item button.selected) .selected-size::after{
    content: ')';
    color:#fff;
    font-width:bold;
}

.selected-quantity{
    margin-left: 10px;
    font-weight: bold;
}
.selected-quantity::before{
    content: '(';
    color:#fff;
    font-width:bold;
}
.selected-quantity::after{
    content: ')';
    color:#fff;
    font-width:bold;
}


.quantity-input {
    height: clamp(35px,5vh,40px);
    display: inline-flex;
    align-items: center;
    border-radius: 4px;
    border: 1px solid #e9e9e9;
    overflow: hidden;
}
.quantity-input input,
.quantity-input button{
    background-color: transparent !important;
    color:#fff;
}
.quantity-input input {
    height:100%;
    border: none;
    outline: none;
    text-align: center;
    width: 70px;
    padding: 5px;
    font-size: 1.0rem;
}
.quantity-input button {
    width: 35px;
    height:100%;
    border: none;
    cursor: pointer;
    font-size: 16px;
    padding:0;
    align-content: center;
    text-align: center;
}
.minusBtn i,
.plusBtn i
{
    font-size:24px;
    font-weight: bold;
    color:#000;
}

.add-to-cart-btn,
.pay-now-btn{
    width: 100%;
    height:clamp(40px,3.5vw,55px);
    font-size: clamp(0.90rem,3.5vw,1.2rem);
    line-height: 1.1;
    border-radius: 4px;
    font-weight: bold;
    overflow: hidden;
}
.add-to-cart-btn{
    color:#fff;
    border:2px solid #e9e9e9;
    background-color: #000;
}
.add-to-cart-btn:hover{
    color: #fff;
    border:2px solid #fc7d93;
    background-color: #fc7d93;
}
.pay-now-btn{
    color:#000;
    border:1px solid #fff;
    border-radius: 4px;
    background-color: #fff;
}
.pay-now-btn:hover{
    color:#fff;
    border:2px solid #ea0029;
    background-color: #ea0029;
}


.sold-out-mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(74, 31, 99, 0.25);
    align-content: center;
    text-align: center;
    color:#fff3cd;
    font-weight: bold;
    display: none;
    cursor: not-allowed;
}
.sold-out-container{
    position: relative;
    width: 100%;
    height: 100%;
}
.sold-out-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-20deg);
    color: #fafafa;
    font-weight: bold;
    font-size: 1.2rem;
    white-space: nowrap;
    background-color: transparent;
    padding: 15px 25px;
    border: 3px solid #fafafa;
    border-radius: 4px;
}


h3{
    font-size: 0.85rem !important;
    font-weight: bold !important;
    padding:5px 0px !important;
}

#detail_scene_box{
    background-color: #000;
}
#detail_scene_nav_box{
    position:sticky;
    top: 0;
    z-index: 1;
    background-color: #121212;
    color:#e9e9e9;
    border-top:1px solid #525252;
    border-bottom:1px solid #525252;
}
#detail_scene_nav_box .product-title{
    font-size: clamp(0.85rem,2.75vw,0.95rem) !important;
    color:#e9e9e9;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    text-overflow: ellipsis;
}
.detail-scene-nav-container{
    height: clamp(50px,6vw,100px);
}
.overview-btn,
.specifications-btn,
.faq-btn{
    width:clamp(120px,10vw,150px);
    color:#e9e9e9;
    font-size: clamp(0.85rem,2.75vw,1.05rem);
    line-height: 1.1;
    cursor: pointer;

}
.overview-btn:hover,
.specifications-btn:hover,
.faq-btn:hover{
    color:#fff;
    font-size: clamp(0.95rem,2.75vw,1.15rem);
    font-weight: bold;
    text-decoration: underline;
    text-decoration-thickness: 2px;
}
.simple-price-box .sale-price{
    font-size: clamp(0.80rem,2.75vw,1.0rem);
    background-color: transparent;
}
.detail-scene-nav-op-container .quantity-input{
    /*width:clamp(110px,10vw,150px) !important;*/
    height:clamp(35px,5vw,45px) !important;
}
.detail-scene-nav-op-container .quantity-input input{
    width:clamp(80px,6vw,100px) !important;
}
.simple-add-to-cart{
    position: relative;
    width:100%;
}
.simple-add-to-cart .add-to-cart-btn{
    /*width:clamp(110px,15vw,150px);*/
    height:clamp(40px,5vw,45px) !important;
    font-size:clamp(0.75rem,1.0vw,0.90rem) !important;
    border-radius: 4px !important;
    padding:0px 5px;
    border:2px solid #ea0029;
    background-color: #ea0029;
}
.simple-add-to-cart .cart-icon{
    width:clamp(20px,2vw,22px) !important;
}
.simple-add-to-cart .add-to-cart-btn:hover{
    background-color: #000;
    border:2px solid #fff;
}

.bootstrap-select{
    /*width:clamp(110px,10vw,150px) !important;*/
    height:clamp(35px,5vw,45px) !important;
    border-radius: 4px !important;
    border:1px solid #e9e9e9 !important;
}
.bootstrap-select button,
.bootstrap-select button:hover,
.bootstrap-select button:focus{
    border:none !important;
    width: 100% !important;
    height: 100% !important;
    font-size: clamp(0.80rem,2.75vw,1.0rem) !important;
    color:#fff !important;
    background: transparent;
    border-radius: 4px;
    padding:0 5px 0 10px;
    align-content:center;
}
.bootstrap-select .dropdown-toggle:focus{
    outline: none !important;
    outline-offset: 0;
}
.bootstrap-select.show-tick .dropdown-toggle:focus,
.bootstrap-select.show-tick .dropdown-toggle:hover {
    outline: none !important;
    outline-offset: 0;
}
.bootstrap-select .dropdown-toggle .filter-option {
    align-content:center;
}
.bootstrap-select .dropdown-toggle::after {
    border: none !important;
    display: inline-block !important;
    content: "" !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='%23ffffffbb' stroke-width='2' d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
    width: 22px !important;
    height: 22px !important;
    background-size: 100% 100% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    margin-left: 8px !important;
    vertical-align: middle !important;
}
.bootstrap-select .dropdown-item{
    font-size: clamp(0.80rem,2.75vw,1.0rem) !important;
}


.module-title{
    margin:2.5rem 0 !important;
    max-height:4.5rem !important;
    font-size:  clamp(1.25rem,3.5vw,2.0rem) !important;
    font-weight: bold !important;
    align-content: center !important;
    color:#ea0029;
}
.video-item-container,
.video-img-container{
    position: relative;
    width: 100%;
    overflow: hidden;
}
.video-item-container{
    background-color: #2a2a2a;
    text-align: center;
}
.video-img-container .overlay{
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color:transparent;
    transition: opacity 0.3s;
    cursor: pointer;
}
.video-img-container:hover .overlay {
    background-color: rgba(0, 0, 0, 0.6);
}
.video-img-container .play-icon{
    position:absolute;
    top:50%;
    left:50%;
    width:clamp(36px,3vw,45px);
    height:clamp(36px,3vw,45px);
    color:#fff;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
.image-text-container,
.video-text-container{
    width:85%;
    padding:0 100px;
    color:#e1e1e1 !important;
}



.detail_scene_title{
    font-size: clamp(1.10rem,1.5vw,1.6rem) !important;
    line-height: 1.25 !important;
    font-weight: bold;
    color:#e1e1e1 !important;
}
.detail_scene_description{
    font-size: clamp(0.80rem,1.5vw,1.0rem);
    color:#e1e1e1 !important;
}

#description_box .accordion{
    --bs-accordion-color: #000;
    --bs-accordion-bg: #fff;
    --bs-accordion-border-color: #fff;
    --bs-accordion-border-width: 100%;
    --bs-accordion-border-radius: 0px;
    --bs-accordion-inner-border-radius: 0px;
    --bs-accordion-btn-padding-x: 0.5rem;
    --bs-accordion-btn-padding-y: 0.5rem;
    --bs-accordion-btn-color: #000;
    --bs-accordion-btn-bg: #fff;
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-icon-transform: rotate(-180deg);
    --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
    --bs-accordion-btn-focus-box-shadow: none;
    --bs-accordion-body-padding-x: 0.5rem;
    --bs-accordion-body-padding-y: 0.5rem;
    --bs-accordion-active-color: #000;
    --bs-accordion-active-bg: #fff;
}
#description_box .accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e") !important;
}
#description_box .accordion-item {
    color: #fff;
    background-color: #2a2a2a;
    border: 0 solid #fff;
    border-radius: 6px;
    margin-bottom: clamp(15px,3.5vw,20px) !important;
    z-index: 1;
}
#description_box .accordion-button{
    height:clamp(45px,5vw,50px);
    padding:8px 24px;
    font-size: clamp(1.1rem,3.5vw,1.6rem);
    font-weight: bold;
    border-radius: 6px;
    color: #fff;
    background-color: #2a2a2a;
}
#description_box .accordion-body{
    font-size: clamp(0.9rem,3.5vw,1.0rem);
    color:#e1e1e1;
    line-height: 1.25;
    padding:8px 24px;
}
#description_box .accordion-item ul li{
    margin-bottom:0.75rem;
}

@media (min-width: 1200px) {
    #product_info_box{
        padding-left: 50px;
    }
}
@media (max-width: 1200px) {
    .image-text-container,
    .video-text-container{
        width:100%;
        padding:0 50px;
    }
}

@media (min-width: 992px) {
    #product_info_box{
        padding-left: 15px;
    }

    .obj-text-box{
        position: relative;
    }
    .obj-text-right-box{
        padding-right: 40px;
    }
    .obj-text-left-box{
        padding-left: 40px;
    }
    .obj-text-right-box::after {
        content: '';
        border-top: 40px solid transparent;
        border-right: 0px solid transparent;
        border-bottom: 40px solid transparent;
        border-left: 32px solid #ea0029;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 40px;
    }
    .obj-text-left-box::after {
        content: '';
        border-top: 40px solid transparent;
        border-right: 32px solid #ea0029;
        border-bottom: 40px solid transparent;
        border-left: 0px solid transparent;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 40px;
    }
}
@media (max-width: 992px) {
    #images_box{
        display: flex;
        flex-direction: column;
        align-items: center;
        width:100%;
    }
    .f-carousel__thumbs,.fancybox__thumbs{
        height:100px !important;
    }
    .f-carousel__thumbs.is-classic,
    .fancybox__thumbs.is-classic{
        --f-thumb-width: 75px;
        --f-thumb-height: 75px;
    }
    .image-text-container,
    .video-text-container{
        width:100%;
        padding:0 25px;
    }

    .obj-text-box{
        position: relative;
    }
    .obj-text-right-box,
    .obj-text-left-box{
        padding-top: 40px;
    }
    .obj-text-right-box::after,
    .obj-text-left-box::after {
        content: '';
        border-top: 32px solid #ea0029;
        border-right: 40px solid transparent;
        border-bottom: 0 solid transparent;
        border-left: 40px solid transparent;
        position: absolute;
        left: 50%;
        top: 0;
        transform: translateX(-50%);
        height: 40px;
    }
}
@media (max-width: 768px) {
    .simple-add-to-cart .add-to-cart-btn{
        width: 100%;
    }
    .sold-out-text {
        top: 50%;
        left: 50%;
        padding: 10px 20px;
        transform: translate(-50%, -25%) rotate(-20deg);
    }
}

