/* The same public directory scale and controls as restaurants and accommodation. */
.page-local-directory .local-directory-mobile-bar{display:none}
.page-local-directory .local-directory{color:var(--home-ink)}
.local-directory *{box-sizing:border-box}
.local-directory a{color:var(--home-teal)}
.local-directory .directory-intro{margin-bottom:18px}
.local-directory .directory-intro h1{max-width:none}
.local-directory .directory-search{margin-bottom:0}
.page-local-directory .accommodation-search-toggle{border:1px solid var(--home-control-line);border-radius:12px;background:var(--home-surface)}
.page-local-directory .accommodation-search-summary{display:flex;align-items:center;gap:10px;min-height:68px;padding:13px 14px;color:var(--home-ink);cursor:pointer;list-style:none}
.page-local-directory .accommodation-search-summary::-webkit-details-marker{display:none}
.page-local-directory .accommodation-search-summary>svg{flex:none;color:var(--home-teal)}
.page-local-directory .accommodation-search-summary>span:first-of-type{flex:1;min-width:0}
.page-local-directory .accommodation-search-summary strong{display:block;font-size:.93rem;line-height:1.3}
.page-local-directory .accommodation-search-summary small{display:block;margin-top:4px;font-size:.75rem;line-height:1.45;color:var(--home-muted);overflow-wrap:anywhere}
.page-local-directory .accommodation-search-state{font-size:.8rem;font-weight:650;color:var(--home-teal)}
.page-local-directory .accommodation-search-chevron{transition:transform .16s}
.page-local-directory .accommodation-search-toggle[open] .accommodation-search-chevron{transform:rotate(180deg)}
.page-local-directory .accommodation-search-toggle[open]>summary{border-bottom:1px solid var(--home-line)}
.page-local-directory .accommodation-search-content{padding:18px}
.page-local-directory .directory-search-form>label{font-size:.84rem;font-weight:650;color:var(--home-ink)}
.page-local-directory .directory-search-row{flex-wrap:nowrap}
.page-local-directory .directory-search-input{flex-basis:auto}
.page-local-directory .directory-search-row>.directory-button{width:auto;flex-shrink:0}
.page-local-directory .directory-filters{margin-top:12px}
.page-local-directory .directory-filters>summary{background:var(--home-soft)}
.page-local-directory .directory-active-filters a{min-height:44px}
.local-directory-explore{margin:12px 0 0;border-bottom:1px solid var(--home-line)}
.local-directory-explore>summary{display:flex;align-items:center;gap:9px;min-height:44px;cursor:pointer;color:var(--home-teal);font-size:.84rem;font-weight:600;list-style:none}
.local-directory-explore>summary::-webkit-details-marker{display:none}
.local-directory-explore>summary::after{content:'+';font-size:1.1rem;font-weight:400;margin-left:auto;padding:0 5px}
.local-directory-explore[open]>summary::after{content:'−'}
.local-directory-categories{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 14px}
.local-directory-categories a,.local-directory-subcategories a{display:inline-flex;align-items:center;gap:7px;min-height:44px;max-width:100%;padding:8px 12px;border:1px solid var(--home-line);border-radius:999px;background:var(--home-soft);font-size:.8rem;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}
.local-directory-categories a:hover,.local-directory-subcategories a:hover{border-color:var(--home-control-line)}
.local-directory-categories a[aria-current=page],.local-directory-subcategories a[aria-current=page]{background:var(--home-teal);border-color:var(--home-teal);color:var(--home-surface)}
.local-directory-subcategories{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.local-directory-results-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin:16px 0}
.local-directory-count{min-width:0;font-size:.88rem;line-height:1.5;color:var(--home-muted);margin:0;overflow-wrap:anywhere}
.local-directory-mode{display:inline-flex;align-items:center;gap:7px;min-height:44px;color:var(--home-teal);font-size:.84rem;font-weight:600;text-underline-offset:3px}
.local-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.local-directory-result{display:flex;flex-direction:column;min-width:0;position:relative;border:1px solid var(--home-line);border-radius:14px;overflow:hidden;background:var(--home-surface)}
.local-directory-result:hover{border-color:var(--home-control-line)}
.local-directory-result-media{position:relative;display:grid;place-items:center;flex:none;aspect-ratio:1.8;background:var(--home-soft);color:var(--home-teal);overflow:hidden}
.local-directory-result-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.local-directory-result-media>svg{width:44px;height:44px}
.local-directory-result-body{flex:1;min-width:0;padding:16px;overflow-wrap:anywhere}
.local-directory-result h2{font-size:1.12rem;line-height:1.3;margin:4px 0 7px}
.local-directory-result h2 a{color:var(--home-ink);text-decoration:none}
.local-directory-result h2 a:hover{text-decoration:underline}
.local-directory-result-meta,.local-directory-result-city{color:var(--home-muted);font-size:.76rem;line-height:1.45;margin:0 0 5px}
.local-directory-result-meta{display:flex;flex-wrap:wrap;gap:4px 10px}
.local-directory-result-kind{font-size:.8rem;line-height:1.5;margin:0 0 7px;color:var(--home-muted)}
.local-directory-result-description{font-size:.86rem;line-height:1.5;margin:8px 0 0;color:var(--home-muted)}
.local-directory-result-address{font-size:.8rem;line-height:1.5;margin:10px 0 0;color:var(--home-muted)}
.local-directory-result-hours{font-size:.8rem;line-height:1.5;margin:10px 0 0;color:var(--home-teal);font-weight:600}
.local-directory-result-cta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:none;min-height:48px;padding:12px 0;margin:0 16px;border-top:1px solid var(--home-line);color:var(--home-teal);font-size:.85rem;font-weight:650;line-height:1.45;text-decoration:none}
.local-directory-result-cta:hover{text-decoration:underline}
.local-directory-result>.pro-illustration-label{margin:0;padding:7px 12px;background:var(--home-soft);color:var(--home-muted);font-size:.7rem;line-height:1.4}
.local-directory-result-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;margin-bottom:12px;border-radius:10px;background:var(--home-soft);color:var(--home-teal)}
.local-directory-result-icon svg{width:22px;height:22px}
.local-directory-result-heading{display:grid;grid-template-columns:38px minmax(0,1fr);gap:0 10px;align-items:start}
.local-directory-result-heading .local-directory-result-icon{grid-column:1;grid-row:1 / 4;margin:0}
.local-directory-result-heading>h2,.local-directory-result-heading>.local-directory-result-meta,.local-directory-result-heading>.local-directory-result-time{grid-column:2;min-width:0}
.local-directory-description-toggle{display:inline-flex;align-items:center;min-height:44px;max-width:100%;padding:6px 0;border:0;background:none;color:var(--home-teal);font:inherit;font-size:.8125rem;font-weight:650;text-align:left;cursor:pointer}
.local-directory-description-toggle[hidden]{display:none}
.local-directory-description-toggle:hover{text-decoration:underline}
.local-directory-result-time{font-size:.8rem;line-height:1.5;color:var(--home-teal);font-weight:600;margin:0 0 8px}
.local-directory-badge{display:inline-block;max-width:100%;padding:4px 8px;border:1px solid var(--home-line);border-radius:6px;background:var(--home-soft);color:var(--home-muted);font-size:.74rem;line-height:1.4;margin:0 0 8px}
.local-directory-note{font-size:.82rem;line-height:1.5;color:var(--home-muted);margin:12px 0}
.local-directory-notice{padding:16px;border:1px solid var(--home-line);border-radius:12px;background:var(--home-soft);color:var(--home-ink);font-size:.86rem;line-height:1.6;margin:0 0 16px;overflow-wrap:anywhere}
.local-directory-notice p{margin:0 0 8px}
.local-directory-related{margin:28px 0 0;padding:20px 0 0;border-top:1px solid var(--home-line);font-size:.86rem;line-height:1.6;color:var(--home-muted)}
.local-directory-related h2{font-size:1rem;line-height:1.4;color:var(--home-ink);margin:0 0 6px}
.local-directory-related p{margin:0 0 8px}
.local-directory-related a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;text-underline-offset:3px}
.local-directory-related nav{display:flex;flex-wrap:wrap;gap:8px 24px}
.local-directory-back-top{position:fixed;z-index:40;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--home-surface);border-radius:50%;background:var(--home-teal);color:var(--home-surface);box-shadow:0 3px 12px #173f4830}
.local-directory-back-top[hidden]{display:none}
.local-directory a:focus-visible,.local-directory summary:focus-visible,.local-directory-back-top:focus-visible{outline:3px solid var(--home-teal);outline-offset:2px}
@media(min-width:900px){.page-local-directory .accommodation-search-content{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 18px;align-items:end}.page-local-directory .directory-filters{margin:0}}
@media(min-width:701px) and (max-width:900px){.local-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
    html:has(.page-local-directory){scroll-padding-top:calc(76px + env(safe-area-inset-top))}
    .page-local-directory{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
    .page-local-directory .directory-sticky-header{position:static;z-index:auto;padding-top:0}
    .page-local-directory .local-directory-mobile-bar{position:sticky;top:0;z-index:80;display:flex;align-items:center;min-height:calc(64px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) 100px 8px 10px;gap:4px;border-bottom:1px solid var(--home-line);background:var(--home-paper)}
    .page-local-directory .local-directory-mobile-back{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;flex:none;color:var(--home-teal);text-decoration:none;border-radius:10px;font-size:.8rem;gap:1px;padding:0 4px}
    .page-local-directory .local-directory-mobile-back:hover{background:var(--home-soft)}
    .page-local-directory .local-directory-mobile-title{flex:1;text-align:center;font-size:.95rem;font-weight:700;line-height:1.3;min-width:0}
    .page-local-directory .directory-sticky-header .topbar{padding:0;border:0;background:transparent}
    .page-local-directory .directory-sticky-header .topbar-inner{min-height:0;height:0;padding:0;position:static}
    .page-local-directory .directory-sticky-header .topbar-logo,.page-local-directory .directory-sticky-header .categorybar{display:none}
    .page-local-directory .site-language{position:fixed;z-index:90;top:calc(10px + env(safe-area-inset-top));right:58px;margin:0}
    .page-local-directory .site-language summary{justify-content:center;width:44px;padding:0;gap:3px;font-size:.8rem}
    .page-local-directory .site-language summary svg{display:none}
    .page-local-directory .directory-sticky-header .topbar-user{position:fixed;z-index:90;top:calc(10px + env(safe-area-inset-top));right:10px}
    .page-local-directory .language-panel{right:-44px;width:min(245px,calc(100vw - 32px))}
    .page-local-directory .territory-form{padding-top:8px;padding-bottom:10px}
    .page-local-directory .territory-select select{background:var(--home-soft);border-color:var(--home-line)}
    .page-local-directory .directory-main{padding-top:12px!important;padding-bottom:max(28px,env(safe-area-inset-bottom))}
    .page-local-directory .directory-intro{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
    .page-local-directory .directory-main h2{font-family:inherit}
    .page-local-directory .accommodation-search-state{display:none}
    .page-local-directory .accommodation-search-content{padding:16px}
    .local-directory-results-heading{margin:12px 0;gap:10px}
    .local-directory-count{font-size:.8rem;font-weight:650;color:var(--home-ink)}
    .local-directory-grid{grid-template-columns:minmax(0,1fr);gap:14px}
    .local-directory-result.has-media{display:grid;grid-template-columns:31% minmax(0,1fr)}
    .local-directory-result-media{grid-column:1;grid-row:1;aspect-ratio:auto;min-height:164px;height:100%}
    .local-directory-result-media>svg{width:32px;height:32px}
    .local-directory-result.has-media .local-directory-result-body{grid-column:2;grid-row:1}
    .local-directory-result-body{padding:12px}
    .local-directory-result h2{font-size:1.05rem;line-height:1.3;margin:4px 0;font-weight:700;letter-spacing:-.02em}
    .local-directory-result-kind{font-size:.75rem;line-height:1.4;margin:3px 0}
    .local-directory-result-description{font-size:.8125rem;line-height:1.45;margin:7px 0 0}
    .local-directory-result-meta,.local-directory-result-city{font-size:.75rem;line-height:1.4;margin:0}
    .local-directory-result-cta{grid-column:1 / -1;min-height:54px;padding:12px;margin:0;font-size:.8rem}
    .local-directory-result>.pro-illustration-label{grid-column:1 / -1}
    .local-directory-result-description.has-description-toggle:not(.is-expanded){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
    .local-directory-result-address,.local-directory-result-hours{font-size:.75rem;margin-top:7px}
    .local-directory-related{margin-top:24px;font-size:.82rem}
}
@media(max-width:359px){.page-local-directory .local-directory-mobile-back span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.page-local-directory .accommodation-search-summary{gap:8px;padding-inline:11px}.page-local-directory .accommodation-search-summary>svg:first-child{width:19px}.page-local-directory .accommodation-search-content{padding:12px}.local-directory-result.has-media{grid-template-columns:29% minmax(0,1fr)}.local-directory-result-body{padding:10px}.local-directory-result-cta{padding:10px}}
@media(prefers-reduced-motion:reduce){.page-local-directory .accommodation-search-chevron{transition:none}}
