/* Cultural places: light surfaces and readable address details. */
.public-places{scroll-margin-top:100px}.place-intro{color:#667085;max-width:780px;font-size:16px;line-height:1.7;margin:-8px 0 24px}.place-result-count{font-size:13px;color:#667085;white-space:nowrap}.place-result-count b{color:#344054}.place-filters{background:#fff;border:1px solid #e2e5ea;padding:22px;border-radius:16px;margin-bottom:25px}.place-search-row{display:flex;align-items:center;gap:18px;margin-bottom:20px}.place-search{display:flex;align-items:center;gap:10px;max-width:520px;flex:1;border:1px solid #d8dde5;background:#f7f8fa;border-radius:10px;padding:0 14px;color:#667085}.place-search input{width:100%;border:0;background:transparent;color:#1d2939;padding:13px 0;outline:0;min-width:0;font:inherit;font-size:14px}.place-search:focus-within{border-color:#ef3e46;box-shadow:0 0 0 3px #ef3e4612}.place-reset{background:none;border:0;color:#b9232d;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;padding:10px 0;white-space:nowrap}.place-reset:hover{text-decoration:underline}.place-filter-line{display:flex;gap:16px;align-items:flex-start;margin:11px 0 0;min-width:0}.place-filter-line>span{color:#667085;font-size:12px;font-weight:650;flex:0 0 68px;padding-top:8px}.place-chip-list{display:flex;gap:7px;flex-wrap:wrap;min-width:0}.place-chip-list button{padding:7px 11px;background:#f5f6f8;border:1px solid #e3e6eb;border-radius:8px;font:500 12px/1.4 system-ui,sans-serif;color:#475467;cursor:pointer;white-space:nowrap}.place-chip-list button:hover{border-color:#f09a9f;background:#fff4f4}.place-chip-list button.active{color:#b2232c;border-color:#f6c2c5;background:#fff0f1}.place-chip-list button:focus-visible,.place-reset:focus-visible{outline:2px solid #ef3e46;outline-offset:3px}.place-city-chips{max-height:90px;overflow:auto;padding:1px 3px 3px 1px;scrollbar-width:thin}.public-place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.public-place-card{background:#fff;border:1px solid #e2e5ea;border-radius:16px;overflow:hidden;transition:box-shadow .2s,transform .2s}.public-place-card:hover{box-shadow:0 10px 28px #25324b0d;transform:translateY(-2px)}.public-place-card[hidden]{display:none!important}.public-place-photo{display:block;position:relative;height:160px;overflow:hidden}.public-place-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.public-place-card:hover .public-place-photo img{transform:scale(1.025)}.public-place-photo>span{position:absolute;bottom:10px;left:12px;display:flex;gap:5px;align-items:center;color:#fff;background:#263042a8;border:1px solid #ffffff30;border-radius:7px;padding:5px 8px;font-size:11px;backdrop-filter:blur(5px)}.public-place-copy{padding:22px}.public-place-copy h3{color:#1d2939;font-size:20px;line-height:1.35;margin:10px 0}.public-place-copy h3 a{color:inherit}.public-place-copy h3 a:hover{color:#be2731}.public-place-copy>p{font-size:14px;line-height:1.7;color:#667085;min-height:48px;margin:0 0 16px}.public-place-address{display:flex;gap:7px;font-size:12px;color:#475467;line-height:1.6;padding-top:13px;border-top:1px solid #eef0f4;min-height:54px}.public-place-address svg{flex:none;margin-top:2px;color:#b82e36}.public-place-photo-note{display:block;font-size:10px;color:#98a2b3;margin:10px 0 14px}.public-place-copy .text-link{font-size:13px;color:#c32c36}.place-filter-empty{padding:38px;border:1px dashed #d5dae2;border-radius:13px;color:#667085;text-align:center;background:#fff}.place-photo-disclosure{font-size:12px;color:#7a8697;line-height:1.6;margin-top:20px}.place-detail-top{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #e2e5ea;border-radius:20px;background:#fff;overflow:hidden;margin:28px 0}.place-detail-copy{padding:42px;align-self:center}.place-detail-copy h1{font-size:clamp(30px,3vw,46px);line-height:1.15;letter-spacing:-.035em;color:#1d2939;margin:15px 0 20px}.place-detail-summary{font-size:18px;line-height:1.75;color:#667085;margin-bottom:25px}.place-detail-location{display:flex;gap:8px;align-items:center;color:#475467;font-size:14px}.place-detail-location svg{color:#d8343e}.place-detail-top figure{margin:0;position:relative;min-height:310px}.place-detail-top figure img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.place-detail-top figcaption{position:absolute;left:14px;bottom:14px;right:14px;z-index:1;width:max-content;max-width:calc(100% - 28px);padding:6px 9px;border-radius:6px;background:#fffffff0;color:#475467;font-size:11px}.place-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.place-address-card{border:1px solid #e2e5ea;border-radius:17px;background:#fff;padding:32px}.place-address-card h2{font-size:23px;color:#1d2939;margin:20px 0 12px}.place-address-text{font-size:18px;color:#344054;line-height:1.65;overflow-wrap:anywhere}.place-address-card h3{font-size:13px;color:#667085;margin:25px 0 10px;font-weight:600}.place-address-card code{display:inline-block;padding:10px 13px;border:1px solid #e2e5ea;border-radius:8px;background:#f5f6f8;color:#344054;font-size:14px;letter-spacing:.01em}.place-address-card .small{margin-top:18px;font-size:12px;line-height:1.7}.place-detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.place-location-map{border:1px solid #e2e5ea;border-radius:17px;background:#f1f4f7;overflow:hidden;display:flex;flex-direction:column}.place-map-label{display:flex;align-items:center;gap:8px;padding:20px 24px;background:#fff;border-bottom:1px solid #e2e5ea;color:#475467;font-weight:600;font-size:14px}.place-location-map svg{display:block;width:100%;min-height:220px;max-height:300px;flex:1;background:#eef2f6}.place-location-map svg image{opacity:.25}.place-location-map>p{background:#fff;margin:0;color:#667085;padding:18px 24px;font-size:12px;line-height:1.7;border-top:1px solid #e2e5ea}@media(max-width:1200px){.public-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.place-detail-copy{padding:30px}.place-detail-grid{gap:18px}}@media(max-width:760px){.public-place-grid{grid-template-columns:1fr}.place-filters{padding:16px}.place-search-row{gap:10px;align-items:stretch}.place-reset{font-size:11px}.place-filter-line{display:block}.place-filter-line>span{display:block;padding:0;margin:13px 0 8px}.place-city-chips{max-height:94px}.public-place-photo{height:190px}.public-place-copy>p{min-height:0}.place-detail-top,.place-detail-grid{grid-template-columns:1fr}.place-detail-top figure{min-height:220px}.place-detail-copy{padding:26px}.place-detail-summary{font-size:16px}.place-address-card{padding:26px}.place-result-count{font-size:11px}.place-detail-grid{gap:18px}}
