:root {
  --PFG-primary-color: #004280;      
  --PFG-secondary-color: #0C0C0C;    
  --PFG-text-color: #434447;    
  --PFG-background-color: #DFEBF7;  
  --PFG-background-gray: #F6F7F9;   
  --PFG-text-color-gray: #737B7D;         
  --PFG-accent-color: #F39800;  
  --PFG-price-color: #E57B03;  
  --PFG-link-color:#006EFF; 
  --PFG-border-color:#CFD2D5;      
}

.selection-guide_title {
  color: var(--PFG-text-color);
  display: flex;
  align-items: center;
  font-weight: 400;
}
.selection-guide_title::before{
  display: block;
  width: 3px;
  height: 38px;
  background-color: var(--PFG-accent-color);
  content: '';
  margin-right: 12px;
}

.product-filter-gallery{
  margin: 0 auto;
  padding: 56px 48px;
  max-width: 1600px;
}
@media (max-width: 992px) {
  .product-filter-gallery {
    margin: 0 auto; 
    padding: 48px 48px;
  }
}
@media (max-width: 767px) {
  .product-filter-gallery {
    margin: 0 auto; 
    padding: 0; 
  }
}
@media (max-width: 544px) {
  .product-filter-gallery {
    margin: 0 auto;
    padding: 0 ; 
  }
}
.product-filter-gallery .selection-tabs_container{
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  margin: 40px auto 60px;
}

.product-filter-gallery .selection-tabs_item{
  width: 140px;
  text-align: center;
  cursor: pointer;
  position: relative;
  margin: 10px 30px;
}
@media (max-width: 767px) {
  .selection-tabs_item::before{
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--PFG-border-color);
    z-index: -1;
    opacity: 0.5;
  }
  .selection-tabs_item::after{
    content: '';
    display: block;
    width: 1px;
    height: 60px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--PFG-border-color);
    z-index: -1;
    opacity: 0.2;
  }
}

.selection-tabs_item img{
  width: 80%;
  margin-bottom: 8px;
  background: #e8ecef;
  border-radius: 50%;
}
.selection-tabs_item h5{
  font-size: 1rem;
  color: var(--PFG-primary-color);
  margin: auto;
  overflow-wrap: break-word;
  white-space: normal;
}
.selection-tabs_item span{
  color: var(--PFG-text-color-gray);
  white-space: nowrap;
}
@media (max-width: 992px) {
  .selection-tabs_item h5{
    font-size: 0.86rem;
    letter-spacing: -0.3px;
  }
  .selection-tabs_item span{
    font-size: 0.8rem;
    letter-spacing: -0.1px;
  }
}
.tab-item_active img{
  border: var(--PFG-link-color) 3px solid;
}
.tab-item_active h5{
  color: var(--PFG-link-color);
  font-weight: 600;
}
@media (hover: hover) {
  .selection-tabs_item:hover {
    transform: scale(0.98);
    transition-duration: 0.3s;
  }
}
@media (max-width: 767px) {
  .product-filter-gallery{
    /* background-color: #fff; */
  }
  .selection-guide_title{
    padding: 24px 16px 0;
  }
  .product-filter-gallery
  .selection-tabs_container{
    margin: auto;
    overflow-x: scroll;
    scrollbar-width: none;
    background-color: var(--PFG-background-gray);
    position: sticky;
    top: 90px;
    z-index: 8;
    justify-content: left;
  }
  .product-filter-gallery
  .selection-tabs_item{
    padding: 12px 12px;
    min-width: 46vw;
    margin: 0;
    display: flex;
  }
  .selection-tabs_item img, 
  .selection-tabs_item span {
    display: none;
  }
  .tab-item_active{
    background: var(--PFG-background-color);  
    border-bottom: var(--PFG-link-color) solid 3px; 
  }
  @media (hover: hover) {
    .selection-tabs_item:hover {
      transform:none;
      background: var(--PFG-background-color);
    }
  }
}
.product-filter-gallery
.product-filter-gallery_container{
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 16px; 
}

.product-filter-gallery_filter-panel[style*="display: none"] + .product-filter-gallery_product-grid {
  grid-column: 1 / -1;
}

.product-filter-gallery
.product-filter-gallery_filter-panel{
  min-width: 220px;
  width: 20%;
  margin-right: 20px;
}
@media (max-width: 767px) {
  .product-filter-gallery
  .product-filter-gallery_container{
    display: flex;
    gap: 16px; 
    flex-wrap: wrap;
  }
  .product-filter-gallery
  .product-filter-gallery_filter-panel{
    min-width: auto;
    width: 100%;
    margin: 20px 20px 0;
  }
}
.product-filter-gallery_filter-panel
select{
  width: 100%;
  height: 32px;
  padding: 0 8px;
  border: solid 1px var(--PFG-border-color);
    border-radius: 2px;
}
select:focus {
  outline: 2px solid var(--PFG-background-color);
}
.product-filter-gallery_filter-panel
.filter-panel_header{
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 28px;
  letter-spacing: -0.72px;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}
.product-filter-gallery_filter-panel
.filter-panel_header i{
  width: 30px;
  height: 21px;
  display: inline-block;
  background-repeat: no-repeat;
  background-position-x: left;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M14.7001 16.2C15.1972 16.2 15.6001 16.6029 15.6001 17.1C15.6001 17.5971 15.1972 18 14.7001 18H9.3001C8.80304 18 8.4001 17.5971 8.4001 17.1C8.4001 16.6029 8.80304 16.2 9.3001 16.2H14.7001ZM17.1001 11.1C17.5972 11.1 18.0001 11.5029 18.0001 12C18.0001 12.4971 17.5972 12.9 17.1001 12.9H6.9001C6.40304 12.9 6.0001 12.4971 6.0001 12C6.0001 11.5029 6.40304 11.1 6.9001 11.1H17.1001ZM19.5001 6C19.9972 6 20.4001 6.40294 20.4001 6.9C20.4001 7.39706 19.9972 7.8 19.5001 7.8H4.5001C4.00304 7.8 3.6001 7.39706 3.6001 6.9C3.6001 6.40294 4.00304 6 4.5001 6H19.5001Z" fill="%23434447"/></svg>');
}
.product-filter-gallery_filter-panel
.mobile-title{
  display: none;
  padding: 16px 20px;
  align-items: center;
  gap: 16px;
  justify-content: space-between;
  border-bottom: 2px solid #CFD2D5;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 26px;
}
.product-filter-gallery_filter-panel
.mobile-title .filter-close{
  width: 32px;
  height: 32px;
  display: block;
  background-image: url('data:image/svg+xml,<svg width="14" height="15" viewBox="0 0 14 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.51116 14.2467C0.0792404 13.8147 0.0892851 13.0815 0.51116 12.6596L5.4029 7.75781L0.51116 2.86607C0.0892851 2.4442 0.0792404 1.71094 0.51116 1.27902C0.94308 0.847097 1.67634 0.857142 2.09821 1.26897L7 6.17076L11.8917 1.27902C12.3136 0.857142 13.0469 0.847097 13.4788 1.27902C13.9107 1.71094 13.9007 2.4442 13.4788 2.86607L8.58705 7.75781L13.4788 12.6596C13.9007 13.0815 13.9107 13.8147 13.4788 14.2467C13.0469 14.6786 12.3136 14.6685 11.8917 14.2467L7 9.35491L2.09821 14.2467C1.67634 14.6685 0.94308 14.6786 0.51116 14.2467Z" fill="%23434447"/></svg>');
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center;
}
.product-filter-gallery_filter-panel
.mobile-save-button{
  display: none;
  padding: 16px 24px;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  border-top: 1px solid var(--PFG-border-color);
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  width: 100%;
}
.product-filter-gallery_filter-panel
.mobile-save-button .filter-close{
  height: 40px;
  padding: 8px 16px;
  border-radius: 2px;
  background: var(--PFG-accent-color);
  width: 100%;
  color: #FFF;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0.16px;
}

@media (max-width: 767px) {
  .product-filter-gallery_filter-panel 
  .mobile-title{
    display: flex;
  }
  .product-filter-gallery_filter-panel
  .mobile-save-button{
      display: flex;
  }
  .product-filter-gallery_filter-panel
  .filter-panel_header 
  .filter-panel_title{
    background: var(--PFG-accent-color);
    color: #fff;
    width: fit-content;
    border-radius: 25px;
    padding: 4px 16px 4px 10px;
    font-size: 20px;
    letter-spacing: 0px;
  }
  .product-filter-gallery_filter-panel
  .filter-panel_header i{
    height: 19px;
    width: 26px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M14.7001 16.2C15.1972 16.2 15.6001 16.6029 15.6001 17.1C15.6001 17.5971 15.1972 18 14.7001 18H9.3001C8.80304 18 8.4001 17.5971 8.4001 17.1C8.4001 16.6029 8.80304 16.2 9.3001 16.2H14.7001ZM17.1001 11.1C17.5972 11.1 18.0001 11.5029 18.0001 12C18.0001 12.4971 17.5972 12.9 17.1001 12.9H6.9001C6.40304 12.9 6.0001 12.4971 6.0001 12C6.0001 11.5029 6.40304 11.1 6.9001 11.1H17.1001ZM19.5001 6C19.9972 6 20.4001 6.40294 20.4001 6.9C20.4001 7.39706 19.9972 7.8 19.5001 7.8H4.5001C4.00304 7.8 3.6001 7.39706 3.6001 6.9C3.6001 6.40294 4.00304 6 4.5001 6H19.5001Z" fill="%23ffffff"/></svg>');
  }
  .product-filter-gallery_filter-panel
  .filter-wrapper{
    position: fixed;
    width: 100vw;
    right: 0;
    background: #fff;
    bottom: 0;
    z-index: 999;
    display: none;
    height: calc(100vh - 90px);
  }
  .product-filter-gallery_filter-panel
  .filter-panel_items{
    padding: 10px 30px 20px;
    height: calc(100vh - 90px - 66px - 73px);
    overflow: scroll;
  }
}
.product-filter-gallery_filter-panel
.filter-panel_checkbox_options{
  width: 100%;
  border: solid 1px var(--PFG-border-color);
  border-radius: 2px;
  padding: 0 10px;
  margin-top: 10px;
}

.product-filter-gallery_filter-panel
.filter-group-title{
  color: var(--PFG-text-color);
  font-size: 16px;
  font-weight: 700;
  white-space: nowrap;
  margin: auto;
}

.filter-panel_items
.filter-group{
  margin: 10px auto;
}

.filter-panel_checkbox_options
.filter-group label{
  margin: 6% 0;
  display: flex;
  font-size: 14px;
  color: var(--PFG-text-color-gray);
}
.filter-panel_checkbox_options
.filter-group label span{
  letter-spacing: 0.42px;
  opacity: 0.5;
  margin-left: 2px;
  font-size: 12px;
}
.filter-panel_checkbox_options
.filter-group input{
  margin-right: 4px;
}
.filter-group label:has(input:disabled) {
  cursor: not-allowed;
  opacity: 0.2;
}
.clear-all-tag{
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.48px;
  color: var(--PFG-link-color);
  cursor: pointer;
}
.product-filter-gallery_product-grid{

}
.product-filter-gallery_product-grid
.result_count{
  text-align: end;
  color: #b6bfc1;
  font-size: 16px;
  font-weight: 600;
}
.product-filter-gallery_product-grid
.filter_result{
  gap: 16px;
  height: fit-content;
  display: flex;
  flex-wrap: wrap;
}
.product-filter-gallery_product-grid
.product-card{
  background-color: #fff;
  padding: 16px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.product-filter-gallery_product-grid
.product-card a{
  display: block;
  width: 100%;
  text-decoration: none;
}

.product-filter-gallery_product-grid
.product-card img{
  width: 100%;
  margin-bottom: 10px;
  aspect-ratio: 1 / 0.7;
  object-fit: contain;
}
.product-filter-gallery_product-grid
.product-card h4{
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  letter-spacing: -0.72px;
  text-overflow: ellipsis;
  color: var(--PFG-text-color);
}

.product-filter-gallery_product-grid
.product-card .product_name{
  color: var(--PFG-text-color-gray);
  font-size: 14px;
  font-weight: 600;
}
.product-filter-gallery_product-grid
.product-card p{
    font-size: 14px;
    color: var(--PFG-text-color-gray);
    margin: auto;
}
.product-filter-gallery_product-grid
.product-card .product_price{
  color: var(--PFG-price-color);
  text-align: right;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  width: 100%;
  display: inline-block;
  margin: 10px auto;
}
.product-filter-gallery_product-grid
.product-card
.add-to-cart-btn{
  display: flex;
  height: 40px;
  padding: 12px 16px;
  justify-content: center;
  align-items: center;
  border-radius: 2px;
  color: #FFF;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.16px;
  background: var(--PFG-accent-color);
  border: none;
  width: 100%;
}
.product-filter-gallery_product-grid
.product-card
.keyword-tag{
  border: 1px solid var(--PFG-border-color);
  color: var(--PFG-border-color);
  padding: 0px 6px;
  margin: 10px auto;
  display: inline-block;
  font-size: 13px;
}
  .result_pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 40px auto 0;
  }
  .result_pagination #prev-btn {
    width: 50px;
    height: 50px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='10' viewBox='0 0 6 10' fill='none'%3E%3Cpath d='M0.8923 5.00446C0.8923 4.83371 0.95759 4.68303 1.09319 4.55245L5.00558 0.725446C5.11607 0.614955 5.2567 0.554688 5.41741 0.554688C5.74386 0.554688 6 0.810826 6 1.13728C6 1.29799 5.93471 1.44364 5.82422 1.55915L2.29353 5.00446L5.82422 8.44978C5.93471 8.56027 6 8.71094 6 8.87165C6 9.19308 5.74386 9.44922 5.41741 9.44922C5.25167 9.44922 5.11607 9.39397 5.00558 9.28348L1.09319 5.45647C0.95759 5.33092 0.8923 5.17522 0.8923 5.00446Z' fill='%23434447'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    border: none;
  }
  .result_pagination #next-btn {
    width: 50px;
    height: 50px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='10' viewBox='0 0 6 10' fill='none'%3E%3Cpath d='M5.1077 4.99944C5.1077 5.1702 5.04241 5.32087 4.90681 5.45145L0.99442 9.27846C0.883929 9.38895 0.743303 9.44922 0.582589 9.44922C0.256138 9.44922 0 9.19308 0 8.86663C0 8.70592 0.0652902 8.56027 0.175781 8.44475L3.70647 4.99944L0.175781 1.55413C0.0652903 1.44364 0 1.29297 0 1.13226C0 0.810827 0.256138 0.554688 0.582589 0.554688C0.748326 0.554688 0.883929 0.609934 0.99442 0.720425L4.90681 4.54743C5.04241 4.67299 5.1077 4.82868 5.1077 4.99944Z' fill='%23434447'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    border: none;
  }
  #page-numbers {
    display: flex;
  }
  #page-numbers button {
    width: 40px;
    height: 40px;
    border: none;
    background: none;
    color: var(--PFG-text-color);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 2px;
  }
  #page-numbers button.active {
    font-weight: bold;
    background: var(--PFG-primary-color);
    border-radius: 50%;
    color: #fff;
  }
  .result_pagination .pagination-ellipsis {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-weight: bold;
    color: var(--PFG-text-color);
  }
@media (hover: hover) {
  .product-filter-gallery_product-grid
  .product-card
  .add-to-cart-btn:hover{
    background: var(--PFG-price-color);
  }

  .product-filter-gallery_product-grid
  .product-card:hover h4{
    color: var(--PFG-primary-color);
    text-decoration-line: underline;
  }
}

@media (max-width: 767px) {
  .product-filter-gallery_product-grid{
    margin: 10px;
  }
  .product-filter-gallery_product-grid
  .result_count{
    gap: 0;
    margin: 0 14px 20px;
    justify-content: space-between;
  }
  .product-filter-gallery_product-grid
  .filter_result{
    gap: 0;
  }

  .product-filter-gallery_product-grid
  .product-card{
    margin: 4px;
    padding: 8px;
  }

  .product-filter-gallery_product-grid
  .product-card h4{
    font-size: 18px;
  }
  .product-filter-gallery_product-grid
  .product-card p{
      font-size: 14px;
      line-height: 16px;
  }
  .product-filter-gallery_product-grid
  .product-card .product_price{
    font-size: 18px;
  }
  .product-filter-gallery_product-grid
  .product-card
  .add-to-cart-btn{
    height: 36px;
  }

  .result_pagination {
    margin: 20px auto;
  }
  .result_pagination #prev-btn,
  .result_pagination #next-btn {
    width: 20px;
    height: 40px;
  }
  #page-numbers button {
    width: 30px;
    height: 30px;
  }

  .product-filter-gallery_filter-panel
  .filter-panel_checkbox_options{
    border: none;
    padding: 0;
  }
}
