/* Destination pages */

.dst { --dst-gap: 40px; font-size: 15px; line-height: 1.55; color: var(--sk-text); }
.dst h1, .dst h2, .dst h3 { color: var(--sk-ink); font-weight: 600; line-height: 1.25; margin: 0; text-wrap: balance; }
.dst p { margin: 0; }
.dst .dst-muted { color: var(--sk-muted); font-size: 13.5px; }
.dst-hide { display: none; }
.dst .pointer { cursor: pointer; color: var(--sk-accent); font-weight: 500; }

/* Top */
.dst-crumb { font-size: 13px; color: var(--sk-muted); padding: 14px 0 10px; }
.dst-crumb a { color: var(--sk-muted); }
.dst-crumb span { color: var(--sk-ink); }
.dst-hero { border-radius: var(--sk-radius); overflow: hidden; aspect-ratio: 1230 / 320; max-width: 100%; background: var(--sk-soft); }
.dst-hero img { width: 100%; height: 100%; object-fit: cover; }
.dst .dst-h1 { padding: 20px 0 10px; }
.dst-tabs { display: flex; gap: 2px; border-bottom: 1px solid var(--sk-line); overflow-x: auto; scrollbar-width: none; margin-bottom: 22px; }
.dst-tabs::-webkit-scrollbar { display: none; }
.dst-tabs a { flex: none; display: flex; align-items: center; gap: 8px; padding: 14px 14px 12px; color: var(--sk-text); font-size: 14px; border-bottom: 2px solid transparent; white-space: nowrap; }
.dst-tabs a:hover { text-decoration: none; color: var(--sk-ink); }
.dst-tabs a[aria-current="page"] { color: var(--sk-ink); font-weight: 500; border-bottom-color: var(--sk-accent); --sk-on-dark-fg: var(--sk-ink); }
@media (max-width: 760px) {
	.dst-tabs { gap: 8px; border-bottom: 0; margin: 0 -15px 16px; padding: 4px 15px 2px; }
	.dst-tabs a { border: 1px solid var(--sk-line-strong); border-radius: 999px; padding: 8px 14px; }
	.dst-tabs a .sk-ic { display: none; }
	.dst-tabs a[aria-current="page"] { background: var(--sk-accent); border-color: var(--sk-accent); color: #fff; --sk-on-dark-fg: #fff; }
}

/* Body */
.dst-body { display: flex; flex-direction: column; gap: var(--dst-gap); padding-top: 24px; }
/* Space above footer banner */
.dst > .dst-body:last-child { padding-bottom: var(--dst-gap); }
.dst-body > * { min-width: 0; }
.dst-sec-hd { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.dst-sec-hd .dst-muted { margin-top: 2px; }
.dst-arrow { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; font-size: 14px; }
.dst-arrow .sk-ic { width: 15px; height: 15px; }
.dst-links { display: inline-flex; gap: 18px; flex-wrap: wrap; }
.dst-divider { border: 0; border-top: 1px solid var(--sk-line-strong); margin: 0; }
.dst-ad { text-align: center; }
@media (max-width: 760px) { .dst { --dst-gap: 32px; } }

/* Travel search frame */
.dst-body > .hdr-bar-mark { margin-bottom: calc(-1 * var(--dst-gap)); }
.dst-body > .travel-filters-form .ts-searchbar-wrap.ts-entry { margin: 0; padding: 12px; border-radius: var(--sk-radius); }
.dst-body > .travel-filters-form:has(+ .dst-picks) .ts-searchbar-wrap.ts-entry { border-radius: var(--sk-radius) var(--sk-radius) 0 0; }
.dst-body > .travel-filters-form + .dst-picks { margin-top: calc(-1 * var(--dst-gap)); border-top: 0; border-radius: 0 0 var(--sk-radius) var(--sk-radius); }

/* Selected trips */
.dst-picks { background: var(--sk-soft-2); border: 1px solid var(--sk-line); border-radius: var(--sk-radius); padding: 18px 16px; }
.dst-picks-nav { display: flex; align-items: center; gap: 8px; }
.dst-sc { width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--sk-line-strong); background: #fff; color: var(--sk-ink); display: inline-flex; align-items: center; justify-content: center; }
.dst-sc:hover { border-color: var(--sk-ink); }
.dst-sc .sk-ic { width: 16px; height: 16px; }
.dst-cards { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 2px; }
.dst-cards::-webkit-scrollbar { display: none; }
.dst-card { flex: 0 0 calc((100% - 42px) / 4.25); scroll-snap-align: start; background: #fff; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); overflow: hidden; display: flex; flex-direction: column; color: var(--sk-text); }
.dst-card:hover { text-decoration: none; color: var(--sk-text); border-color: var(--sk-line-strong); box-shadow: 0 2px 10px rgba(43, 49, 64, .08); }
.dst-card img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.dst-card-b { display: flex; flex-direction: column; gap: 2px; padding: 11px 13px 13px; font-size: 13px; flex: 1; }
.dst-card-n { color: var(--sk-ink); font-weight: 500; font-size: 15px; line-height: 1.3; }
.dst-card-m { color: var(--sk-muted); }
.dst-card-p { margin-top: auto; padding-top: 8px; color: var(--sk-muted); display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.dst-card-p > span:last-child { white-space: nowrap; }
.dst-card-p b { color: var(--sk-ink); font-size: 17px; font-variant-numeric: tabular-nums; }
.dst-card-d { text-align: right; }
/* Accommodation type shortcuts */
.dst-stay { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: -4px 0 14px; }
.dst-stay > span { font-size: 13.5px; color: var(--sk-muted); margin-right: 2px; }
.dst-stay-chip { display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--sk-line-strong); border-radius: 999px; padding: 6px 14px 6px 10px; font-size: 14px; color: var(--sk-ink); font-weight: 500; }
.dst-stay-chip:hover { text-decoration: none; color: var(--sk-ink); border-color: var(--sk-accent); }
.dst-stay-chip .sk-ic { width: 17px; height: 17px; color: var(--sk-accent); }
.dst-stay-chip small { color: var(--sk-muted); font-weight: 400; font-size: 13px; }
.dst-stay-chip small b { color: var(--sk-ink); font-weight: 600; }
@media (max-width: 760px) {
	.dst-stay { flex-wrap: nowrap; overflow-x: auto; margin-inline: -15px; padding-inline: 15px; scrollbar-width: none; }
	.dst-stay::-webkit-scrollbar { display: none; }
	.dst-stay-chip { flex: none; }
}
.dst-card-more { justify-content: center; align-items: flex-start; gap: 8px; padding: 22px; background: var(--sk-accent); border-color: var(--sk-accent); color: rgba(255, 255, 255, .85); font-size: 13.5px; }
.dst-card-more:hover { background: var(--sk-accent-dark); border-color: var(--sk-accent-dark); color: #fff; }
.dst-card-more b { color: #fff; font-size: 18px; font-weight: 600; line-height: 1.25; }
.dst-more-ic { width: 44px; height: 44px; border-radius: 50%; background: rgba(255, 255, 255, .16); display: flex; align-items: center; justify-content: center; color: #fff; }
@media (max-width: 1100px) { .dst-card { flex-basis: calc((100% - 28px) / 3.2); } }
@media (max-width: 760px) {
	.dst-picks, .dst-body > .travel-filters-form + .dst-picks { border-radius: 0; border-inline: 0; margin-inline: -15px; padding: 18px 15px; }
	.dst-body > .travel-filters-form .ts-searchbar-wrap.ts-entry { border-radius: 0; margin-inline: -15px; }
	.dst-cards { margin-inline: -15px; padding-inline: 15px; scroll-padding-inline: 15px; }
	.dst-card { flex-basis: 78%; }
	.dst-sc { display: none; }
}

/* Agency band */
.dst-agb { background: var(--sk-soft); border-radius: var(--sk-radius); padding: 22px; }
.dst-agb-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.dst-ag { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); overflow: hidden; color: var(--sk-text); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.dst-ag:hover { text-decoration: none; color: var(--sk-text); transform: translateY(-3px); box-shadow: 0 10px 24px rgba(43, 49, 64, .12); border-color: var(--sk-accent); }
.dst-ag-logo { height: 78px; display: flex; align-items: center; justify-content: center; padding: 12px 14px; color: var(--sk-ink); text-align: center; }
.dst-ag-logo img { max-width: 100%; max-height: 50px; width: auto; height: auto; object-fit: contain; }
.dst-ag-meta { display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 12px; color: var(--sk-muted); padding: 0 8px 10px; min-height: 26px; text-align: center; }
.dst-ag-go { margin-top: auto; display: flex; align-items: center; justify-content: center; gap: 6px; border-top: 1px solid var(--sk-line); padding: 9px 8px; font-size: 13px; font-weight: 500; color: var(--sk-accent); background: var(--sk-soft-2); transition: background .18s, color .18s; }
.dst-ag-go .sk-ic { width: 13px; height: 13px; }
.dst-ag:hover .dst-ag-go { background: var(--sk-travel); color: var(--sk-ink); }
.dst-ag-all { justify-content: center; gap: 4px; padding: 14px 14px 0; background: var(--sk-accent); border-color: var(--sk-accent); color: rgba(255, 255, 255, .85); font-size: 12.5px; }
.dst-ag-all:hover { color: #fff; }
.dst-ag-all b { color: #fff; font-size: 15px; font-weight: 600; line-height: 1.25; }
.dst-ag-all .dst-ag-go { margin: 10px -14px 0; background: var(--sk-accent-dark); color: #fff; border-color: rgba(255, 255, 255, .15); }
@media (max-width: 1100px) { .dst-agb-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 760px) {
	.dst-agb { margin-inline: -15px; border-radius: 0; padding: 18px 15px; }
	.dst-agb-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 15px; scrollbar-width: none; margin-inline: -15px; padding: 2px 15px 6px; }
	.dst-agb-grid::-webkit-scrollbar { display: none; }
	.dst-ag { flex: 0 0 150px; scroll-snap-align: start; }
}
@media (prefers-reduced-motion: reduce) { .dst-ag, .dst-ag:hover { transform: none; transition: none; } }

/* Piste map and facts */
.dst-ps-grid { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); gap: 18px; align-items: stretch; }
.dst-ps-grid.dst-ps-nomap { grid-template-columns: minmax(0, 1fr); }
.dst-ps-img { position: relative; display: block; border-radius: var(--sk-radius); overflow: hidden; border: 1px solid var(--sk-line); }
.dst-ps-img img { width: 100%; transition: transform .4s; }
.dst-ps-img:hover img { transform: scale(1.015); }
.dst-zoom { position: absolute; right: 14px; bottom: 14px; display: inline-flex; gap: 6px; align-items: center; background: #fff; color: var(--sk-ink); font-weight: 500; font-size: 13.5px; padding: 9px 15px; border-radius: 999px; box-shadow: 0 1px 6px rgba(0, 0, 0, .2); }
.dst-facts { background: var(--sk-soft-2); border: 1px solid var(--sk-line); border-radius: var(--sk-radius); padding: 18px; display: flex; flex-direction: column; gap: 6px; }
.dst-facts h3 { margin-bottom: 6px; }
.dst-fl { display: grid; gap: 6px; font-size: 14px; }
.dst-fl li { display: flex; justify-content: space-between; gap: 8px; }
.dst-fl b { color: var(--sk-ink); font-weight: 500; text-align: right; font-variant-numeric: tabular-nums; }
.dst-fl:first-of-type { border-bottom: 1px solid var(--sk-line-strong); padding-bottom: 10px; margin-bottom: 4px; }
.dst-fl-more { border-top: 1px solid var(--sk-line-strong); padding-top: 10px; margin-top: 6px; }
.dst .dst-fbig { font-size: 14px; }
.dst-fbig b { font-size: 30px; color: var(--sk-ink); font-weight: 600; }
.dst-stack { display: flex; height: 8px; border-radius: 4px; overflow: hidden; margin: 2px 0 6px; }
.dst-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 8px; }
.dst-p-g { background: var(--sk-green); } .dst-p-b { background: #2f6fb5; } .dst-p-r { background: var(--sk-red); } .dst-p-s { background: var(--sk-ink); }
@media (max-width: 860px) { .dst-ps-grid { grid-template-columns: minmax(0, 1fr); } }

/* Bar widths */
.dst-w-0 { width: 0; } .dst-w-1 { width: 5%; } .dst-w-2 { width: 10%; } .dst-w-3 { width: 15%; } .dst-w-4 { width: 20%; }
.dst-w-5 { width: 25%; } .dst-w-6 { width: 30%; } .dst-w-7 { width: 35%; } .dst-w-8 { width: 40%; } .dst-w-9 { width: 45%; }
.dst-w-10 { width: 50%; } .dst-w-11 { width: 55%; } .dst-w-12 { width: 60%; } .dst-w-13 { width: 65%; } .dst-w-14 { width: 70%; }
.dst-w-15 { width: 75%; } .dst-w-16 { width: 80%; } .dst-w-17 { width: 85%; } .dst-w-18 { width: 90%; } .dst-w-19 { width: 95%; } .dst-w-20 { width: 100%; }

/* Text with sidebar */
.dst-cols { display: grid; grid-template-columns: minmax(0, 1fr) 285px; gap: 30px; align-items: start; }
.dst-side { display: flex; flex-direction: column; align-items: center; gap: 20px; }
/* Side banners */
.dst-cols > .dst-side { align-self: stretch; }
/* Sticky top banner */
.dst-side > .sidebanner-1:only-child { position: sticky; top: 6rem; }
@media (max-width: 991px) { .dst-cols { grid-template-columns: minmax(0, 1fr); } }
.dst-txt h2 { margin-bottom: 10px; }
.dst-txt h2 .dst-muted { font-weight: 400; font-size: 15px; }
.dst .dst-lead { font-size: 16px; margin-bottom: 16px; }
.dst-desc { font-size: 15px; }
.dst-desc h2, .dst-desc h3 { margin: 22px 0 8px; }

/* Popular trips */
.dst-pop { background: #fff; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); padding: 20px 22px; }
.dst-ptable { width: 100%; border-collapse: collapse; font-size: 14px; }
.dst-ptable th { text-align: left; font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--sk-muted); font-weight: 500; padding: 10px 10px 8px; border-bottom: 1px solid var(--sk-line); white-space: nowrap; }
.dst-ptable td { padding: 9px 10px; border-bottom: 1px solid var(--sk-soft); vertical-align: middle; font-variant-numeric: tabular-nums; }
.dst-ptable tr:last-child td { border-bottom: 0; }
.dst-ptable img { width: 120px; height: 80px; object-fit: cover; border-radius: var(--sk-radius-sm); }
.dst-ptable .dst-muted { display: block; font-size: 12.5px; }
/* Clickable row */
.dst-ptr { position: relative; cursor: pointer; }
.dst-ptr:hover td { background: var(--sk-soft-2, #f8f6f2); }
.dst-ptr .dst-go::after { content: ''; position: absolute; inset: 0; }
.dst-ptr:hover .dst-go { background-color: #f2b200; }
.dst-pn { display: block; color: var(--sk-ink); font-weight: 500; }
.dst-pr { font-size: 18px; color: var(--sk-ink); font-weight: 600; white-space: nowrap; }
.dst-pr small { font-size: 12px; color: var(--sk-muted); font-weight: 400; }
.dst-go, .dst-cta { display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: var(--sk-travel); color: var(--sk-ink); font-weight: 600; border-radius: var(--sk-radius-sm); white-space: nowrap; }
.dst-go { padding: 9px 14px; font-size: 13px; min-height: 40px; }
.dst-cta { padding: 12px 20px; font-size: 15px; min-height: 44px; }
.dst-go:hover, .dst-cta:hover { color: var(--sk-ink); text-decoration: none; }
.dst-cta:hover { filter: brightness(.96); }
.dst-go:hover { background-color: #f2b200; }
.dst-cta .sk-ic { width: 18px; height: 18px; }
.dst-cta-full { width: 100%; margin-top: 10px; }
.dst-prow { display: flex; gap: 10px; align-items: center; padding: 10px 0; border-top: 1px solid var(--sk-soft); color: var(--sk-text); font-size: 12.5px; }
.dst-prow:hover { text-decoration: none; color: var(--sk-text); }
.dst-prow img { width: 96px; height: 72px; border-radius: var(--sk-radius-sm); object-fit: cover; flex: none; }
.dst-prow .dst-pr { margin-left: auto; text-align: right; font-size: 16px; }
.dst-prow .dst-pr small { display: block; }
.dst-only-sm { display: none; }
@media (max-width: 860px) { .dst-only-lg { display: none; } .dst-only-sm { display: block; } .dst-pop { padding: 16px; } }

/* Gallery and video */
.dst-gal { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: repeat(2, 160px); gap: 8px; margin-top: 12px; }
.dst-gal a, .dst-vid { display: block; overflow: hidden; border-radius: 6px; position: relative; }
.dst-gal img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.dst-gal a:hover img { transform: scale(1.03); }
.dst-gal .dst-gal-big { grid-row: span 2; }
.dst-vid { background: var(--sk-ink); color: #fff; padding: 0; border: 0; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.dst-vid img { position: absolute; inset: 0; opacity: .7; }
.dst-vid span { position: relative; display: inline-flex; align-items: center; gap: 8px; background: rgba(20, 28, 38, .75); padding: 8px 14px; border-radius: 999px; font-weight: 500; font-size: 14px; }
.dst-vid:hover img { opacity: .85; }
@media (max-width: 760px) { .dst-gal { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: 190px 120px 120px; } .dst-gal .dst-gal-big { grid-column: span 2; grid-row: auto; } }

/* Video window */
.dst-vm { position: fixed; inset: 0; z-index: 1050; background: rgba(15, 20, 27, .92); display: flex; align-items: center; justify-content: center; padding: 56px 12px 12px; }
.dst-vm-in { width: min(960px, 100%); aspect-ratio: 16 / 9; background: #000; border-radius: 6px; overflow: hidden; }
.dst-vm-in iframe { width: 100%; height: 100%; border: 0; display: block; }
.dst-vm-x { position: fixed; top: calc(10px + env(safe-area-inset-top, 0px)); right: 10px; width: 44px; height: 44px; border-radius: 50%; background: #fff; color: var(--sk-ink); display: flex; align-items: center; justify-content: center; border: 0; cursor: pointer; }
.dst-vm-x .sk-ic { width: 20px; height: 20px; }

/* Weather */
.dst .dst-snowline { display: flex; flex-wrap: wrap; gap: 6px 22px; align-items: baseline; background: var(--sk-soft-2); border: 1px solid var(--sk-line); border-radius: var(--sk-radius); padding: 10px 14px; margin-bottom: 12px; font-size: 14px; }
.dst-snowline b { color: var(--sk-ink); font-size: 17px; }
.dst-days { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.dst-day { background: #fff; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); padding: 14px 10px; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; font-size: 12.5px; color: var(--sk-muted); }
.dst-day-n { color: var(--sk-ink); font-weight: 500; font-size: 14px; }
.dst-day-t { font-size: 14px; } .dst-day-t b { font-size: 22px; color: var(--sk-ink); font-variant-numeric: tabular-nums; }
.dst-day-x { color: var(--sk-text); }
svg.dst-wx { width: 44px; height: 44px; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.dst-wx-gif { width: 60px; height: 30px; margin: 7px 0; }
.dst-wx-s { stroke: var(--sk-amber); }
.dst-wx-c { stroke: var(--sk-muted); }
.dst-wx-fill { fill: #fff; }
.dst-wx-r { stroke: #2f6fb5; }
@media (max-width: 860px) { .dst-days { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 420px) { .dst-days { gap: 6px; } .dst-day { padding: 10px 4px; } .dst-day-x { display: none; } }

/* Reviews */
.dst-rev { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 28px; align-items: start; margin-top: 12px; }
.dst-score { background: var(--sk-soft); border-radius: var(--sk-radius); padding: 18px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.dst-score > b { font-size: 42px; color: var(--sk-ink); font-weight: 600; line-height: 1; }
.dst-score-t { font-size: 12px; color: var(--sk-muted); }
/* Snowflakes on one line */
.dst-score .dest-stars { width: auto; display: flex; flex-wrap: nowrap; justify-content: center; white-space: nowrap; }
.dst-score .dest-stars > span { flex: none; }
.dst-bars { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 30px; font-size: 13.5px; }
.dst-bar { display: grid; grid-template-columns: 130px minmax(0, 1fr) 36px; align-items: center; gap: 10px; }
.dst-bar i { display: block; height: 6px; border-radius: 3px; background: var(--sk-line); overflow: hidden; }
.dst-bar em { display: block; height: 100%; background: var(--sk-accent); border-radius: 3px; }
.dst-bar b { color: var(--sk-ink); text-align: right; font-variant-numeric: tabular-nums; font-weight: 500; }
.dst-cmts { margin-top: 18px; border-top: 1px solid var(--sk-line); }
.dst-cmt { border-bottom: 1px solid var(--sk-line); padding: 12px 0; font-size: 14px; }
.dst-cmt-h { display: block; color: var(--sk-ink); font-weight: 500; }
.dst-cmt > .dst-muted { display: block; margin-bottom: 4px; font-size: 12.5px; }
.dst .dst-more-rev { padding-top: 12px; }
@media (max-width: 760px) { .dst-rev { grid-template-columns: minmax(0, 1fr); gap: 14px; } .dst-bars { grid-template-columns: minmax(0, 1fr); } }

/* Write a review */
.rev-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin-top: 16px; padding: 14px 18px; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); background: var(--sk-soft-2); }
.rev-cta p { flex: 1 1 280px; margin: 0; font-size: 14px; }
.rev-cta b { color: var(--sk-ink); font-weight: 500; }
.rev-cta-empty { border-style: dashed; background: none; }
.rev-btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; border-radius: var(--sk-radius-sm); background: var(--sk-accent); color: #fff; font-weight: 500; font-size: 15px; white-space: nowrap; }
.rev-btn:hover, .rev-btn:focus-visible { background: var(--sk-accent-dark); color: #fff !important; text-decoration: none; }
.rev-btn .sk-ic { width: 17px; height: 17px; }
.rev-trust { margin: 10px 0 0; font-size: 12.5px; color: var(--sk-muted); max-width: 90ch; }
.rev-top { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; }
.rev-top .dst-cmt-h { display: inline; }
.rev-stars { display: inline-flex; gap: 1px; color: #f5a300; }
.rev-stars svg { width: 14px; height: 14px; fill: currentColor; }
.rev-stars svg.o { fill: var(--sk-line-strong); }
.rev-new { font-size: 10.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: #fff; background: var(--sk-green); border-radius: 3px; padding: 1px 6px; }
.rev-chip { display: inline-block; margin-left: 6px; font-size: 11.5px; color: var(--sk-ink); background: var(--sk-soft); border-radius: 999px; padding: 0 8px; }
.rev-tr { margin-left: 6px; font-style: italic; }
.rev-k { display: flex; flex-wrap: wrap; gap: 2px 14px; font-size: 12px; color: var(--sk-muted); }
.rev-k b { color: var(--sk-ink); font-weight: 500; }

/* Review form */
.rvf-grid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 36px; align-items: start; padding-bottom: 56px; }
.rvf-form { display: grid; gap: 26px; }
.rvf-fs { border: 0; padding: 0; margin: 0; display: grid; gap: 10px; min-width: 0; }
.rvf-fs legend { padding: 0; margin-bottom: 4px; font-size: 18px; font-weight: 500; color: var(--sk-ink); }
.rvf-fs legend small, .rvf-fld label small { font-size: 13px; font-weight: 400; color: var(--sk-muted); }
.rvf-hint { font-size: 13px; color: var(--sk-muted); margin: 0; }
.rvf-err { font-size: 13px; color: var(--sk-red); margin: 0; }
.rvf-alert { padding: 12px 16px; border-radius: var(--sk-radius); background: #fbeef0; color: var(--sk-ink); font-size: 14px; }
.rvf-rates { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; }
.rvf-rate { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; padding: 8px 0; border-bottom: 1px solid var(--sk-line); border-top: 0; border-left: 0; border-right: 0; margin: 0; min-width: 0; }
.rvf-rate legend { float: left; padding: 0; font-size: 14px; color: var(--sk-ink); }
.rvf-rate legend small { display: block; font-size: 11.5px; color: var(--sk-muted); }
/* Star rating */
.rvf-stars { display: inline-flex; flex-direction: row-reverse; justify-content: flex-end; align-items: center; }
.rvf-stars input { position: absolute; opacity: 0; width: 1px; height: 1px; }
/* Star fill */
.rvf-stars label { cursor: pointer; padding: 2px; line-height: 0; }
.rvf-stars label svg { width: 26px; height: 26px; fill: var(--sk-line-strong); transition: fill .12s; }
.rvf-stars input:checked ~ label svg, .rvf-stars label:hover svg, .rvf-stars label:hover ~ label svg { fill: #f5a300; }
.rvf-stars input:focus-visible + label { outline: 2px solid var(--sk-accent); border-radius: 3px; }
.rvf-stars .rvf-dk { order: -1; line-height: 1.2; margin-left: 8px; font-size: 12px; color: var(--sk-muted) !important; padding: 2px 6px; border-radius: 999px; border: 1px solid transparent; }
.rvf-stars input[value="0"]:checked + .rvf-dk { border-color: var(--sk-line-strong); color: var(--sk-ink) !important; }
.rvf-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.rvf-chips label { display: inline-flex; align-items: center; gap: 6px; padding: 7px 13px; border: 1px solid var(--sk-line-strong); border-radius: 999px; font-size: 14px; color: var(--sk-ink); cursor: pointer; margin: 0; }
.rvf-chips input { accent-color: var(--sk-accent); margin: 0; }
.rvf-chips label:has(input:checked) { border-color: var(--sk-accent); background: #eef4f6; }
.rvf-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
.rvf-fld { display: grid; gap: 5px; }
.rvf-fld label { font-size: 14px; color: var(--sk-ink); font-weight: 500; margin: 0; }
.rvf-fld input, .rvf-fld select, .rvf-fld textarea { font: inherit; font-size: 15px; color: var(--sk-ink); border: 1px solid var(--sk-line-strong); border-radius: var(--sk-radius-sm); padding: 10px 12px; background: #fff; width: 100%; }
.rvf-fld textarea { min-height: 160px; resize: vertical; }
.rvf-fld input:focus, .rvf-fld select:focus, .rvf-fld textarea:focus { outline: 2px solid var(--sk-accent); outline-offset: -1px; border-color: var(--sk-accent); }
.rvf-bad input, .rvf-bad textarea, fieldset.rvf-bad { border-color: var(--sk-red); }
.rvf-count { justify-self: end; font-size: 12px; color: var(--sk-muted); }
.rvf-consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--sk-text); margin: 0; font-weight: 400; }
.rvf-consent input { margin-top: 3px; accent-color: var(--sk-accent); flex: none; }
.rvf-hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.rvf-submit { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
.rvf-submit .rev-btn { border: 0; margin: 0; cursor: pointer; padding: 13px 24px; }
.rvf-aside { background: var(--sk-soft); border-radius: var(--sk-radius); padding: 18px 20px; font-size: 14px; display: grid; gap: 10px; }
.rvf-aside h2 { font-size: 16px; margin: 0; }
.rvf-aside ul { margin: 0; padding-left: 18px; display: grid; gap: 6px; }
.rvf-state { max-width: 640px; display: grid; gap: 12px; justify-items: start; padding: 8px 0 64px; font-size: 15px; }
.rvf-state h2 { font-size: 22px; margin: 0; }
.rvf-state-ic { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: #e9f6ef; color: var(--sk-green); }
.rvf-state-ic .sk-ic { width: 22px; height: 22px; }
.rvf-state-stop .rvf-state-ic { background: #fbeef0; color: var(--sk-red); }
@media (max-width: 900px) { .rvf-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .rvf-rates, .rvf-row { grid-template-columns: minmax(0, 1fr); } }

/* Articles */
.dst-arts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.dst-art { display: flex; flex-direction: column; gap: 10px; color: var(--sk-ink); }
.dst-art:hover { text-decoration: none; color: var(--sk-ink); }
.dst-art:hover .dst-art-t { text-decoration: underline; }
.dst-art-img { display: block; border-radius: var(--sk-radius); overflow: hidden; }
.dst-art-img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .4s; }
.dst-art:hover .dst-art-img img { transform: scale(1.04); }
.dst-art-t { font-size: 16px; font-weight: 500; line-height: 1.35; }
@media (max-width: 900px) { .dst-arts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } }
/* Articles next to sidebar */
.dst-cols .dst-arts { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* Map */
.dst-map h2 { margin-bottom: 6px; }
.dst-map #map-canvas { height: 420px; width: 100%; border-radius: var(--sk-radius); margin-top: 12px; }
@media (max-width: 760px) { .dst-map #map-canvas { height: 300px; } }

/* Piste map page */
.pk { display: flex; flex-direction: column; gap: 12px; }
.pk-facts { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0; padding: 0; }
.pk-facts li { display: inline-flex; align-items: center; gap: 7px; background: #fff; border: 1px solid var(--sk-line); border-radius: 999px; padding: 4px 12px 4px 10px; font-size: 13px; color: var(--sk-ink); }
.pk-facts .sk-ic { width: 16px; height: 16px; color: var(--sk-accent); flex: none; }
.pk-facts b { font-weight: 600; font-variant-numeric: tabular-nums; }
/* Pistes by colour */
.pk-slopes { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin-top: 10px; }
.pk-bar { display: flex; gap: 2px; width: 220px; max-width: 100%; height: 8px; }
.pk-bar i { border-radius: 2px; }
.pk-legend { display: flex; flex-wrap: wrap; gap: 4px 14px; list-style: none; margin: 0; padding: 0; font-size: 13.5px; color: var(--sk-text); }
.pk-legend li { display: inline-flex; align-items: center; gap: 6px; }
.pk-legend i { width: 10px; height: 10px; border-radius: 50%; flex: none; }
.pk-legend b { color: var(--sk-ink); font-weight: 600; font-variant-numeric: tabular-nums; }
.pk-green { background: var(--sk-green); }
.pk-blue { background: #2f6fd6; }
.pk-red { background: var(--sk-red); }
.pk-black { background: #1e2229; }
.pk-g-1 { flex: 1; } .pk-g-2 { flex: 2; } .pk-g-3 { flex: 3; } .pk-g-4 { flex: 4; } .pk-g-5 { flex: 5; }
.pk-g-6 { flex: 6; } .pk-g-7 { flex: 7; } .pk-g-8 { flex: 8; } .pk-g-9 { flex: 9; } .pk-g-10 { flex: 10; }
.pk-g-11 { flex: 11; } .pk-g-12 { flex: 12; } .pk-g-13 { flex: 13; } .pk-g-14 { flex: 14; } .pk-g-15 { flex: 15; }
.pk-g-16 { flex: 16; } .pk-g-17 { flex: 17; } .pk-g-18 { flex: 18; } .pk-g-19 { flex: 19; } .pk-g-20 { flex: 20; }
.pk-stage { background: #fff; border: 1px solid var(--sk-line); border-radius: 10px; overflow: hidden; }
.pk-view[hidden] { display: none; }
.pk-img { margin: 0; }
.pk-img .cz-gallery a { position: relative; display: block; cursor: zoom-in; }
.pk-img img { display: block; width: 100%; height: min(70vh, 640px); object-fit: contain; background: #fff; }
.pk-zoom { position: absolute; right: 14px; bottom: 14px; display: inline-flex; align-items: center; gap: 8px; background: rgba(43, 49, 64, .86); color: #fff; border-radius: 999px; padding: 8px 14px; font-size: 14px; font-weight: 500; }
.pk-zoom .sk-ic { width: 17px; height: 17px; color: #fff; }
.pk-img .cz-gallery a:hover .pk-zoom { background: var(--sk-ink); }
.pk-img figcaption { padding: 10px 16px; border-top: 1px solid var(--sk-line); font-size: 14px; }
.pk-img figcaption a { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; }
.pk-img figcaption .sk-ic { width: 15px; height: 15px; }
.pk-map .krt { margin: 0; }
.pk-resort { min-height: 560px; display: flex; align-items: center; justify-content: center; text-align: center; background: var(--sk-soft-2); }
.pk-resort iframe { display: block; width: 100%; height: min(75vh, 680px); border: 0; }
.pk-resort-in { max-width: 380px; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 24px; }
.pk-resort-in .sk-ic { width: 30px; height: 30px; color: var(--sk-accent); }
.pk-resort-in b { color: var(--sk-ink); font-size: 17px; font-weight: 600; }
.pk-resort-in p { font-size: 14px; color: var(--sk-muted); }
.pk-resort-go { font: inherit; font-weight: 600; font-size: 14px; background: var(--sk-travel); color: var(--sk-ink); border: 0; border-radius: 6px; padding: 10px 18px; cursor: pointer; }
.pk-pick { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.pk-pick button { font: inherit; text-align: left; display: flex; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); padding: 8px 14px 8px 8px; cursor: pointer; color: var(--sk-text); }
.pk-pick button:hover { border-color: var(--sk-line-strong); }
.pk-pick button[aria-selected="true"] { border-color: var(--sk-accent); box-shadow: inset 0 0 0 1px var(--sk-accent); }
.pk-pick button:focus-visible { outline: 2px solid var(--sk-accent); outline-offset: 2px; }
.pk-pick img, .pk-pick-ic { width: 76px; height: 48px; border-radius: 4px; object-fit: cover; flex: none; }
.pk-pick-ic { display: flex; align-items: center; justify-content: center; color: var(--sk-accent); }
/* Map choices */
.pk-pick-ic { background: radial-gradient(70% 80% at 40% 40%, rgba(255, 255, 255, .8), transparent 70%), linear-gradient(160deg, #eef2f0, #dde6e3); }
.pk-pick-sketch svg { display: block; width: 100%; height: 100%; padding: 3px; }
.pk-pick b { display: block; color: var(--sk-ink); font-size: 14.5px; font-weight: 500; }
.pk-pick small { display: block; color: var(--sk-muted); font-size: 12.5px; }
@media (max-width: 760px) {
	.pk-img img { height: auto; max-height: 70vh; }
	.pk-resort { min-height: 420px; }
	.pk-pick { grid-template-columns: minmax(0, 1fr); gap: 8px; }
}

/* Ski rental */
.rent-deal { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 32px; align-items: center; background: #fff; border: 1px solid var(--sk-line); border-radius: 10px; padding: 26px 28px; }
.rent-deal-t { display: flex; flex-direction: column; gap: 10px; }
.rent-deal-t p { font-size: 15.5px; max-width: 62ch; }
.dst .rent-deal-t ul, .dst .rent-buy-t ul { list-style: disc; margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; font-size: 14.5px; }
.dst .rent-deal-t li, .dst .rent-buy-t li { display: list-item; }
.dst .rent-deal-t li::marker { color: var(--sk-accent); }
.rent-deal-c { display: flex; flex-direction: column; gap: 14px; }
.rent-deal-c .dst-cta { justify-content: center; }
.rent-code { display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 2px dashed var(--sk-accent); border-radius: var(--sk-radius); padding: 10px 14px; background: var(--sk-soft-2); }
.rent-code small { display: block; color: var(--sk-muted); font-size: 12.5px; }
.rent-code b { display: block; font-size: 26px; letter-spacing: .08em; color: var(--sk-ink); line-height: 1.2; }
.rent-code button { font: inherit; font-size: 13px; border: 1px solid var(--sk-line-strong); background: #fff; border-radius: 999px; padding: 6px 12px; cursor: pointer; color: var(--sk-ink); white-space: nowrap; }
@media (max-width: 760px) { .rent-deal { grid-template-columns: minmax(0, 1fr); padding: 20px; gap: 18px; } }
.dst .rent-shops { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--sk-line); }
.rent-shops li { display: grid; grid-template-columns: 150px minmax(0, 1fr) auto auto; gap: 20px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--sk-line); font-size: 14px; }
.rent-photo { width: 150px; height: 96px; object-fit: cover; border-radius: 6px; }
.rent-shop-t { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
/* Rental logo */
.rent-logo { height: 56px; width: auto; align-self: flex-start; margin: -14px 0 -8px -10px; }
.rent-shop-t b { color: var(--sk-ink); font-size: 16px; font-weight: 600; }
.rent-shop-t small { color: var(--sk-muted); font-size: 13px; }
.rent-shop-code { color: var(--sk-ink); font-weight: 500; white-space: nowrap; }
.rent-shop-go { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: 14px; white-space: nowrap; color: var(--sk-ink); background: var(--sk-travel); border-radius: 6px; padding: 10px 16px; }
.rent-shop-go:hover { text-decoration: none; color: var(--sk-ink); background-color: #f2b200; }
.rent-shop-go .sk-ic { width: 15px; height: 15px; }
/* Clickable row */
.rent-shops li { position: relative; cursor: pointer; }
.rent-shops li:hover { background: var(--sk-soft-2); }
.rent-shop-go::after { content: ''; position: absolute; inset: 0; }
.rent-shops li:hover .rent-shop-go { background-color: #f2b200; }
@media (max-width: 760px) {
	.rent-shops li { grid-template-columns: 110px minmax(0, 1fr); gap: 8px 14px; align-items: start; }
	.rent-photo { width: 110px; height: 76px; grid-row: span 3; }
	.rent-shop-code, .rent-shop-go { grid-column: 2; }
}
.dst-body-gap { padding-bottom: var(--dst-gap); }
.rent-buy { background: var(--sk-soft); border-radius: 10px; padding: 24px 26px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; align-items: center; }
.rent-buy-shop { grid-template-columns: minmax(0, .9fr) minmax(0, 1.6fr); gap: 28px; }
.rent-buy-t { font-size: 14.5px; max-width: 80ch; display: flex; flex-direction: column; gap: 8px; }
.rent-skis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.rent-ski { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--sk-line); border-radius: var(--sk-radius); overflow: hidden; color: var(--sk-text); position: relative; transition: box-shadow .15s, border-color .15s, transform .15s; }
.rent-ski:hover { text-decoration: none; color: var(--sk-text); border-color: var(--sk-line-strong); box-shadow: 0 6px 18px rgba(43, 49, 64, .12); transform: translateY(-2px); }
.rent-ski-img { display: flex; align-items: center; justify-content: center; height: 150px; padding: 12px; background: #fff; }
.rent-ski-img img { max-width: 100%; max-height: 100%; object-fit: contain; }
.rent-ski-b { display: flex; flex-direction: column; gap: 2px; padding: 10px 14px 14px; border-top: 1px solid var(--sk-line); }
.rent-ski-b b { color: var(--sk-ink); font-size: 15px; font-weight: 600; }
.rent-ski-b small { color: var(--sk-muted); font-size: 12.5px; }
.rent-ski-go { position: absolute; right: 10px; bottom: 12px; width: 30px; height: 30px; border-radius: 50%; background: var(--sk-soft); color: var(--sk-accent); display: flex; align-items: center; justify-content: center; }
.rent-ski-go .sk-ic { width: 15px; height: 15px; }
.rent-ski:hover .rent-ski-go { background: var(--sk-accent); color: #fff; }
@media (prefers-reduced-motion: reduce) { .rent-ski, .rent-ski:hover { transition: none; transform: none; } }
@media (max-width: 900px) { .rent-buy-shop { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 560px) { .rent-skis { gap: 8px; } .rent-ski-img { height: 110px; } .rent-ski-b { padding: 8px 10px 12px; } .rent-ski-go { display: none; } }
/* Line breaks in text */
.rent-buy-t br + br { display: none; }
/* Text links as buttons */
.rent-buy:not(.rent-buy-shop) .rent-buy-t a { display: inline-flex; margin: 8px 8px 0 0; padding: 8px 14px; background: #fff; border: 1px solid var(--sk-line-strong); border-radius: 999px; font-weight: 500; color: var(--sk-ink); }
.rent-buy:not(.rent-buy-shop) .rent-buy-t a:hover { text-decoration: none; border-color: var(--sk-accent); }

/* Travel agencies */
.agt-lead { font-size: 15.5px; max-width: 80ch; }
.agt { background: #fff; border: 1px solid var(--sk-line); border-radius: 10px; padding: 6px 20px 4px; overflow-x: auto; }
.agt .bur-t td { vertical-align: middle; }
.agt .bur-t td:last-child, .agt .bur-t th:last-child { padding-right: 16px; }
.agt .bur-ag { min-width: 0; align-items: center; }
.agt .bur-ag small { display: block; color: var(--sk-muted); font-size: 12.5px; }
.agt .bur-trans span { display: inline-flex; margin-right: 12px; }
.agt .bur-t tr.agt-feat td { background: #edf7f1; }
.agt .bur-t tr.agt-feat td:first-child { box-shadow: inset 4px 0 0 var(--sk-green); padding-left: 16px; }
.agt .bur-t tr.agt-feat .bur-logo { border-color: #cde6d7; }
.agt .bur-t tbody tr.agt-feat:hover td { background: #e2f1e8; }
.agt .bur-t tr.agt-feat + tr:not(.agt-feat) td { border-top: 1px solid var(--sk-line-strong); }
.agt-none { color: var(--sk-muted); font-size: 13px; }
@media (max-width: 760px) { .agt { padding: 4px 12px; } }
/* Agency rows on phones */
@media (max-width: 860px) {
	.agt .bur-t tr.agt-feat { background: #edf7f1; box-shadow: inset 4px 0 0 var(--sk-green); margin: 0 -12px; padding: 16px 12px 16px 16px; }
	.agt .bur-t tr.agt-feat td, .agt .bur-t tbody tr.agt-feat:hover td { background: none; }
	.agt .bur-t tr.agt-feat td:first-child { box-shadow: none; padding-left: 0; }
	.agt .bur-t tr.agt-feat + tr:not(.agt-feat) td { border-top: 0; }
	.agt .bur-t tr.agt-feat + tr:not(.agt-feat) { border-top: 1px solid var(--sk-line-strong); }
}

/* Hidden shop box */
.dst-side > .dst-side-off { display: none; }

/* Weather credit */
.dst .snv-yr { font-size: 12.5px; color: var(--sk-muted); margin-top: 10px; display: flex; flex-wrap: wrap; gap: 4px 14px; }
.dst .snv-yr a { color: var(--sk-muted); text-decoration: underline; }

/* Ski school */
.ss { display: flex; flex-direction: column; gap: 16px; }
.ss-lead { font-size: 16px; max-width: 72ch; }
.ss-tools { display: flex; flex-direction: column; gap: 10px; }
.ss-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ss-chips button { font: inherit; font-size: 13.5px; border: 1px solid var(--sk-line-strong); background: #fff; border-radius: 999px; padding: 7px 14px; cursor: pointer; color: var(--sk-ink); display: inline-flex; align-items: center; gap: 6px; margin: 0; }
.ss-chips button small { font-size: 12px; color: var(--sk-muted); }
.ss-chips button[aria-pressed="true"] { background: var(--sk-accent); border-color: var(--sk-accent); color: #fff; }
.ss-chips button[aria-pressed="true"] small { color: #d5e3e8; }
.ss-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 18px; font-size: 13px; color: var(--sk-muted); }
.ss-meta b { color: var(--sk-ink); font-weight: 500; }
.dst .ss-list { list-style: none; margin: 0; padding: 0; background: #fff; border: 1px solid var(--sk-line); border-radius: 10px; overflow: hidden; }
.ss-list > li { display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: 18px; align-items: start; padding: 18px 20px; border-bottom: 1px solid var(--sk-line); }
.ss-list > li:last-child { border-bottom: 0; }
.ss-list > li[hidden] { display: none; }
.ss-t { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.ss-t h3, .ss-one-hd h2 { display: flex; align-items: center; gap: 10px; font-size: 17px; color: var(--sk-ink); font-weight: 600; margin: 0; }
.ss-one-hd h2 { font-size: 20px; }
.ss-t p, .ss-one-main > p { font-size: 14px; max-width: 70ch; margin: 0; }
.ss-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.ss-tags span { font-size: 12px; background: var(--sk-soft); color: var(--sk-ink); border-radius: 999px; padding: 2px 9px; }
.ss-tags span.ss-lang { background: #fde8ea; color: #9b1c2e; }
.dst .ss-facts { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.ss-facts li { display: grid; grid-template-columns: 16px minmax(0, 1fr); gap: 8px; }
.ss-facts .sk-ic { width: 16px; height: 16px; color: var(--sk-muted); margin-top: 1px; }
.ss-facts b { font-weight: 500; color: var(--sk-ink); }
.ss-muted { color: var(--sk-muted); }
.ss-list > li.ss-feat { position: relative; grid-template-columns: 180px minmax(0, 1fr) 240px; background: #edf7f1; box-shadow: inset 4px 0 0 var(--sk-green); cursor: pointer; }
.ss-list > li.ss-feat:hover { background: #e3f2e9; }
.ss-photo { width: 180px; aspect-ratio: 3 / 2; max-width: 100%; border-radius: 8px; overflow: hidden; background: var(--sk-soft); }
.ss-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ss-badge { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--sk-save); }
.ss-badge .sk-ic { width: 14px; height: 14px; }
.ss-plogo { height: 30px; width: auto; max-width: 110px; object-fit: contain; }
.ss-plogo-lg { height: 56px; max-width: 140px; }
.ss-side { display: flex; flex-direction: column; gap: 14px; }
.ss-buy { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.ss-price { font-size: 13px; color: var(--sk-muted); }
.ss-price b { display: block; font-size: 20px; color: var(--sk-ink); font-weight: 600; }
.ss-go { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: 14px; white-space: nowrap; color: var(--sk-ink); background: var(--sk-travel); border-radius: 6px; padding: 11px 18px; }
.ss-go .sk-ic { width: 16px; height: 16px; }
.ss-go:hover, .ss-feat:hover .ss-go { text-decoration: none; color: var(--sk-ink); background-color: #f2b200; }
.ss-list .ss-go::after { content: ''; position: absolute; inset: 0; }
.ss-empty { padding: 28px 20px; text-align: center; display: flex !important; flex-direction: column; align-items: center; gap: 8px; font-size: 14.5px; border-bottom: 0 !important; }
.ss-empty[hidden] { display: none !important; }
.ss-empty b { color: var(--sk-ink); font-size: 16px; }
.ss-empty button { font: inherit; font-size: 14px; border: 0; background: none; color: var(--sk-accent); text-decoration: underline; cursor: pointer; }
.ss-one { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); background: #fff; border: 1px solid var(--sk-line); border-radius: 10px; overflow: hidden; }
.ss-one.ss-feat { position: relative; background: #edf7f1; box-shadow: inset 4px 0 0 var(--sk-green); }
.ss-one.ss-feat .ss-go::after { content: ''; position: absolute; inset: 0; }
.ss-one-main { padding: 22px 24px; display: flex; flex-direction: column; gap: 12px; }
.ss-one-hd { display: flex; align-items: center; gap: 14px; }
.ss-one-meet { background: var(--sk-soft-2); border-left: 1px solid var(--sk-line); padding: 22px 24px; display: flex; flex-direction: column; gap: 10px; }
.ss-one-meet h3 { font-size: 15px; color: var(--sk-ink); margin: 0; display: flex; align-items: center; gap: 8px; }
.ss-one-meet h3 .sk-ic { color: var(--sk-accent); }
.ss-one-meet dl { margin: 0; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 8px 14px; font-size: 13.5px; }
.ss-one-meet dt { font-weight: 500; color: var(--sk-ink); }
.ss-one-meet dd { margin: 0; }
.ss-one-meet .ss-dd-full { grid-column: 1 / -1; }
.ss-foot { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ss-box { display: flex; flex-direction: column; gap: 8px; border: 1px dashed var(--sk-line-strong); border-radius: 10px; padding: 16px 18px; font-size: 14px; background: #fff; }
.ss-box b { color: var(--sk-ink); font-size: 15px; font-weight: 500; }
.ss-box a { align-self: flex-start; font-weight: 500; display: inline-flex; align-items: center; gap: 6px; }
.ss-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.ss-3 > div { display: flex; flex-direction: column; gap: 6px; font-size: 14.5px; }
.ss-3 h3 { font-size: 16px; color: var(--sk-ink); display: flex; align-items: center; gap: 8px; margin: 0; }
.ss-3 h3 .sk-ic { color: var(--sk-accent); }
.ss-types { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.ss-type { border: 1px solid var(--sk-line); border-radius: 10px; padding: 18px; display: flex; flex-direction: column; gap: 8px; background: #fff; }
.ss-type-ic { width: 40px; height: 40px; border-radius: 50%; background: var(--sk-soft); color: var(--sk-accent); display: grid; place-items: center; }
.ss-type-ic .sk-ic { width: 22px; height: 22px; }
.ss-type h3 { font-size: 16px; color: var(--sk-ink); margin: 0; }
.ss-type .ss-age { font-size: 12.5px; color: var(--sk-muted); }
.ss-type p { font-size: 14px; margin: 0; }
.ss-type .ss-tip { margin-top: auto; font-size: 13px; color: var(--sk-ink); background: var(--sk-soft-2); border-radius: 6px; padding: 8px 10px; }
.ss-facts2 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; align-items: start; }
.ss-facts2 h2 { margin-bottom: 12px; }
.dst .ss-check { display: grid; gap: 10px; list-style: none; margin: 0; padding: 0; }
.ss-check li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; font-size: 14.5px; align-items: start; }
.ss-check li .sk-ic { color: var(--sk-green); margin-top: 2px; }
.ss-check b { color: var(--sk-ink); font-weight: 500; }
.ss-check a { font-weight: 500; }
.ss-split { display: flex; height: 12px; border-radius: 6px; overflow: hidden; }
.ss-split i { display: block; }
.ss-split-l { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 12.5px; color: var(--sk-muted); margin-top: 8px; }
.ss-split-l span { display: inline-flex; align-items: center; gap: 6px; }
.ss-split-l i { width: 10px; height: 10px; border-radius: 2px; display: inline-block; }
.ss-grades { display: grid; gap: 8px; margin-top: 14px; font-size: 13.5px; }
.ss-note { font-size: 12.5px; color: var(--sk-muted); margin-top: 6px; }
@media (max-width: 1000px) { .ss-types { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) {
	.ss-list > li { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.ss-list > li.ss-feat { grid-template-columns: 56px minmax(0, 1fr); }
	.ss-feat .ss-side { grid-column: 2; }
	.ss-feat .ss-photo { width: 56px; aspect-ratio: 1; }
	.ss-one { grid-template-columns: minmax(0, 1fr); }
	.ss-one-meet { border-left: 0; border-top: 1px solid var(--sk-line); }
	.ss-3, .ss-foot, .ss-facts2 { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) { .ss-types { grid-template-columns: minmax(0, 1fr); } .ss-one-meet dl { grid-template-columns: minmax(0, 1fr); gap: 2px; } .ss-one-meet dd { margin-bottom: 8px; } }
