/* BMK Store Directory v1.0.0 */

.bmk-store-directory,
.bmk-store-directory *{
  box-sizing:border-box;
}

.bmk-store-directory{
  width:100%;
  max-width:100%;
  margin:0 auto;
  padding:10px 0 20px;
}

.bmk-store-directory-heading{
  margin:0 2px 12px;
}

.bmk-store-directory-heading h1{
  margin:0!important;
  padding:0!important;
  color:#252a25;
  font-size:20px!important;
  font-weight:850!important;
  line-height:1.15!important;
}

.bmk-store-directory-heading p{
  margin:4px 0 0!important;
  padding:0!important;
  color:#929990;
  font-size:8px!important;
  font-weight:550!important;
  line-height:1.3!important;
}

/* Horizontal category tabs */
.bmk-store-directory-tabs{
  display:flex;
  align-items:center;
  gap:7px;

  width:100%;
  max-width:100%;

  margin:0 0 14px;
  padding:1px 2px 5px;

  overflow-x:auto;
  overflow-y:hidden;

  scroll-snap-type:x proximity;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}

.bmk-store-directory-tabs::-webkit-scrollbar{
  display:none;
}

.bmk-store-directory-tab{
  flex:0 0 auto!important;

  min-height:36px!important;
  margin:0!important;
  padding:0 13px!important;

  border:1px solid #e0e5dd!important;
  border-radius:11px!important;

  background:#fff!important;
  color:#60675e!important;

  font:inherit!important;
  font-size:8px!important;
  font-weight:800!important;
  line-height:1!important;

  text-transform:none!important;
  text-indent:0!important;

  box-shadow:0 2px 8px rgba(15,23,42,.025)!important;

  scroll-snap-align:start;
  appearance:none!important;
  -webkit-appearance:none!important;

  transition:.15s ease!important;
}

.bmk-store-directory-tab.is-active{
  border-color:#83b735!important;
  background:#83b735!important;
  color:#fff!important;
  box-shadow:0 3px 10px rgba(131,183,53,.18)!important;
}

.bmk-store-directory-tab:active{
  transform:scale(.97)!important;
}

.bmk-store-directory-panel[hidden]{
  display:none!important;
}

.bmk-store-directory-panel{
  display:block;
  width:100%;
}

.bmk-store-directory-panel-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;

  margin:0 2px 9px;
}

.bmk-store-directory-panel-head strong{
  color:#2f342f;
  font-size:13px;
  font-weight:850;
  line-height:1.2;
}

.bmk-store-directory-panel-head span{
  flex:0 0 auto;
  color:#989f96;
  font-size:7px;
  font-weight:650;
  line-height:1.2;
}

/* Store cards */
.bmk-store-directory-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  width:100%;
}

.bmk-store-directory-card{
  position:relative;

  display:flex;
  flex-direction:column;

  min-width:0;
  min-height:145px;

  overflow:hidden;

  border:1px solid rgba(0,0,0,.06);
  border-radius:16px;

  background:#fff;

  box-shadow:0 3px 12px rgba(0,0,0,.045);
}

.bmk-store-directory-card-main{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;

  flex:1 1 auto;

  min-width:0;

  padding:13px 8px 7px;

  color:inherit!important;
  text-decoration:none!important;
}

.bmk-store-directory-logo{
  display:grid;
  place-items:center;

  width:64px;
  height:64px;
  flex:0 0 64px;

  overflow:hidden;

  border-radius:14px;

  background:#f8faf6;
  color:#69933a;

  font-size:22px;
  font-weight:900;
}

.bmk-store-directory-logo img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;

  padding:4px;
  margin:0;

  object-fit:contain;
  object-position:center;

  background:#fff;
}

.bmk-store-directory-copy{
  display:block;
  width:100%;
  min-width:0;

  margin-top:8px;

  text-align:center;
}

.bmk-store-directory-copy>strong{
  display:block;

  overflow:hidden;

  color:#2e332e;
  font-size:9px;
  font-weight:850;
  line-height:1.25;

  white-space:nowrap;
  text-overflow:ellipsis;
}

.bmk-store-directory-copy>small{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;

  margin-top:4px;

  color:#6f9c3e;
  font-size:6.5px;
  font-weight:750;
  line-height:1;
}

.bmk-store-directory-copy>small i{
  display:block;
  width:5px;
  height:5px;

  border-radius:50%;
  background:#83b735;
}

.bmk-store-directory-copy>small.is-closed{
  color:#969b95;
}

.bmk-store-directory-copy>small.is-closed i{
  background:#a9ada7;
}

.bmk-store-directory-copy>em{
  display:-webkit-box;

  overflow:hidden;

  margin-top:5px;

  color:#9aa098;
  font-size:6.3px;
  font-style:normal;
  font-weight:500;
  line-height:1.25;

  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

.bmk-store-directory-go{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;

  min-height:34px!important;

  margin:0 8px 8px!important;
  padding:0 8px!important;

  border-radius:10px!important;

  background:#83b735!important;
  color:#fff!important;

  font-size:7px!important;
  font-weight:850!important;
  line-height:1!important;

  text-decoration:none!important;
  text-transform:none!important;

  box-shadow:none!important;
}

.bmk-store-directory-go svg{
  width:11px;
  height:11px;

  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.bmk-store-directory-no-stores,
.bmk-store-directory-empty{
  padding:30px 15px;

  border:1px dashed #dfe5db;
  border-radius:14px;

  background:#fafbf9;
  color:#91988f;

  font-size:8px;
  font-weight:650;
  line-height:1.4;
  text-align:center;
}

@media(min-width:680px){
  .bmk-store-directory-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .bmk-store-directory-card{
    min-height:165px;
  }

  .bmk-store-directory-logo{
    width:76px;
    height:76px;
    flex-basis:76px;
  }
}


/* ==========================================================
   BMK Store Directory v1.0.1
   Full-width informative store cards
   ========================================================== */

.bmk-store-directory-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
}

/* Full-width card */
.bmk-store-directory-card{
  width:100%!important;
  min-width:0!important;
  min-height:0!important;

  display:flex!important;
  flex-direction:column!important;

  padding:0!important;

  border:1px solid rgba(0,0,0,.06)!important;
  border-radius:16px!important;
  background:#fff!important;

  box-shadow:0 3px 12px rgba(0,0,0,.045)!important;
  overflow:hidden!important;
}

/* Main information row */
.bmk-store-directory-card-main{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;

  width:100%!important;
  min-width:0!important;

  padding:12px 12px 9px!important;

  color:inherit!important;
  text-decoration:none!important;
}

.bmk-store-directory-logo{
  display:grid!important;
  place-items:center!important;

  width:72px!important;
  height:72px!important;
  min-width:72px!important;
  min-height:72px!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;

  border:1px solid #eef1eb!important;
  border-radius:14px!important;

  background:#fff!important;
  color:#69933a!important;

  font-size:22px!important;
  font-weight:900!important;

  text-decoration:none!important;
}

.bmk-store-directory-logo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;

  margin:0!important;
  padding:4px!important;

  object-fit:contain!important;
  object-position:center!important;

  background:#fff!important;
}

.bmk-store-directory-copy{
  min-width:0!important;
  width:100%!important;

  margin:0!important;
  padding:0!important;

  text-align:left!important;
}

.bmk-store-directory-name{
  display:block!important;

  min-width:0!important;

  margin:0!important;
  padding:0!important;

  overflow:hidden!important;

  color:#2d322d!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.2!important;

  text-decoration:none!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

/* Work mode */
.bmk-store-directory-hours{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:4px!important;

  margin-top:6px!important;

  color:#6b7468!important;
  font-size:7px!important;
  font-weight:600!important;
  line-height:1.25!important;
}

.bmk-store-directory-status-dot{
  display:block!important;
  width:6px!important;
  height:6px!important;
  flex:0 0 6px!important;

  border-radius:50%!important;
  background:#83b735!important;
}

.bmk-store-directory-hours.is-closed .bmk-store-directory-status-dot{
  background:#a8ada6!important;
}

.bmk-store-directory-hours-label{
  color:#929990!important;
  font-weight:550!important;
}

.bmk-store-directory-hours strong{
  color:#659437!important;
  font-size:7px!important;
  font-weight:800!important;
}

.bmk-store-directory-hours.is-closed strong{
  color:#8c938a!important;
}

/* Short description */
.bmk-store-directory-description{
  display:-webkit-box!important;

  margin:7px 0 0!important;
  padding:0!important;

  overflow:hidden!important;

  color:#7f877d!important;
  font-size:7.2px!important;
  font-weight:500!important;
  line-height:1.35!important;

  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
}

.bmk-store-directory-description.is-empty{
  color:#a1a79f!important;
}

/* Full-width CTA */
.bmk-store-directory-go{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;

  width:auto!important;
  min-height:38px!important;

  margin:0 10px 10px!important;
  padding:0 12px!important;

  border-radius:10px!important;

  background:#83b735!important;
  color:#fff!important;

  font-size:7.5px!important;
  font-weight:850!important;
  line-height:1!important;

  text-decoration:none!important;
  text-transform:none!important;

  box-shadow:none!important;
}

.bmk-store-directory-go svg{
  width:12px!important;
  height:12px!important;
}

/* Keep one full-width card on tablet/desktop too. */
@media(min-width:680px){
  .bmk-store-directory-grid{
    grid-template-columns:1fr!important;
  }

  .bmk-store-directory-card-main{
    grid-template-columns:82px minmax(0,1fr)!important;
  }

  .bmk-store-directory-logo{
    width:82px!important;
    height:82px!important;
    min-width:82px!important;
    min-height:82px!important;
  }

  .bmk-store-directory-name{
    font-size:13px!important;
  }
}
