/* Voyara Listing grid. The cards are in listing-card.css. */
.vy-lgrid{display:flex;flex-direction:column;gap:28px;min-width:0}
.vy-lgrid__head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;min-width:0}
.vy-lgrid__tabs{background:var(--vy-bg,#fff);border:1px solid var(--vy-line,#E6E1D8);border-radius:999px;padding:4px}
.vy-lgrid__panel{transition:opacity .2s ease}
.vy-lgrid__panel[aria-busy=true]{opacity:.45}
.vy-lgrid__empty{margin:0;padding:32px;text-align:center;color:var(--vy-muted,#5C6664);border:1px dashed var(--vy-line,#E6E1D8);border-radius:20px}
.vy-lgrid__error{margin:0;color:var(--vy-bad,#B4261F);font-size:14px}
.vy-lgrid .vy-pager{margin-top:8px}
/* Sort list: the tabs move to their own row under the heading. */
.vy-lgrid--sorts .vy-lgrid__tabs{order:3;flex-basis:100%;background:none;border:0;padding:0;flex-wrap:wrap;gap:8px}
.vy-lgrid--sorts .vy-lgrid__tabs .vy-pill{height:42px;border:1px solid var(--vy-line,#E6E1D8);background:var(--vy-bg,#fff)}
.vy-lgrid--sorts .vy-lgrid__tabs .vy-pill[aria-selected=true]{border-color:var(--vy-main,#0E3B36);background:var(--vy-main,#0E3B36);color:var(--vy-on-main,#fff)}
.vy-lgrid__sort{position:relative;display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 14px 0 16px;border:1px solid var(--vy-line,#E6E1D8);border-radius:999px;background:var(--vy-bg,#fff);font-size:14px;color:var(--vy-muted,#5C6664)}
.vy-lgrid__sort:focus-within{outline:2px solid var(--vy-accent,#C9962B);outline-offset:2px}
.vy-lgrid .vy-lgrid__sort select{appearance:none;-webkit-appearance:none;height:auto;margin:0;padding:0 18px 0 0;border:0;background:transparent;box-shadow:none;font:500 14px/1.4 var(--vy-font-body,Jost,sans-serif);color:var(--vy-ink,#15201F);cursor:pointer}
.vy-lgrid .vy-lgrid__sort select:focus{outline:none}
.vy-lgrid__sort .vy-icon{position:absolute;right:14px;pointer-events:none;color:var(--vy-muted,#5C6664)}
/* Show all */
.vy-lgrid__more{display:flex;justify-content:center}
.vy-lgrid__more[hidden]{display:none}
.vy-lgrid__more-btn{display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 24px;border:1px solid var(--vy-ink,#15201F);border-radius:999px;background:var(--vy-bg,#fff);color:var(--vy-ink,#15201F);font:500 15px/1 var(--vy-font-body,Jost,sans-serif);cursor:pointer;transition:color .2s ease,background-color .2s ease}
.vy-lgrid__more-btn:hover{background:var(--vy-ink,#15201F);color:var(--vy-bg,#fff)}
.vy-lgrid__more-btn:focus-visible{outline:2px solid var(--vy-accent,#C9962B);outline-offset:2px}
.vy-lgrid__more-btn .vy-icon{transition:transform .2s ease}
.vy-lgrid__more-btn[aria-expanded=true] .vy-icon{transform:rotate(180deg)}
@media (max-width:640px){.vy-lgrid--sorts .vy-lgrid__tabs{flex-wrap:nowrap}.vy-lgrid__sort{align-self:flex-start}.vy-lgrid__head{flex-direction:column;align-items:stretch}.vy-lgrid__tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%;min-width:0}}
@media (prefers-reduced-motion:reduce){.vy-lgrid__panel{transition:none}}
.vy-pill__count{margin-left:6px;font-size:12px;opacity:.7}
.vy-lgrid__gear{background:var(--vy-cream,#FBF9F5);border:1px solid var(--vy-line,#E6E1D8);border-radius:999px;padding:4px}
.vy-lgrid__gear .vy-pill[aria-pressed=true]{background:var(--vy-main,#0E3B36);color:var(--vy-on-main,#fff)}
.vy-lgrid__instant{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border:1px solid var(--vy-line,#E6E1D8);border-radius:999px;background:var(--vy-bg,#fff);color:var(--vy-ink,#15201F);font:500 14px/1 var(--vy-font-body,Jost,sans-serif);cursor:pointer}
.vy-lgrid__instant[aria-pressed=true]{background:var(--vy-main,#0E3B36);border-color:var(--vy-main,#0E3B36);color:var(--vy-on-main,#fff)}
.vy-lgrid__instant:focus-visible{outline:2px solid var(--vy-accent,#C9962B);outline-offset:2px}
/* Head order: heading, then tabs and the filter buttons together on the right. */
.vy-lgrid__head>.vy-lgrid__tabs{order:2;margin-left:auto}
.vy-lgrid__instant,.vy-lgrid__gear,.vy-lgrid__sort{order:3}
.vy-lgrid--sorts .vy-lgrid__head>.vy-lgrid__tabs{order:4;margin-left:0}
@media (max-width:640px){.vy-lgrid__head>.vy-lgrid__tabs{margin-left:0}.vy-lgrid__instant{align-self:flex-start}}
