/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */
 .all-items-wrapper{    
   /* display: flex;*/
   display: grid;
       grid-template-columns: 1fr 1fr 1fr;
    flex-direction: row;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
    padding-bottom: 100px;
 }
.all-items-wrapper{
  grid-template-columns: 1fr;
}

/* Styles for tablets (600px and up) */
@media (min-width: 768px) {
  .all-items-wrapper{
  grid-template-columns: 1fr 1fr;
}
}

/* Styles for desktops (1024px and up) */
@media (min-width: 1024px) {
  .all-items-wrapper{
  grid-template-columns: 1fr 1fr 1fr;
}
}

.gallery-gallery-wrapper{
    display: flex;
}
 





.auction-search-wrap .auction-category{
    width: 200px;
    background-color: white;
}
.auction-search-wrap select{
    height: 40px;
    border-color: black;
    color: black;
    background-color: white;
}
.auction-search-wrap input[type=text]{
    height: 40px;
    border-color: black;
    color: black;
}
.auction-sort{
    margin-right: 1px;
}
.auction-search-wrap{
    display: flex;
    padding-bottom: 20px;
    gap: 10px;
    justify-content: center;
}
.auction-search-collapse-wrap{
    display: flex; 
    overflow: hidden;
    transition: width 0.3s ease-in-out;
    width: 0;   
    gap: 10px;
    margin-left: -10px;
    
}
.auction-search-collapse-wrap.expanded {
    width: 200%; /* Adjust the width as needed */
    margin-left: 0px;
}
@media screen and (max-width: 1024px) {
    .auction-search-collapse-wrap {
        width: auto; /* Show the search options by default on larger screens */
        margin-left: 0;
        position: absolute;
        height: 0px;
        top: 50px;
        flex-direction: column;
    }
    .auction-search-collapse-wrap.expanded {
    height: 200px;
    width: 100%;
}
}
.auction-hamburger-menu {
    cursor: pointer;
    padding: 10px;
    z-index: 999;
    border-style: solid;
    border-width: 1px;
    border-color: black;
    border-radius: 3px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 40px !important;
}.auction-hamburger-menu:hover {
  background-color: #e9e9e9 !important;
}
.auction-submit{
    border-style: solid !important;
    border-width: 1px !important;
    border-color: #0a350d !important;
    background-color: var(--sbws_search_background) !important;
    color: #000000 !important;
    padding-left: 15px;
    padding-right: 15px;
    border-radius: 3px !important;
    height: 40px !important;

}
.auction-submit:hover{    
    background-color: #e9e9e9 !important;
    color: #0a350d !important;
}


 .auction-archive-wrapper{
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: flex-end;
    height: 250px;
    border-style: solid;
    border-color: #c5c5c5;
    border-width: 1px;
    border-radius: 0px;
    background-color: white;   
    width: 300px;
 }
 .auction-archive-wrapper:hover{
   /* transform: scale(1.01);
    box-shadow: 0px 8px 10px 0px rgba(0,0,0,0.5);*/
 }
 .auction-archive-wrapper:hover .auction-archive-data-section{
    height: 100%;
 }
    .auction-archive-image-section{
        display: flex;
        width: 100%;
        padding: 10px;
        height: 100%;
        align-content: center;
        justify-content: center;
    }
        .auction-archive-featured-image-wrapper{
            display: flex;
        }
        .auction-archive-featured-image-wrapper img{
            height: 100%;
            max-height: 250px;
            max-width: 300px;
            object-fit: contain;
        }


      
    .auction-archive-data-section{
        display: flex;
        flex-direction: column;
        width: 100%;
        position: absolute;
        width: 300px;
        overflow: hidden;
        transition-duration: 1s;  
        height: 0px;
        background-color: #0a350dcc;       
        max-height: 250px;
    }
        .archive-title-wrapper{
            display: flex;
            font-family: "Antic Slab", sans-serif;
            font-size: 18px;
            font-weight: 400;
            color: #ffffff;           
            padding-top: 20px;
            padding: 10px;

        }
            
        .archive-short-wrapper{
            display: flex;
            font-family: "Antic Slab", sans-serif;
            font-size: 18px;
            font-weight: 400;            
            color: #333333;
          
        }







.auction-archive-card-wrapper{
    display: flex;
    flex-direction: row;
    gap: 0;
    flex-wrap: wrap;
    justify-content: flex-start;
    
    border-style: solid;
    border-color: #c5c5c5;
    border-width: 1px;
    border-radius: 15px;
    background-color: white;   
    padding: 0px;
    overflow: hidden;
   
 }
 .auction-archive-card-wrapper:hover{
   /* transform: scale(1.01);
    box-shadow: 0px 8px 10px 0px rgba(0,0,0,0.5);*/
 }
 .auction-archive-card-wrapper:hover .auction-archive-data-card-section{
   
 }
    .auction-archive-image-card-section{
        display: flex;
        width: 100%;
         
        height: 250px;
        align-content: center;
        justify-content: cenflex-start;
    }
        .auction-archive-featured-image-card-wrapper{
            display: flex;
                align-items: flex-start;
                border-radius: 0px;
    overflow: hidden;
    width: 100%;
               
        }
        .auction-archive-featured-image-card-wrapper img{
            height: 100% !important;
           /* max-height: 250px;
            max-width: 300px; */
            min-height: 250px;
            width: 100%;
            object-fit: cover;
          /*  transition: 2s;
            transition-duration: 2s;*/
            rotate: 0deg;
            scale: 1;
            transition: 1s scale, 2s rotate; 
        }
        .auction-archive-card-wrapper:hover .auction-archive-featured-image-card-wrapper img{
           /*transform: scale(1.1) rotate(25deg);*/
            rotate: 0deg;
            scale: 1.2;
        }

      
    .auction-archive-data-card-section{
        display: flex;
        flex-direction: column;
        width:100%;
        position: relative;
        transition-duration: 1s;  
        padding: 20px;
       
       
    }
        .archive-title-card-wrapper{
            display: flex;
            font-family: "Antic Slab", sans-serif;
            font-size: 18px;
            font-weight: 600;
            color: #000000;           
            padding-top: 20px;
            padding-bottom: 20px;
            overflow: hidden;
        }
        .archive-title-card-wrapper p{
               display: -webkit-box;
    max-width: 100%;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 23px;
    height: 69px;

        }
        .archive-span-card-wrapper{
            display: flex;
            font-family: "Antic Slab", sans-serif;
            font-size: 16px;
            font-weight: 400;
            color: #000000;           
            padding-top: 20px;
            padding: 0;

        }
            
        .archive-short-card-wrapper{
            display: flex;
            font-family: "Antic Slab", sans-serif;
            font-size: 18px;
            font-weight: 400;            
            color: #333333;
          
        }






       


            .gallery-gallery-item{
                width: auto;
            }




            .auction-category-select-wrap form{
                
                display: flex;
                flex-direction: row;
                justify-content: center;
                padding-bottom: 20px;
                gap: 15px;
                align-items: center;
            }
            .auction-category-select-wrap select{
                width: 250px;
                color: black;
                height: 42px;
                background-color: white;
            }
            .auction-category-select-wrap input{
                width: 250px;
                padding-left: 10px;
                padding-right: 10px;
                padding-top: 10px;
                padding-bottom: 10px;
                border-radius: 10px !important;
                color: white;
                background-color: #0a350d;
            }
            .auction-category-select-wrap input:hover{
               
                background-color: #000000;
            }





            .all-items-current-category{
                display: flex;
                flex-direction: row;
                justify-content: center;
                padding-bottom: 20px;
                display: flex;
                font-family: "Antic Slab", sans-serif;
                font-size: 24px;
                font-weight: 700;            
                color: #333333;
            }



        .sbws-modal {
            display: none; /* Hidden by default */
            position: fixed; /* Stay in place */
            z-index: 99999; /* Sit on top */
            padding-top: 100px; /* Location of the box */
            left: 0;
            top: 0;
            width: 100%; /* Full width */
            height: 100%; /* Full height */
            overflow: auto; /* Enable scroll if needed */
            background-color: rgb(0,0,0); /* Fallback color */
            background-color: rgba(0,0,0,0.9); /* Black w/ opacity */
            
            flex-direction: row;
            align-content: center;
            justify-content: center;
            align-items: center;
        }
        .zoom-container{
            display: flex;
            flex-direction: row;
            align-content: center;
            justify-content: center;
            align-items: center;
        
        }
            
            
            /* Modal Content (Image) */
            .sbws-modal-content {
            margin: auto;
            display: block;
            width: 80%;
            max-width: 90vw;
            max-height: 80vh;
            object-fit: contain;
            z-index: 999;
            top: 0px;
            position: relative;
            }
            
            /* Caption of Modal Image (Image Text) - Same Width as the Image */
            #caption {
            margin: auto;
            display: block;
            width: 80%;
            max-width: 700px;
            text-align: center;
            color: #ccc;
            padding: 10px 0;
            height: 150px;
            }
            
            /* Add Animation - Zoom in the Modal */
            .sbws-modal-content, #caption {
            -webkit-animation-name: zoom;
            -webkit-animation-duration: 0.6s;
            animation-name: zoom;
            animation-duration: 0.6s;
            }
            
            @-webkit-keyframes zoom {
            from {-webkit-transform:scale(0)}
            to {-webkit-transform:scale(1)}
            }
            
            @keyframes zoom {
            from {transform:scale(0)}
            to {transform:scale(1)}
            }
            
            /* The Close Button */
            .sbws-close {
            position: absolute;
            top: 15px;
            right: 35px;
            color: #f1f1f1;
            font-size: 40px;
            font-weight: bold;
            transition: 0.3s;
            z-index: 9999;
            }
            .sbws-modal-buttons{
                display: flex;
                position: absolute;
                top: 50px;
                right: 35px;
                gap: 5px;
            }
            .sbws-modal-zoom-button{
           
            color: #000000;
            font-size: 20px;
            font-weight: bold;
            transition: 0.3s;
            z-index: 9999;
            }
            .sbws-modal-reset-button{
               
                color: #000000;
                font-size: 20px;
                font-weight: bold;
                transition: 0.3s;
                z-index: 9999;
            }
            .sbws-modal-close-button{
              
                color: #000000;
                font-size: 20px;
                font-weight: bold;
                transition: 0.3s;
                z-index: 9999;
            }
            
            .sbws-close:hover,
            .sbws-close:focus {
            color: #bbb;
            text-decoration: none;
            cursor: pointer;
            }
            .sbws-zoom {
                position: absolute;
                top: 15px;
                right: 65px;
                color: #f1f1f1;
                font-size: 40px;
                font-weight: bold;
                transition: 0.3s;
                z-index: 9999;
                }
                
                .sbws-zoom:hover,
                .sbws-zoom:focus {
                color: #bbb;
                text-decoration: none;
                cursor: pointer;
                }
            
            /* 100% Image Width on Smaller Screens */
            @media only screen and (max-width: 700px){
            .sbws-modal-content {
            width: 100%;
            }
            }



           .auction-date-icon-wrapper{
            height: 250px;
            width: 250px;            
            border-radius: 25px;
            overflow: hidden;
            transition-duration: .5s;
            border-width: 1px;
            border-color: #f2f2f2;
            border-style: solid;
           } 
           .auction-date-icon-wrapper:hover{
                transform: scale(1.1);;
           } 
                .auction-date-icon-top{
                    background-color: #D3312E;
                    height: 33%;
                    width: 100%;
                    display: flex;
                    align-content: center;
                    justify-content: center;
                    align-items: center;
                    box-shadow: inset -15px 0px 5px 0px #7171716e;
                    border-top-right-radius: 25px;
                }
                    .auction-date-icon-top span{
                        text-align: center;
                        color: #ffffff;
                        font-family: "Roboto", Sans-serif;
                        font-size: 50px;
                        font-weight: 700;
                    }
                .auction-date-icon-bottom{
                    background-color: #ffffff;
                    height: 67%;
                    width: 100%;
                    display: flex;
                    align-content: center;
                    justify-content: center;
                    align-items: center;
                    box-shadow: inset -15px 0px 5px 0px #7171716e;
                    border-bottom-right-radius: 25px;
                }
                    .auction-date-icon-bottom span{
                        text-align: center;
                        color: #000000;
                        font-family: "Roboto", Sans-serif;
                        font-size: 115px;
                        font-weight: 700;
                    }







                    .sbws-pagination{
                        display: flex;
                        flex-direction: row;
                        flex-wrap: nowrap;
                        justify-content: center;
                        gap: 20px;
                        padding-bottom: 20px;
                    }
                    .sbws-pagination > a{
                        color: black;
                        border-style: solid;
                        border-color: black;
                        border-width: 1px;
                        width: 50px;
                        display: flex;
                        flex-direction: row;
                        justify-content: center;
                        align-items: center;
                        padding-left: 10px;
                        padding-right: 10px;
                        padding-top: 5px;
                        padding-bottom: 5px;
                    }
                    .sbws-pagination > a:hover{
                        color: white;
                        background-color: black;
                    }
                    .sbws-pagination .current{
                        color: white;
                        background-color: black;
                        border-style: solid;
                        border-color: black;
                        border-width: 1px;
                        width: 50px;
                        display: flex;
                        flex-direction: row;
                        justify-content: center;
                        align-items: center;
                        padding-left: 10px;
                        padding-right: 10px;
                        padding-top: 5px;
                        padding-bottom: 5px;
                    }
                    
                    .sbws-bottom-pagination{
                        display: flex;
                        flex-direction: row;
                        flex-wrap: nowrap;
                        justify-content: center;
                        gap: 20px;
                        padding-bottom: 20px;
                        position: absolute;
                        bottom: 0px;   
                        width: 100%;
                    }
                    .sbws-bottom-pagination > a{
                        color: black;
                        border-style: solid;
                        border-color: black;
                        border-width: 1px;
                        width: 50px;
                        display: flex;
                        flex-direction: row;
                        justify-content: center;
                        align-items: center;
                        padding-left: 10px;
                        padding-right: 10px;
                        padding-top: 5px;
                        padding-bottom: 5px;
                    }
                    .sbws-bottom-pagination > a:hover{
                        color: white;
                        background-color: black;
                    }
                    .sbws-bottom-pagination .current{
                        color: white;
                        background-color: black;
                        border-style: solid;
                        border-color: black;
                        border-width: 1px;
                        width: 50px;
                        display: flex;
                        flex-direction: row;
                        justify-content: center;
                        align-items: center;
                        padding-left: 10px;
                        padding-right: 10px;
                        padding-top: 5px;
                        padding-bottom: 5px;
                    }
                    



                    .toggle-enabled{
                        background-color: #BC0909;
                            width: 250px !important;
                            margin-left: auto;
                            margin-right: auto;
                            color: white;
                            padding-top: 8px;
                            padding-bottom: 5px;
                            margin-bottom: 0px;
                            font-weight: 600;
                            height: 40px;
                        padding-bottom: 20px;
                        cursor: pointer;
                        text-align: center;
                        width: 100%;
                        }
                        .hidden-div{
                            display: none;
                            height: 0px;
                            width: 100%;
                        }
                        .hidden-content-wrapper{
                            padding-top: 20px;
                            min-height: 250px;
                        }




                        .category-name{
                            display: flex;
                            width: 100%;
                            justify-content: center;
                            text-align: center;    
                            font-family: "Antic Slab", Sans-serif;
                            font-size: 22px;
                            font-weight: 700;
                        }



                       


                        .sbws-modal-image {
                            border: 1px #ddd solid;
                            max-height: 1000vh !important;
                            max-width: 1000vw !important;
                            position: relative;
                            .sbws-modal-buttons {
                              position: absolute;
                              right: 4px;
                              top: 8px;
                              button {
                                padding: 7px;
                                margin-bottom: 5px;
                                background-color: #444;
                                color: #fff;
                                border-style: none;
                                border: 1px solid #000;
                                &:hover {
                                  cursor: pointer;
                                }
                              }
                              i {
                                font-size: 1.5em;
                              }
                            }
                          }


  /* Style the video modal */
  .video-modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 2; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
    max-width: 100vw;
    max-height: 100vh;
  }
  
  /* Modal Content/Box */
  .video-modal-content {
    background-color: #fefefe00;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: center;
     max-width: 95vw;
    max-height: 95vh;
  }
  .video-modal-content video{
   
     max-width: 95vw;
    max-height: 95vh;
  }
  .video-modal-content video{

  }
  /* Style the video thumbnail container */
  .video-thumbnail-container {
    cursor: pointer;
    display: flex !important;
    align-self: center;
    flex-direction: column;  
    justify-content: center;
    align-items: center;
  }
  
  /* Style the video thumbnail */
  .video-thumbnail {
    object-fit: contain; /* Maintain aspect ratio and cover the container */
  }
  /* Styling for the play icon */
.video-play-icon {
    position: absolute; /* Position relative to .video-thumbnail-wrapper */
    top: 50%; /* Center vertically */
    left: 50%; /* Center horizontally */
    transform: translate(-50%, -50%); /* Adjust for exact centering */
    width: 60px; /* Adjust size of your play icon */
    height: 60px; /* Adjust size of your play icon */
    z-index: 10; /* Ensure it's on top of the video */
    opacity: 0.8; /* Slightly transparent */
    transition: opacity 0.3s ease-in-out; /* Smooth hover effect */
}

.video-thumbnail-wrapper:hover .video-play-icon {
    opacity: 1; /* Fully visible on hover */
}

/* Optional: Make the video thumbnail slightly darker on hover */
.video-thumbnail-wrapper:hover .video-thumbnail {
    filter: brightness(0.8);
    transition: filter 0.3s ease-in-out;
}
  /* The Close Button */
  .video-close {
    color: #ffffff;
    float: right;
    font-size: 28px;
    font-weight: bold;
    background-color: #33333333;
    border-radius: 25px;
    height: 35px;
    width: 35px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    right: 50px;
  position: relative;
  top: -40px;
  }
  
  
  .video-close:hover,
  .video-close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
  }



.play-button {
  width: 100px; /* Adjust as needed */
  height: 100px; /* Adjust as needed */
  z-index: 1;
  border-radius: 50%;
 
  cursor: pointer;
  border-style: solid;
  border-width: 3px;
  border-color: #ffffff77;
}

.play-button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 55%; /* Adjusted for visual centering */
  margin-top: -15px;
  margin-left: -20px; /* Adjusted for visual centering */
  border-style: solid;
  border-width: 15px 0 15px 25px; /* Creates the triangle */
  border-color: transparent transparent transparent #ffffff77; /* Triangle color */
}

/* Optional hover effect */
.play-button:hover {
  border-color: white;

}

.play-button:hover:before {
  border-color: transparent transparent transparent white;
}





  .popup-trigger {
    display: inline-block;
    cursor: pointer;
}

/* Style the button that triggers the popup */
.popup-button {
    display: flex;
   padding: 5px 25px 5px 25px;
   line-height: 34px;
    border-radius: 5px;
    background-image: linear-gradient(#D3312E 0%, #F44336 100%);    
    color: white;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    font-family: "PT Sans", Sans-serif;
    font-weight: 400;
    text-align: center; /* Ensure text is centered */
    margin-top: 8px;
}
.popup-button:hover {   
    background-image: linear-gradient(#F44336 0%, #D3312E 100%);   
}

/* Style the text modal (hidden by default) */
.text-modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 1000; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
   
  
}

/* Style the modal content */
.text-modal-content {
    background-color: #fefefe;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 700px;
    max-width: 90vw;
    position: relative;
    display: flex;
    flex-direction: column;
    margin: 0;
  
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
   
}
.sbws-modal-prev,
.sbws-modal-next {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: auto;
    padding: 16px;
    margin-top: -50px;
    color: white !important;
    font-weight: bold;
    font-size: 20px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
    user-select: none;
    -webkit-user-select: none;
    background-color: rgba(0,0,0,0.8); /* Dark background for visibility */
    z-index: 1001; /* Ensure they are above the image */
}

.sbws-modal-next {
    right: 0;
    border-radius: 3px 0 0 3px;
}

.sbws-modal-prev {
    left: 0;
}

.sbws-modal-prev:hover,
.sbws-modal-next:hover {
    background-color: rgba(0,0,0,1); /* Slightly darker on hover */
}

/* Style the text content inside the modal */
.text-content {    
    display: block;
    padding-bottom: 20px; /* Add some space below the text */
    white-space: pre-wrap; /* Preserve line breaks and spaces */
}

/* Style the close button */
.text-close {
    color: #aaa;
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 30px;
    font-weight: bold;
    cursor: pointer;
}

.text-close:hover,
.text-close:focus {
    color: black;
    text-decoration: none;
}





                          @media only screen and (max-width: 800px) {
            
                            .auction-archive-wrapper{
                                flex-direction: row ;
                                height: auto ;
                                width: auto;
                                justify-content: center;
                            }
                            .auction-archive-image-section{                
                                height: 250px ;    
                                width: 100%;         
                            }
                            .auction-archive-data-section{
                                position: relative ;
                                height: auto ;    
                                background-color: #0a350d00;
                                max-height: auto;
                            }
                            .archive-title-wrapper{
                                color: black;
                            }
                        }

/* Container: Stacked on mobile, Side-by-Side on Desktop */
.sbws-adv-media-container {
    display: flex;
    flex-direction: column;
    gap: 0px;
    margin-bottom: 30px;
    height: 800px;
}
@media (min-width: 768px) {
    .sbws-adv-media-container {
        flex-direction: row;
    }
}
@media (min-width: 1068px) {
    .sbws-adv-media-container {
        height: 400px;
    }
}

/* Left Side: Featured Image */
.sbws-adv-left {
    flex: 1 1 50%;
    cursor: pointer;
    position: relative;
    border-radius: 0px;
    overflow: hidden;
}
.sbws-adv-left img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 4 / 3; /* Keeps a nice rectangular ratio */
    display: block;
}

/* Right Side: 2x2 Grid */
.sbws-adv-right {
    flex: 1 1 50%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 0px;
}
.sbws-adv-grid-item {
    position: relative;
    cursor: pointer;
    border-radius: 0px;
    overflow: hidden;
    background: #f1f1f100;    
}
.sbws-adv-trigger img, .sbws-adv-grid-item img, .sbws-adv-grid-item video, .sbws-adv-grid-item .placeholder{
    transition-duration: .5s;
}
.sbws-adv-grid-item:hover img, .sbws-adv-grid-item:hover video, .sbws-adv-grid-item:hover .placeholder{
    transform: scale(1.1);
}
.sbws-adv-trigger:hover img, .sbws-adv-trigger:hover picture{
    transform: scale(1.1);
}
.sbws-adv-grid-item.placeholder {
    cursor: default;
}
.sbws-adv-grid-item img, 
.sbws-adv-grid-item video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1; /* Forces perfect squares */
    display: block;
}
.sbws-adv-play-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 24px;
    color: white;
    background: rgba(0,0,0,0.6);
    border-radius: 50%;
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

/* Advanced Modal Styling */
.sbws-adv-modal {
    position: fixed; 
    z-index: 99999; 
    left: 0; 
    top: 0; 
    width: 100%; 
    height: 100%;
    background-color: rgba(0,0,0,0.9);
    display: flex; 
    align-items: center; 
    justify-content: center;
}
.sbws-adv-modal-content {
    position: relative; 
    width: 95%; 
    max-width: 1100px; 
    height: 85vh;
    display: flex; 
    align-items: center; 
    justify-content: center;
}
.sbws-adv-media-display {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sbws-adv-media-display img, 
.sbws-adv-media-display video {
    max-width: 100%; 
    max-height: 85vh; 
    object-fit: contain;
    border-radius: 4px;
}
/* YouTube in the gallery pop-up: 16:9, as large as the box allows. */
.sbws-adv-youtube {
    position: relative;
    width: 100%;
    max-width: calc(85vh * 16 / 9);
    aspect-ratio: 16 / 9;
}
.sbws-adv-youtube iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.sbws-adv-close {
    position: absolute; 
    top: -40px; 
    right: 0; 
    color: white; 
    font-size: 40px; 
    cursor: pointer;
    z-index: 2;
}
.sbws-adv-prev, 
.sbws-adv-next {
    position: absolute; 
    top: 50%; 
    transform: translateY(-50%);
    background: rgba(0,0,0,0.5); 
    color: white; 
    border: none; 
    font-size: 30px; 
    padding: 15px; 
    cursor: pointer;
    border-radius: 4px;
    z-index: 2;
}
.sbws-adv-prev:hover, .sbws-adv-next:hover { background: rgba(0,0,0,0.8); }
.sbws-adv-prev { left: 10px; }
.sbws-adv-next { right: 10px; }


/* =========================================================
   AUCTION ITEM DETAILS TABLE (Desktop)
   ========================================================= */


/* "More Images" Plus Icon */
.sbws-adv-more-icon {
    position: absolute;
    bottom: 12px;
    right: 12px;
    width: 65px;
    height: 65px;
    background-color: rgba(0, 0, 0, 0.75);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    pointer-events: none; /* Ensures clicking it actually clicks the image underneath */
    box-shadow: 0 2px 6px rgba(0,0,0,0.3);
    z-index: 5;
}
                          



/* =========================================================
   AUCTION PAGE: SIDEBAR FILTERS + ITEM TILE GRID
   ========================================================= */

.sbws-auction-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start;
}

@media (min-width: 900px) {
    .sbws-auction-layout {
        grid-template-columns: 240px minmax(0, 1fr);
        gap: 32px;
    }
    .sbws-auction-sidebar {
        position: sticky;
        top: 24px;
    }
}

.sbws-auction-sidebar {
    background: #ffffff;
    border: 1px solid #c5c5c5;
    border-radius: 0;
    padding: 20px;
}

.sbws-auction-filters {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.sbws-filter-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    border: 0;
    margin: 0;
    padding: 0;
    min-width: 0;
}

.sbws-filter-heading {
    font-family: "Antic Slab", sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #000000;
    padding: 0;
    margin-bottom: 4px;
}

.sbws-search-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sbws-auction-filters input[type=search],
.sbws-auction-filters select {
    width: 100%;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #000000;
    border-radius: 3px;
    background-color: #ffffff;
    color: #000000;
    box-sizing: border-box;
}

.sbws-auction-filters .sbws-search-submit {
    height: 40px;
    border: 1px solid #0a350d;
    border-radius: 3px;
    background-color: #0a350d;
    color: #ffffff;
    font-weight: 600;
    cursor: pointer;
}

.sbws-auction-filters .sbws-search-submit:hover {
    background-color: #e9e9e9;
    color: #0a350d;
}

.sbws-filter-option {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    color: #333333;
    cursor: pointer;
    line-height: 1.3;
}

.sbws-filter-option input {
    margin: 0;
    accent-color: #0a350d;
    flex-shrink: 0;
}

.sbws-filter-option:hover span {
    color: #0a350d;
    text-decoration: underline;
}

.sbws-filter-subgroup {
    padding-left: 12px;
    border-left: 2px solid #0a350d;
}

.sbws-auction-filters .sbws-filter-clear {
    font-size: 14px;
    color: #0a350d;
    text-decoration: underline;
}

.sbws-auction-results {
    min-width: 0;
}

.sbws-no-results {
    padding: 40px 0;
    text-align: center;
    color: #555555;
}

/* Tile grid: 1 / 2 / 3 / 4 columns */
.all-items-wrapper.sbws-tile-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    padding-bottom: 60px;
}

@media (min-width: 560px) {
    .all-items-wrapper.sbws-tile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 1000px) {
    .all-items-wrapper.sbws-tile-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 1200px) {
    .all-items-wrapper.sbws-tile-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* Tile */
.sbws-item-tile {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 520px;
    background: #ffffff;
    border: 1px solid #c5c5c5;
    border-radius: 0;
    overflow: hidden;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.sbws-item-tile:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

.sbws-tile-image {
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #f2f2f2;
}

/* Title card drawn in place of a missing featured image: the title on the
   category colour, and the category on a darker band of it below. The same
   rules are in admin/css for the auction builder's thumbnails. */
.sbws-title-card {
    display: grid;
    grid-template-rows: 62fr 38fr;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: var(--sbws-card);
    background: linear-gradient(to bottom,
        var(--sbws-card) 62%,
        color-mix(in srgb, var(--sbws-card) 72%, #000000) 62%);
    color: var(--sbws-card-text);
    box-sizing: border-box;
    /* Lets the text size itself to the card's width (cqi units). */
    container-type: inline-size;
}

.sbws-title-card-title {
    align-self: end;
    padding: 0 7cqi 4cqi;
    font-size: clamp(15px, 8.5cqi, 34px);
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.01em;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    overflow-wrap: anywhere;
}

.sbws-title-card-category {
    align-self: start;
    padding: 4cqi 7cqi 0;
    font-size: clamp(11px, 5cqi, 18px);
    font-weight: 700;
    letter-spacing: 0.04em;
    opacity: 0.9;
}

.sbws-adv-left-card {
    cursor: default;
}

/* Scoped to the tile so theme and Elementor rules such as ".elementor img { height: auto }" don't shrink it. */
.sbws-item-tile .sbws-tile-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: scale 0.6s ease;
}

.sbws-item-tile:hover .sbws-tile-image img {
    scale: 1.06;
}

.sbws-item-tile .sbws-tile-video-btn {
    /* Above the tile-wide link, so it plays the video instead of opening the item. */
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 10px 12px;
    border: 0;
    border-bottom: 1px solid #c5c5c5;
    border-radius: 0;
    background: #0a350d;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.02em;
    cursor: pointer;
}

.sbws-item-tile .sbws-tile-video-btn:hover,
.sbws-item-tile .sbws-tile-video-btn:focus-visible {
    background: #14521a;
}

.sbws-tile-video-icon {
    font-size: 12px;
}

.sbws-tile-body {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
    flex: 1 1 auto;
}

.sbws-item-tile .sbws-tile-title {
    margin: 0;
    color: #000000;
    font-family: "Antic Slab", sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sbws-item-tile:hover .sbws-tile-title {
    color: #0a350d;
}

.sbws-tile-specs {
    display: flex;
    flex-direction: column;
    margin: 0;
    border-top: 1px solid #eeeeee;
}

.sbws-tile-spec {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 6px 0;
    border-bottom: 1px solid #eeeeee;
    font-size: 14px;
}

.sbws-tile-spec dt {
    font-weight: 700;
    color: #555555;
    white-space: nowrap;
}

.sbws-tile-spec dd {
    margin: 0;
    color: #000000;
    text-align: right;
    overflow-wrap: anywhere;
}

.sbws-item-tile .sbws-tile-desc {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
    color: #444444;
    /* At most 4 lines, ending in "..." */
    display: -webkit-box;
    -webkit-line-clamp: 4;
    line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sbws-tile-countdown {
    display: flex;
    justify-content: center;
    align-items: baseline;
    gap: 6px;
    margin-top: auto;
    padding: 8px 12px;
    background: #f4f7f4;
    border-top: 1px solid #e1e8e1;
    font-size: 14px;
    white-space: nowrap;
}

.sbws-tile-countdown-label {
    font-weight: 700;
    color: #000000;
}

.sbws-tile-countdown-value {
    color: #0a350d;
}

/* The dark strip at the foot of every tile; its ::after makes the whole tile the link. */
.sbws-item-tile .sbws-tile-link {
    display: block;
    padding: 12px 16px;
    background: #0a350d;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.sbws-tile-link::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

.sbws-item-tile:hover .sbws-tile-link,
.sbws-item-tile .sbws-tile-link:focus-visible {
    background: #051c07;
    color: #ffffff;
    text-decoration: none;
}

.sbws-item-tile .sbws-tile-link:focus-visible {
    outline: none;
}

.sbws-item-tile:has(.sbws-tile-link:focus-visible) {
    outline: 3px solid #0a350d;
    outline-offset: 2px;
}

/* Category filters: a chosen one is ticked, and clicking it again clears it. */
.sbws-auction-filters .sbws-filter-link {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    line-height: 1.3;
    color: #333333;
    text-decoration: none;
}

.sbws-filter-link::before {
    content: "";
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    border: 1px solid #0a350d;
    border-radius: 3px;
    background: #ffffff;
    box-sizing: border-box;
}

.sbws-auction-filters .sbws-filter-link.is-selected {
    color: #0a350d;
    font-weight: 700;
}

.sbws-filter-link.is-selected::before {
    background: #0a350d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") center / 12px no-repeat;
}

.sbws-auction-filters .sbws-filter-link:hover {
    color: #0a350d;
    text-decoration: underline;
}

/* Pagination bar above the items */
.sbws-page-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 20px;
    margin-bottom: 20px;
    padding: 10px 16px;
    background: #ffffff;
    border: 1px solid #c5c5c5;
    border-radius: 0;
    font-size: 15px;
    color: #333333;
}

.sbws-page-bar .sbws-page-size {
    width: auto;
    max-width: 100%;
    height: 38px;
    padding: 0 10px;
    border: 1px solid #000000;
    border-radius: 3px;
    background: #ffffff;
    color: #000000;
}

.sbws-page-nav {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sbws-page-count {
    margin-right: 4px;
    white-space: nowrap;
}

.sbws-page-bar .sbws-page-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 3px;
    background: #0a350d;
    color: #ffffff;
    font-size: 24px;
    line-height: 1;
    text-decoration: none;
}

.sbws-page-bar .sbws-page-arrow:hover {
    background: #051c07;
    color: #ffffff;
}

.sbws-page-bar .sbws-page-arrow.is-disabled {
    background: #e9e9e9;
    color: #9a9a9a;
}

.sbws-page-total {
    white-space: nowrap;
}

/* Tile video modal */
.sbws-tile-video-modal {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 100000;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgba(0, 0, 0, 0.8);
}

.sbws-tile-video-modal.is-open {
    display: flex;
}

.sbws-tile-video-inner {
    position: relative;
    width: 100%;
    max-width: 960px;
}

.sbws-tile-video-frame {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    max-height: 85vh;
    background: #000000;
}

.sbws-tile-video-frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.sbws-tile-video-inner video {
    display: block;
    width: 100%;
    max-height: 85vh;
    background: #000000;
}

.sbws-tile-video-modal .sbws-tile-video-close {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    position: absolute;
    top: -44px;
    right: 0;
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}

.sbws-tile-video-modal .sbws-tile-video-close:hover,
.sbws-tile-video-modal .sbws-tile-video-close:focus {
    background: rgba(255, 255, 255, 0.3);
}


/* =========================================================
   AUCTION DETAILS  [sbws_auction_details]
   ========================================================= */

.sbws-auction-details {
    margin-top: 24px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 28px;
    padding: 20px;
    background: #ffffff;
    border: 1px solid #c5c5c5;
    color: #333333;
    font-size: 15px;
    line-height: 1.5;
}

@media (min-width: 900px) {
    .sbws-auction-details {
        grid-template-columns: 200px minmax(0, 1fr) 220px;
        gap: 32px;
        padding: 24px;
    }
}

.sbws-ad-image img {
    display: block;
    width: 100%;
    max-height: 170px;
    object-fit: contain;
}

.sbws-ad-label {
    margin-bottom: 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #000000;
}

.sbws-ad-address {
    margin-top: 16px;
}

.sbws-ad-type {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 16px;
    font-size: 16px;
    font-weight: 700;
    color: #0a350d;
}

.sbws-ad-type + .sbws-ad-address {
    margin-top: 12px;
}

.sbws-auction-details .sbws-ad-address a {
    display: flex;
    flex-direction: column;
    color: #333333;
    text-decoration: none;
}

.sbws-auction-details .sbws-ad-address a:hover .sbws-ad-map-link {
    text-decoration: underline;
}

.sbws-ad-map-link {
    margin-top: 4px;
    font-size: 14px;
    font-weight: 600;
    color: #0a350d;
}

.sbws-auction-details .sbws-ad-title {
    margin: 0 0 8px;
    font-family: "Antic Slab", sans-serif;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.25;
    color: #000000;
}

.sbws-ad-desc p {
    margin: 0 0 10px;
}

.sbws-ad-dates {
    margin: 14px 0;
}

.sbws-ad-date {
    font-size: 16px;
    font-weight: 600;
    color: #0a350d;
}

.sbws-auction-details .sbws-ad-money {
    width: auto;
    margin: 0;
    border: 0;
    border-collapse: collapse;
}

.sbws-auction-details .sbws-ad-money th,
.sbws-auction-details .sbws-ad-money td {
    padding: 6px 24px 6px 0;
    border: 0;
    border-top: 1px solid #eeeeee;
    background: none;
    text-align: left;
    vertical-align: top;
}

.sbws-auction-details .sbws-ad-money th {
    font-weight: 700;
    color: #555555;
    white-space: nowrap;
}

.sbws-ad-actions ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Buttons and links on the right all look like plain green links. */
.sbws-auction-details .sbws-ad-link {
    display: inline;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    color: #0a350d;
    font: inherit;
    font-weight: 600;
    text-align: left;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

.sbws-auction-details .sbws-ad-link:hover,
.sbws-auction-details .sbws-ad-link:focus {
    background: none;
    color: #051c07;
}

.sbws-ad-calendar summary {
    list-style: none;
}

.sbws-ad-calendar summary::-webkit-details-marker {
    display: none;
}

.sbws-ad-calendar summary::after {
    content: " \25BE";
    text-decoration: none;
}

.sbws-ad-calendar ul {
    gap: 6px;
    margin-top: 8px;
    padding-left: 12px;
    border-left: 2px solid #0a350d;
}

.sbws-ad-calendar a {
    color: #333333;
    font-size: 14px;
}

/* "Show more" only exists on phones. */
.sbws-auction-details .sbws-ad-more {
    display: none;
}

@media (max-width: 899px) {
    .sbws-auction-details .sbws-ad-extra {
        display: none;
    }

    .sbws-auction-details.is-expanded .sbws-ad-extra {
        display: block;
    }

    .sbws-auction-details.is-expanded table.sbws-ad-money {
        display: table;
    }

    .sbws-auction-details .sbws-ad-more {
        display: block;
        width: 100%;
        height: 40px;
        border: 1px solid #0a350d;
        border-radius: 0;
        background: #ffffff;
        color: #0a350d;
        font-weight: 600;
        cursor: pointer;
    }

    .sbws-ad-image img {
        max-height: 220px;
        margin: 0 auto;
    }
}

/* Terms / important information modal */
.sbws-dialog {
    width: min(760px, calc(100vw - 32px));
    max-height: calc(100vh - 64px);
    padding: 0;
    border: 0;
    border-radius: 0;
    color: #333333;
}

.sbws-dialog::backdrop {
    background: rgba(0, 0, 0, 0.7);
}

.sbws-dialog-head {
    position: sticky;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 20px;
    background: #0a350d;
    color: #ffffff;
}

.sbws-dialog-head h2 {
    margin: 0;
    font-family: "Antic Slab", sans-serif;
    font-size: 20px;
    color: #ffffff;
}

.sbws-dialog .sbws-dialog-close {
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.sbws-dialog .sbws-dialog-close:hover,
.sbws-dialog .sbws-dialog-close:focus {
    background: rgba(255, 255, 255, 0.3);
}

.sbws-dialog-body {
    padding: 20px;
    line-height: 1.6;
}


/* =========================================================
   ITEM PAGE: back bar, heading, details
   ========================================================= */

.sbws-back-bar {
    margin: 24px 0 20px;
    padding: 12px 16px;
    background: #f4f7f4;
    border: 1px solid #e1e8e1;
    border-left: 4px solid #0a350d;
}

.sbws-back-bar .sbws-back-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0a350d;
    font-size: 15px;
    text-decoration: none;
}

.sbws-back-bar .sbws-back-link strong {
    font-weight: 700;
}

.sbws-back-bar .sbws-back-link:hover span,
.sbws-back-bar .sbws-back-link:focus span {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.sbws-auction-details .sbws-ad-title a {
    color: inherit;
    text-decoration: none;
}

.sbws-auction-details .sbws-ad-title a:hover {
    color: #0a350d;
    text-decoration: underline;
}

.sbws-item-heading {
    margin: 8px 0 20px;
}

.sbws-item-heading-category {
    margin-bottom: 4px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #0a350d;
}

.sbws-item-heading .sbws-item-heading-title {
    margin: 0;
    font-family: "Antic Slab", sans-serif;
    font-size: clamp(26px, 4vw, 38px);
    font-weight: 700;
    line-height: 1.15;
    color: #000000;
}

.sbws-item-heading-sub {
    margin-top: 6px;
    font-size: 17px;
    color: #555555;
}

.sbws-item-details {
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
    margin: 28px 0;
    padding: 20px;
    background: #ffffff;
    border: 1px solid #c5c5c5;
    color: #333333;
}

@media (min-width: 900px) {
    .sbws-item-details {
        grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
        gap: 40px;
        padding: 28px;
    }
}

.sbws-item-details .sbws-item-details-heading,
.sbws-item-overview .sbws-item-details-heading {
    margin: 0 0 12px;
    padding-bottom: 10px;
    border-bottom: 3px solid #0a350d;
    font-family: "Antic Slab", sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #000000;
}

.sbws-item-details .sbws-item-spec-list,
.sbws-item-overview .sbws-item-spec-list {
    margin: 0;
}

.sbws-item-spec {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 0;
    border-bottom: 1px solid #eeeeee;
    font-size: 15px;
}

.sbws-item-spec dt {
    font-weight: 700;
    color: #555555;
    white-space: nowrap;
}

.sbws-item-spec dd {
    margin: 0;
    color: #000000;
    text-align: right;
    overflow-wrap: anywhere;
}

.sbws-item-desc-body {
    font-size: 16px;
    line-height: 1.65;
}

.sbws-item-desc-body p {
    margin: 0 0 14px;
}


/* =========================================================
   ITEM PAGE OVERVIEW  [sbws_item_overview]
   Photos left, details right, description full width below.
   ========================================================= */

.sbws-item-overview {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    margin: 0 0 32px;
}

@media (min-width: 900px) {
    .sbws-item-overview {
        /* Photos 40%, details 60%. */
        grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
        gap: 32px;
        align-items: start;
    }

    .sbws-item-overview .sbws-item-details-desc {
        grid-column: 1 / -1;
    }
}

.sbws-item-overview .sbws-item-details-specs,
.sbws-item-overview .sbws-item-details-desc {
    padding: 20px 24px;
    background: #ffffff;
    border: 1px solid #c5c5c5;
    color: #333333;
}

/* Main picture and thumbnails are buttons; clear the theme's button look. */
.sbws-gallery .sbws-gallery-main,
.sbws-gallery .sbws-gallery-thumb {
    display: block;
    position: relative;
    width: 100%;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: #f2f2f2;
    overflow: hidden;
    cursor: zoom-in;
}

.sbws-gallery .sbws-gallery-main-card {
    cursor: default;
}

.sbws-gallery .sbws-gallery-main img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    object-fit: cover;
}

.sbws-gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    margin-top: 8px;
}

.sbws-gallery .sbws-gallery-thumb {
    aspect-ratio: 4 / 3;
}

.sbws-gallery .sbws-gallery-thumb.is-video {
    cursor: pointer;
}

.sbws-gallery .sbws-gallery-thumb img,
.sbws-gallery .sbws-gallery-thumb video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.2s ease;
}

.sbws-gallery .sbws-gallery-main:hover img,
.sbws-gallery .sbws-gallery-thumb:hover img,
.sbws-gallery .sbws-gallery-thumb:hover video {
    opacity: 0.85;
}

.sbws-gallery .sbws-gallery-main:focus-visible,
.sbws-gallery .sbws-gallery-thumb:focus-visible {
    outline: 3px solid #0a350d;
    outline-offset: 2px;
}

.sbws-gallery-play {
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.65);
    color: #ffffff;
    font-size: 13px;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.sbws-gallery-more {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.55);
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    pointer-events: none;
}


/* =========================================================
   UPCOMING AUCTIONS  [sbws_upcoming_auctions]
   Matches the homepage's former Elementor loop: a calendar
   date block beside the auction's text and a red button.
   ========================================================= */

.sbws-upcoming {
    display: flex;
    flex-direction: column;
}

.sbws-upcoming-row {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 20px;
    padding: 30px 0;
    border-bottom: 1px solid #000000;
    font-family: "Antic Slab", serif;
    color: #333333;
}

@media (min-width: 768px) {
    .sbws-upcoming-row {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
        justify-items: stretch;
        /* The calendar lines up with the top of the auction's text. */
        align-items: start;
        gap: 35px;
    }

    .sbws-upcoming .sbws-upcoming-date {
        justify-self: end;
    }
}

.sbws-upcoming .sbws-upcoming-date {
    display: flex;
    flex-direction: column;
    width: 165px;
    height: 165px;
    overflow: hidden;
    border: 1px solid #f2f2f2;
    border-radius: 16px;
    box-shadow: inset -12px 0 5px 0 rgba(113, 113, 113, 0.25), 0 6px 14px rgba(0, 0, 0, 0.12);
    text-decoration: none;
    transition: transform 0.4s ease;
}

.sbws-upcoming .sbws-upcoming-date:hover {
    transform: scale(1.06);
}

.sbws-upcoming-month,
.sbws-upcoming-day {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Roboto", sans-serif;
    font-weight: 700;
}

.sbws-upcoming-month {
    height: 33%;
    background: #d3312e;
    color: #ffffff;
    font-size: 32px;
}

.sbws-upcoming-day {
    flex: 1;
    background: #ffffff;
    color: #000000;
    font-size: 72px;
    line-height: 1;
}

.sbws-upcoming-body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    max-width: 560px;
}

.sbws-upcoming .sbws-auction-datetime {
    margin: 0;
    font-size: 22px;
    font-weight: 700;
    color: #000000;
}

.sbws-upcoming .sbws-upcoming-title {
    margin: 0;
    font-family: "Antic Slab", serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.1;
}

.sbws-upcoming .sbws-upcoming-title a {
    color: #000000;
    text-decoration: none;
}

.sbws-upcoming .sbws-upcoming-title a:hover {
    text-decoration: underline;
}

.sbws-upcoming-desc {
    font-size: 17px;
    line-height: 1.5;
}

.sbws-upcoming-desc p {
    margin: 0 0 6px;
}

.sbws-upcoming .sbws-upcoming-button {
    display: inline-block;
    margin-top: 8px;
    padding: 5px 25px;
    border-radius: 5px;
    background: linear-gradient(180deg, #d3312e 0%, #f44336 100%);
    color: #ffffff;
    font-family: "PT Sans", sans-serif;
    font-size: 14px;
    line-height: 34px;
    text-decoration: none;
}

.sbws-upcoming .sbws-upcoming-button:hover,
.sbws-upcoming .sbws-upcoming-button:focus {
    background: linear-gradient(180deg, #f44336 0%, #d3312e 100%);
    color: #ffffff;
}

.sbws-upcoming-empty {
    padding: 30px 0;
    text-align: center;
    font-size: 18px;
}

@media (max-width: 767px) {
    .sbws-upcoming-body {
        align-items: center;
        text-align: center;
    }
}


/* Upcoming auctions in a menu: title over a smaller date. The dropdown
   itself is the theme's or Elementor's own submenu. */
.sbws-menu-auction .sbws-menu-auction-title,
.sbws-upcoming-menu-list .sbws-menu-auction-title {
    display: block;
    font-weight: 700;
    line-height: 1.3;
}

.sbws-menu-auction .sbws-menu-auction-date,
.sbws-upcoming-menu-list .sbws-menu-auction-date {
    display: block;
    font-size: 0.85em;
    font-weight: 400;
    opacity: 0.85;
}

.sbws-menu-auction > a,
.elementor-nav-menu .sbws-menu-auction > a {
    /* Elementor lays menu links out in a row; stack the title over the date. */
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    white-space: normal;
}

.sbws-upcoming-menu-list ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sbws-upcoming-menu-list li {
    padding: 8px 0;
    border-bottom: 1px solid #eeeeee;
}

.sbws-upcoming-menu-list a {
    color: inherit;
    text-decoration: none;
}


/* The Upcoming Auctions menu item as a red button in the desktop menu. The
   !important colours beat Elementor's per-widget hover and active colours,
   which are written with much longer selectors. */
.elementor-nav-menu--main .sbws-upcoming-menu-button,
.site-navigation .sbws-upcoming-menu-button {
    border-radius: 3px;
    background-image: linear-gradient(180deg, #d3312e 0%, #f44336 100%);
}

.elementor-nav-menu--main .sbws-upcoming-menu-button:hover,
.site-navigation .sbws-upcoming-menu-button:hover {
    background-image: linear-gradient(180deg, #f44336 0%, #d3312e 100%);
}

.elementor-nav-menu--main .sbws-upcoming-menu-button > a,
.elementor-nav-menu--main .sbws-upcoming-menu-button > a:hover,
.elementor-nav-menu--main .sbws-upcoming-menu-button > a:focus,
.elementor-nav-menu--main .sbws-upcoming-menu-button > a.elementor-item-active,
.elementor-nav-menu--main .sbws-upcoming-menu-button > a.highlighted,
.site-navigation .sbws-upcoming-menu-button > a {
    color: #ffffff !important;
    fill: #ffffff !important;
    font-weight: 600;
}

/* Elementor's hover pointer lines sit oddly on a button. */
.elementor-nav-menu--main .sbws-upcoming-menu-button > a::before,
.elementor-nav-menu--main .sbws-upcoming-menu-button > a::after {
    display: none !important;
}

/* The same item in Elementor's mobile dropdown: red, like the desktop button,
   instead of white text on the dropdown's see-through background. Only when
   it is not hovered or focused, so the menu's own hover colours still apply.
   !important beats the per-widget colours Elementor writes for the dropdown. */
.elementor-nav-menu--dropdown .sbws-upcoming-menu-button > a:not(:hover):not(:focus) {
    background-color: #d3312e !important;
    background-image: linear-gradient(180deg, #d3312e 0%, #f44336 100%) !important;
    color: #ffffff !important;
    fill: #ffffff !important;
}

.elementor-nav-menu--dropdown .sbws-upcoming-menu-button > a {
    font-weight: 600;
}


/* 50px above the first section of auction and item pages (WordPress adds the
   single-<post type> body classes). An auction page opens with its details;
   an item page with the back bar, and its details follow at the usual gap. */
.single-auction .sbws-auction-details:first-child,
.single-auction .sbws-auction-details:first-of-type {
    margin-top: 50px;
}

.single-auction_item .sbws-back-bar {
    margin-top: 50px;
}


/* Countdown and start time at the top of the item details panel. */
.sbws-item-when {
    margin: 0 0 22px;
}

.sbws-item-details-specs .sbws-item-countdown {
    justify-content: flex-start;
    margin: 0 0 14px;
    padding: 12px 16px;
    border: 1px solid #e1e8e1;
    border-left: 4px solid #0a350d;
    font-size: 17px;
    white-space: normal;
}

.sbws-item-start {
    margin-bottom: 6px;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 8px;
}

.sbws-item-start .sbws-ad-label {
    margin: 0;
}

.sbws-item-start-value {
    font-size: 17px;
    font-weight: 600;
    color: #0a350d;
}


/* =========================================================
   AUCTION TABS  [sbws_auction_tabs]
   ========================================================= */

.sbws-auction-tabs {
    margin: 0 0 32px;
}

.sbws-tabs-list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    border-bottom: 3px solid #0a350d;
}

.sbws-auction-tabs .sbws-tab {
    margin: 0;
    padding: 12px 20px;
    border: 1px solid #c5c5c5;
    border-bottom: 0;
    border-radius: 0;
    background: #f4f7f4;
    color: #0a350d;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
}

.sbws-auction-tabs .sbws-tab:hover,
.sbws-auction-tabs .sbws-tab:focus {
    background: #e6eee6;
    color: #0a350d;
}

.sbws-auction-tabs .sbws-tab[aria-selected="true"] {
    border-color: #0a350d;
    background: #0a350d;
    color: #ffffff;
}

.sbws-auction-tabs .sbws-tab:focus-visible {
    outline: 3px solid #0a350d;
    outline-offset: 2px;
}

.sbws-tab-panel {
    padding: 24px;
    background: #ffffff;
    border: 1px solid #c5c5c5;
    border-top: 0;
    color: #333333;
}

.sbws-tab-panel:focus-visible {
    outline: 2px solid #0a350d;
    outline-offset: -2px;
}

/* The details section sits inside the panel's own frame. */
.sbws-tab-panel .sbws-auction-details {
    margin: 0;
    padding: 0;
    border: 0;
}

.sbws-tab-text {
    max-width: 860px;
    font-size: 16px;
    line-height: 1.65;
}

.sbws-tab-text p {
    margin: 0 0 14px;
}

@media (max-width: 899px) {
    .sbws-auction-details.sbws-ad-nofold .sbws-ad-extra {
        display: block;
    }

    .sbws-auction-details.sbws-ad-nofold table.sbws-ad-money {
        display: table;
    }

    .sbws-auction-tabs .sbws-tab {
        flex: 1 1 auto;
        padding: 10px 12px;
        font-size: 14px;
    }

    .sbws-tab-panel {
        padding: 18px;
    }
}


/* =========================================================
   ITEM PAGE GALLERY: big picture with arrows, thumbnail row
   ========================================================= */

.sbws-stage {
    position: relative;
}

.sbws-stage-frame {
    position: relative;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #f2f2f2;
}

.sbws-stage-frame.sbws-adv-trigger {
    cursor: zoom-in;
}

.sbws-stage-frame:focus-visible {
    outline: 3px solid #0a350d;
    outline-offset: 2px;
}

.sbws-slide {
    position: absolute;
    inset: 0;
    transition: transform 0.4s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.4s ease;
}

.sbws-slide.from-right { transform: translateX(8%); opacity: 0; }
.sbws-slide.from-left  { transform: translateX(-8%); opacity: 0; }
.sbws-slide.to-left    { transform: translateX(-8%); opacity: 0; }
.sbws-slide.to-right   { transform: translateX(8%); opacity: 0; }

.sbws-slide img,
.sbws-slide video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* YouTube's large still has black bars above and below; scaling crops them. */
.sbws-slide img.is-youtube {
    transform: scale(1.34);
}

.sbws-slide .sbws-title-card {
    height: 100%;
}

/* Keep the card's text clear of the arrows on either side. */
.sbws-slide .sbws-title-card-title,
.sbws-slide .sbws-title-card-category {
    padding-left: 64px;
    padding-right: 64px;
}

.sbws-stage-play {
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.65);
    color: #ffffff;
    font-size: 24px;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.sbws-stage .sbws-stage-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0 0 4px;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.55);
    color: #ffffff;
    font-size: 32px;
    line-height: 1;
    transform: translateY(-50%);
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.sbws-stage .sbws-stage-arrow:hover,
.sbws-stage .sbws-stage-arrow:focus-visible {
    background: #0a350d;
    color: #ffffff;
    transform: translateY(-50%) scale(1.08);
}

.sbws-stage-prev { left: 10px; }
.sbws-stage-next { right: 10px; }

.sbws-stage-count {
    position: absolute;
    right: 10px;
    bottom: 10px;
    z-index: 2;
    padding: 3px 9px;
    background: rgba(0, 0, 0, 0.6);
    color: #ffffff;
    font-size: 13px;
    font-weight: 600;
    pointer-events: none;
}

/* The thumbnail row scrolls sideways; five show at a time. */
.sbws-gallery .sbws-gallery-thumbs {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    overflow-x: auto;
    /* No scroll snapping: it can pull the row back after the script scrolls
       it to the chosen thumbnail. */
    scrollbar-width: thin;
    padding-bottom: 4px;
}

.sbws-gallery .sbws-gallery-thumbs .sbws-gallery-thumb {
    flex: 0 0 calc((100% - 32px) / 5);
    cursor: pointer;
    opacity: 0.6;
    outline: 3px solid transparent;
    outline-offset: -3px;
    transition: opacity 0.25s ease, outline-color 0.25s ease;
}

.sbws-gallery .sbws-gallery-thumbs .sbws-gallery-thumb:hover {
    opacity: 0.9;
}

.sbws-gallery .sbws-gallery-thumbs .sbws-gallery-thumb.is-selected {
    opacity: 1;
    outline-color: #0a350d;
}

.sbws-gallery .sbws-gallery-thumbs .sbws-gallery-thumb img,
.sbws-gallery .sbws-gallery-thumbs .sbws-gallery-thumb video {
    opacity: 1;
}

.sbws-gallery-thumb .sbws-title-card-thumb {
    height: 100%;
}

/* Too small for the card's usual text: a short title and no category. */
.sbws-title-card-thumb .sbws-title-card-title {
    padding: 0 6px 3px;
    font-size: 10px;
    -webkit-line-clamp: 2;
}

.sbws-title-card-thumb .sbws-title-card-category {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .sbws-slide,
    .sbws-gallery .sbws-gallery-thumbs .sbws-gallery-thumb,
    .sbws-stage .sbws-stage-arrow {
        transition: none;
    }
}


/* Item details list: compact rows, label then value, both left aligned. */
.sbws-item-details-specs .sbws-item-spec {
    display: grid;
    grid-template-columns: minmax(120px, 38%) 1fr;
    justify-content: start;
    gap: 12px;
    padding: 6px 0;
}

.sbws-item-details-specs .sbws-item-spec dd {
    text-align: left;
}

.sbws-item-overview .sbws-item-details-specs .sbws-item-details-heading {
    margin-bottom: 6px;
}


/* Green band with the item's name across the top of the details panel. */
.sbws-item-details-specs .sbws-item-banner {
    margin: -20px -24px 16px;
    padding: 18px 24px;
    background: #0a350d;
    color: #ffffff;
}

.sbws-item-details-specs .sbws-item-banner-title {
    margin: 0;
    font-family: "Antic Slab", sans-serif;
    font-size: clamp(24px, 3vw, 32px);
    font-weight: 700;
    line-height: 1.15;
    color: #ffffff;
}

.sbws-item-banner-sub {
    margin-top: 6px;
    font-size: 17px;
    color: rgba(255, 255, 255, 0.85);
}

.sbws-item-category {
    margin-bottom: 14px;
}


/* Back bar: previous item, back to the auction, next item. */
.sbws-back-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.sbws-back-bar .sbws-back-link {
    flex: 1 1 auto;
    justify-content: center;
    min-width: 0;
    text-align: center;
}

.sbws-back-bar .sbws-item-step {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    padding: 6px 12px;
    background: #0a350d;
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 0.2s ease;
}

.sbws-back-bar a.sbws-item-step:hover,
.sbws-back-bar a.sbws-item-step:focus-visible {
    background: #051c07;
    color: #ffffff;
}

.sbws-back-bar .sbws-item-step.is-disabled {
    background: #e9e9e9;
    color: #9a9a9a;
}

@media (max-width: 600px) {
    .sbws-step-word {
        display: none;
    }

    .sbws-back-bar .sbws-back-link {
        font-size: 14px;
    }
}

/* Category links in the item details panel. */
.sbws-item-category a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.sbws-item-category a:hover {
    color: #051c07;
}

/* Where the item's category links land on the auction page. */
#sbws-auction-items {
    scroll-margin-top: 20px;
}


/* [sbws_upcoming_auctions_details]: auction details sections, one per auction. */
.sbws-upcoming-details .sbws-auction-details {
    margin: 0 0 24px;
}

.sbws-auction-details .sbws-ad-view {
    display: inline-block;
    margin-bottom: 16px;
    padding: 10px 18px;
    background: #0a350d;
    color: #ffffff;
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.sbws-auction-details .sbws-ad-view:hover,
.sbws-auction-details .sbws-ad-view:focus {
    background: #051c07;
    color: #ffffff;
}

@media (max-width: 899px) {
    /* On phones the link stays visible even while the rest is folded. */
    .sbws-auction-details .sbws-ad-actions:has(.sbws-ad-view) {
        display: block;
    }

    .sbws-auction-details:not(.is-expanded) .sbws-ad-actions:has(.sbws-ad-view) ul {
        display: none;
    }
}

/* ---- Visibility (1.10.0) ---- */

/* Staff only: marks an auction, or its items, as hidden from visitors. */
.sbws-staff-badge {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 8px;
    border-radius: 999px;
    background: #fff6dc;
    color: #6b4e00;
    font-family: Roboto, sans-serif;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: none;
    vertical-align: middle;
    white-space: nowrap;
}

.sbws-staff-badge-staff {
    background: #6b4e00;
    color: #fff;
}

.sbws-menu-auction-title .sbws-staff-badge {
    margin-left: 6px;
    font-size: 11px;
}

/* Staff only: across the top of a hidden auction's or item's page. */
.sbws-staff-bar {
    padding: 10px 16px;
    background: #6b4e00;
    color: #fff;
    font-family: Roboto, sans-serif;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
}

/* Visitors, on an auction whose items are hidden. */
.sbws-items-hidden {
    margin: 20px 0;
    padding: 32px 20px;
    border: 1px solid #e1e8e1;
    background: #f4f7f4;
    text-align: center;
}

.sbws-items-hidden p {
    margin: 0;
    color: #0a350d;
    font-family: "Antic Slab", sans-serif;
    font-size: 20px;
}
