/* Approved compact place directory, pilot Kreis Gütersloh only. */
.sx-place-directory{margin:30px 0 38px;border-radius:18px;background:#fff;box-shadow:0 10px 32px #172d460a;overflow:hidden;color:var(--sx-ink)}
.sx-place-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px 34px 24px}
.sx-place-directory .sx-place-eyebrow{margin:0 0 12px;color:var(--sx-orange);font-size:14px;font-weight:800;letter-spacing:.13em;line-height:1.3}
.sx-place-directory .sx-place-heading h2{position:relative;margin:0 0 20px;color:var(--sx-ink);font-size:clamp(28px,3.2vw,40px);line-height:1.12;font-weight:850;letter-spacing:-.035em}
.sx-place-heading h2:after{position:absolute;content:"";width:66px;height:3px;background:var(--sx-orange);bottom:-11px;left:0;border-radius:2px}
.sx-place-directory .sx-place-intro{margin:0;color:var(--sx-muted);font-size:16px;line-height:1.55}
.sx-place-tools{display:flex;align-items:center;gap:14px;flex:0 1 370px}
.sx-place-search{position:relative;display:block;flex:1;min-width:150px}
.sx-place-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:23px;height:23px;pointer-events:none;color:var(--sx-navy)}
.sx-place-search input{box-sizing:border-box;width:100%;height:46px;padding:10px 12px 10px 45px;border:1px solid var(--sx-line);border-radius:28px;background:#fff;color:var(--sx-ink);font:inherit;font-size:14px}
.sx-place-search input::placeholder{color:var(--sx-muted);opacity:1}
.sx-place-count{flex:none;white-space:nowrap;background:#fff0e3;color:#a74711;padding:8px 15px;border-radius:24px;font-size:14px}
.sx-place-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 26px;padding:7px 34px 26px}
.sx-place-list{list-style:none!important;padding:0!important;margin:0!important;min-width:0}
.sx-place-list+ .sx-place-list{position:relative}
.sx-place-list+ .sx-place-list:before{position:absolute;content:"";left:-13px;top:0;bottom:0;width:1px;background:#edf0f2}
.sx-place-list li{margin:0!important;padding:0!important;border-top:1px solid #e5eaf0;break-inside:avoid}
.sx-place-list a{display:flex;align-items:center;gap:15px;min-height:89px;padding:14px 3px;text-decoration:none;color:var(--sx-ink);border-radius:6px;box-sizing:border-box;transition:background .15s,color .15s}
.sx-place-dot{width:8px;height:8px;border-radius:50%;background:var(--sx-orange);flex:none;align-self:flex-start;margin-top:10px}
.sx-place-copy{flex:1;min-width:0}
.sx-place-copy strong{display:block;font-size:17px;line-height:1.35;letter-spacing:-.02em;font-weight:800;overflow-wrap:break-word}
.sx-place-copy small{display:block;color:var(--sx-muted);font-size:13px;line-height:1.5;margin-top:4px}
.sx-place-arrow{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid currentColor;border-radius:50%;font-size:24px;font-weight:400;flex:none;line-height:1}
.sx-place-list a:hover{background:#f0f5fa;color:var(--sx-orange)}
.sx-place-search input:focus-visible,.sx-place-list a:focus-visible{outline:3px solid var(--sx-orange);outline-offset:3px}
.sx-place-footer{display:flex;align-items:center;gap:35px;background:var(--sx-navy);padding:20px 34px;color:#fff}
.sx-place-directory .sx-place-footer p{margin:0;color:#fff;font-size:18px;line-height:1.5}
.sx-place-footer strong{font-weight:800}.sx-place-footer>span{height:1px;background:#ffffff45;flex:1}
.sx-place-directory .sx-place-empty{padding:10px 34px 30px;margin:0;font-size:16px;color:var(--sx-muted)}
.sx-place-directory [hidden]{display:none!important}
.sx-place-sr{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1120px){.sx-place-top{align-items:flex-start;flex-direction:column}.sx-place-tools{flex:auto;width:min(100%,410px)}.sx-place-columns{gap:0 20px}.sx-place-list+ .sx-place-list:before{left:-10px}.sx-place-list a{gap:10px}.sx-place-copy strong{font-size:16px}.sx-place-arrow{width:28px;height:28px;font-size:21px}}
@media(max-width:760px){.sx-place-top{padding:25px 24px 20px}.sx-place-columns{grid-template-columns:1fr;gap:0;padding:0 24px 24px}.sx-place-list+ .sx-place-list:before{display:none}.sx-place-list a{min-height:75px;padding:12px 3px;gap:15px}.sx-place-copy strong{font-size:17px}.sx-place-footer{padding:18px 24px}.sx-place-directory .sx-place-footer p{font-size:16px}.sx-place-footer>span{display:none}.sx-place-directory{border-radius:14px}.sx-place-directory .sx-place-intro{font-size:15px}}
@media(prefers-reduced-motion:reduce){.sx-place-list a{transition:none}}
