.shr{--shr-red:#bc1733;--shr-dark:#241b20;--shr-border:#ede2e5;color:var(--shr-dark);font-family:inherit}.shr *{box-sizing:border-box}.shr-wrap{width:min(1140px,calc(100% - 36px));margin:auto}.shr-hero{background-image:linear-gradient(90deg,rgba(20,14,18,.87),rgba(20,14,18,.34)),var(--shr-hero,linear-gradient(135deg,#432029,#a01332));background-size:cover;background-position:center;min-height:430px;color:#fff}.shr-shade{padding:32px 0 65px}.shr-hero h1{font-size:clamp(2.3rem,5vw,4.4rem);line-height:1.12;color:#fff;margin:35px 0 20px}.shr-hero p{margin:8px 0}.shr-hero p a{color:#fff}.shr-langs{display:flex;gap:6px;justify-content:flex-end}.shr-langs a{color:#fff;padding:7px 14px;border:1px solid #ffffff80;border-radius:18px;text-decoration:none}.shr-langs a[aria-current=page]{background:var(--shr-red);border-color:var(--shr-red)}.shr-labels{display:flex;gap:9px;flex-wrap:wrap;margin-top:36px}.shr-labels span{border:1px solid #ffffff88;border-radius:14px;padding:4px 10px;font-size:.85rem}.shr-cta{display:inline-block;background:var(--shr-red);color:white!important;padding:15px 25px;border-radius:9px;text-decoration:none!important;font-weight:700;margin-top:18px;box-shadow:0 5px 20px #24070b3b}.shr-cta:hover,.shr-more:hover{background:#93102a;color:#fff}.shr-content{padding:32px 0 65px}.shr-content section{padding:22px 0 34px;border-bottom:1px solid var(--shr-border)}.shr-content h2{font-size:1.7rem;margin-bottom:24px}.shr-description{max-width:880px;line-height:1.75}.shr-description p{margin:0 0 1.3em}.shr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:13px}.shr-amenity,.shr-near{display:flex;align-items:center;gap:13px;border:1px solid var(--shr-border);background:#fffafb;padding:15px;border-radius:12px}.shr-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;color:var(--shr-red);border-radius:10px;background:#fde6eb;min-width:44px;height:44px;font-size:24px}.shr-near strong{margin-left:auto;white-space:nowrap}.shr-extra{display:none}.shr-expanded .shr-extra{display:flex}.shr-more{margin-top:17px;background:var(--shr-red);color:white;border:0;padding:10px 20px;border-radius:9px;cursor:pointer}.shr-map{width:100%;height:370px;border:0;border-radius:16px}.shr-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.shr-card{display:block;border:1px solid var(--shr-border);border-radius:12px;overflow:hidden;text-decoration:none;color:var(--shr-dark);background:white}.shr-card img{display:block;width:100%;height:165px;object-fit:cover}.shr-card strong{display:block;padding:15px}.shr-bottom{text-align:center;padding-top:30px}.shr-muted{opacity:.65}@media(max-width:680px){.shr-related{grid-template-columns:repeat(2,minmax(0,1fr))}.shr-card img{height:110px}.shr-hero{min-height:400px}}
/* Version 0.2: stronger red identity, responsive amenities and related cards */
.shr {--shr-primary:#c51f36;--shr-red-dark:#981528;}
.shr .shr-cta,.shr .shr-more {background:#c51f36;color:#fff;border-color:#c51f36}
.shr .shr-cta:hover,.shr .shr-more:hover {background:#981528}
.shr .shr-icon{display:inline-flex;align-items:center;justify-content:center;color:#c51f36;background:#fff0f2;border:1px solid #f5cbd0;border-radius:12px;min-width:40px;height:40px}
.shr .shr-icon svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.shr .shr-amenity,.shr .shr-near{display:flex;align-items:center;gap:12px}
.shr .shr-hero .shr-langs a[aria-current=page]{background:#c51f36;color:white}
.shr .shr-related .shr-card:hover{border-color:#c51f36}

.shr-directory{max-width:1160px;margin:2rem auto;padding:0 18px}.shr-directory-hero{background:linear-gradient(110deg,#431725,#c21b38);color:white;padding:38px;border-radius:18px}.shr-directory-hero h2{color:white;margin:0 0 10px;font-size:2rem}.shr-directory-hero form{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.shr-directory-hero input,.shr-directory-hero select{border:0;border-radius:9px;min-height:46px;padding:10px;flex:1;min-width:170px}.shr-directory-hero button{border:0;background:#fff;color:#aa1230;padding:12px 22px;border-radius:9px;font-weight:700;cursor:pointer}.shr-directory-results{margin:25px 0}.shr-directory-card{display:grid;grid-template-columns:minmax(170px,285px) 1fr;border:1px solid #eee0e5;border-radius:13px;overflow:hidden;margin-bottom:16px;background:white}.shr-directory-card img{width:100%;height:100%;min-height:200px;object-fit:cover;display:block}.shr-directory-card>div{padding:22px}.shr-directory-card h3{margin:0 0 9px}.shr-directory-card p{margin:8px 0}.shr-directory-card .shr-cta{margin-top:9px}.shr-pages{display:flex;gap:7px}.shr-pages a{padding:9px 15px;border:1px solid #d8b5c0;border-radius:7px}.shr-pages a[aria-current]{background:#c21b38;color:white}@media(max-width:650px){.shr-directory-card{grid-template-columns:1fr}.shr-directory-card img{height:200px}.shr-directory-hero{padding:23px}}
/* v1.3 frontend refinement */
.shr .shr-related{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.shr .shr-card{box-shadow:0 7px 24px rgba(33,16,22,.08);transition:transform .2s,box-shadow .2s}.shr .shr-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(33,16,22,.13)}.shr .shr-card-image{display:block;overflow:hidden}.shr .shr-card-image img{height:187px;width:100%;object-fit:cover}.shr .shr-card-body{padding:18px}.shr .shr-card h3{font-size:1.16rem;margin:9px 0}.shr .shr-card h3 a{color:#211820;text-decoration:none}.shr .shr-card-tags{display:flex;gap:5px;flex-wrap:wrap}.shr .shr-card-tags span{color:#ae1c34;background:#fff0f3;border-radius:6px;padding:3px 7px;font-size:.72rem;font-weight:700}.shr .shr-card-address{font-size:.84rem;color:#71666b;margin:5px 0}.shr .shr-card-teaser{font-size:.85rem;line-height:1.5;color:#67565e;min-height:48px}.shr .shr-card-button{display:inline-flex;background:#be1e39;color:white;text-decoration:none;font-weight:700;padding:10px 15px;border-radius:8px;margin-top:8px}.shr .shr-rating{display:inline-flex;align-items:center;gap:6px;color:#a31831;font-weight:800;background:#fff0f3;padding:5px 10px;border-radius:8px;text-decoration:none;font-size:1.02rem}.shr .shr-rating small{font-size:.72rem;font-weight:500;color:#5e5055}.shr .shr-hero .shr-rating{background:#fff;color:#a31831}.shr .shr-related-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.shr .shr-related-heading span{color:#77656b}.shr .shr-amenity{background:#fff;border:1px solid #f1e1e5;box-shadow:0 2px 8px rgba(55,12,24,.035)}.shr .shr-amenity .shr-icon{height:48px;min-width:48px;background:linear-gradient(145deg,#fff0f3,#fff);border:1px solid #f1cad3;box-shadow:0 3px 10px #b81b3320}.shr .shr-amenity .shr-icon svg{height:25px;width:25px;stroke-width:1.75}.shr .shr-map-pending{background:linear-gradient(120deg,#f8f3f4,#eee8ea);border:1px dashed #ba9da5;border-radius:16px;min-height:180px;padding:30px}.shr .shr-card-placeholder{height:187px;background:linear-gradient(135deg,#6b2536,#cc3050);color:#fff;display:grid;place-items:center;font-size:3.5rem}@media(max-width:900px){.shr .shr-related{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.shr .shr-related{grid-template-columns:1fr}.shr .shr-card-image img{height:220px}.shr .shr-card-teaser{min-height:0}}

/* v1.4 desktop reading layout and independent sticky location map */
@media(min-width:980px){.shr .shr-wrap.shr-content{display:grid;grid-template-columns:minmax(0,1fr) 355px;column-gap:38px;align-items:start}.shr .shr-main-column{min-width:0}.shr .shr-location-sidebar{grid-column:2;grid-row:1}.shr .shr-sidebar-sticky{position:sticky;top:30px}.shr .shr-location-sidebar section{border:1px solid #eedde2;border-radius:19px;padding:20px;box-shadow:0 9px 35px rgba(28,15,18,.08)}.shr .shr-location-sidebar h2{margin:0 0 15px}.shr .shr-location-sidebar .shr-map{height:360px}.shr .shr-related{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:979px){.shr .shr-location-sidebar{margin-top:25px}}
.shr .shr-amenity{gap:15px;border-radius:16px;transition:box-shadow .2s,border-color .2s}.shr .shr-amenity:hover{border-color:#dfa9b5;box-shadow:0 6px 22px #77142a1c}.shr .shr-amenity .shr-icon{width:54px;height:54px;min-width:54px;border-radius:16px;background:linear-gradient(155deg,#fffafc 10%,#ffe1e8 95%);box-shadow:inset 0 1px #fff,0 4px 13px #a3294521}.shr .shr-amenity .shr-icon svg{width:29px;height:29px;stroke-width:1.65}.shr .shr-langs{position:relative;z-index:20}.shr .shr-langs a{display:inline-flex;justify-content:center;align-items:center;min-width:49px;min-height:36px;font-weight:800;background:#25151bbd;border:1px solid #ffffff9c}.shr .shr-langs a:hover{background:#b8193a}.shr .shr-location-sidebar .shr-map-pending{min-height:230px}

.shr-rating-sources{font-size:12px;margin-top:6px;line-height:1.6;max-width:440px}.shr-rating-sources a{color:inherit;text-decoration:underline;text-underline-offset:2px}.shr-rating{display:inline-block;max-width:100%;height:auto}

/* 1.6: structural two-column layout: location ONLY in right rail. */
.shr .shr-wrap.shr-content{display:block}
.shr .shr-location-sidebar .shr-map{display:block;width:100%;min-height:350px}
.shr .shr-location-sidebar .shr-map-pending{min-height:190px}
.shr .shr-main-column,.shr .shr-location-sidebar{min-width:0}
.shr .shr-related-section{clear:both}
.shr .shr-admin-warning{background:#fff4e2;color:#412719;padding:11px 15px;margin:15px 0;border-radius:8px;font-size:14px}
.shr .shr-admin-warning a{color:#8d1730}
.shr .shr-hero nav.shr-langs{display:flex!important;position:relative!important;visibility:visible!important;opacity:1!important;z-index:50!important;justify-content:flex-end;flex-wrap:wrap;margin:0 0 24px}
.shr .shr-hero nav.shr-langs a{display:inline-flex!important;visibility:visible!important;opacity:1!important;background:#271920ed!important;color:#fff!important;border:1px solid #fff9!important;padding:9px 14px!important;border-radius:9px!important;text-decoration:none!important;font-size:14px!important;line-height:1.35!important}
.shr .shr-hero nav.shr-langs a[aria-current=page]{background:#c51f36!important;border-color:#c51f36!important}
.shr .shr-hero nav.shr-langs a:first-child{margin-right:auto}
@media(min-width:980px){.shr .shr-wrap.shr-content{display:grid;grid-template-columns:minmax(0,1fr) 360px;column-gap:32px;align-items:start}.shr .shr-main-column{grid-column:1;grid-row:1}.shr .shr-location-sidebar{grid-column:2;grid-row:1}.shr .shr-sidebar-sticky{position:sticky;top:32px}.shr .shr-related-section{grid-column:1 / -1;grid-row:2}.shr .shr-bottom{grid-column:1 / -1}.shr .shr-location-sidebar section{border:1px solid #ead9df;border-radius:16px;padding:16px;box-shadow:0 8px 27px #24121b14}.shr .shr-location-sidebar .shr-map{height:385px}}
@media(max-width:979px){.shr .shr-location-sidebar{margin-top:22px}.shr .shr-related-section{margin-top:22px}}

/* v1.7: inline swipeable card carousel, circular navigation, distinctive facility icons */
.shr .shr-related-heading{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.shr .shr-carousel-controls{display:flex;gap:10px;margin-left:auto}
.shr .shr-carousel-arrow{appearance:none;display:grid;place-items:center;width:46px;height:46px;padding:0;border-radius:50%;border:1.5px solid #c51f36;background:#fff;color:#c51f36;cursor:pointer;box-shadow:0 4px 12px #53112015;transition:background .2s,color .2s,transform .2s}
.shr .shr-carousel-arrow:hover,.shr .shr-carousel-arrow:focus-visible{background:#c51f36;color:white;transform:translateY(-2px)}
.shr .shr-carousel-arrow svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.shr .shr-related,.shr .shr-related-section .shr-related{display:flex!important;gap:20px!important;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:8px 3px 19px;max-width:100%;grid-template-columns:none!important}
.shr .shr-related::-webkit-scrollbar{display:none}
.shr .shr-related .shr-card{flex:0 0 clamp(252px,31%,348px);min-width:0;scroll-snap-align:start}
@media(max-width:760px){.shr .shr-related .shr-card{flex-basis:min(82vw,340px)}.shr .shr-carousel-arrow{width:42px;height:42px}}
.shr .shr-amenity .shr-icon{flex:0 0 58px;width:58px;height:58px;min-width:58px;border:1px solid #efbfc9;background:radial-gradient(circle at 25% 10%,#fff 0,#fff1f4 63%,#ffe5eb 100%);box-shadow:0 5px 14px #9b19301c;border-radius:18px;color:#b71939}
.shr .shr-amenity .shr-icon svg{height:33px;width:33px;stroke-width:1.85}
.shr .shr-near .shr-icon svg{height:25px;width:25px}
.shr .shr-amenity{min-height:90px;align-items:center;font-weight:550}
.shr .shr-langs,.shr .shr-hero nav.shr-langs{position:relative!important;z-index:99!important;display:flex!important;align-items:center!important;gap:8px!important;justify-content:flex-end!important;padding:8px!important;background:#20141cbe!important;border:1px solid #ffffff54;border-radius:12px;max-width:max-content;margin-left:auto!important}
.shr .shr-lang-title{font-size:13px;color:#fff;padding:0 7px}
.shr .shr-hero nav.shr-langs a:first-of-type{margin-right:16px}
.shr .shr-hero nav.shr-langs a{font-weight:750!important;padding:10px 15px!important}
.shr .shr-booking-unavailable,.shr .shr-booking-unavailable:hover{display:inline-block!important;opacity:.62!important;cursor:not-allowed!important;background:#a33e4c!important;color:white!important;box-shadow:none}
.shr .shr-nearby-section{min-height:120px}
.shr .shr-nearby-pending{padding:18px 21px;border-left:3px solid #bc1733;background:#fff7f8;border-radius:0 9px 9px 0}
.shr .shr-nearby-retry{color:#a71934;font-weight:700}

/* v1.8: align classifications and language controls, rating and booking button.
   Keeps both controls in the visible body of the hero, away from fixed theme headers. */
.shr .shr-hero .shr-shade{padding-top:clamp(55px,7vw,105px)!important;padding-bottom:52px!important}
.shr .shr-hero-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;width:100%}
.shr .shr-hero-meta .shr-labels{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0!important;flex:1 1 420px}
.shr .shr-hero-meta .shr-langs{position:static!important;display:flex!important;align-items:center!important;gap:4px!important;margin:0 0 0 auto!important;padding:4px!important;background:rgba(25,15,20,.82)!important;border:1px solid #ffffff70!important;border-radius:50px!important;max-width:none!important;flex:0 0 auto}
.shr .shr-hero-meta .shr-langs a,.shr .shr-hero-meta .shr-langs a:first-of-type{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:9px 16px!important;min-width:49px;margin:0!important;border-radius:50px!important;font-size:14px!important;font-weight:800!important;color:white!important;background:transparent!important;border:0!important;line-height:1.2!important;text-decoration:none!important}
.shr .shr-hero-meta .shr-langs a[aria-current="page"]{background:#c51f36!important;color:white!important;box-shadow:0 1px 6px #1d0a1138!important}
.shr .shr-hero-actions{display:flex;gap:18px;align-items:center;justify-content:flex-end;flex-wrap:wrap;width:100%;margin-top:18px}
.shr .shr-hero-actions .shr-cta{margin:0!important;display:inline-flex!important;align-items:center;justify-content:center;min-height:50px;text-align:center}
.shr .shr-hero-rating{display:flex;align-items:center;justify-content:flex-end;min-height:48px}
.shr .shr-hero h1{margin-top:24px!important}
@media(max-width:720px){.shr .shr-hero-meta{align-items:flex-start}.shr .shr-hero-meta .shr-labels{flex:1 1 190px}.shr .shr-hero-actions{justify-content:flex-start}.shr .shr-hero .shr-shade{padding-top:65px!important}}

/* v1.9: theme-header safe classifications, immutable initial ten-item visibility */
.shr .shr-hero{position:relative!important;z-index:1!important;overflow:visible!important}
.shr .shr-hero .shr-shade{padding-top:clamp(125px,12vw,190px)!important}
.shr .shr-hero-meta{position:relative!important;z-index:3!important;padding-top:10px!important}
.shr .shr-hero-meta .shr-labels{margin:0!important;padding:0!important;position:relative!important;top:auto!important;z-index:4!important}
.shr .shr-hero-meta .shr-labels span{display:inline-flex!important;align-items:center!important;min-height:32px!important;margin:0!important;background:#29161fbb!important;color:white!important;border:1px solid #ffffff80!important}
.shr .shr-amenities .shr-amenity.shr-extra,.shr .shr-grid .shr-amenity.shr-extra{display:none!important}
.shr .shr-amenities .shr-amenity[hidden]{display:none!important}
.shr .shr-hero-rating .shr-rating{max-width:100%;flex-wrap:wrap}
.shr .shr-hero-rating .shr-rating-empty{font-size:.86rem;color:#aa1935;padding:12px 15px}
@media(max-width:760px){.shr .shr-hero .shr-shade{padding-top:105px!important}.shr .shr-hero-meta .shr-labels{flex-basis:100%!important}}

/* v2.0: booking action left, single-score badge right */
.shr .shr-hero-actions{justify-content:space-between!important;flex-direction:row!important;width:100%!important}
.shr .shr-hero-booking{order:1!important;margin-right:auto!important}
.shr .shr-hero-rating{order:2!important;margin-left:auto!important;justify-content:flex-end!important}
.shr .shr-rating{display:inline-flex!important;align-items:baseline!important;gap:4px!important;white-space:nowrap!important;font-weight:800!important}
.shr .shr-rating small{font-size:.65em!important;font-weight:700!important}
.shr .shr-rating-sources{display:none!important}
@media(max-width:600px){.shr .shr-hero-actions{gap:12px!important}.shr .shr-hero-booking{max-width:100%}}

/* 2.1 directory layout: hero search above separate left filters */
.shr-directory .shr-directory-layout{display:grid;grid-template-columns:minmax(215px,260px) minmax(0,1fr);gap:24px;align-items:start;margin-top:24px}
.shr-directory .shr-directory-sidebar{padding:22px;background:#fff;border:1px solid #e8d9de;border-radius:15px;position:sticky;top:25px;box-shadow:0 8px 25px rgba(45,10,20,.06)}
.shr-directory-sidebar h3{font-size:1.13rem;margin:0 0 22px}
.shr-directory-filters{display:flex;flex-direction:column;gap:10px}
.shr-directory-filters label{font-weight:700;margin-top:8px}
.shr-directory-filters select{width:100%;min-height:45px;border:1px solid #d6c3ca;border-radius:9px;background:#fff;color:#321d25;padding:8px}
.shr-directory-filters .shr-filter-apply{padding:12px;border:0;border-radius:9px;background:#b51a35;color:white;font-weight:700;cursor:pointer;margin-top:12px}
.shr-reset-filters{text-align:center;color:#a01833;font-weight:600;padding:7px}
.shr-directory .shr-directory-results{margin:0 0 22px}
.shr-directory .shr-hero-search{display:flex;flex-wrap:nowrap;align-items:stretch;gap:10px;max-width:880px}
.shr-hero-search .shr-autocomplete-wrap{position:relative;flex:1;min-width:0}
.shr-hero-search .shr-autocomplete-wrap>input{width:100%;min-width:0;height:50px}
.shr-hero-search>button{flex:none;min-width:112px}
.shr-suggestions{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:999;background:#fff;color:#222;border:1px solid #e3d6db;box-shadow:0 12px 28px rgba(0,0,0,.17);border-radius:10px;overflow:hidden;max-height:330px;overflow-y:auto}
.shr-suggestions[hidden]{display:none!important}
.shr-suggestion{display:flex;width:100%;justify-content:space-between;gap:12px;padding:12px 15px;border:0;border-bottom:1px solid #eee;background:#fff;color:#231b1e;text-align:left;cursor:pointer}
.shr-suggestion:hover,.shr-suggestion:focus{background:#fff0f4}
.shr-suggestion small{color:#a01a36;flex:none}
@media(max-width:780px){.shr-directory .shr-directory-layout{grid-template-columns:1fr}.shr-directory .shr-directory-sidebar{position:static}.shr-directory .shr-hero-search{flex-wrap:nowrap}.shr-hero-search>button{min-width:90px}}

/* 2.2: hero actions share one row; booking on left, score on right */
.shr .shr-hero-actions{display:flex!important;flex-flow:row wrap!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;width:100%!important}
.shr .shr-hero-actions>.shr-hero-booking{order:0!important;margin:0 auto 0 0!important;flex:0 1 auto}
.shr .shr-hero-actions>.shr-hero-rating{order:1!important;margin:0 0 0 auto!important;flex:0 0 auto;justify-content:flex-end!important}
/* Reference-style faceted sidebar */
.shr-directory .shr-directory-sidebar{top:90px}
.shr-directory .shr-filter-section{border-top:1px solid #f0e3e7;padding:15px 0 12px}
.shr-directory .shr-filter-section h4{margin:0 0 10px;font-size:1rem;color:#321d25}
.shr-directory .shr-filter-scroll{max-height:270px;overflow-y:auto;overscroll-behavior:contain;padding-right:5px}
.shr-directory .shr-filter-check{display:flex;align-items:center;gap:9px;padding:7px 3px 7px calc(3px + var(--shr-depth,0)*11px);font-size:.86rem;font-weight:500;margin:0;cursor:pointer;line-height:1.35}
.shr-directory .shr-filter-check input{accent-color:#b51a35;flex:0 0 17px;width:17px;height:17px;margin:0}
.shr-directory .shr-filter-check span:nth-child(2){flex:1;min-width:0}
.shr-directory .shr-facet-count{background:#f7e8ed;color:#ad2340;font-size:.75rem;border-radius:20px;padding:2px 7px;font-weight:700}
.shr-directory .shr-reset-filters{display:inline-block;margin-top:12px;border:1px solid #bd2b47;border-radius:8px;color:#ab1b34;text-decoration:none;font-weight:700;padding:9px 15px}
.shr-directory .shr-directory-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:15px}
.shr-directory .shr-directory-toolbar select{border:1px solid #dbc8cf;border-radius:8px;padding:8px;background:white;color:#34202a}
.shr-directory .shr-directory-card .shr-card-tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:9px}
.shr-directory .shr-directory-card .shr-card-tags span{background:#fff0f3;color:#a31831;padding:3px 8px;border-radius:6px;font-size:.76rem;font-weight:700}
.shr-directory .shr-directory-card-image{display:block;min-height:185px}
.shr-directory .shr-directory-image-fallback{background:#692034;color:#fff;display:grid;place-items:center;height:100%;font-size:3rem}
.shr-directory .shr-directory-card-amenities{color:#62505a;font-size:.85rem;margin:9px 0}
.shr-directory .shr-directory-card-score{margin:8px 0}
.shr-directory .shr-directory-card .shr-cta{display:inline-block}
@media(max-width:700px){.shr .shr-hero-actions{align-items:flex-start!important}.shr .shr-hero-actions>.shr-hero-rating{margin-left:auto!important}}

/* v2.3: independently scrollable full-height left filter, unobstructed hero */
.shr.shr-directory{margin-top:0!important;padding-top:clamp(100px,10vw,160px)!important;overflow:visible!important}
.shr-directory .shr-directory-hero{position:relative!important;background-image:linear-gradient(110deg,rgba(35,10,22,.88),rgba(104,17,40,.58)),var(--shr-directory-bg,linear-gradient(110deg,#431725,#c21b38))!important;background-size:cover!important;background-position:center!important;min-height:305px!important;padding:54px 40px!important;z-index:1!important}
.shr-directory .shr-directory-layout{align-items:start!important}
.shr-directory .shr-directory-sidebar{position:sticky!important;top:90px!important;height:min(780px,calc(100vh - 110px))!important;max-height:calc(100vh - 110px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-width:thin!important;scrollbar-color:#c51f36 #f9edf0;align-self:start!important;z-index:2}
.shr-directory .shr-filter-scroll{max-height:none!important;overflow:visible!important}
.shr .shr-hero-actions .shr-hero-rating .shr-rating,.shr .shr-hero-actions .shr-hero-booking .shr-cta{height:54px!important;min-height:54px!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1.15!important;margin:0!important;padding:0 19px!important;border-radius:9px!important}
.shr .shr-hero-actions .shr-hero-rating .shr-rating{font-size:1.15rem!important}
@media(max-width:780px){.shr-directory .shr-directory-sidebar{position:relative!important;top:auto!important;max-height:480px!important;height:auto!important}.shr.shr-directory{padding-top:95px!important}.shr-directory .shr-directory-hero{padding:34px 22px!important;min-height:250px!important}}

.shr-directory .shr-filter-scroll{max-height:none!important;overflow:visible!important}
.shr-directory .shr-filter-check[hidden]{display:none!important}
.shr-facet-toggle{margin:8px 0 0;border:0;background:transparent;color:#ac1937;font-size:14px;font-weight:700;cursor:pointer;padding:8px 2px}
.shr-directory-sidebar{align-self:start}

/* v2.5 location overlay & landmark-specific line icons */
.shr .shr-near .shr-landmark-icon{width:46px;height:46px;min-width:46px;display:inline-flex;align-items:center;justify-content:center;border-radius:13px;background:linear-gradient(135deg,#fff5f5,#f9e6e9);color:#a91737;border:1px solid #f0ccd4;box-shadow:0 3px 12px rgba(130,20,40,.09)}
.shr .shr-near .shr-landmark-icon svg{width:29px;height:29px;stroke-width:1.7}
.shr .shr-map-open{font:inherit;color:#ae1b3c;background:#fff;border:1px solid #e1bdc6;border-radius:9px;padding:11px 16px;cursor:pointer;font-weight:700}
.shr-map-dialog{border:none;border-radius:18px;padding:0;width:min(94vw,1100px);max-width:1100px;height:min(88vh,790px);max-height:88vh;box-shadow:0 25px 85px rgba(0,0,0,.37);overflow:hidden}
.shr-map-dialog::backdrop{background:rgba(17,12,21,.79)}
.shr-map-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;font-size:17px}
.shr-map-close{font-size:30px;line-height:1;background:transparent;border:0;cursor:pointer}
.shr-map-dialog iframe{display:block;width:100%;height:calc(100% - 60px);border:0}

/* v2.6: identical EN and SR switcher chips, independent of theme link styles */
.shr .shr-hero .shr-hero-meta .shr-langs a,
.shr .shr-hero nav.shr-langs a,
.shr .shr-hero nav.shr-langs a:first-child,
.shr .shr-hero nav.shr-langs a:first-of-type {box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;min-width:52px!important;height:39px!important;min-height:39px!important;padding:0 16px!important;margin:0!important;border:1px solid transparent!important;line-height:1!important;font-weight:750!important;font-size:14px!important;text-decoration:none!important;white-space:nowrap!important;flex:none!important;background:transparent!important;color:#fff!important}
.shr .shr-hero .shr-hero-meta .shr-langs a[aria-current="page"]{background:#c51f36!important;border-color:#c51f36!important}
.shr .shr-hero .shr-hero-meta .shr-langs a:not([aria-current="page"]):hover{background:#ffffff26!important}

/* v3.0.3: coherent icons without generic tile/square decorations */
.shr .shr-amenities .shr-icon{border:none!important;border-radius:50%!important;background:#fff2f4!important;box-shadow:none!important;color:#ad1733!important;flex:0 0 52px!important;width:52px!important;height:52px!important;min-width:52px!important}
.shr .shr-amenities .shr-icon svg{width:32px!important;height:32px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round;stroke-linejoin:round}

/* v3.1.1: lightweight language switch; collapsible mobile filters */
.shr .shr-hero-meta nav.shr-langs{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;gap:5px!important;border-radius:999px!important}
.shr .shr-hero-meta nav.shr-langs a,.shr .shr-hero-meta nav.shr-langs a:first-of-type{min-width:40px!important;width:40px!important;height:32px!important;min-height:32px!important;padding:0 9px!important;font-size:12px!important;border-radius:999px!important;background:rgba(255,255,255,.18)!important;color:#fff!important;border:1px solid rgba(255,255,255,.35)!important;box-shadow:none!important}
.shr .shr-hero-meta nav.shr-langs a[aria-current=page]{background:#c51f36!important;border-color:#c51f36!important}
.shr-mobile-filter-toggle{display:none}
@media(max-width:780px){
 .shr-directory .shr-directory-sidebar{height:auto!important;max-height:none!important;overflow:visible!important;position:relative!important;top:auto!important}
 .shr-mobile-filter-toggle{display:flex;width:100%;justify-content:space-between;align-items:center;cursor:pointer;border:1px solid #e5c8d0;border-radius:10px;padding:13px 16px;background:#fff;color:#9f1836;font-weight:750}
 .shr-directory .shr-directory-sidebar .shr-directory-filters{display:none!important}
 .shr-directory .shr-directory-sidebar.shr-filters-open .shr-directory-filters{display:flex!important;padding-top:12px}
 .shr-directory .shr-directory-sidebar.shr-filters-open{max-height:72vh!important;overflow-y:auto!important}
}

/* v3.1.7: mobile hero chips + language selector share the same top row. */
@media (max-width:760px){
 .shr .shr-hero-meta{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important}
 .shr .shr-hero-meta .shr-labels{flex:1 1 auto!important;min-width:0!important;flex-basis:auto!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:5px!important}
 .shr .shr-hero-meta .shr-labels span{font-size:11px!important;line-height:1.15!important;min-height:28px!important;padding:5px 8px!important}
 .shr .shr-hero-meta nav.shr-langs{flex:0 0 auto!important;align-self:center!important;display:flex!important;flex-wrap:nowrap!important;gap:4px!important;margin:0!important;padding:0!important;max-width:none!important}
 .shr .shr-hero-meta nav.shr-langs a{width:36px!important;min-width:36px!important;height:30px!important;min-height:30px!important;padding:0 6px!important;font-size:11px!important}
}

/* v3.1.8: booking CTA directly beneath location, directory-wide map */
.shr .shr-sidebar-booking-card{margin-top:16px;border:1px solid #ead9df;border-radius:16px;background:#fff;padding:18px;box-shadow:0 8px 27px #24121b14}
.shr .shr-sidebar-booking-card .shr-bottom{padding:0;text-align:center}
.shr .shr-sidebar-booking-card .shr-cta{width:100%;box-sizing:border-box;justify-content:center;display:inline-flex}
.shr-directory-mapbar{display:flex;justify-content:flex-end;margin:12px 0 16px}
.shr-directory-map-open{border:0;border-radius:10px;background:#b51a35;color:#fff;padding:12px 18px;font:inherit;font-weight:700;cursor:pointer}
.shr-directory-map-dialog{padding:0;border:0;border-radius:16px;width:min(95vw,1100px);max-width:1100px;height:min(88vh,810px);max-height:88vh;overflow:hidden;box-shadow:0 24px 80px #0006}
.shr-directory-map-dialog::backdrop{background:#150b12b8}
#shr-directory-map-canvas{height:calc(100% - 60px);min-height:300px;position:relative;z-index:1}
@media(max-width:700px){.shr-directory-mapbar{justify-content:stretch}.shr-directory-map-open{width:100%}}

/* v3.1.9: map action shares desktop results toolbar with sorting. */
@media(min-width:701px){.shr-directory-mapbar-mobile{display:none!important}.shr-directory .shr-directory-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.shr-directory .shr-directory-toolbar>strong{margin-right:auto}.shr-directory .shr-directory-toolbar .shr-directory-map-desktop{order:3;white-space:nowrap;margin:0;padding:10px 14px;font-size:.9rem}}
@media(max-width:700px){.shr-directory .shr-directory-toolbar .shr-directory-map-desktop{display:none!important}.shr-directory-mapbar-mobile{display:flex!important}}
.shr-directory-map-dialog .shr-directory-map-close{width:45px;min-width:45px;height:45px;display:flex;align-items:center;justify-content:center;border:0;border-radius:9px;background:#ba1938;color:#fff;font-size:38px;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 2px 8px #470b1b33}.shr-directory-map-dialog .shr-directory-map-close:hover{background:#91142a}
.shr-directory-map-dialog .leaflet-popup-content-wrapper{border-radius:14px;padding:0;overflow:hidden;box-shadow:0 14px 38px #30101b40}.shr-directory-map-dialog .leaflet-popup-content{margin:0;width:285px!important}.shr-map-popup-card{font-family:inherit;color:#281c22;background:white}.shr-map-popup-card img{display:block;width:100%;height:138px;object-fit:cover}.shr-map-popup-info{padding:14px 15px 16px}.shr-map-popup-info h3{font-size:17px;line-height:1.27;margin:7px 0;color:#211820}.shr-map-popup-tags{display:flex;gap:4px;flex-wrap:wrap}.shr-map-popup-tags span{font-size:11px;font-weight:650;color:#a01934;background:#fff0f3;border-radius:5px;padding:3px 6px}.shr-map-popup-address{font-size:12px;line-height:1.45;color:#68545d;margin:7px 0}.shr-map-popup-rating{color:#a31831;font-size:15px;font-weight:800;margin:8px 0}.shr-map-popup-link{display:flex;justify-content:center;text-align:center;background:#bd1738;color:white!important;border-radius:8px;padding:10px 12px;margin-top:10px;text-decoration:none!important;font-size:13px;font-weight:750}.shr-map-popup-link:hover{background:#92102b}.shr-directory-map-dialog .leaflet-popup-close-button{z-index:2;background:white!important;border-radius:50%;width:24px!important;height:24px!important;top:5px!important;right:5px!important;font-size:21px!important;color:#752036!important}

/* v3.2.0: balanced three-zone desktop toolbar. The map action occupies
   the visual center while sort stays at the far right. */
@media (min-width:701px){
 .shr-directory .shr-directory-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;column-gap:14px!important;flex-wrap:nowrap!important}
 .shr-directory .shr-directory-toolbar>strong{grid-column:1!important;grid-row:1!important;justify-self:start!important;margin:0!important}
 .shr-directory .shr-directory-toolbar>.shr-directory-map-desktop{grid-column:2!important;grid-row:1!important;justify-self:center!important;order:initial!important;margin:0!important;padding:10px 16px!important;font-size:inherit!important;line-height:1.4!important;font-weight:700!important;white-space:nowrap!important}
 .shr-directory .shr-directory-toolbar>label{grid-column:3!important;grid-row:1!important;justify-self:end!important;margin:0!important;white-space:nowrap!important}
}
