.f-frame {
    position: static;          /* ✅ not fixed */
    bottom: auto;              /* remove bottom: 0 effect */
    flex-shrink: 0;            /* ensures it stays below content */
}

.container {
    flex: 1 0 auto;            /* ✅ fills available vertical space */
    width: 100%;
    background-color: rgb(31, 31, 31);
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* no forced centering */
    align-items: center;
}

main {
  width: 100%;
  flex: 1 0 auto;             /* ✅ ensures main can grow and scroll */
}

.lp-frame {
    width: 100%;
    height: 100%;
    border: 4px solid white;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}


.lp-frame-link {
    display: block;
    width: 28%;
    aspect-ratio: 1 / 1;
    text-decoration: none;
    color: inherit;
}

.lp-frame-link:hover .lp-img {
    opacity: 0.25;
}

.lp-frame-link:hover .lp-desc {
    opacity: 1;
}


.lp-wrapper {
    display: flex;
    justify-content: center;  
    align-items: center;     
    flex-direction: column;
    display: grid;           
    width: 100%;
    height: 100%;
    position: relative;       
}

.lp-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;              
    transition: opacity 0.5s ease;
}

.lp-desc {
    text-align: center;
    color: rgb(213, 213, 213);
    z-index: 2;             
    opacity: 0;
    transition: opacity 0.5s ease;
}

.lp-wrapper:hover .lp-img {
    opacity: 0.25;
}

.lp-wrapper:hover .lp-desc {
    opacity: 1;
}

/*list.html*/
.lp-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 2%;
    flex-wrap: wrap;  
    margin: 3%;
}
.lp-img, .lp-desc, .lp-title {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.container main {
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100vh;   
  flex: 1;         
  display: flex;
  flex-direction: column;
}
.projectscontent{
  flex-direction: column;
  overflow-y: auto;
}
.search-bar {
      
  padding: 6px;
  border: 1px solid gray;
  font-size: 17px;
  width: 180px;            
}

select {
 display: block;      
  border: 2px solid gray;
  background: #eeeeee;
  padding: 10px;
  transition: 0.4s;
  width: 180px;
}

select:hover,
select:focus {
  background: #dddddd;
}

.search-row {
  display: flex;
  align-items: center;
  margin-top: 10px;
  gap: 10px;          
  justify-content: center; 
}
.ls-form{
  display:flex;display: flex;
  gap: 10px;
}
.ls-bttn{
  width: 100px;
}
.multiselect {
  position: relative;
  display: inline-block;
  width: 200px;
    font-weight: normal;
}

.selectBox {
  border: 1px solid #aaa;  
  padding: 5px 10px;       
  cursor: pointer;
  background-color: white;   
  color: black;            
  text-align: left;         
  box-sizing: border-box;
}

.checkboxes {
  height: 0;
  overflow: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  border: 1px solid #aaa;
  background-color: white;
  max-height: 300px;
  box-sizing: border-box;
  transition: height 0.3s ease;
   z-index: 9999;
}

.checkboxes.open {
  height: auto;
}


.checkboxes label {
  display: flex;        
  align-items: center;  
  padding: 5px 10px;
  white-space: nowrap;  
  cursor: pointer;
  color: black;      
  font-weight: normal;
}

.checkboxes input[type="checkbox"] {
  margin-right: 8px;     
}
