/* Aventra — Explore · Destinations · Guides */
.dest-tile-hit { position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.dest-tile .corner, .dest-tile .risk-pill { z-index: 2; }
.dest-tile-text { position: relative; z-index: 2; pointer-events: none; display: flex; flex-direction: column; }
.dest-tile-text .sub { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }
.dest-tile.strip { width: 260px; flex: none; aspect-ratio: 5 / 4; }
.pg-explore-hero { min-height: 340px; display: flex; align-items: flex-end; margin-bottom: 26px; }
.pg-explore-hero-body { display: flex; flex-direction: column; gap: 10px; max-width: 640px; }
.pg-explore-hero h1 { font-size: var(--fs-hero); }
.pg-explore-hero .lede { color: rgba(255, 255, 255, 0.85); font-size: var(--fs-lg); }
.pg-explore-hero .eyebrow { color: rgba(255, 255, 255, 0.75); }
.pg-explore-hero .btn-ghost { color: #fff; }
.pg-explore-section { margin-bottom: 30px; }
.pg-explore-chips { margin-bottom: 16px; }
.pg-explore-strip { display: flex; gap: var(--gutter); overflow-x: auto; padding: 4px 4px 12px; scroll-snap-type: x mandatory; }
.pg-explore-strip > * { scroll-snap-align: start; }
/* destinations */
.pg-dest-toolbar { gap: 12px; margin-bottom: var(--gutter); padding: 16px 18px; }
.pg-dest-toolbar-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.pg-dest-toolbar-row .input { flex: 1 1 220px; }
.pg-dest-toolbar-row .select { width: auto; min-width: 150px; }
.pg-dest-switch { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.pg-dest-list { display: flex; flex-direction: column; gap: 12px; }
.pg-dest-row { flex-direction: row; align-items: center; gap: 16px; padding: 14px 16px; }
.pg-dest-row-main { display: flex; align-items: center; gap: 14px; flex: 1; min-width: 0; text-align: left; color: inherit; }
.pg-dest-row-photo { width: 120px; height: 84px; flex: none; }
.pg-dest-row-photo img { width: 100%; height: 100%; }
.pg-dest-row-text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.pg-dest-row-name { font-family: var(--font-display); font-size: var(--fs-xl); color: var(--heading); }
.pg-dest-row-actions { display: flex; gap: 8px; align-items: center; flex: none; }
/* guides */
.pg-guides-back { margin-bottom: 12px; display: inline-flex; }
.pg-guides-hero { min-height: 300px; display: flex; align-items: flex-end; margin-bottom: 22px; }
.pg-guides-hero-body { display: flex; flex-direction: column; gap: 10px; max-width: 700px; }
.pg-guides-hero h1 { font-size: var(--fs-hero); }
.pg-guides-hero .lede { color: rgba(255, 255, 255, 0.85); font-size: var(--fs-lg); }
.pg-guides-hero .chip { background: rgba(255, 255, 255, 0.18); border-color: rgba(255, 255, 255, 0.35); color: #fff; }
.pg-guides-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: var(--gutter); align-items: start; }
.pg-guides-toc { position: sticky; top: calc(var(--topbar-h) + 8px); padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.pg-guides-toc nav { display: flex; flex-direction: column; gap: 2px; }
.pg-guides-toc nav a { padding: 7px 10px; border-radius: 10px; color: var(--text-2); font-size: var(--fs-sm); font-weight: 500; }
.pg-guides-toc nav a:hover { background: var(--surface-3); color: var(--heading); text-decoration: none; }
.pg-guides-article { display: flex; flex-direction: column; gap: var(--gutter); min-width: 0; }
.pg-guides-section { padding: 24px 26px; gap: 14px; scroll-margin-top: calc(var(--topbar-h) + 10px); }
.pg-guides-section p { line-height: 1.65; max-width: 72ch; }
.pg-guides-prose { display: flex; flex-direction: column; gap: 12px; }
.pg-guides-months { max-width: 520px; }
.pg-guides-photos { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.pg-guides-fig { margin: 0; display: flex; flex-direction: column; gap: 6px; }
.pg-guides-fig .photo { aspect-ratio: 4 / 3; padding: 0; border: 0; cursor: pointer; width: 100%; }
.pg-guides-fig img { width: 100%; height: 100%; }
.pg-guides-card { padding: 0; overflow: hidden; gap: 0; color: inherit; }
.pg-guides-card:hover { text-decoration: none; }
.pg-guides-card-photo { aspect-ratio: 16 / 10; border-radius: 0; }
.pg-guides-card-photo img { width: 100%; height: 100%; }
.pg-guides-card-body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 16px; }
.pg-guides-card-name { font-family: var(--font-display); font-size: var(--fs-xl); color: var(--heading); }
@media (max-width: 1180px) { .pg-guides-layout { grid-template-columns: 1fr; } .pg-guides-toc { position: static; } .pg-guides-toc nav { flex-direction: row; flex-wrap: wrap; } }
@media (max-width: 760px) {
  .pg-explore-hero { min-height: 260px; padding: 20px; } .pg-explore-hero h1, .pg-guides-hero h1 { font-size: var(--fs-2xl); }
  .pg-guides-hero { min-height: 240px; padding: 20px; }
  .pg-guides-section { padding: 18px; }
  .pg-dest-row { flex-direction: column; align-items: stretch; } .pg-dest-row-actions { justify-content: flex-end; }
  .dest-tile.strip { width: 220px; }
}

.pg-explore-more { margin-top: 14px; display: flex; flex-direction: column; gap: 8px; }

/* Guides: Must See list */
.pg-guides-must { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 10px; }
.pg-guides-place { display: flex; align-items: flex-start; gap: 12px; padding: 10px; border-radius: var(--radius-md); background: var(--surface-2); border: 1px solid var(--glass-rim-2); text-align: left; color: inherit; transition: transform var(--dur-fast) var(--ease), border-color var(--dur-fast); }
.pg-guides-place:hover { transform: translateY(-2px); border-color: var(--accent); }
.pg-guides-place .thumb { flex: none; width: 86px; height: 64px; border-radius: 10px; overflow: hidden; background: var(--surface-3); }
.pg-guides-place .thumb img { width: 100%; height: 100%; object-fit: cover; }
.pg-guides-place-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.pg-guides-place-text b { color: var(--heading); }
