
.topper{
   /*  position: sticky;
    top:0px; */
    height:100vh;
    width: 100vw;
    position: relative;
    /* position: fixed; */
    /* top:0px; */
}

.loading-slabs{
    font-size: 26px;
    font-family: basic_1;
    text-transform: uppercase;
    color:#d7d7d7;
}

.list-hero{
    position: relative;
}

.hero-image{
    overflow: hidden;
    position: fixed;
    top:0px;
}



.hero-image img{
    width:100vw;
    height: 100vh;
    min-height: 200px;
    object-fit: cover;
    margin: 0px;      
    overflow: hidden;
    
}

.hero-video{
    position: relative;
    z-index: 01;
    position: fixed;
    top:0;
}

.hero-image video{
    width:100%;
    height: 100vh;
    /* min-height: 200px;*/
    object-fit: cover;
    margin: 0px;    
}

.hero-container{
    position: relative;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.hero-content{
    
}

.body-content{
    position: relative;
    background-color: rgba(255, 255, 255, 0);
    z-index: 100;
    margin-top:100vh;
    /* -webkit-backdrop-filter: blur(20px); 
    backdrop-filter: blur(20px);  */    
}

.blur-section{

    padding-top: 100px;
    -webkit-backdrop-filter: blur(20px); 
    backdrop-filter: blur(20px) saturate(0.8); ;

    -webkit-mask-image: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.3) 0%,
    rgba(0, 0, 0, 1) 10%
  );
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 2%);
}


.blur-section2{

    /* padding-top: 100px; */
    background-color: rgba(49, 42, 28, 0.7);
    -webkit-backdrop-filter: blur(20px); 
    backdrop-filter: blur(20px);    
}

.blur-gallery-background{    
    background-color: rgba(255, 255, 255, 0);
    -webkit-backdrop-filter: blur(20px); 
    backdrop-filter: blur(20px); 
}

.body-element{
    padding: 50px;
    background-color: transparent;
}



.new-title{
    position: absolute;
    top:-25vh;
    width: 100%;
    height:14vh;
    
    font-family: light;
    text-transform: uppercase;
    /* letter-spacing: -5px; */
    font-size: 9vw;
    color:rgb(36 36 36 / 70%);
    text-align: center;
    
    z-index:40;
    /* padding-top: 20px; */
    padding-bottom: 15px;
    
    /* content:""; */

    /* -webkit-backdrop-filter: blur(20px); 
    backdrop-filter: blur(20px) */;

    /* Gradient background (optional, depends on your needs) */
    /* background: linear-gradient(to bottom, rgba(255 255 255 / 0%) 0%, rgba(255 255 255 / 100%) 100%);    */

    /* background:url("../assets/svg/title-background.png");   */ 

    /* -webkit-mask-image: linear-gradient(
        to bottom,
        white 0%,
        transparent 100%
      );
    mask-image: linear-gradient(to bottom, rgb(0, 0, 0) 100%, transparent 0%); */

    
}

.new-body-title{
    font-family: light;
    text-transform: uppercase;
    font-size: 2vw;
    /* background-color: rgba(0, 0, 0, 0.2); */
   

    color:#282828;

    text-wrap:wrap;
    /* width: 100vw; */
    text-align: center;
    padding-top:4vw;
    padding-left: 10vw;
    padding-right: 10vw;
    overflow: hidden;

    /* -webkit-backdrop-filter: blur(20px); 
    backdrop-filter: blur(20px); */
    
}


.slabs-section-title{
    color:#565454;  
    font-size: 2.4vw;
    font-family: 'light';
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    overflow: hidden;
    height: fit-content;
    padding-top: 60px;
    padding-bottom: 20px;
    grid-column: 1 / -1;
}

.sep1{
    margin-left:35vw; 
    margin-right:35vw;   
    border: 0;               /* Reset default border */
    height: 0.3px;             /* Set thickness */
    background:#727272;
}

.quartz-properties {
    padding-top: 30px;

    width: 94vw;
    margin: 0 auto; /* Better centering */
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; /* Better item distribution */
    gap: 30px; /* Consistent spacing */
}

.quartz-prop {
    flex: 1 1 300px; /* Flex-grow, flex-shrink, min-width */
    min-width: 300px; /* Minimum width before wrapping */
    max-width: calc(30% - 20px); /* Account for gap */
    box-sizing: border-box;

    justify-content: center;
}

.prop-info {
    padding: 25px 10px;
}

.prop-title {
    
    font-family: light;
    font-size: clamp(24px, 2.5vw, 24px); /* Responsive clamp() */
    text-align: center;
    color:#d6d6d6;
    text-transform: uppercase;
}

.prop-text {
    padding-top: 20px;
    font-family: basic_1;
    font-size: clamp(12px, 2vw, 16px); 
    text-align: center;
    color:#d6d6d6;
    text-transform: uppercase;
    line-height: 1.4;
}

/* Optional: Image responsiveness */
.prop-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 5px;
}



.body-style{
    font-family: basic_1;
    text-transform: uppercase;
    font-size: 24px;
    color: rgba(86, 85, 85, 0.7);
    padding: 20px;
    padding-left: 30px;
    padding-right: 20px;
    /* letter-spacing: -1px; */

}

.body-image{
    position: relative;
    border-radius: 12px;;
    overflow: hidden;
    width: 100%;
    height: 100%;
    /* height:40vh; */

}

.body-image img{
    /* position: absolute; */
    border-radius: 12px;;
    width: 100%;
    height: 220%;
    object-fit: cover;
    bottom: 0;
}



.body-adjacent{
    display: flex;
    /* width:80%; */
}

.body-adjacent .left-side{
    width: 50%;
}

.body-adjacent .right-side{
    width: 50%;
    height:500px;
}


.full-page{
    height: 80vh;
    width:100%;
    position:relative;

}

.full-page-title{
    position: absolute;
    top:50%;
    left: 50%;
    transform: translate(-50%,-50%);
    
    
    color: rgba(0, 0, 0, 0.7);
    font-family: home-title;
    font-size: 10vw;
    overflow: hidden;
    text-transform: uppercase;
    letter-spacing: -5px;
    
}

.full-page-image{

    transform: translateX();
    position: relative;
    border-radius: 20px;;
    overflow: hidden;    
    height: 100%;
    width:100%;
}

.full-page-image img{

    border-radius: 12px;;
    width: 100%;
    height: 140%;
    object-fit: cover;
    bottom: 0;

}


.list-page-title{

    
    width: 100%;
    position: absolute;
    overflow: hidden;
    text-align: center;

   background-color: rgba(255, 255, 255, 0);    
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px) ;/* saturate(0.8) */;
    -webkit-mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3) 0%, rgb(255, 255, 255) 60%);
    mask-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 60%);
    bottom: 0px;
    /* padding-bottom: 120px; */
    /* display: flex
; */
        
}

.hero-title{
    /* width:fit-content; */
    text-transform: uppercase;
    /* padding: 20px; */
    padding-top: 40px;
    /* padding-right: 20px !important; */
    /* padding-left: 30px !important; */
    padding-bottom: 40px !important;
    text-align: center;
    user-select: none;
    /* margin-right: 15px; */
    /* position: relative; */
    font-family: light;
    font-size: 7vw;
    color: rgb(255, 255, 255);
  
}   

.list-page-text{
    font-family: light;
    text-transform: uppercase;
  
    /* position:absolute;  */
    text-align:center; 
    width:80%;
    margin-left:10%;
    color:rgb(255, 255, 255); 
    font-size: 18px; 
        
    padding: 20px;   
}

.cta{
    mix-blend-mode:hard-light;
    position: absolute; 
    /* left:10px; */ 
    /* width: 100%; */
    left: 50%;
    transform: translateX(-50%);
    bottom:10px;
    color: #ffffff;
    font-size: 18px; 
    font-family: basic_1;
    /* background-color:#7b7a76;  */
    /* padding: 12px; */

    /* -webkit-backdrop-filter: blur(8px); 
    backdrop-filter: blur(8px);  */

}

/* ------ main cheese style ------- */


.list-content{
    /* display:flex; */
    /* flex-flow: row; */
    /* margin-top: 90vh; */
    position: relative;
    /* background-color:rgba(0, 0, 0, 0.2); */
    padding:3vw;
    width: 94vw;
    overflow: hidden;
    z-index: 200;

    /* -webkit-backdrop-filter: blur(20px); 
    backdrop-filter: blur(20px);  */
   
}

.filters-container{    
    
    padding:20px;
    width:auto;
    height:auto;

    /* background: linear-gradient(
        to bottom,
        rgba(99, 98, 98, 0.95),
        rgba(87, 87, 87, 0.95)
        
    ); */

    background-color: rgba(49, 42, 28, 0.7);

    border-radius: 10px 10px 0px 0px ;
        
    font-family: basic_1;
    
    position:fixed; 
    bottom:0px;
    

    left:50%;
    transform: translateX(-50%);

    z-index: 2000;  
    
    -webkit-backdrop-filter: blur(6px); 
    backdrop-filter: blur(6px); 
    /* border-radius: 10px; */
}

.scroll {
    position: absolute;
}


.search-box{
    display: flex;
    justify-content: space-between;
    
    padding-bottom: 10px;
    /* padding-right: 5px; */
    color: #909090;
    border-bottom: 0.2px solid #9A988B;
    margin-bottom: 10px;
    margin-right: +20px;
    font-size: 15px;
}

.search-box input[type="text"]{     
        width: 200px;        
        font-size: 12px;
       
        color:#9d9c9c !important;
        border: none;
        background:none;
        font-family: basic_1;
        text-transform: uppercase;
        margin-top: 0px;            
}

.search-box input[type="text"]:focus {
    outline: none;  /* Removes the focus outline */
    color: #ffffff;
}

#searchInput::placeholder {
    font-size: 12px;
    color: #ffffff; 
    
}

.filters-title{
    display: flex; 
    justify-content: space-between;
    
    text-transform: lowercase !important;
    font-family: display-text;
    color:#0c0c0c;
    font-size: 14px;
    padding-left: 2px;
}

.filters-title img{
    height:15px;
}

.filter-groups{
    display: flex;
}

.filter-group{
    padding-right: 10px;
    /* margin-top: 15px; */
}

.filter-group-title{
    /* margin-top: 10px; */  
      
     font-size: 12px;
   /*font-family: display-text; */
    color:#a6a4a4;
    
}

.checkbox-container {
    display: flex;
    align-items: center;
    margin-top: 5px;
}

/* Style the checkbox */
.custom-checkbox {
    appearance: none;  /* Remove default styles */
    background-color: #a09c9c;
    width: 13px;
    height: 13px;
    margin-right: 7px; /* Space between checkbox and label */
    position: relative;
    cursor: pointer;
    border-radius: 2px;
}

/* Style the label */
.checkbox-label {
    color: #9b9898;
    font-size: 11px;
    text-transform: uppercase;
    
}

.thumb-label {

  display: inline-block; /* Required for transforms */
  overflow: visible !important;
  width: 100%;
  text-align: center;
  font-family: light !important;
  
  
}

.char {
  display: inline-block;
  white-space: pre; /* Preserves s  pacing */
}


.custom-checkbox:checked:before {
    content: '';
    background-image: url('../assets/svg/checkbox-x.svg');  
    background-size:110%;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    height: 120%;
    width: 120%;
}

.list-grid{
    width:100%;
    height: 100%;
    min-height: 100vh;    
    margin-top: 15px;

    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Default to three columns */
    gap: 10px; /* Space between items */    
    padding-right: 15px;
    
    justify-content: center;
   /*  justify-items: center; */
    /* overflow-x: hidden; */
}

.list-grid-duo{
    width:100%;
    height: 100%;
    min-height: 100vh;    
    margin-top: 15px;

    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Default to three columns */
    gap: 10px; /* Space between items */

    justify-content: center;
}

.thumbnail {
    /* width: 100%; */
    
    /* background-color: #f3f3f3;  */
    /* display: flex; */    
    margin-bottom: 15px;
    position: relative;
    cursor: pointer;
}

.thumb-image-container {
    position: relative;
    width: 100%;
    height:250px;
    overflow: hidden;
    border: 0.4px solid #756a6a60;
    /* box-shadow: inset 0 0 10px 5px rgba(31, 29, 29, 0.5); */

    z-index: 1000;
}

.long-thumbnail{
    height:300px !important;
}


.thumb-image-container:hover .thumb-overlay {
    opacity: 1; 
    
}

.thumb-image{
      border-radius: 3px;  
}

.thumb-image-sintered img{
    width: 100%;
    height: 100%;
    transform: scale(2);
    position: absolute;
    object-fit:fill;
    /* overflow: hidden; */
}

.thumb-image-quartz img{
    width: 100%;
    height: 100%;
    transform: scale(2);
    position: absolute;
    object-fit: cover;
    overflow: hidden;
    border-radius: 3px;
}

.thumb-image img{
   width: 100%;
    height: 100%;
    transform: scale(2);
    position: absolute;
    object-fit: cover;
    overflow: hidden;
    border-radius: 3px;
}

.thumb-overlay{
    position:absolute;
    bottom:30px;
    left:50%;
    /* right:-10px; */

    z-index: 100;
    display: none;
    width: 50%;
    
    /*height: 100%; */
    transform: translateX(-50%);
    /* padding:20px; */
    /* mix-blend-mode: difference; */
    
    background-color: rgba(49, 42, 28, 0.7);

    -webkit-backdrop-filter: blur(6px); 
    backdrop-filter: blur(6px); 

    border-radius: 2px;
    
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.2);
    filter: drop-shadow(0 3px 10px rgba(0, 0, 0, 0.5));

}

.thumb-coming-soon{
    color: #ffffff;
    font-family: light;
    font-size: 16px;
    text-transform: uppercase;
}

.thumb-overlay-name{
    color:#ffffff;
    font-family:basic_1;
    text-transform: uppercase;
    font-size: 4rem;
    text-align: center;
    display: none;
    /* text-shadow: 0 0 5px black; */
    /* text-transform: uppercase; */
}

.thumb-overlay-details {
    margin-top: 10px;
    font-family: light;
    display: flex;
    flex-wrap: wrap;
    gap: 0px 20px;
    justify-content: center;
    color: white;
    /* margin-left: -65px; */
    grid-template-columns: repeat(2, 1fr); 
    gap: 20px; 
    row-gap: 10px;
    
    border-radius: 5px;
    /* width:50%; */
    padding:10px;
}

.thumb-overlay-property{
    color:#9A988B;
}

.thumb-overlay-title{
    display:none;
    margin-top: 6px;    
    font-weight: 900;
    font-size: 12px;
    text-transform: lowercase;
    text-transform: capitalize;
    
}

.thumb-overlay-desc{    
    font-weight: 900;
    font-size: 16px;
    text-transform: uppercase;
    color:#b3afaf;
    mix-blend-mode: difference;
    /* max-width: 150px; */
}

.thumb-label{
    font-family: basic_1;
    text-transform: uppercase;
    font-size: 20px;
    
    color:#282828;
    padding-top: 10px;
    padding-left: 5px;
    text-align: center;
}

.image-display-gallery{
    width: 100vw;
    height: 100vh;
    position: fixed;
    background-color: #ffffff;
    z-index: 2000;
    display: none;

}

.main-gallery{

    position: fixed;
    top:0px;
    left: 0px;
    width:100vw;
    height:100vh;
    background-color: rgba(255,255,255,0.4);
    -webkit-backdrop-filter: blur(16px); 
    backdrop-filter: blur(16px); 
    z-index:3000;
    
}

.lay-over{
    /* background-color: #000000; */
    overflow: hidden;
    width: 100vw;
    height:100vh;
}

.image-thumb{
margin:20px;
border: #070707;
}

.image-thumb img{    
    border: 3px solid #070707;
    }

.custom-cursor {
    transition: transform 0.1s ease;
    will-change: transform;
    }
    
.custom-cursor img {
    display: block;
    transform: translate(-50%, -50%);
}


@media (max-width: 1300px) {

    .list-grid {
        grid-template-columns: repeat(3, 1fr); /* One column when width is <= 300px */
    }

    .list-grid-duo{
        grid-template-columns: repeat(2, 1fr) ;
    }
}

@media (max-width: 1000px) {
    .list-grid {
        grid-template-columns: repeat(2, 1fr); /* One column when width is <= 300px */ 
        /* padding-left: 15px;
        padding-right: 15px;
    } */
    .list-grid-duo{
        grid-template-columns: repeat(1, 1fr) !important;
    }
}

/* Media queries for responsiveness */
@media (max-width: 800px) {

    .thumb-overlay-name{
        font-size: 8vw;        

    }
    .thumb-overlay-desc{
        font-size: 5rem;
    }
    /* .thumbnail{display:none} */
    .list-grid {
        grid-template-columns: repeat(2, 1fr); /* Two columns when width is <= 500px */
    }

    .list-content{
        flex-flow: column;        
    }    

    .list-grid{
        /* padding: 10px;
        width: calc(100% - 2-px); */
    }

    .hero-title {        
        font-size: 6.5vw;
        color: white;
        text-transform: uppercase;
        /* font-weight: 900; */
        padding-left: 10px;
        /* margin-top: -45px; */
        text-shadow: 0 0 16px rgba(50, 50, 50, 0.7);
    }

    .list-page-title{
        flex-flow: column;
    }

    .new-title{
        font-size: 13.5vw;
    }
    .new-body-title{
        font-size: 5vw;
    }

    .slabs-section-title{
        font-size: 6vw;
        font-family: 'basic_1';
    }

    .properties-video-text{
        font-size: 4vw;
    }
    .quartz-prop{
        max-width: none;
    }

    .footer  .phone-link{
        font-size: 6vw;
    }

    .footer  .email-link{
        font-size: 5vw !important;
    }
    .footer a{
        font-size: 5vw;
    }
}

@media (max-width: 500px) {
    .list-grid {
        grid-template-columns: 1fr;               
    }

    .thumb-image-container{
        width: calc(100% );
    }
    .thumb-overlay{
        width:200px;
    }
    .image-thumb{
        margin-left: -40px;
    }
}}