@charset "UTF-8";

.filter_mobile
{
 display: none;
 position: relative;
 padding: 0;
 margin-top: 0;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px;
 background: #ECECEC;
 border: 1px solid #E3E3E3;
 justify-content: space-between;
 box-sizing: border-box
}

.filter_border
{
 position: sticky;
 top: 30px;
 height: auto;
 min-height: var(--one-third);
 max-height: var(--three-quarters);
 padding-top: 15px;
 padding-left: 20px;
 padding-right: 20px;
 padding-bottom: 0;
 margin-top: 0;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 30px;
 background: #ffffff;
 border: 1px solid #e6e6e6;
 border-radius: 7px;
 box-sizing: border-box;
 overflow: auto;
}

.filter_wrap
{
 position: relative;
 max-width: 1300px;
 padding-top: 15px;
 padding-left: 50px;
 padding-right: 50px;
 padding-bottom: 15px;
 margin: 0;
}

.filter_container
{
 display: none;
 gap: 10px;
 box-sizing: border-box;
 justify-content: flex-start;
 flex-wrap: wrap
}

.filter_container form
{
 display: flex;
 gap: 10px;
 flex-wrap: wrap
}

.filter_container_mobile_top
{
 position: sticky;
 top: 0;
 display: none;
 padding-top: 0;
 padding-left: 0;
 padding-right: 0;
 padding-bottom: 20px;
 margin-top: 0;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 10px;
 background: #FFF;
 z-index: 1;
}

.filter_container_mobile_top::after
{
 content: '';
 position: absolute;
 left: -20px;
 right: -20px;
 bottom: 0;
 border: 1px solid #666;
}

.filter_container_mobile_top p
{
 margin: 0;
}

.filter_container_mobile_top p:first-child
{
 font-size: 0.988rem;
 font-weight: 400
}

.filter_container_mobile_top p:last-child
{
 font-size: 0.988rem;
 position: absolute;
 display: flex;
 left: 0;
 right: 0;
 justify-content: center;
 z-index: -1;
}

.filter_mobile_button
{
 display: none;
 gap: 8px;
 align-items: center;
 justify-content: space-between
}

.filter_mobile_button p
{
 margin: 0
}

.items_filter p
{
 font-size: 0.875rem;
 font-weight: 400;
 margin-bottom: 10px;
}

.items_filter div
{
 display: flex;
 gap: 8px;
 align-items: flex-end;
}

.items_filter li
{
 list-style: none;
 font-size: 0.813rem;
 font-weight: 500;
 padding-top: 0;
 padding-left: 2px;
 padding-right: 0;
 padding-bottom: 0;
 margin-top: 0;
 margin-left: -40px;
 margin-right: 0;
 margin-bottom: 15px;
}

.filter_button
{
 position: relative;
 padding: 0;
 margin: 0;
 cursor: pointer;
 user-select: none
}

.filter_button_text
{
 font-size: 0.813rem;
 font-weight: 400;
 display: flex;
 gap: 8px;
 height: 100%;
 width: 100%;
 padding-top: 6px;
 padding-left: 10px;
 padding-right: 10px;
 padding-bottom: 6px;
 color: #000;
 background: #FFF;
 align-items: center;
 box-sizing: border-box;
}

.filter_button_text img
{
 width: 10px;
 height: auto;
 margin: 0;
 transition: 0.3s ease;
}

.filter_button_rotate_arrow
{
 transform-origin: center;
 transform: rotate(180deg);
 transition: 0.3s ease;
}

.filter_popup
{
 display: none;
 position: absolute;
 padding: 0;
 margin-top: 5px;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 0;
 z-index: 1000;
 background: #FFFFFF;
 box-shadow: 0 0 10px rgba(0,0,0,0.1);
 border: 1px solid #F3F3F3;
 border-bottom-left-radius: 3px;
 border-bottom-right-radius: 3px
}


.filter_popup_links
{
 position: relative;
 display: flex;
 max-height: 300px;
 overflow: auto;
 gap: 10px;
 padding-top: 20px;
 padding-left: 15px;
 padding-right: 15px;
 padding-bottom: 10px;
 margin: 0;
 flex-direction: column
}

.filter_popup_button
{
 position: relative;
 display: flex;
 gap: 8px;
 padding: 0;
 margin: 0;
 align-items: baseline;
 justify-content: space-between;
 cursor: pointer
}

.filter_popup_button:hover > *
{
 color: #999;
 cursor: pointer
}

.filter_popup_button input[type="checkbox"]
{
 margin: 0
}

.filter_popup_button span:first-child
{
 font-size: 0.988rem;
 font-weight: 400;
 display: flex;
 gap: 8px;
 padding: 0;
 white-space: nowrap;
 align-items: baseline
}

.filter_popup_button span:last-child
{
 font-size: 0.75rem;
 color: #999;
}

.filter_popup_submit_container
{
 padding-top: 10px;
 padding-left: 15px;
 padding-right: 15px;
 padding-bottom: 10px;
}

.filter_popup_submit
{
 font-family: 'Roboto', Helvetica, sans-serif;
 font-size: 0.875rem;
 font-weight: 400;
 width: 50%;
 padding-top: 10px;
 padding-left: 15px;
 padding-right: 15px;
 padding-bottom: 10px;
 margin-top: 0;
 margin-left: 0;
 margin-right: 0;
 margin-bottom: 0;
 color: #FFF;
 background: #336699;
 border: 0;
 border-radius: 5px;
 cursor: pointer;
 appearance: none;
}

.filter_clear_submit
{
 font-family: 'Roboto', Helvetica, sans-serif;
 font-size: 0.875rem;
 font-weight: 400;
 width: 50%;
 padding-top: 10px;
 padding-left: 15px;
 padding-right: 15px;
 padding-bottom: 10px;
 margin: 0;
 color: #000;
 background: #FFF;
 border: 1px solid #CCCCCC;
 border-radius: 5px;
 cursor: pointer;
 appearance: none;
}

.menu_view .loading
{
 position: absolute;
}

.filter_buttons
{
 position: sticky;
 left: 0;
 right: 0;
 bottom: -1px;
 display: flex;
 gap: 10px;
 padding-top: 20px;
 padding-left: 0;
 padding-right: 0;
 padding-bottom: 20px;
 margin-right: -1px;
 flex-direction: row-reverse;
 background: #FFF;
}

@media screen and (max-width: 980px)
{
 .filter_wrap
 {
  padding-left: 30px;
  padding-right: 30px;
 }
}

@media screen and (max-width: 920px)
{
 .filter_container
 {
  display: none;
  position: fixed;
  padding-top: 0;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 0;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  box-sizing: border-box;
  justify-content: space-between;
  flex-wrap: nowrap;
  background: #FFF;
  z-index: 1000;
  overflow: auto;
 }
 
 .filter_container, .filter_container form
 {
  flex-direction: column;
 }
 
 .filter_wrap
 {
  padding-left: 20px;
  padding-right: 20px;
 }
 
 .filter_mobile_button, .filter_container_mobile_top, .filter_mobile
 {
  display: flex;
 }
 
 .filter_container_mobile_top
 {
  padding-top: 20px;
  justify-content: flex-end;
 }
 
 .filter_button_text
 {
  font-size: 1rem;
  padding-top: 8px;
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 8px;
  justify-content: space-between;
 }
 
 .filter_popup
 {
  width: 100%;
 }

 .items_filter p
 {
  font-size: 1rem;
 }

 .items_filter p:not(:first-child)
 {
  padding-top: 25px;
 }
 
 .filter_popup_submit
 {
  margin-top: 0;
 }
 
 .filter_popup_submit, .filter_clear_submit
 {
  font-size: 0.875rem;
  width: 100%;
 }
}