.viatorDirectory{padding-top:18px!important}
.viatorDirectoryIntro{max-width:760px;margin:0 0 28px;color:#aebfd0;line-height:1.7}
.viatorDirectoryControls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.55fr);gap:12px;align-items:center;margin:0 0 12px}
.viatorDirectoryControls input,.viatorDirectoryControls select{width:100%;min-height:50px;padding:12px 15px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:#14243a;color:#fff;font:inherit}
.viatorDirectoryControls select option{background:#14243a;color:#fff}
.viatorDirectoryCount{color:#aebfd0;font-size:14px}
.viatorDirectoryFilters{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin:0 0 24px}
.viatorCuratedToggle{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#e1d2ae;font-size:14px;cursor:pointer}
.viatorCuratedToggle input{width:19px;height:19px;margin:0;accent-color:#d7a54a;flex-shrink:0;cursor:pointer}
.viatorCuratedToggle input:focus-visible{outline:2px solid #f5d98d;outline-offset:4px}
.viatorCuratedBadge{display:inline-block;max-width:100%;padding:6px 10px;margin-bottom:13px;border:1px solid rgba(215,165,74,.4);border-radius:999px;background:rgba(215,165,74,.09);color:#f5d98d;font-size:11px;font-weight:700;letter-spacing:.04em}
.viatorLocationFeatured{border-color:rgba(215,165,74,.25)}
.viatorDirectoryEmpty{max-width:760px;padding:30px;border:1px solid rgba(215,165,74,.28);border-radius:24px;background:rgba(215,165,74,.045)}
.viatorDirectoryEmpty[hidden]{display:none}
.viatorDirectoryEmpty h3{margin:0 0 12px;font-family:Georgia,serif;font-size:30px}
.viatorDirectoryEmpty p{color:#b7c5d3;line-height:1.7}
.viatorDirectoryEmpty button{font:inherit;cursor:pointer;min-height:48px}
.viatorEmptyLinks{font-size:14px;margin-bottom:0}
.viatorEmptyLinks a{color:#f5d98d;text-decoration:underline;text-underline-offset:3px}
.viatorDirectoryRecovery{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-bottom:24px;padding:20px;border:1px solid rgba(215,165,74,.35);border-radius:18px;background:rgba(215,165,74,.055)}
.viatorDirectoryRecovery[hidden]{display:none}
.viatorDirectoryRecovery p{flex:1 1 300px;margin:0;color:#d3deea;line-height:1.65}
.viatorDirectoryRecovery button{min-height:48px;font:inherit;cursor:pointer}
.viatorDirectoryRecovery button:disabled{opacity:.65;cursor:wait}
.viatorLocation .pad{padding:20px}
.viatorLocation h3{margin-top:10px}
.viatorLocation p{min-height:52px}
.viatorLocation .btn{font-size:13px;padding:12px 15px}
.viatorDirectoryMore{margin:28px auto 0;display:flex;cursor:pointer;font:inherit}
.viatorDirectoryMore[hidden]{display:none}
@media(max-width:760px){.viatorDirectoryControls{grid-template-columns:1fr}.viatorDirectoryFilters{align-items:flex-start;flex-direction:column;gap:2px}.viatorDirectoryCount{padding:3px 0}}
.viatorLocation{overflow:hidden}
.vstPhotoWrap{position:relative;height:190px;width:100%;overflow:hidden;background:linear-gradient(135deg,#18344d,#286276 55%,#9b8258);color:#fff;display:flex;align-items:center;justify-content:center}
.vstPhotoWrap.vstPhotoUnavailable{background:linear-gradient(135deg,#18344d,#286276)}
.vstPhotoFallback{padding:16px;text-align:center;font-size:15px;font-weight:600;letter-spacing:.02em;color:#fff}
.vstDestinationPhoto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vstPhotoCredit{position:absolute;right:6px;bottom:6px;max-width:calc(100% - 12px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 8px;border-radius:6px;background:rgba(3,12,22,.76);color:#fff;font-size:10px;line-height:1.3;text-decoration:none;z-index:1}
.vstPhotoCredit:hover{text-decoration:underline}
.viatorLocation .vstPhotoWrap{height:190px}
.destinationBookingLink{display:block;margin-top:12px;color:#d7bd83;font-size:13px;line-height:1.5}
.destinationBookingLink:hover{text-decoration:underline}

/* A compact search workspace and clearer geographic choices. */
.destinationHero h1{font-size:clamp(48px,6.5vw,82px);line-height:1.04;max-width:960px}
.destinationHero .lede{max-width:720px}
.viatorDirectory h2{font-size:clamp(32px,3.7vw,47px);line-height:1.12;margin-top:10px;margin-bottom:14px}
.viatorDirectoryIntro{max-width:680px;margin-bottom:19px;color:#bfcedb;font-size:15px}
.viatorQuickSearches{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 24px}
.viatorQuickSearches>span{font-size:12px;color:#b0c1d1;margin-right:3px}
.viatorQuickSearches button{display:inline-flex;align-items:center;min-height:44px;padding:9px 15px;border:1px solid rgba(195,214,229,.22);border-radius:999px;background:rgba(255,255,255,.025);color:#dbe5ed;font:inherit;font-size:12px;cursor:pointer}
.viatorQuickSearches button:hover,.viatorQuickSearches button[aria-pressed="true"]{border-color:rgba(245,217,141,.58);background:rgba(215,165,74,.1);color:#f4d58c}
.viatorQuickSearches #viatorCuratedShortcut{color:#f4d58c;border-color:rgba(215,165,74,.34)}
.viatorDirectoryControls{padding:22px 22px 17px;margin-bottom:0;border:1px solid var(--line);border-bottom:0;border-radius:21px 21px 0 0;background:#10273d;gap:17px}
.viatorControlLabel{display:grid;gap:9px;min-width:0;font-size:12px;font-weight:650;color:#dce6ee}
.viatorDirectoryControls input,.viatorDirectoryControls select{font-size:16px;min-height:50px;background:#152f46;border-color:rgba(195,214,229,.27)}
.viatorDirectoryControls input:focus,.viatorDirectoryControls select:focus{outline:2px solid #f4d58c;outline-offset:2px}
.viatorDirectoryFilters{gap:7px 20px;justify-content:flex-start;padding:0 22px 15px;margin-bottom:26px;border:1px solid var(--line);border-top:0;border-radius:0 0 21px 21px;background:#10273d}
.viatorDirectoryCount{margin-left:auto;font-size:12px;color:#b9cbd9;line-height:1.55}
.viatorCuratedToggle{font-size:12px}
.viatorClearFilters{min-height:44px;border:0;background:transparent;color:#f4d58c;text-decoration:underline;text-underline-offset:4px;font:inherit;font-size:12px;cursor:pointer;padding:8px 0}
.viatorClearFilters:disabled{color:#9aafc0;opacity:.65;cursor:default;text-decoration:none}
.viatorLocation{display:flex;flex-direction:column;min-width:0;background:linear-gradient(145deg,#10283e,#0c1e31);border-color:var(--line)}
.viatorLocation .pad{display:flex;flex-direction:column;flex:1;padding:23px}
.viatorLocation .kicker{font-size:10px;letter-spacing:.1em;line-height:1.65;color:#c2d1dd;text-transform:none;overflow-wrap:anywhere}
.viatorLocation h3{font-size:30px;line-height:1.12;margin:11px 0 10px;overflow-wrap:anywhere}
.viatorLocation p{font-size:13px;line-height:1.65;min-height:0;color:#bdcbd8;margin:0 0 20px;flex:1}
.viatorLocation .btn{width:100%;min-height:46px;font-size:13px;background:rgba(245,217,141,.065);border-color:rgba(245,217,141,.29);color:#f4d58c;white-space:normal;text-align:center}
.viatorLocation .btn:hover{background:rgba(245,217,141,.13)}
.viatorLocation .destinationBookingLink{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:5px;font-size:12px;color:#d3dfeb}
.viatorLocationFeatured{border-color:rgba(215,165,74,.36)}
.viatorCuratedBadge{align-self:flex-start;font-size:10px;margin-bottom:10px;line-height:1.5}
.vstPhotoFallback{font-size:13px;line-height:1.6;letter-spacing:0}
@media(max-width:760px){.viatorDirectoryControls{padding:18px 18px 13px;gap:16px}.viatorDirectoryFilters{padding:0 18px 15px;flex-direction:row;align-items:center;gap:3px 18px}.viatorDirectoryCount{width:100%;margin-left:0;padding:2px 0 0}.viatorQuickSearches{gap:7px;margin-bottom:20px}.viatorQuickSearches button{padding:9px 12px}}
@media(max-width:620px){.destinationHero h1{font-size:clamp(42px,11.5vw,58px)}.viatorDirectory h2{font-size:34px}.viatorDirectoryIntro{font-size:14px}.viatorDirectoryControls{border-radius:18px 18px 0 0}.viatorDirectoryFilters{border-radius:0 0 18px 18px;margin-bottom:21px}.viatorLocation .pad{padding:22px}.viatorLocation h3{font-size:29px}.viatorLocation .vstPhotoWrap{height:200px}.viatorDirectoryEmpty{padding:24px 21px}}
