/* Travel directory and destination hubs: shared Clear Layer components. */
#vo-travel-hub{--vh-ink:var(--vo-ink,#231437);--vh-bg:var(--vo-paper,#f8f9f4);--vh-muted:var(--vo-muted,#675d70);--vh-line:var(--vo-line,#ddd7e5);--vh-mint:var(--vo-mint,#cef0db);--vh-lav:#eee7f9;--vh-purple:#62419c;color:var(--vh-ink);font:inherit;line-height:1.65;padding-bottom:34px}
#vo-travel-hub *{box-sizing:border-box}
#vo-travel-hub [hidden]{display:none!important}
#vo-travel-hub a{color:inherit;text-underline-offset:4px}
#vo-travel-hub a:hover{text-decoration-thickness:2px}
#vo-travel-hub :is(a,button,select):focus-visible{outline:3px solid var(--vh-purple);outline-offset:4px}
#vo-travel-hub :is(button,select){font:inherit;color:inherit}
#vo-travel-hub :is(a,button,select){touch-action:manipulation}
#vo-travel-hub .vo-breadcrumb{padding-top:28px;display:flex;flex-wrap:wrap;gap:8px 12px;font-size:12px;color:var(--vh-muted)}
#vo-travel-hub .vh-hero{padding:34px 0 42px}
#vo-travel-hub section.vh-hero{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(260px,1fr);gap:36px;align-items:center}
#vo-travel-hub section.vh-hero>.vh-evidence{margin:0}
#vo-travel-hub section.vh-hero>.vh-evidence h2{font-size:27px}
#vo-travel-hub.vh-page h1{font-size:clamp(34px,4.8vw,56px);line-height:1.1;letter-spacing:-.04em;margin:12px 0 22px;font-weight:700;max-width:850px;color:var(--vh-ink)}
#vo-travel-hub.vh-page h2{font-size:clamp(26px,2.7vw,34px);line-height:1.25;letter-spacing:-.025em;margin:8px 0 16px;font-weight:700;color:var(--vh-ink)}
#vo-travel-hub.vh-page h3{font-size:22px;line-height:1.3;letter-spacing:-.02em;margin:0 0 12px;font-weight:650;color:var(--vh-ink)}
#vo-travel-hub .vh-kicker{font-size:12px;letter-spacing:.12em;font-weight:650;text-transform:uppercase;color:var(--vh-muted);margin:0 0 8px}
#vo-travel-hub p{margin:10px 0 18px}
#vo-travel-hub .vh-lead{font-size:19px;line-height:1.65;color:var(--vh-muted);max-width:810px}
#vo-travel-hub .vh-meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px;color:var(--vh-muted)}
#vo-travel-hub .vh-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;margin-top:24px}
#vo-travel-hub .vh-primary,#vo-travel-hub .vh-secondary{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:46px;padding:13px 18px;border:1px solid var(--vh-line);border-radius:4px;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;cursor:pointer}
#vo-travel-hub .vh-primary{background:var(--vh-ink);color:#fff;border-color:var(--vh-ink)}
#vo-travel-hub .vh-primary:hover{background:#39234f;color:#fff}
#vo-travel-hub .vh-secondary{background:#fff;color:var(--vh-ink)}
#vo-travel-hub .vh-secondary:hover{background:var(--vh-lav)}
#vo-travel-hub .vh-section{padding:34px 0;border-top:1px solid var(--vh-line);scroll-margin-top:64px}
#vo-travel-hub .vh-filter-panel{background:var(--vh-mint);border-top:3px solid var(--vh-ink);padding:24px;margin:22px 0}
#vo-travel-hub .vh-filters{display:flex;flex-wrap:wrap;gap:16px 22px;align-items:end}
#vo-travel-hub .vh-field{display:inline-grid;gap:7px;min-width:210px;max-width:100%;margin:0 18px 18px 0;font-size:13px;font-weight:600;vertical-align:top}
#vo-travel-hub select{width:100%;min-height:46px;background:#fff;border:1px solid #b7cfc0;border-radius:4px;padding:10px 12px;font-size:15px}
#vo-travel-hub [data-vh-intent]{min-height:46px;padding:11px 16px;background:#fff;border:1px solid #b7cfc0;border-radius:4px;font-size:14px;line-height:1.5;cursor:pointer;margin:0 8px 8px 0}
#vo-travel-hub [data-vh-intent][aria-pressed="true"]{background:var(--vh-ink);border-color:var(--vh-ink);color:#fff}
#vo-travel-hub #vh-reset{background:transparent;border:0;padding:10px 0;color:var(--vh-ink);min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:13px;cursor:pointer}
#vo-travel-hub #vh-status{font-size:14px;color:var(--vh-muted);margin:18px 0 24px;min-height:24px}
#vo-travel-hub .vh-filters>#vh-status{flex-basis:100%;margin:0}
#vo-travel-hub #vh-empty{padding:24px;background:var(--vh-lav);border-left:4px solid var(--vh-purple)}
#vo-travel-hub .vh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:24px 0}
#vo-travel-hub .vh-card{background:#fff;border:1px solid var(--vh-line);border-top:3px solid var(--vh-ink);padding:25px;display:flex;flex-direction:column;min-width:0}
#vo-travel-hub .vh-card>p{font-size:14px;color:var(--vh-muted)}
#vo-travel-hub .vh-card h3 a{text-decoration:none}
#vo-travel-hub .vh-card h3 a:hover{text-decoration:underline}
#vo-travel-hub .vh-card-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:auto;padding-top:18px}
#vo-travel-hub .vh-card-actions a{font-size:13px;line-height:1.55;overflow-wrap:anywhere}
#vo-travel-hub .vh-checklist-link,#vo-travel-hub .vh-diagnostic-link{display:flex;align-items:center;justify-content:center;text-align:center;padding:11px 12px;min-height:44px;border:1px solid var(--vh-line);border-radius:4px;text-decoration:none;font-weight:600;background:#fff}
#vo-travel-hub .vh-checklist-link{background:var(--vh-ink);color:#fff;border-color:var(--vh-ink)}
#vo-travel-hub [data-vh-primary="false"]{background:#fff;color:var(--vh-ink);border-color:var(--vh-line)}
#vo-travel-hub [data-vh-primary="true"]{background:var(--vh-ink);color:#fff;border-color:var(--vh-ink)}
#vo-travel-hub .vh-plan-link{display:block;text-align:center;padding:11px 9px;min-height:44px;border-radius:4px;background:var(--vh-mint);color:#244c3c;font-weight:600;text-decoration:none}
#vo-travel-hub .vh-plan-link:hover{background:#bce5cd;color:#193e2d}
#vo-travel-hub .vh-evidence{background:var(--vh-lav);padding:28px;margin:22px 0}
#vo-travel-hub .vh-note{font-size:14px;color:var(--vh-muted)}
#vo-travel-hub .vh-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;counter-reset:vhstep;padding:0;margin:24px 0}
#vo-travel-hub .vh-steps li{counter-increment:vhstep;border-top:2px solid var(--vh-line);padding-top:16px;font-size:15px}
#vo-travel-hub .vh-steps li::before{content:"0" counter(vhstep);display:block;color:var(--vh-purple);font-size:22px;font-weight:650;margin-bottom:9px}
#vo-travel-hub .vh-table-wrap{overflow-x:auto;margin:24px 0;max-width:100%;border:1px solid var(--vh-line)}
#vo-travel-hub .vh-comparison{border-collapse:collapse;width:100%;min-width:600px;background:#fff;font-size:14px;margin:0}
#vo-travel-hub .vh-comparison th,#vo-travel-hub .vh-comparison td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--vh-line)}
#vo-travel-hub .vh-comparison th{background:var(--vh-mint);font-weight:650}
#vo-travel-hub .vh-comparison tr:last-child td{border-bottom:0}
@media(max-width:960px){#vo-travel-hub .vh-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#vo-travel-hub section.vh-hero{grid-template-columns:1fr;gap:24px}}
@media(max-width:640px){#vo-travel-hub .vh-hero{padding:26px 0 32px}#vo-travel-hub .vh-lead{font-size:17px}#vo-travel-hub .vh-grid,#vo-travel-hub .vh-steps{grid-template-columns:1fr}#vo-travel-hub .vh-filter-panel,#vo-travel-hub .vh-evidence{padding:21px}#vo-travel-hub .vh-field{display:grid;width:100%;min-width:0;margin-right:0}#vo-travel-hub .vh-actions{align-items:stretch}#vo-travel-hub .vh-actions>.vh-primary,#vo-travel-hub .vh-actions>.vh-secondary{width:100%}#vo-travel-hub [data-vh-intent]{width:100%;margin-right:0}#vo-travel-hub .vh-card{padding:22px}#vo-travel-hub .vh-section{padding:28px 0}}

/* Travel hubs: equal CTA rows, including cards with language links or notes. */
#vo-travel-hub .vh-card-actions {
  display: grid;
  grid-template-rows: repeat(3, minmax(64px, 1fr));
  gap: 12px;
  align-items: stretch;
}
#vo-travel-hub .vh-card-actions > a {
  display: block;
  align-content: center;
  min-height: 64px;
  height: 100%;
  margin: 0;
  padding: 11px 12px;
  text-align: center;
  white-space: normal;
}
@supports (grid-template-rows: subgrid) {
  #vo-travel-hub .vh-card {
    display: grid;
    grid-row: span 5;
    grid-template-rows: subgrid;
    row-gap: 0;
  }
  #vo-travel-hub .vh-card > .vh-kicker { grid-row: 1; }
  #vo-travel-hub .vh-card > h3 { grid-row: 2; }
  #vo-travel-hub .vh-card > p:not(.vh-kicker):not(.vh-language):not(.vh-note) { grid-row: 3; }
  #vo-travel-hub .vh-card > .vh-card-actions {
    grid-row: 4;
    margin-top: 0;
  }
  #vo-travel-hub .vh-card > :is(.vh-language, .vh-note) { grid-row: 5; }
}

/* Travel hubs: align select, intent controls and reset without baseline gaps. */
#vo-travel-hub .vh-filters { align-items: flex-end; }
#vo-travel-hub .vh-filters > .vh-field { margin: 0; }
#vo-travel-hub .vh-intent,
#vo-travel-hub .vh-intents {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}
#vo-travel-hub .vh-intents { margin-bottom: 16px; }
#vo-travel-hub [data-vh-intent] {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  min-height: 46px;
}
#vo-travel-hub select { min-height: 46px; line-height: 1.5; }
#vo-travel-hub #vh-reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  line-height: 1.5;
  margin: 0;
}
@media (max-width: 640px) {
  #vo-travel-hub .vh-intent,
  #vo-travel-hub .vh-intents {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: 1fr;
  }
}

