.azf{font-family:inherit}.azf *{box-sizing:border-box}.azf-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end;margin:0 0 22px}.azf-filters label{font-size:14px;font-weight:600;display:flex;flex-direction:column;gap:6px}.azf-filters input,.azf-filters select{width:100%;border:1px solid #d6d6d6;border-radius:6px;padding:11px;background:#fff;color:#222;min-height:44px}.azf-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.azf-actions button,.azf-button{background:var(--azf-accent);color:#fff!important;border:0;border-radius:5px;padding:12px 17px;text-decoration:none!important;cursor:pointer;display:inline-block;text-align:center;font:inherit;font-weight:600}.azf-actions a{color:inherit;text-decoration:underline}.azf-count{font-size:14px;color:#555;margin:0 0 16px}.azf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.azf-card{display:flex;flex-direction:column;min-width:0;background:#fff;overflow:hidden}.azf-image{display:block;aspect-ratio:16/10;overflow:hidden}.azf-image img{width:100%;height:100%;object-fit:cover;display:block}.azf-card-body{padding:15px 0;display:flex;flex:1;flex-direction:column;align-items:flex-start}.azf-card h3{font-size:20px;line-height:1.35;margin:0 0 12px}.azf-card h3 a{color:inherit;text-decoration:none}.azf-desc{font-size:15px;line-height:1.6;margin:0 0 12px}.azf-price{font-weight:700;font-size:18px;margin:auto 0 14px;padding-top:8px}.azf-button{margin-top:auto}.azf-pagination{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:30px 0}.azf-pagination a{padding:8px 12px;border:1px solid #ddd;border-radius:4px;text-decoration:none}.azf-pagination a[aria-current]{background:var(--azf-accent);color:#fff;border-color:var(--azf-accent)}.azf-notice{padding:14px;border:1px solid #ddd;border-radius:6px}@media(max-width:959px){.azf-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.azf-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:639px){.azf-grid,.azf-filters{grid-template-columns:1fr}.azf-card h3{font-size:19px}.azf-actions button{width:100%}}

/* Accessible two-handle price range */
.azf-price-filter{border:0;padding:0;margin:0;min-width:0;grid-column:span 2}
.azf-price-filter legend{font-size:14px;font-weight:600;margin-bottom:8px;padding:0}
.azf-range-values,.azf-range-limits{display:flex;align-items:center;justify-content:space-between;gap:10px}
.azf-range-values output{border:1px solid #ddd;border-radius:6px;padding:7px 12px;font-weight:600;min-width:72px;text-align:center}
.azf-range-values span,.azf-range-limits{font-size:12px;color:#666}
.azf-range-track{height:36px;position:relative;margin:8px 8px 2px;--azf-left:0%;--azf-right:100%}
.azf-range-track:before,.azf-range-selected{content:"";position:absolute;top:16px;left:0;right:0;height:5px;border-radius:5px;background:#e3e3e3}
.azf-range-selected{left:var(--azf-left);right:calc(100% - var(--azf-right));background:var(--azf-accent)}
.azf-range-track input[type=range]{position:absolute;left:0;top:0;width:100%;height:36px;margin:0;padding:0;min-height:0;border:0;background:transparent;pointer-events:none;appearance:none;-webkit-appearance:none}
.azf-range-track input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;pointer-events:auto;width:22px;height:22px;border:3px solid #fff;border-radius:50%;background:var(--azf-accent);box-shadow:0 0 0 1px #999;cursor:grab}
.azf-range-track input[type=range]::-moz-range-thumb{pointer-events:auto;width:17px;height:17px;border:3px solid #fff;border-radius:50%;background:var(--azf-accent);box-shadow:0 0 0 1px #999;cursor:grab}
.azf-range-track input[type=range]:focus-visible{outline:2px solid var(--azf-accent);outline-offset:3px}
.azf-range-track input[data-azf-min]{z-index:2}.azf-range-track input[data-azf-max]{z-index:3}
@media(max-width:639px){.azf-price-filter{grid-column:span 1}}

/* 0.1.5: Align filter controls on one common baseline. */
.azf-filters{grid-template-columns:minmax(180px,1fr) minmax(260px,2fr) minmax(170px,1fr) minmax(180px,1fr);align-items:end;gap:16px}
.azf-filters .azf-field{min-width:0;align-self:end;margin:0}
.azf-filters .azf-price-filter{grid-column:auto;display:flex;flex-direction:column;justify-content:flex-end}
.azf-filters .azf-price-filter legend{float:none;width:100%;margin:0 0 6px;font-size:14px;line-height:20px}
.azf-filters .azf-field:not(fieldset){gap:6px;line-height:20px}
.azf-filters .azf-field select,.azf-filters .azf-field input[type=search]{height:44px;min-height:44px}
.azf-filters .azf-range-values{height:44px}
.azf-filters .azf-range-values output{padding:5px 9px}
.azf-filters .azf-range-track{height:22px;margin:0 8px}
.azf-filters .azf-range-track:before,.azf-filters .azf-range-selected{top:9px}
.azf-filters .azf-range-track input[type=range]{height:22px}
.azf-filters .azf-range-limits{line-height:14px}
.azf-filters .azf-actions{grid-column:1/-1}
@media(max-width:1100px){.azf-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:639px){.azf-filters{grid-template-columns:1fr}.azf-filters .azf-price-filter{grid-column:auto}}

/* 0.1.7: Full-width search above a top-aligned, three-column filter row. */
.azf .azf-filters {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px 20px;
  align-items:start;
}
.azf .azf-filters .azf-search-field {
  grid-column:1/-1;
  width:100%;
  align-self:start;
}
.azf .azf-filters .azf-field,
.azf .azf-filters .azf-price-filter {
  align-self:start;
  min-width:0;
  margin:0;
}
.azf .azf-filters .azf-price-filter {
  grid-column:auto;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:0;
}
.azf .azf-filters .azf-price-filter legend {
  float:none;
  width:100%;
  padding:0;
  margin:0 0 6px;
  line-height:20px;
}
.azf .azf-filters .azf-field:not(fieldset) {
  display:flex;
  flex-direction:column;
  gap:6px;
  line-height:20px;
}
.azf .azf-filters .azf-actions {grid-column:1/-1;}
@media(max-width:959px) {
  .azf .azf-filters {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:639px) {
  .azf .azf-filters {grid-template-columns:minmax(0,1fr);}
  .azf .azf-filters .azf-search-field {grid-column:1;}
}
