/* Anchors */
.lnd [id] { scroll-margin-top: calc(var(--sk-pinned-top, 0px) + 16px); }
.lnd .dst-tabs a .lnd-n { color: var(--sk-muted); font-weight: 400; }
@media (max-width: 760px) { .lnd .dst-tabs a[aria-current="page"] .lnd-n { color: inherit; } }

/* Resorts */
.lnd-dgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px 18px; }
.lnd .pf-dc-img { position: relative; }
.lnd-badge { position: absolute; left: 8px; top: 8px; display: inline-flex; align-items: center; gap: 4px; background: rgba(255, 255, 255, .94); color: var(--sk-ink); border-radius: 999px; padding: 3px 9px 3px 7px; font-size: 12px; font-weight: 500; font-variant-numeric: tabular-nums; }
.lnd-badge .sk-ic { width: 13px; height: 13px; color: var(--sk-accent); }
.lnd-price { color: var(--sk-ink); font-size: 13.5px; }
.lnd-price b { font-weight: 600; }
.lnd-price small { color: var(--sk-muted); font-size: 12px; }
.lnd-go { display: inline-flex; align-items: center; gap: 4px; color: var(--sk-accent); font-size: 13.5px; font-weight: 500; }
.lnd-go .sk-ic { width: 14px; height: 14px; }
@media (max-width: 991px) { .lnd-dgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .lnd-dgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 12px; } .lnd .pf-dc b { font-size: 14.5px; } }

/* All resorts A-Z */
.lnd-az { margin-top: 26px; border-top: 1px solid var(--sk-line); padding-top: 18px; }
.lnd .lnd-az h3 { font-size: 16px; margin-bottom: 10px; }
.lnd-azl { columns: 4 220px; column-gap: 28px; font-size: 14px; }
.lnd-azl li { break-inside: avoid; display: flex; justify-content: space-between; gap: 10px; padding: 5px 0; border-bottom: 1px dotted var(--sk-line-strong); }
.lnd-azl a { color: var(--sk-ink); }
.lnd-azl small { color: var(--sk-muted); font-size: 12.5px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.lnd-more { margin-top: 14px; display: none; align-items: center; gap: 6px; border: 1px solid var(--sk-line-strong); border-radius: 999px; padding: 8px 16px; font-size: 14px; font-weight: 500; color: var(--sk-ink); background: #fff; cursor: pointer; }
.lnd-more:hover { border-color: var(--sk-ink); }
@media (max-width: 760px) {
	.lnd-azl { columns: 2 140px; column-gap: 16px; font-size: 13.5px; }
	.lnd-azl small { display: none; }
	.lnd-azl:not(.is-open) .lnd-azl-x { display: none; }
	.lnd-more { display: inline-flex; }
}

/* Country cards */
.lnd-cc { background: #fff; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); overflow: hidden; display: flex; flex-direction: column; }
.lnd-cc-b { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.lnd .lnd-cc-m { font-size: 13.5px; color: var(--sk-muted); display: flex; flex-wrap: wrap; gap: 2px 14px; }
.lnd-cc-m b { color: var(--sk-ink); font-weight: 500; }
.lnd-flag { width: 20px; height: 13px; border-radius: 2px; flex: none; box-shadow: 0 0 0 1px rgba(43, 49, 64, .08); }
.lnd-ov { position: relative; display: block; aspect-ratio: 16 / 8; overflow: hidden; background: var(--sk-soft); }
.lnd-ov > img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.lnd-ov:hover > img { transform: scale(1.04); }
.lnd-ov::after { content: ""; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent, rgba(20, 26, 36, .72)); }
.lnd-ov-t { position: absolute; left: 14px; bottom: 12px; right: 14px; z-index: 1; display: flex; align-items: center; gap: 8px; color: #fff; }
.lnd-ov-t b { font-size: 20px; font-weight: 600; text-shadow: 0 1px 2px rgba(0, 0, 0, .3); }
.lnd-ov:hover { text-decoration: none; }
@media (prefers-reduced-motion: reduce) { .lnd-ov > img, .lnd-ov:hover > img { transition: none; transform: none; } }
