/* Service shop only; keep the existing cards and one shared filter form. */
.ln-service-directory { display:grid; grid-template-columns:240px minmax(0,1fr); gap:24px; align-items:start; clear:both; }
.ln-service-results { min-width:0; }
.ln-service-filters { min-width:0; }
.ln-service-filters > summary { cursor:pointer; min-height:44px; padding:12px 16px; border:1px solid #dce5e2; border-radius:10px; background:#fff; color:#27332f; font-weight:600; }
.ln-service-filters .ln-store-filter-panel { padding:16px; margin:0; }
.ln-service-filters .ln-store-filter-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
.ln-service-filters .ln-store-filter-field--keyword { grid-column:auto; }
.ln-service-filters .ln-store-filter-actions { flex-direction:column; align-items:stretch; }
.ln-service-filters .ln-store-filter-actions > * { min-height:44px; text-align:center; justify-content:center; }
.ln-service-filters-close { background:#f1f5f3; color:#35483f; border-radius:8px; }
.ln-store-service-archive .ln-service-results ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ln-service-results .storefront-sorting { margin-bottom:16px; }
@media(min-width:901px) {
 .ln-service-filters[open] > summary { display:none; }
 .ln-service-filters-close { display:none; }
}
@media(max-width:900px) {
 .ln-service-directory { grid-template-columns:minmax(0,1fr); gap:16px; }
 .ln-service-filters[open] > summary { margin-bottom:10px; }
 .ln-store-service-archive .ln-service-results ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ln-service-filters .ln-store-filter-field input, .ln-service-filters .ln-store-filter-field select { font-size:16px; }
}
