/* Searchable Online Services directory; catalogue content stays in Elementor. */
.elementor-12667 .joweri-online-catalog { min-width:0; }
.elementor-12667 .joweri-service-directory { width:100%; color:#06372d; }
.elementor-12667 .joweri-service-directory [hidden] { display:none !important; }
.elementor-12667 .joweri-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.elementor-12667 .joweri-directory-tools label { display:block; font-weight:600; margin-bottom:10px; }
.elementor-12667 .joweri-directory-tools input { width:100%; max-width:520px; min-height:50px; padding:12px 18px; border:1px solid #dce2e6; border-radius:12px; background:#fff; color:#06372d; font:inherit; }
.elementor-12667 .joweri-directory-filters { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0; }
.elementor-12667 .joweri-directory-filters button,
.elementor-12667 .joweri-directory-pager button { border:1px solid #dce2e6; border-radius:24px; background:#fff; color:#06372d; padding:10px 18px; font:inherit; font-weight:600; cursor:pointer; transition:background .2s,color .2s; }
.elementor-12667 .joweri-directory-filters button[aria-pressed="true"] { background:#06372d; border-color:#06372d; }
.elementor-12667 .joweri-directory-filters button:hover,
.elementor-12667 .joweri-directory-pager button:not(:disabled):hover { background:#06372d; color:#fff; }
.elementor-12667 .joweri-directory-pager button:disabled { opacity:.45; cursor:default; }
.elementor-12667 .joweri-service-directory :is(button,input,a):focus-visible { outline:3px solid #06372d; outline-offset:4px; }
.elementor-12667 .joweri-directory-frame { border:1px solid #dce2e6; border-radius:20px; overflow:hidden; }
.elementor-12667 #jwondirectory { width:100%; table-layout:fixed; border-collapse:collapse; margin:0; border:0; font-size:16px; }
.elementor-12667 #jwondirectory th,
.elementor-12667 #jwondirectory td { padding:20px 24px; border:0; border-bottom:1px solid #e5e9ec; text-align:left; vertical-align:middle; overflow-wrap:anywhere; }
.elementor-12667 #jwondirectory thead { background:#f3f7f5; }
.elementor-12667 #jwondirectory thead th:nth-child(1) { width:32%; }
.elementor-12667 #jwondirectory thead th:nth-child(2) { width:48%; }
.elementor-12667 #jwondirectory thead th:nth-child(3) { width:20%; }
.elementor-12667 #jwondirectory tbody th { font-weight:600; }
.elementor-12667 #jwondirectory tbody td:nth-child(2) { color:#666; line-height:1.6; }
.elementor-12667 #jwondirectory tbody tr:hover { background:#f8faed; }
.elementor-12667 #jwondirectory a { display:inline-block; padding:10px 16px; border:1px solid #dce7e2; background:#f3f7f5; border-radius:24px; color:#06372d; font-weight:600; text-decoration:none; white-space:nowrap; }
.elementor-12667 #jwondirectory a:hover { background:#06372d; border-color:#06372d; }
.elementor-12667 .joweri-directory-pager { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:20px; margin-top:24px; }
.elementor-12667 .joweri-directory-empty { padding:28px; margin:0; }
@media(max-width:767px) {
 .elementor-12667 .joweri-directory-tools input { max-width:100%; }
 .elementor-12667 .joweri-directory-filters button { flex:1 1 40%; font-size:14px; padding:10px 12px; }
 .elementor-12667 #jwondirectory,
 .elementor-12667 #jwondirectory tbody { display:block; width:100%; }
 .elementor-12667 #jwondirectory thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .elementor-12667 #jwondirectory tbody tr { display:block; padding:22px; border-bottom:1px solid #e5e9ec; }
 .elementor-12667 #jwondirectory tbody th,
 .elementor-12667 #jwondirectory tbody td { display:block; width:100%; border:0; padding:0; }
 .elementor-12667 #jwondirectory tbody td { margin-top:12px; }
 .elementor-12667 .joweri-directory-pager { gap:12px; font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
 .elementor-12667 .joweri-directory-filters button,
 .elementor-12667 .joweri-directory-pager button { transition:none; }
}