.flarda-directory{width:100%;margin:1.5rem 0;color:#24332b}
.flarda-toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.flarda-toolbar input,.flarda-toolbar select{min-height:44px;padding:9px 12px;border:1px solid #cbd5ce;border-radius:6px;background:#fff;max-width:100%;font:inherit}
.flarda-search{flex:1 1 240px}.flarda-category-filter{flex:0 1 240px}
.flarda-map-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:14px;align-items:stretch}
.flarda-map{min-height:360px;border-radius:8px;overflow:hidden;background:#e8eee9;z-index:1}
.flarda-results{border:1px solid #dce4de;border-radius:8px;overflow:hidden;min-height:300px;max-height:520px;display:flex;flex-direction:column}
.flarda-results-count{padding:12px 14px;font-weight:700;border-bottom:1px solid #e4e9e5}
.flarda-results-list{overflow:auto}
.flarda-result-card{display:flex;gap:11px;padding:12px;border-bottom:1px solid #edf0ed;cursor:pointer}
.flarda-result-card:hover{background:#f5f8f5}
.flarda-result-card>img{width:76px;height:68px;object-fit:cover;border-radius:5px;flex:0 0 76px}
.flarda-result-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.flarda-result-title{font-weight:700;text-decoration:none}
.flarda-result-copy span,.flarda-result-copy small{color:#52645a}
.flarda-popup{max-width:220px;display:flex;flex-direction:column;gap:5px}
.flarda-popup img{width:100%;height:100px;object-fit:cover}
.flarda-attribution{font-size:11px;color:#66756b;margin:6px 0}
.flarda-place-details,.flarda-place-map{margin:2rem 0}
.flarda-place-details dl{margin:0;max-width:700px}
.flarda-detail-row{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;gap:12px;padding:10px 0;border-bottom:1px solid #e4e9e5}
.flarda-detail-row dt{font-weight:700}.flarda-detail-row dd{margin:0;overflow-wrap:anywhere}
.flarda-single-map{height:300px;max-width:100%;border-radius:8px;overflow:hidden}
@media(max-width:760px){.flarda-map-layout{grid-template-columns:1fr}.flarda-results{max-height:360px}.flarda-map{min-height:340px}.flarda-detail-row{grid-template-columns:1fr;gap:3px}}

/* Latest places cards */
.flarda-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:20px 0 32px}
.flarda-latest-card{min-width:0;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}
.flarda-latest-image{display:block;aspect-ratio:16/10;overflow:hidden}
.flarda-latest-image img{display:block;width:100%;height:100%;object-fit:cover}
.flarda-latest-body{padding:16px}
.flarda-latest-body h3{font-size:1.1rem;line-height:1.35;margin:0 0 10px}
.flarda-latest-body h3 a{text-decoration:none}
.flarda-latest-body p{font-size:.95rem;line-height:1.5;margin:0}
.flarda-latest-group{margin-bottom:38px}
.flarda-latest-heading{margin-bottom:12px}
@media(max-width:780px){.flarda-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.flarda-latest-grid{grid-template-columns:1fr}}

/* v1.3: geographic filters, category pins and polished destination cards */
.flarda-toolbar select{flex:1 1 170px}
.flarda-category-marker{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:3px solid white;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);box-shadow:0 2px 8px #0004;font-size:17px;line-height:1}
.flarda-category-marker::first-letter{transform:rotate(45deg)}
.flarda-marker-wrap{background:transparent;border:0}
.flarda-latest-card{box-shadow:0 3px 16px rgba(24,57,34,.07);border-radius:14px;transition:transform .2s ease,box-shadow .2s ease}
.flarda-latest-card:hover{transform:translateY(-3px);box-shadow:0 9px 25px rgba(24,57,34,.15)}
.flarda-latest-image{aspect-ratio:3/2;background:#edf2eb}
.flarda-latest-body{padding:19px}
.flarda-latest-body h3{margin:8px 0}
.flarda-card-category{display:block;color:#477b46;font-size:.74rem;letter-spacing:.07em;text-transform:uppercase;font-weight:800}
.flarda-card-county{display:block;color:#617266;font-size:.83rem;margin:0 0 8px}
.flarda-card-link{display:inline-block;margin-top:12px;color:#2d6d46;font-weight:700;text-decoration:none}
.flarda-latest-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding:6px 2px 20px}
.flarda-latest-carousel .flarda-latest-card{flex:0 0 min(310px,85vw);scroll-snap-align:start}
.flarda-nearby{margin:36px 0}
.flarda-directory-intro h2{margin-bottom:4px}

/* v1.4: category SVG pins (replaces font-dependent emoji pins) */
.flarda-marker-wrap{background:transparent!important;border:0!important;}
.flarda-marker-wrap svg{display:block;filter:drop-shadow(0 3px 3px rgba(0,0,0,.24));}

/* v1.5: Flarda editorial cards, accessible carousel and category map legend */
.flarda-latest-wrap{--flarda-pine:#293c2d;--flarda-rust:#a05d35;--flarda-cream:#f6f1e7;--flarda-sage:#65734b;position:relative;margin:22px 0 38px}
.flarda-latest-wrap .flarda-latest-grid{margin:0;gap:22px}
.flarda-latest-wrap .flarda-latest-card{display:flex;flex-direction:column;min-width:0;border:1px solid #e5dfd2;border-radius:15px;background:#fff;box-shadow:0 5px 22px rgba(42,56,41,.09);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.flarda-latest-wrap .flarda-latest-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(42,56,41,.16)}
.flarda-latest-wrap .flarda-latest-image{aspect-ratio:4/3;overflow:hidden;background:var(--flarda-cream)}
.flarda-latest-wrap .flarda-latest-image img{height:100%;width:100%;object-fit:cover;transition:transform .35s ease}
.flarda-latest-wrap .flarda-latest-card:hover img{transform:scale(1.035)}
.flarda-latest-wrap .flarda-latest-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:22px;gap:0}
.flarda-latest-wrap .flarda-card-category{color:var(--flarda-sage);font-size:.72rem;letter-spacing:.095em;font-weight:800}
.flarda-latest-wrap .flarda-latest-body h3{font-family:inherit;font-size:clamp(1.16rem,1.5vw,1.4rem);line-height:1.3;margin:9px 0 8px;color:var(--flarda-pine)}
.flarda-latest-wrap .flarda-latest-body h3 a{color:inherit;text-decoration:none}
.flarda-latest-wrap .flarda-latest-body h3 a:hover{text-decoration:underline;text-decoration-color:var(--flarda-rust)}
.flarda-latest-wrap .flarda-card-county{font-size:.82rem;color:#746d5d;margin:0 0 12px}
.flarda-latest-wrap .flarda-latest-body p{color:#505247;font-size:.94rem;line-height:1.65;margin:0 0 18px}
.flarda-latest-wrap .flarda-card-link{margin-top:auto;color:var(--flarda-rust);font-size:.94rem;font-weight:750;text-decoration:none}
.flarda-latest-wrap .flarda-card-link:hover{text-decoration:underline}
.flarda-latest-wrap a:focus-visible,.flarda-carousel-controls button:focus-visible{outline:3px solid var(--flarda-rust);outline-offset:3px}
.flarda-carousel-controls{display:flex;justify-content:flex-end;gap:9px;margin-bottom:12px}
.flarda-carousel-controls button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #bcb9a8;border-radius:50%;background:var(--flarda-cream);color:var(--flarda-pine);cursor:pointer;font:inherit;font-size:22px}
.flarda-carousel-controls button:hover:not(:disabled){background:var(--flarda-pine);color:#fff}
.flarda-carousel-controls button:disabled{opacity:.4;cursor:default}
.flarda-latest-wrap .flarda-latest-carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;overscroll-behavior-inline:contain;padding:5px 2px 18px;scrollbar-width:thin}
.flarda-latest-wrap .flarda-latest-carousel .flarda-latest-card{flex:0 0 calc((100% - 40px)/3);scroll-snap-align:start}
.flarda-map-legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:14px 0;padding:13px 16px;background:#f6f1e7;border:1px solid #e5dfd2;border-radius:10px;color:#293c2d}
.flarda-legend-title{font-weight:800;font-size:.88rem;margin-right:5px}
.flarda-legend-item{display:inline-flex;align-items:center;gap:7px;font-size:.82rem}
.flarda-legend-pin{display:inline-block;width:13px;height:13px;border-radius:50% 50% 50% 2px;transform:rotate(-45deg);background:var(--flarda-pin-color);border:1.5px solid white;box-shadow:0 0 0 1px #c8c6b9}
@media(max-width:850px){.flarda-latest-wrap .flarda-latest-carousel .flarda-latest-card{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:560px){.flarda-latest-wrap .flarda-latest-carousel .flarda-latest-card{flex-basis:88%}.flarda-latest-wrap .flarda-latest-grid:not(.flarda-latest-carousel){grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.flarda-latest-wrap .flarda-latest-card,.flarda-latest-wrap .flarda-latest-image img{transition:none}.flarda-latest-wrap .flarda-latest-carousel{scroll-behavior:auto}}
