
.sr{position:absolute;clip-path:inset(50%);height:1px;width:1px;overflow:hidden}.venue-hero{padding-top:clamp(80px,10vw,150px);padding-bottom:clamp(70px,8vw,120px);border-bottom:1px solid var(--line)}.venue-hero .page-title{font-size:clamp(3.4rem,8vw,8.3rem)}.venue-hero .page-title em{font-style:normal;color:var(--pink)}.venue-hero>p:last-child{max-width:650px;font-size:1.12rem;margin:30px 0 0}.directory{padding-top:clamp(70px,8vw,120px);padding-bottom:clamp(80px,9vw,130px)}.section-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}.section-intro h2,.submit h2{font:clamp(2.8rem,6vw,6rem)/.9 "Archivo Black";letter-spacing:-.065em;margin:0}.section-intro>p{max-width:390px}.toolbar{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:14px 0;display:flex;gap:12px}.search-wrap{flex:1;display:flex;align-items:center;gap:10px;min-width:240px}.search-wrap input,.select-wrap select{border:0;background:transparent;outline:0;font:inherit;color:var(--ink)}.search-wrap input{width:100%;height:48px}.select-wrap{display:flex;align-items:center;gap:8px;padding:0 12px;border-left:1px solid var(--line);font-size:.75rem;font-weight:700;text-transform:uppercase}.reset{border:0;background:none;font:700 .75rem "DM Sans";text-transform:uppercase;cursor:pointer}.view-tabs{display:flex;align-items:center;gap:8px;margin:22px 0}.view-tabs button{background:transparent;border:1px solid var(--ink);padding:9px 18px;cursor:pointer;font-weight:700}.view-tabs button.active{background:var(--ink);color:var(--paper)}#count{margin-left:auto;font-size:.78rem;font-weight:700}.map-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,.8fr);gap:22px;align-items:start}.map-shell{position:sticky;top:20px}.map-shell #map{height:690px;overflow:hidden;background:#ddd6ca;border:1px solid var(--ink)}.map-consent{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--paper);z-index:1}.map-icon{font-size:64px;color:var(--pink)}.map-credit{display:block;text-align:right;font-size:.67rem;opacity:.65;margin-top:6px}.map-results{max-height:690px;overflow:auto;display:grid;gap:0;border-top:1px solid var(--ink)}.venue-card{background:transparent;border-bottom:1px solid var(--ink);padding:24px 4px}.venue-card.selected{background:rgba(237,79,155,.08)}.card-top{display:flex;justify-content:space-between;gap:12px}.pill{font-size:.68rem;color:var(--pink);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.area{font-size:.72rem}.venue-card h3{font:1.8rem/.95 "Archivo Black";letter-spacing:-.05em;margin:14px 0 7px}.address{font-size:.82rem;opacity:.7}.card-metrics{display:flex;flex-wrap:wrap;gap:12px;font-size:.76rem;font-weight:700}.details-trigger{width:100%;border:0;border-top:1px solid var(--line);background:none;text-align:left;cursor:pointer;font-weight:700;margin-top:18px;padding:14px 0 0}.details{border-top:1px solid var(--line);margin-top:18px;padding-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}.details b{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}.details p{font-size:.82rem;margin:4px 0 10px}.contacts{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:14px;font-size:.76rem;font-weight:700;color:var(--pink)}.list-view{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px}.list-view[hidden],.map-layout[hidden],.empty[hidden]{display:none}.submit{border-top:1px solid var(--ink);padding-top:clamp(65px,8vw,110px);padding-bottom:clamp(65px,8vw,110px);display:flex;justify-content:space-between;align-items:end;gap:40px}.submit p{max-width:500px}.shameless-pin{background:var(--pink);border:3px solid var(--ink);color:var(--ink);border-radius:50%;font-size:21px;text-align:center;line-height:28px}.map-error{position:absolute;z-index:1000;bottom:20px;left:20px;background:var(--paper);padding:12px;border:1px solid var(--ink)}
@media(max-width:950px){.toolbar{flex-wrap:wrap}.search-wrap{flex-basis:100%}.map-layout{grid-template-columns:1fr}.map-shell{position:relative}.map-shell #map{height:480px}.map-results{max-height:none;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.section-intro,.submit{display:block}.section-intro>p{margin-top:24px}.toolbar{display:grid;grid-template-columns:1fr 1fr}.search-wrap{grid-column:1/-1}.select-wrap{border-left:0;padding:0}.reset{grid-column:1/-1;padding:12px}.map-shell #map{height:390px}.map-results,.list-view{grid-template-columns:1fr}.details{grid-template-columns:1fr}.submit .button{margin-top:20px}}


/* v14 — subtle ocean identity on Venues */
.venue-hero{position:relative;isolation:isolate;overflow:hidden;background-image:linear-gradient(90deg,rgba(242,238,228,.48),rgba(242,238,228,.30)),url('/assets/backgrounds/water-caustics.jpg?v=14');background-size:cover;background-position:center 54%}
.directory{position:relative;isolation:isolate;background-image:linear-gradient(rgba(242,238,228,.78),rgba(242,238,228,.78)),url('/assets/backgrounds/pearl-shell.jpg?v=14');background-size:cover;background-position:center}
.submit{position:relative;isolation:isolate;background-image:linear-gradient(90deg,rgba(242,238,228,.70),rgba(242,238,228,.48)),url('/assets/backgrounds/sea-foam.jpg?v=14');background-size:cover;background-position:center}
.venue-hero.shell,.directory.shell,.submit.shell{width:100%;max-width:none;margin:0;padding-left:max(clamp(22px,4vw,64px),calc((100vw - 1440px)/2 + 64px));padding-right:max(clamp(22px,4vw,64px),calc((100vw - 1440px)/2 + 64px))}
@media(max-width:900px){.venue-hero.shell,.directory.shell,.submit.shell{padding-left:22px;padding-right:22px}.venue-hero{background-image:linear-gradient(rgba(242,238,228,.48),rgba(242,238,228,.48)),url('/assets/backgrounds/water-caustics.jpg?v=14')}.directory{background-image:linear-gradient(rgba(242,238,228,.80),rgba(242,238,228,.80)),url('/assets/backgrounds/pearl-shell.jpg?v=14')}.submit{background-image:linear-gradient(rgba(242,238,228,.68),rgba(242,238,228,.68)),url('/assets/backgrounds/sea-foam.jpg?v=14')}}

/* v15 – gleichartige Bedienelemente in Kartenansicht und Liste */
.details-trigger,.reset,.view-tabs button{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  background:var(--ink);border:1px solid var(--ink);color:#fff;
  padding:11px 16px;cursor:pointer;font:700 .76rem/1.4 'DM Sans',sans-serif;
  letter-spacing:.055em;text-transform:uppercase;transition:background-color .18s,border-color .18s,color .18s;
}
.details-trigger{width:100%;margin-top:18px;text-align:center}
.reset{align-self:center;min-height:43px}
.view-tabs button.active{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:inset 0 -3px 0 var(--pink)}
@media(hover:hover) and (pointer:fine){
  .details-trigger:hover,.reset:hover,.view-tabs button:hover,.view-tabs button.active:hover{background:var(--pink);border-color:var(--pink);color:#fff}
}
.details-trigger:focus-visible,.reset:focus-visible,.view-tabs button:focus-visible{outline:3px solid var(--pink);outline-offset:3px}
@media(hover:none), (pointer:coarse){
  .details-trigger,.reset,.view-tabs button,.view-tabs button.active{background:var(--pink);border-color:var(--pink);color:#fff}
  .view-tabs button.active{box-shadow:inset 0 -3px 0 var(--ink)}
}
@media(max-width:680px){.reset{width:100%}.view-tabs button{min-height:44px}}
