/* One meaningful label per photo; loyalty stays next to the price. */
.stay-photo,.world-card-photo,.immersion-picture,.lv-search-card-photo{container-type:inline-size}
.lv-card-label{position:absolute;top:10px;left:10px;z-index:2;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:5px;max-width:calc(100% - 66px);min-height:28px;padding:6px 9px;border:1px solid #e3cab0;border-radius:10px;background:#fffaf2;color:#65422d;box-shadow:0 2px 8px #2f1d161a;font:650 10px/1.25 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;pointer-events:none;box-sizing:border-box}
.lv-card-label-text{position:relative;z-index:1;min-width:0;text-wrap:balance}
.lv-card-label-short{display:none}
.lv-card-label .lv-card-label-mark{position:relative;z-index:1;display:block;flex:0 0 14px;width:14px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.lv-card-label-mark circle{fill:currentColor;stroke:none}
.lv-card-label--new{background:#f8f7f2;border-color:#d9d4c7;color:#555145}
.lv-card-label--popular{background:linear-gradient(125deg,#39252b,#614044 55%,#39252b);color:#fff5eb;border-color:#bc8f73;box-shadow:inset 0 1px 0 #ffdfc34d,0 3px 10px #43242624}
.lv-card-label--popular .lv-card-label-mark{color:#ffdab0}
.lv-card-label::before{content:"";position:absolute;inset:-60% -35%;z-index:0;pointer-events:none;background:linear-gradient(112deg,transparent 34%,#d8a27922 43%,#fff4de66 50%,#d8a27922 57%,transparent 66%);transform:translateX(-100%);opacity:0}
.lv-card-label--popular::before{background:linear-gradient(112deg,transparent 34%,#d8a27922 43%,#ffe6bb38 50%,#d8a27922 57%,transparent 66%)}
.lv-card-label[data-label-motion=playing]{animation:lv-label-arrive 3.8s ease-out both}
.lv-card-label[data-label-motion=playing]::before{animation:lv-label-shimmer 1.65s .2s ease-in-out 2 both}
.lv-card-label[data-label-motion=playing] .lv-card-label-mark path{stroke-dasharray:1;animation:lv-label-draw .65s .1s ease-out both}
.world-card-price,.lv-search-card-price{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.world-card-price .lv-luv-badge--compact{margin-left:3px}
.world-card-bookable{display:block;margin:4px 0 0;color:#766251;font:500 11px/1.4 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
/* Search only: quiet pill, readable on the photo; the home rails stay intact. */
.world-card-photo .lv-card-label,.lv-search-card-photo .lv-card-label{border-radius:999px;background:#fffdf8;color:#382b24;border-color:#eadfd3;font-size:11px;font-weight:650;box-shadow:0 2px 9px #24180f1a;padding:6px 10px;min-height:29px}
.world-card-photo .lv-card-label--editorial,.lv-search-card-photo .lv-card-label--editorial{background:#fff3df;color:#69441e;border-color:#ddbc8e}
.world-card-photo .lv-card-label--new,.lv-search-card-photo .lv-card-label--new{background:#f3f7ef;color:#344d38;border-color:#d5e0cf}
.lv-card-label--cinema .lv-card-label-mark,.lv-card-label--secret .lv-card-label-mark{color:#6b435b}
.lv-card-label--sauna .lv-card-label-mark,.lv-card-label--fireplace .lv-card-label-mark{color:#98512f}
.lv-card-label--hotTub .lv-card-label-mark,.lv-card-label--balneo .lv-card-label-mark,.lv-card-label--hammam .lv-card-label-mark{color:#426977}
.lv-card-label--garden .lv-card-label-mark,.lv-card-label--nordic .lv-card-label-mark,.lv-card-label--sea .lv-card-label-mark{color:#3c6554}
@keyframes lv-label-arrive{0%{transform:translateY(-3px);opacity:.65}14%,100%{transform:none;opacity:1}}
@keyframes lv-label-shimmer{0%,8%{transform:translateX(-100%);opacity:0}18%,64%{opacity:1}82%,100%{transform:translateX(100%);opacity:0}}
@keyframes lv-label-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
/* Keep the same top-left anchor on mobile, reserving space on the right
   for the favourite/video control. Short wording fits the narrow home rails. */
@container (max-width:230px){.lv-card-label{top:7px;bottom:auto;left:6px;max-width:calc(100% - 62px);min-height:24px;padding:5px 6px;gap:4px;font-size:9px;border-radius:8px}.lv-card-label .lv-card-label-mark{flex-basis:12px;width:12px;height:14px}}
@container (max-width:230px){.world-card-photo .lv-card-label,.lv-search-card-photo .lv-card-label{font-size:10px;padding:5px 7px;min-height:26px}}
@container (max-width:180px){
  .lv-card-label{max-width:calc(100% - 56px);padding:5px;gap:3px}
  .lv-card-label-full{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .lv-card-label-short{display:inline}
  .world-card-photo .lv-card-label,.lv-search-card-photo .lv-card-label{max-width:calc(100% - 66px);padding:5px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.lv-card-label,.lv-card-label::before,.lv-card-label *{animation:none!important;transform:none!important}.lv-card-label::before{opacity:0}.lv-card-label{opacity:1}}

/* Search amenities share one quiet neutral treatment; editorial favourites retain their accent. */
:is(.world-card-photo,.lv-search-card-photo) .lv-card-label:not(.lv-card-label--editorial){background:#f7f7f5;color:#353535;border-color:#e5e5e1;box-shadow:0 1px 5px #00000012}
:is(.world-card-photo,.lv-search-card-photo) .lv-card-label:not(.lv-card-label--editorial) .lv-card-label-mark{color:inherit}
:is(.world-card-photo,.lv-search-card-photo) .lv-card-label:not(.lv-card-label--editorial)::before{display:none}
