body.meridian-page[data-page="country"] { color: var(--color-text); background-color: var(--color-neutral-300); background-image: var(--page-art); }
body.meridian-page[data-page="country"] .ws-main { padding-bottom: 0; }

.meridian-page .country,
.meridian-page .country-sticky,
.meridian-page .country-planning,
.meridian-page .country-dialog,
.meridian-page .country-mapsheet,
.meridian-page .country-action-dialog,
.meridian-page .place-info-modal {
  --c-accent: var(--color-accent);
  --c-accent-deep: var(--color-accent-700);
  --c-accent-soft: var(--color-accent-100);
  --c-navy: var(--color-text);
  --c-navy-deep: var(--color-neutral-900);
  --c-blue: var(--color-neutral-700);
  --c-blue-soft: var(--color-neutral-200);
  --c-ink: var(--color-text);
  --c-muted: var(--color-neutral-700);
  --c-quiet: var(--color-neutral-600);
  --c-line: var(--color-divider);
  --c-page: var(--color-neutral-300);
  --c-wrap: min(1344px, calc(100% - 96px));
}

.meridian-page .country { width: min(1440px, 100%); margin-inline: auto; background: var(--sheet); backdrop-filter: var(--sheet-blur); }

.meridian-page .country-btn {
  min-height: 48px;
  padding: 13px 20px;
  border: var(--rule) solid var(--rule-color);
  border-radius: var(--radius-ctl);
  color: var(--color-text);
  background: transparent;
  box-shadow: none;
  font: 700 13px/1.2 var(--font-body);
  transition: background 140ms ease, color 140ms ease;
}
.meridian-page .country-btn:hover { transform: none; background: var(--tint); }
.meridian-page .country-btn--primary { border-color: var(--color-accent); color: var(--color-bg); background: var(--color-accent); box-shadow: var(--btn-glow); }
.meridian-page .country-btn--primary:hover { background: var(--color-accent-600); box-shadow: var(--btn-glow); }
.meridian-page .country-btn--light,
.meridian-page .country-btn--ghost,
.meridian-page .country-btn--soft { border-color: var(--rule-color); color: var(--color-text); background: var(--sheet); box-shadow: none; }
.meridian-page .country-btn--sm { min-height: 42px; padding: 10px 14px; border-radius: var(--radius-ctl); font-size: 12px; }

.meridian-page .country-hero {
  min-height: 620px;
  padding: 50px 0 64px;
  color: var(--invert-ink);
  background: var(--invert-bg);
  border-bottom: var(--rule) solid var(--rule-color);
}
.meridian-page .country-hero__shade { background: linear-gradient(90deg, rgba(5, 9, 20, .93) 0%, rgba(5, 9, 20, .78) 38%, rgba(5, 9, 20, .18) 74%, transparent 100%); }
.meridian-page .country-hero--plain { color: var(--color-text); background: var(--sheet); }
.meridian-page .country-hero--plain::before { opacity: .26; background-image: radial-gradient(circle at 78% 18%, color-mix(in srgb, var(--color-accent) 24%, transparent), transparent 34%), linear-gradient(var(--tint), var(--tint)); }
.meridian-page .country-hero--plain .country-hero__shade { background: transparent; }
.meridian-page .country-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(min(370px, 100%), .78fr); gap: 54px; }
.meridian-page .country-hero__eyebrow { margin-bottom: 18px; color: currentColor; font-size: 11px; letter-spacing: .15em; opacity: .82; }
.meridian-page .country-hero__code { min-width: 42px; height: 30px; border-radius: var(--radius-ctl); color: var(--color-bg); background: var(--color-accent); box-shadow: none; }
/* Heading ramp comes from the shared page-hero contract in trips-meridian.css. */
.meridian-page .country-hero h1 { max-width: 760px; margin-bottom: 16px; text-shadow: none; }
.meridian-page .country-hero__lede { max-width: 31ch; font-size: clamp(18px, 1.6vw, 23px); line-height: 1.35; text-shadow: none; }
.meridian-page .country-hero__intro { max-width: 58ch; margin-bottom: 26px; color: currentColor; font-size: 15px; line-height: 1.55; opacity: .78; text-shadow: none; }
.meridian-page .country-hero__actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.meridian-page .country-hero__actions .country-btn { min-width: 0; padding: 13px 12px; font-size: 12px; }
.meridian-page .country-hero__highlights { margin-top: 28px; border-top: var(--rule) solid color-mix(in srgb, currentColor 30%, transparent); }
.meridian-page .country-hero__highlights li { min-width: 122px; padding: 16px 18px 4px 0; margin-right: 18px; border-right: 0; }
.meridian-page .country-hero__glyph svg { width: 22px; height: 22px; color: currentColor; }
.meridian-page .country-hero__stat strong { font-size: 14px; }
.meridian-page .country-hero__stat small { color: currentColor; font-size: 11px; opacity: .68; }

.meridian-page .country-map-panel { overflow: hidden; border: var(--rule) solid color-mix(in srgb, var(--invert-ink) 34%, transparent); border-radius: var(--radius-card); background: var(--sheet); box-shadow: none; }
.meridian-page .country-hero--plain .country-map-panel { border-color: var(--rule-color); }
.meridian-page .country-map-panel__frame { min-height: 380px; }
.meridian-page .country-map-panel__map .leaflet-tile-pane { filter: var(--map-filter); }
.meridian-page .country-map-panel__pick,
.meridian-page .country-map-panel__expand,
.meridian-page .country-map-panel__foot { border-radius: var(--radius-ctl); color: var(--color-text); background: var(--sheet); box-shadow: none; }
.meridian-page .country-map-panel__pick,
.meridian-page .country-map-panel__expand { border: var(--rule) solid var(--rule-color); }
.meridian-page .country-map-panel__foot { border-top: var(--rule) solid var(--rule-color); }
.meridian-page .country-map-panel__open { border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; }

.meridian-page .country-facts { width: 100%; max-width: none; margin: 0; padding-inline: 48px; border-bottom: var(--rule) solid var(--rule-color); border-radius: 0; background: var(--sheet); box-shadow: none; }
.meridian-page .country-fact { min-height: 112px; padding: 20px 22px; border-right: var(--rule) solid var(--rule-soft); }
.meridian-page .country-fact:first-child { padding-left: 0; }
.meridian-page .country-fact__icon { border: 0; border-radius: 0; color: var(--color-accent); background: transparent; }
.meridian-page .country-fact__label { color: var(--color-neutral-700); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.meridian-page .country-fact__value { color: var(--color-text); font-size: 14px; }
.meridian-page .country-fact__note { color: var(--color-neutral-700); font-size: 11px; }

.meridian-page .country-section-nav { position: sticky; top: 68px; z-index: 45; width: 100%; margin: 0; padding: 0 48px; gap: 0; border: 0; border-bottom: var(--rule) solid var(--rule-color); border-radius: 0; background: var(--sheet); backdrop-filter: var(--sheet-blur); box-shadow: none; }
.meridian-page .country-section-nav a { min-height: 54px; padding: 15px 20px; border-radius: 0; color: var(--color-text); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.meridian-page .country-section-nav a:first-child { padding-left: 0; }
.meridian-page .country-section-nav a:hover,
.meridian-page .country-section-nav a:focus-visible { color: var(--color-accent-700); background: transparent; }

.meridian-page .country-planning { width: var(--c-wrap); margin: 18px auto 0; padding: 12px 16px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-card); background: var(--tint); box-shadow: none; }
.meridian-page .country-planning__counts span { border-radius: var(--radius-ctl); color: var(--color-neutral-700); background: var(--color-neutral-200); }

.meridian-page .country-section { width: var(--c-wrap); margin: 0 auto; padding: 48px 0; border-bottom: var(--rule) solid var(--rule-color); }
.meridian-page .country-section__head { margin-bottom: 24px; }
.meridian-page .country-section__head h2 { color: var(--color-text); font: 700 clamp(34px, 4vw, 46px)/.96 var(--font-display); letter-spacing: -.035em; text-transform: var(--heading-case); }
.meridian-page .country-section__head h2::after { display: none; }
.meridian-page .country-section__head p { color: var(--color-neutral-800); font-size: 16px; }
.meridian-page .country-section__count { border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; }

.meridian-page .country-routes { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; border-top: var(--rule) solid var(--rule-color); border-left: var(--rule) solid var(--rule-color); }
.meridian-page .route-card { overflow: hidden; border: 0; border-right: var(--rule) solid var(--rule-color); border-bottom: var(--rule) solid var(--rule-color); border-radius: 0; background: var(--sheet); box-shadow: none; transition: none; }
.meridian-page .route-card:hover { transform: none; box-shadow: none; }
.meridian-page .route-card__media { min-height: 250px; border-radius: 0; background: var(--tint); }
.meridian-page .route-card__media img { filter: var(--map-filter); transition: none; }
.meridian-page .route-card:hover .route-card__media img { transform: none; }
.meridian-page .route-card__media::after { background: linear-gradient(0deg, rgba(10, 10, 10, .64), transparent 54%); }
.meridian-page .route-card__days { top: 12px; left: 12px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: var(--sheet); box-shadow: none; }
.meridian-page .route-card__caption { color: var(--invert-ink); }
.meridian-page .route-card__caption h3 { font-family: var(--font-display); font-size: 27px; text-transform: var(--heading-case); }
.meridian-page .route-card__body { padding: 18px; }
.meridian-page .route-card__summary { color: var(--color-neutral-800); }
.meridian-page .route-card__meta { color: var(--color-neutral-700); }
.meridian-page .route-card__meta svg { color: var(--color-text); }
.meridian-page .route-more summary,
.meridian-page .route-more__menu,
.meridian-page .route-more__menu button { border-radius: var(--radius-ctl); color: var(--color-text); background: var(--sheet); box-shadow: none; }
.meridian-page .route-more summary { border: var(--rule) solid var(--rule-color); }
.meridian-page .route-more__menu { border: var(--rule) solid var(--rule-color); }

/* Two visual showcases establish the pattern; every remaining route is a
   scannable comparison row rather than another large card. */
.meridian-page .country-route-table { width: var(--c-wrap); margin: 18px auto 0; border: var(--rule) solid var(--rule-color); background: var(--sheet); }
.meridian-page .country-route-table__row { display: grid; grid-template-columns: minmax(min(220px, 100%),1.7fr) .45fr .5fr .7fr .9fr 1fr; align-items: center; min-height: 62px; border-top: var(--rule) solid var(--rule-soft); }
.meridian-page .country-route-table__row:first-child { border-top: 0; }
.meridian-page .country-route-table__row > span { min-width: 0; padding: 10px 12px; color: var(--color-neutral-700); font-size: 12px; }
.meridian-page .country-route-table__row > span + span { border-left: var(--rule) solid var(--rule-soft); }
.meridian-page .country-route-table__row strong,
.meridian-page .country-route-table__row small { display: block; }
.meridian-page .country-route-table__row strong { color: var(--color-text); font-family: var(--font-display); font-size: 16px; }
.meridian-page .country-route-table__row small { margin-top: 3px; color: var(--color-neutral-700); }
.meridian-page .country-route-table__row.is-head { min-height: 36px; background: var(--tint); }
.meridian-page .country-route-table__row.is-head span { font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.meridian-page .country-route-table__row button { margin: 2px; padding: 7px 9px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; font-weight: 750; cursor: pointer; }

.meridian-page .country-filters { padding: 16px 0; border-block: var(--rule) solid var(--rule-color); border-radius: 0; background: transparent; box-shadow: none; }
.meridian-page .country-filters__mobile-summary { color:var(--color-text); }
.meridian-page .country-search,
.meridian-page .country-select select,
.meridian-page .country-chip { min-height: 44px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; }
.meridian-page .country-chip.is-active { border-color: var(--select-edge); color: var(--select-ink); background: var(--select-bg); box-shadow: none; }
.meridian-page .country-places { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px 18px; }
.meridian-page .country-place-views { display: flex; gap: 4px; }
.meridian-page .country-place-views button { min-height: 38px; padding: 0 11px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.meridian-page .country-place-views button[aria-pressed="true"] { color: var(--select-ink); background: var(--select-bg); border-color: var(--select-edge); }
.meridian-page .country-place-map { width: var(--c-wrap); height: min(66svh,640px); margin: 20px auto 0; border: var(--rule) solid var(--rule-color); background: var(--tint); }
.meridian-page .country-place-map .leaflet-tile-pane { filter: var(--map-filter); }
.meridian-page .country-places.is-list { grid-template-columns: 1fr; gap: 0; }
.meridian-page .country-places.is-list .place-card { display: grid; grid-template-columns: 180px minmax(0,1fr); padding: 13px 0; border-bottom: var(--rule) solid var(--rule-soft); }
.meridian-page .country-places.is-list .place-card__media { height: 120px; }
.meridian-page .country-places.is-list .place-card__body { margin: 0; padding: 6px 0 0 18px; border-top: 0; }
.meridian-page .place-card { overflow: hidden; border: 0; border-radius: 0; background: transparent; box-shadow: none; transition: none; }
.meridian-page .place-card:hover { transform: none; box-shadow: none; }
.meridian-page .place-card__media { height: 190px; border-radius: 0; }
.meridian-page .place-card__media img { transition: filter 220ms ease; }
.meridian-page .place-card:hover .place-card__media img { transform: none; filter: saturate(1.08); }
.meridian-page .place-card__tag,
.meridian-page .place-card__time { border-radius: var(--radius-ctl); color: var(--color-text); background: var(--sheet); box-shadow: none; }
.meridian-page .place-card__body { padding: 10px 0 0; margin-top: 10px; border-top: var(--rule) solid var(--rule-color); }
.meridian-page .place-card__body h3 { color: var(--color-text); font-family: var(--font-display); font-size: 19px; text-transform: var(--heading-case); }
.meridian-page .place-card__where,
.meridian-page .place-card__summary { color: var(--color-neutral-700); }
.meridian-page .place-card__trust { color: var(--color-neutral-700); }
.meridian-page .place-card__trust a:focus-visible { outline:2px solid var(--focus);outline-offset:2px; }
.meridian-page .place-card__action,
.meridian-page .place-card__info { min-height: 42px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; }
.meridian-page .place-card__action:hover,
.meridian-page .place-card__action.is-active { border-color: var(--select-edge); color: var(--select-ink); background: var(--select-bg); box-shadow: none; }
.meridian-page .country-bucket-list-option { border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; }
.meridian-page .country-bucket-list-option:hover,
.meridian-page .country-bucket-list-option:focus-visible { border-color: var(--select-edge); color: var(--select-ink); background: var(--select-bg); }
.meridian-page .country-bucket-list-option span,
.meridian-page .country-bucket-status { color: var(--color-neutral-700); }
.meridian-page .place-card__report { justify-self: start; padding: 4px 0; border: 0; color: var(--color-neutral-700); background: transparent; font: 700 10px/1.3 var(--font-body); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.meridian-page .place-card__report:hover,
.meridian-page .place-card__report:focus-visible { color: var(--color-accent-700); }

.meridian-page .country-guidance { width: var(--c-wrap); margin-inline: auto; }
.meridian-page .country-guidance__card { border: var(--rule) solid var(--rule-color); border-radius: var(--radius-card); background: var(--tint); box-shadow: none; }
.meridian-page .country-guidance__card h3 { font-family: var(--font-display); text-transform: var(--heading-case); }
.meridian-page .country-guidance__line,
.meridian-page .country-guidance__lines li { color: var(--color-neutral-700); }

.meridian-page .country-action-dialog { background: color-mix(in srgb, var(--color-neutral-900) 62%, transparent); }
.meridian-page .country-action-dialog > section,
.meridian-page .country-dialog__panel { border: var(--rule) solid var(--rule-color); border-radius: var(--radius-card); color: var(--color-text); background: var(--sheet); box-shadow: var(--shadow-lg); }
.meridian-page .country-action-dialog__close,
.meridian-page .country-dialog__close { border-radius: var(--radius-ctl); color: var(--color-text); background: var(--tint); }
.meridian-page .country-report-types label { color: var(--color-text); background: var(--sheet); border-color: var(--rule-color); border-radius: var(--radius-ctl); }
.meridian-page .country-report-types label:has(input:checked) { color: var(--select-ink); background: var(--select-bg); border-color: var(--select-edge); }
.meridian-page .country-report-types input { accent-color: var(--color-accent); }
.meridian-page .country-report-details textarea { color: var(--color-text); background: var(--sheet); border-color: var(--rule-color); border-radius: var(--radius-ctl); }
.meridian-page .country-report-details textarea:focus { outline: 2px solid var(--focus); outline-offset: 2px; }
.meridian-page .country-report-status.is-error { color: var(--role-danger)!important; }
.meridian-page .country-report-status.is-ok { color: var(--role-ok)!important; }
.meridian-page .country-report-note { color: var(--color-neutral-700)!important; border-color: var(--rule-soft); }
.meridian-page .country-trip-option,
.meridian-page .country-day-option { border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: transparent; }

/* Map-led route preview. The route engine remains the existing country-pack
   copy path; this layer only gives the decision the full Meridian treatment. */
.meridian-page .country-dialog { padding: 24px; background: color-mix(in srgb, var(--color-neutral-900) 72%, transparent); }
.meridian-page .country-dialog__panel { width: min(1240px, 100%); max-height: calc(100svh - 48px); grid-template-rows: minmax(0, 1fr) auto; }
.meridian-page .country-dialog__body { color: var(--color-text); background: var(--sheet); }
.meridian-page .route-sheet { display: grid; grid-template-columns: minmax(0, .85fr) minmax(min(420px, 100%), 1.15fr); gap: 0; padding: 0; }
.meridian-page .route-sheet__head { grid-column: 1; padding: 46px 42px 34px; border-bottom: var(--rule) solid var(--rule-soft); }
.meridian-page .route-sheet__eyebrow,
.meridian-page .route-sheet__label { margin: 0 0 10px; color: var(--color-accent-700); font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.meridian-page .route-sheet__head h2 { color: var(--color-text); font: 700 clamp(42px, 4.5vw, 68px)/.9 var(--font-display); letter-spacing: var(--heading-track); text-transform: var(--heading-case); }
.meridian-page .route-sheet__path { color: var(--color-neutral-700); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.meridian-page .route-sheet__summary { margin-top: 12px; color: var(--color-neutral-800); font-size: 15px; line-height: 1.6; }
.meridian-page .route-sheet__map-panel { grid-column: 2; grid-row: 1 / span 2; min-width: 0; padding: 24px; border-left: var(--rule) solid var(--rule-color); background: var(--tint); }
.meridian-page .route-sheet__map-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 13px; }
.meridian-page .route-sheet__map-head strong { font: 700 24px/1 var(--font-display); text-transform: var(--heading-case); }
.meridian-page .route-sheet__map-modes { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.meridian-page .route-sheet__map-modes button,
.meridian-page .route-sheet__map-modes select { min-height: 38px; padding: 0 11px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); color: var(--color-text); background: var(--sheet); font: 700 10px/1 var(--font-body); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.meridian-page .route-sheet__map-modes button.is-active { color: var(--select-ink); background: var(--select-bg); border-color: var(--select-edge); }
.meridian-page .route-sheet__map { height: min(52svh, 520px); min-height: 380px; border: var(--rule) solid var(--rule-color); border-radius: var(--radius-ctl); }
.meridian-page .route-sheet__legend { display: flex; flex-wrap: wrap; gap: 12px 22px; margin-top: 14px; color: var(--color-text); font-size: 11px; font-weight: 600; }
.meridian-page .route-sheet__legend span { display: inline-flex; align-items: center; gap: 8px; }
.meridian-page .route-sheet__legend i { width: 26px; border-top: 4px solid var(--color-accent); }
.meridian-page .route-sheet__legend .route-sheet__legend-move { border-top: 3px dashed var(--color-neutral-700); }
.meridian-page .route-sheet__map-honesty { margin: 12px 0 0; color: var(--color-neutral-700); font-size: 11px; line-height: 1.5; }
.meridian-page .route-sheet__good-to-know { grid-column: 1; padding: 26px 42px 30px; }
.meridian-page .route-sheet__notes { gap: 7px; }
.meridian-page .route-sheet__notes li { padding: 11px 0; border-top: var(--rule) solid var(--rule-soft); border-radius: 0; color: var(--color-text); background: transparent; font-size: 12px; }
.meridian-page .route-sheet__days { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; border-top: var(--rule) solid var(--rule-color); }
.meridian-page .route-day { padding: 24px 28px; border-right: var(--rule) solid var(--rule-soft); border-bottom: var(--rule) solid var(--rule-soft); border-radius: 0; color: var(--color-text); background: var(--sheet); }
.meridian-page .route-day__head { align-items: flex-start; }
.meridian-page .route-day__number { border-radius: var(--radius-ctl); color: var(--select-ink); background: var(--select-bg); }
.meridian-page .route-day__head h3 { color: var(--color-text); font: 700 19px/1.15 var(--font-display); text-transform: var(--heading-case); }
.meridian-page .route-day__head p,
.meridian-page .route-day__name small { color: var(--color-neutral-700); }
.meridian-page .route-day__index { color: var(--color-accent-700); background: transparent; border: var(--rule) solid var(--rule-color); }
.meridian-page .route-day__name { color: var(--color-text); }
.meridian-page .route-sheet__after-copy { grid-column: 1 / -1; padding: 34px 42px 38px; }
.meridian-page .route-sheet__after-copy h3 { margin: 0 0 22px; font: 700 32px/1 var(--font-display); text-transform: var(--heading-case); }
.meridian-page .route-sheet__after-copy ol { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; margin: 0; padding: 0; border-block: var(--rule) solid var(--rule-color); list-style: none; }
.meridian-page .route-sheet__after-copy li { min-height: 122px; padding: 17px; border-left: var(--rule) solid var(--rule-soft); }
.meridian-page .route-sheet__after-copy li:first-child { border-left: 0; }
.meridian-page .route-sheet__after-copy b { display: block; margin-bottom: 9px; color: var(--color-accent-700); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.meridian-page .route-sheet__after-copy span { color: var(--color-neutral-800); font-size: 12px; line-height: 1.5; }
.meridian-page .country-dialog__actions { align-items: center; gap: 8px; padding: 14px 20px; border-color: var(--rule-color); color: var(--color-text); background: var(--sheet); }
.meridian-page .country-dialog__actions .country-btn { min-height: 48px; border-radius: var(--radius-ctl); }
.meridian-page .country-dialog__actions .country-btn--primary { min-width: 250px; }
.meridian-page .country-dialog__empty-link { margin-left: auto; color: var(--color-neutral-700); font-size: 12px; text-decoration: underline; }

@media (max-width: 1050px) {
  .meridian-page .country,
  .meridian-page .country-sticky,
  .meridian-page .country-planning,
  .meridian-page .country-dialog,
  .meridian-page .country-mapsheet,
  .meridian-page .country-action-dialog { --c-wrap: min(calc(100% - 48px), 960px); }
  .meridian-page .country-hero__inner { grid-template-columns: 1fr; }
  .meridian-page .country-map-panel { max-width: none; }
  .meridian-page .country-places { grid-template-columns: repeat(3, 1fr); }
  .meridian-page .route-sheet { grid-template-columns: minmax(0, .8fr) minmax(min(360px, 100%), 1.2fr); }
  .meridian-page .route-sheet__head,
  .meridian-page .route-sheet__good-to-know { padding-inline: 28px; }
  .meridian-page .route-sheet__days { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 720px) {
  .meridian-page .country,
  .meridian-page .country-sticky,
  .meridian-page .country-planning,
  .meridian-page .country-dialog,
  .meridian-page .country-mapsheet,
  .meridian-page .country-action-dialog { --c-wrap: calc(100% - 32px); }
  .meridian-page .country-hero { display: block; min-height: 0; padding: 0 0 22px; }
  .meridian-page .country-hero__photo { position: relative; z-index: 0; height: 260px; }
  .meridian-page .country-hero--plain .country-hero__photo { display: none; }
  .meridian-page .country-hero__shade { display: none; }
  .meridian-page .country-hero__inner { display: flex; flex-direction: column; gap: 18px; width: 100%; }
  .meridian-page .country-hero__copy { width: 100%; padding: 18px 16px 0; }
  .meridian-page .country-hero:not(.country-hero--plain) .country-hero__copy { color: var(--invert-ink); }
  .meridian-page .country-hero--plain .country-hero__copy { color: var(--color-text); }
  .meridian-page .country-hero h1 { font-size: 62px; }
  .meridian-page .country-hero__lede { font-size: 17px; }
  .meridian-page .country-hero__intro { display: none; }
  .meridian-page .country-hero__actions { grid-template-columns: 1fr; }
  .meridian-page .country-hero__actions .country-btn { width: 100%; }
  .meridian-page .country-hero__highlights { display: none; }
  .meridian-page .country-map-panel { width: calc(100% - 32px); margin-inline: auto; }
  .meridian-page .country-map-panel__frame { min-height: 280px; }
  .meridian-page .country-dialog { align-items: stretch; padding: 0; }
  .meridian-page .country-dialog__panel { width: 100%; max-height: 100svh; border: 0; border-radius: 0; }
  .meridian-page .route-sheet { display: flex; flex-direction: column; }
  .meridian-page .route-sheet__map-panel { order: -1; padding: 0; border: 0; border-bottom: var(--rule) solid var(--rule-color); }
  .meridian-page .route-sheet__map-head { padding: 14px 58px 11px 16px; margin: 0; }
  .meridian-page .route-sheet__map-head > div:first-child { display: none; }
  .meridian-page .route-sheet__map-modes { justify-content: flex-start; }
  .meridian-page .route-sheet__map { height: 260px; min-height: 260px; border: 0; border-radius: 0; }
  .meridian-page .route-sheet__legend,
  .meridian-page .route-sheet__map-honesty { margin-inline: 16px; }
  .meridian-page .route-sheet__map-honesty { margin-bottom: 15px; }
  .meridian-page .route-sheet__head { padding: 24px 16px; }
  .meridian-page .route-sheet__head h2 { font-size: 44px; }
  .meridian-page .route-sheet__good-to-know { padding: 22px 16px; }
  .meridian-page .route-sheet__days { grid-template-columns: 1fr; }
  .meridian-page .route-day { padding: 20px 16px; border-right: 0; }
  .meridian-page .route-sheet__after-copy { padding: 28px 16px 32px; }
  .meridian-page .route-sheet__after-copy ol { display: block; }
  .meridian-page .route-sheet__after-copy li { min-height: 0; padding: 15px 0; border-top: var(--rule) solid var(--rule-soft); border-left: 0; }
  .meridian-page .route-sheet__after-copy li:first-child { border-top: 0; }
  .meridian-page .country-dialog__actions { display: grid; grid-template-columns: 1fr; padding-bottom: calc(14px + env(safe-area-inset-bottom, 0px)); }
  .meridian-page .country-dialog__actions .country-btn { width: 100%; }
  .meridian-page .country-dialog__empty-link { margin: 4px auto 0; }
  .meridian-page .country-facts { grid-auto-columns: minmax(190px, 72vw); padding-inline: 16px; overflow-x: auto; }
  .meridian-page .country-fact { min-height: 96px; padding: 14px 16px; }
  .meridian-page .country-section-nav { top: 52px; padding: 0 16px; overflow-x: auto; flex-wrap: nowrap; }
  .meridian-page .country-section-nav a { flex: none; min-height: 48px; padding: 13px 14px; }
  .meridian-page .country-section { width: 100%; padding: 26px 16px; }
  .meridian-page .country-section__head h2 { font-size: 28px; }
  .meridian-page .country-section__head p { font-size: 14px; }
  .meridian-page .country-routes { display: block; border-left: 0; }
  .meridian-page .route-card { display: block; border-left: 0; }
  .meridian-page .route-card__media { min-height: 240px; }
  .meridian-page .route-card__body { padding: 14px 0 22px; }
  .meridian-page .route-card__actions { grid-template-columns: 1fr 1fr; }
  .meridian-page .country-route-table { width: 100%; overflow-x: auto; }
  .meridian-page .country-route-table__row { min-width: 760px; }
  .meridian-page .country-filters { position: static; padding: 0; }
  .meridian-page .country-chips { flex-wrap: nowrap; overflow-x: auto; }
  .meridian-page .country-places { grid-template-columns: 1fr 1fr; gap: 22px 14px; }
  .meridian-page .country-place-map { width: 100%; height: 68svh; }
  .meridian-page .country-places.is-list { grid-template-columns: 1fr; }
  .meridian-page .country-places.is-list .place-card { grid-template-columns: 110px minmax(0,1fr); }
  .meridian-page .country-places.is-list .place-card__media { height: 96px; }
  .meridian-page .place-card__media { height: 125px; }
  .meridian-page .place-card__body h3 { font-size: 16px; }
  .meridian-page .place-card__summary { display: none; }
  .meridian-page .place-card__quick { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .meridian-page .place-card__action:nth-child(2),
  .meridian-page .place-card__action:nth-child(3) { display: none; }
  .meridian-page .country-guidance { width: 100%; padding-inline: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .meridian-page .place-card__media img { transition: none; }
}

/* -------------------------------------------------------------------------
   Country landing page — Nightglass reference composition
   -------------------------------------------------------------------------
   This is intentionally a destination landing page, not a dense directory.
   It gives the hero, facts, routes and places their own dark glass panels so
   the page keeps the cinematic depth of the supplied reference at every
   viewport, while leaving the shared country interactions untouched. */
[data-theme='nightglass'] .meridian-page .country {
  width: 100%;
  padding: 0;
  background: transparent;
}

/* Keep one uninterrupted dark ground behind the whole destination page.
   The country content used to paint a second, narrower navy rectangle; its
   hard edges were visible beside the hero and continued down the page. */
[data-theme='nightglass'] body.meridian-page[data-page='country'],
[data-theme='nightglass'] body.meridian-page[data-page='country'] .ws-main {
  background-color: #081120;
  background-image: none;
}

/* The guest reminder belongs directly below the platform navigation. The
   generic country rule added a second top gap before the full-width cover. */
[data-theme='nightglass'] body.meridian-page[data-page='country'] .ws-main > .guest-readonly-banner {
  margin-top: 0;
  margin-bottom: 0;
}

[data-theme='nightglass'] .meridian-page .country-hero {
  min-height: 540px;
  padding: 40px 0 32px;
  border: 1px solid rgba(154, 172, 230, .25);
  border-radius: 14px 14px 0 0;
  background: #09182d;
}
[data-theme='nightglass'] .meridian-page .country-hero__shade {
  background:
    linear-gradient(90deg, rgba(4, 13, 29, .93) 0%, rgba(4, 13, 29, .79) 38%, rgba(4, 13, 29, .33) 64%, rgba(4, 13, 29, .06) 100%),
    linear-gradient(0deg, rgba(4, 13, 29, .55), transparent 48%);
}
[data-theme='nightglass'] .meridian-page .country-hero__inner {
  grid-template-columns: minmax(0, 1.18fr) minmax(min(360px, 100%), .78fr);
  align-items: center;
  gap: clamp(34px, 5vw, 76px);
}
[data-theme='nightglass'] .meridian-page .country-hero h1 {
  font-size: clamp(64px, 7.4vw, 104px);
  line-height: .88;
}
[data-theme='nightglass'] .meridian-page .country-hero__lede { max-width: 34ch; font-size: clamp(17px, 1.6vw, 22px); }
[data-theme='nightglass'] .meridian-page .country-hero__intro { max-width: 54ch; font-size: 14px; }
[data-theme='nightglass'] .meridian-page .country-hero__actions { max-width: 735px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
[data-theme='nightglass'] .meridian-page .country-hero__actions .country-btn {
  min-height: 50px;
  padding: 12px 10px;
  border-color: rgba(160, 179, 234, .36);
  color: #eef1fb;
  background: rgba(7, 20, 42, .68);
}
[data-theme='nightglass'] .meridian-page .country-hero__actions .country-btn--primary {
  border-color: #7b6cf6;
  background: linear-gradient(135deg, #8d75ff, #6546e7);
  box-shadow: 0 10px 28px rgba(101, 70, 231, .44);
}
[data-theme='nightglass'] .meridian-page .country-hero__highlights { display: none; }

[data-theme='nightglass'] .meridian-page .country-map-panel {
  border-color: rgba(160, 179, 234, .3);
  border-radius: 14px;
  background: #0a1a31;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .34);
}
[data-theme='nightglass'] .meridian-page .country-map-panel__frame { min-height: 352px; }
[data-theme='nightglass'] .meridian-page .country-map-panel__pick,
[data-theme='nightglass'] .meridian-page .country-map-panel__expand,
[data-theme='nightglass'] .meridian-page .country-map-panel__foot {
  color: #eef1fb;
  border-color: rgba(160, 179, 234, .26);
  background: rgba(8, 22, 43, .92);
}
[data-theme='nightglass'] .meridian-page .country-map-panel__open { color: #d8d3ff; border-color: rgba(160, 179, 234, .3); background: transparent; }

/* Leaflet mounts its UI inside the hero, so it otherwise inherits the hero's
   pale foreground even when Leaflet gives a surface a light background. Give
   every map-owned surface an explicit Nightglass foreground/background pair. */
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-popup-content-wrapper,
[data-theme='nightglass'] .meridian-page .country-place-map .leaflet-popup-content-wrapper,
[data-theme='nightglass'] .meridian-page .country-mapsheet .leaflet-popup-content-wrapper {
  color: #eef1fb;
  border: 1px solid rgba(160, 179, 234, .28);
  border-radius: 13px;
  background: #10213a;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .44);
}
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-popup-tip,
[data-theme='nightglass'] .meridian-page .country-place-map .leaflet-popup-tip,
[data-theme='nightglass'] .meridian-page .country-mapsheet .leaflet-popup-tip { background: #10213a; }
[data-theme='nightglass'] .meridian-page .country-map-pop strong { color: #f4f6ff; }
[data-theme='nightglass'] .meridian-page .country-map-pop small { color: rgba(238, 241, 251, .67); }
[data-theme='nightglass'] .meridian-page .country-map-pop__info { color: #fff; background: #7b6cf6; }
[data-theme='nightglass'] .meridian-page .leaflet-container .leaflet-popup-close-button { color: rgba(238, 241, 251, .72); }
[data-theme='nightglass'] .meridian-page .leaflet-container .leaflet-popup-close-button:hover { color: #fff; }
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-control-zoom a {
  color: #0b1c35;
  background: #f4f6ff;
}
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-control-attribution {
  color: #d7def4;
  background: rgba(8, 18, 36, .82);
}
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-control-attribution a { color: #c5bdff; }
[data-theme='nightglass'] .meridian-page .leaflet-tooltip {
  color: #f4f6ff;
  border-color: rgba(160, 179, 234, .3);
  background: #10213a;
  box-shadow: 0 8px 20px rgba(0, 0, 0, .32);
}
[data-theme='nightglass'] .meridian-page .leaflet-tooltip-top::before { border-top-color: #10213a; }

/* Route preview is a modal outside the hero. Do not let its inherited light
   text land on the translucent light sheet used by the generic Meridian UI. */
[data-theme='nightglass'] .meridian-page .country-dialog { background: rgba(2, 8, 20, .78); }
[data-theme='nightglass'] .meridian-page .country-dialog__panel,
[data-theme='nightglass'] .meridian-page .country-dialog__body {
  color: #eef1fb;
  border-color: rgba(160, 179, 234, .24);
  background: #0a1930;
}
[data-theme='nightglass'] .meridian-page .country-dialog__close {
  color: #eef1fb;
  border: 1px solid rgba(160, 179, 234, .22);
  background: #142946;
}
[data-theme='nightglass'] .meridian-page .route-sheet { color: #eef1fb; background: #0a1930; }
[data-theme='nightglass'] .meridian-page .route-sheet__head,
[data-theme='nightglass'] .meridian-page .route-sheet__good-to-know { border-color: rgba(160, 179, 234, .16); }
[data-theme='nightglass'] .meridian-page .route-sheet__eyebrow,
[data-theme='nightglass'] .meridian-page .route-sheet__label { color: #b8adff; }
[data-theme='nightglass'] .meridian-page .route-sheet__head h2,
[data-theme='nightglass'] .meridian-page .route-sheet__map-head strong,
[data-theme='nightglass'] .meridian-page .route-day__head h3,
[data-theme='nightglass'] .meridian-page .route-day__name,
[data-theme='nightglass'] .meridian-page .route-sheet__after-copy h3 { color: #f4f6ff; }
[data-theme='nightglass'] .meridian-page .route-sheet__path,
[data-theme='nightglass'] .meridian-page .route-sheet__summary,
[data-theme='nightglass'] .meridian-page .route-day__head p,
[data-theme='nightglass'] .meridian-page .route-day__name small,
[data-theme='nightglass'] .meridian-page .route-sheet__after-copy span,
[data-theme='nightglass'] .meridian-page .route-sheet__map-honesty { color: rgba(238, 241, 251, .68); }
[data-theme='nightglass'] .meridian-page .route-sheet__map-panel { border-color: rgba(160, 179, 234, .16); background: #0d203b; }
[data-theme='nightglass'] .meridian-page .route-sheet__map { border-color: rgba(160, 179, 234, .22); background: #10213a; }
[data-theme='nightglass'] .meridian-page .route-sheet__map .leaflet-tile-pane { filter: var(--map-filter); }
[data-theme='nightglass'] .meridian-page .route-sheet__map-modes button,
[data-theme='nightglass'] .meridian-page .route-sheet__map-modes select {
  color: #dfe3f4;
  border-color: rgba(160, 179, 234, .25);
  background: #0a1930;
}
[data-theme='nightglass'] .meridian-page .route-sheet__map-modes button.is-active { color: #fff; border-color: #7b6cf6; background: #6d59ed; }
[data-theme='nightglass'] .meridian-page .route-sheet__legend { color: rgba(238, 241, 251, .72); }
[data-theme='nightglass'] .meridian-page .route-sheet__notes li { color: #ffdaa1; border-color: rgba(240, 169, 74, .24); background: rgba(240, 169, 74, .1); }
[data-theme='nightglass'] .meridian-page .route-sheet__days { border-color: rgba(160, 179, 234, .18); }
[data-theme='nightglass'] .meridian-page .route-day { border-color: rgba(160, 179, 234, .14); background: #0c1d36; }
[data-theme='nightglass'] .meridian-page .route-day__number { color: #fff; background: #6d59ed; }
[data-theme='nightglass'] .meridian-page .route-day__stops li { color: #eef1fb; border: 1px solid rgba(160, 179, 234, .13); background: #10213a; }
[data-theme='nightglass'] .meridian-page .route-day__index { color: #d9d4ff; border-color: rgba(139, 125, 255, .3); background: rgba(123, 108, 246, .15); }
[data-theme='nightglass'] .meridian-page .route-sheet__after-copy { border-color: rgba(160, 179, 234, .18); background: #0a1930; }
[data-theme='nightglass'] .meridian-page .route-sheet__after-copy ol { border-color: rgba(160, 179, 234, .18); }
[data-theme='nightglass'] .meridian-page .route-sheet__after-copy li { border-color: rgba(160, 179, 234, .14); }
[data-theme='nightglass'] .meridian-page .route-sheet__after-copy b { color: #b8adff; }
[data-theme='nightglass'] .meridian-page .country-dialog__actions { border-color: rgba(160, 179, 234, .2); background: #10213a; }
[data-theme='nightglass'] .meridian-page .country-dialog__empty-link { color: #c9c3ff; }

/* -------------------------------------------------------------------------
   Original country hero
   -------------------------------------------------------------------------
   The hero is deliberately brighter than the Nightglass catalogue beneath it:
   it is the destination's full-width editorial cover, with a light map and
   practical strip floating across its lower edge. */
[data-theme='nightglass'] .meridian-page .country-hero {
  /* Break out of any workspace/content wrapper: the cover itself is always
     viewport-wide, while .country-hero__inner keeps the copy and map aligned. */
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  min-height: 650px;
  padding: 78px 0 118px;
  border: 0;
  border-radius: 0;
  background: #08203b;
}
[data-theme='nightglass'] .meridian-page .country-hero__shade {
  background:
    linear-gradient(90deg, rgba(4, 18, 39, .96) 0%, rgba(4, 18, 39, .84) 34%, rgba(4, 18, 39, .38) 61%, rgba(4, 18, 39, .07) 86%),
    linear-gradient(0deg, rgba(3, 18, 38, .72), transparent 48%);
}
[data-theme='nightglass'] .meridian-page .country-hero__inner {
  grid-template-columns: minmax(0, 1.08fr) minmax(min(420px, 100%), .72fr);
  align-items: center;
  gap: clamp(40px, 5vw, 82px);
}
[data-theme='nightglass'] .meridian-page .country-hero__eyebrow { color: #fff; font-size: 12px; letter-spacing: .14em; }
[data-theme='nightglass'] .meridian-page .country-hero__code { min-width: 46px; height: 33px; color: #fff; background: #f97316; box-shadow: 0 8px 20px rgba(249, 115, 22, .38); }
[data-theme='nightglass'] .meridian-page .country-hero h1 { max-width: 760px; font-size: clamp(64px, 6.2vw, 90px); line-height: .91; }
[data-theme='nightglass'] .meridian-page .country-hero__lede { max-width: 25ch; font-size: clamp(20px, 1.7vw, 26px); line-height: 1.2; }
[data-theme='nightglass'] .meridian-page .country-hero__intro { max-width: 54ch; margin-bottom: 28px; font-size: 16px; line-height: 1.55; opacity: 1; }
[data-theme='nightglass'] .meridian-page .country-hero__actions { display: flex; max-width: none; gap: 14px; }
[data-theme='nightglass'] .meridian-page .country-hero__actions .country-btn {
  min-height: 50px;
  padding: 13px 24px;
  border: 0;
  border-radius: 13px;
  color: #10203a;
  background: #fff;
  font-size: 14px;
  box-shadow: 0 9px 24px rgba(0, 0, 0, .16);
}
[data-theme='nightglass'] .meridian-page .country-hero__actions .country-btn--primary {
  color: #fff;
  background: #f97316;
  box-shadow: 0 12px 28px rgba(249, 115, 22, .36);
}
[data-theme='nightglass'] .meridian-page .country-hero__highlights {
  display: flex;
  margin-top: 34px;
  border-top: 1px solid rgba(255, 255, 255, .24);
}
[data-theme='nightglass'] .meridian-page .country-hero__highlights li { min-width: 124px; padding: 15px 20px 0 0; margin-right: 20px; border-right: 1px solid rgba(255, 255, 255, .19); }
[data-theme='nightglass'] .meridian-page .country-hero__highlights li:last-child { border-right: 0; }
[data-theme='nightglass'] .meridian-page .country-hero__glyph svg { color: #fff; }
[data-theme='nightglass'] .meridian-page .country-hero__stat strong { color: #fff; font-size: 15px; }
[data-theme='nightglass'] .meridian-page .country-hero__stat small { color: rgba(255, 255, 255, .83); font-size: 12px; opacity: 1; }

[data-theme='nightglass'] .meridian-page .country-map-panel { border: 0; border-radius: 20px; background: #fff; box-shadow: 0 24px 60px rgba(2, 11, 26, .32); }
[data-theme='nightglass'] .meridian-page .country-map-panel__frame { min-height: 390px; }
[data-theme='nightglass'] .meridian-page .country-map-panel__map .leaflet-tile-pane { filter: none; }
[data-theme='nightglass'] .meridian-page .country-map-panel__pick,
[data-theme='nightglass'] .meridian-page .country-map-panel__expand,
[data-theme='nightglass'] .meridian-page .country-map-panel__foot { color: #10203a; border-color: #e3e9f4; background: #fff; }
[data-theme='nightglass'] .meridian-page .country-map-panel__open { color: #10203a; border-color: #dce4f0; background: #fff; }
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-popup-content-wrapper { color: #10203a; border-color: #e3e9f4; background: #fff; }
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-popup-tip { background: #fff; }
[data-theme='nightglass'] .meridian-page .country-map-panel .country-map-pop strong { color: #10203a; }
[data-theme='nightglass'] .meridian-page .country-map-panel .country-map-pop small { color: #5d6f89; }
[data-theme='nightglass'] .meridian-page .country-map-panel .country-map-pop__info { background: #f97316; }
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-container .leaflet-popup-close-button { color: #60708a; }
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-control-attribution { color: #34445d; background: rgba(255, 255, 255, .82); }
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-control-attribution a { color: #475d80; }
[data-theme='nightglass'] .meridian-page .country-map-panel__pick select,
[data-theme='nightglass'] .meridian-page .country-map-panel__pick select option {
  color: #10203a;
  background: #fff;
}
[data-theme='nightglass'] .meridian-page .country-map-panel__pick svg { color: #f97316; }
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-tooltip {
  color: #10203a;
  border-color: #dce4f0;
  background: #fff;
}
[data-theme='nightglass'] .meridian-page .country-map-panel .leaflet-tooltip-top::before { border-top-color: #fff; }

/* The Places Map is the other surface that changes whenever a traveller
   filters by region or interest. Keep the base labels light and legible here
   too instead of applying Nightglass's tile inversion. */
[data-theme='nightglass'] .meridian-page .country-place-map .leaflet-tile-pane { filter: none; }
[data-theme='nightglass'] .meridian-page .country-place-map .leaflet-popup-content-wrapper {
  color: #10203a;
  border-color: #dce4f0;
  background: #fff;
}
[data-theme='nightglass'] .meridian-page .country-place-map .leaflet-popup-tip { background: #fff; }
[data-theme='nightglass'] .meridian-page .country-place-map .country-map-pop strong { color: #10203a; }
[data-theme='nightglass'] .meridian-page .country-place-map .country-map-pop small { color: #5d6f89; }
[data-theme='nightglass'] .meridian-page .country-place-map .leaflet-tooltip { color: #10203a; border-color: #dce4f0; background: #fff; }
[data-theme='nightglass'] .meridian-page .country-place-map .leaflet-tooltip-top::before { border-top-color: #fff; }

[data-theme='nightglass'] .meridian-page .country-facts {
  position: relative;
  z-index: 4;
  width: var(--c-wrap);
  margin: -72px auto 22px;
  padding: 20px 18px;
  gap: 0;
  border: 0;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 22px 48px rgba(2, 11, 26, .2);
}
[data-theme='nightglass'] .meridian-page .country-fact { min-height: 86px; padding: 6px 18px; border: 0; border-right: 1px solid #dfe7f1; border-radius: 0; background: transparent; }
[data-theme='nightglass'] .meridian-page .country-fact:first-child { padding-left: 0; }
[data-theme='nightglass'] .meridian-page .country-fact:last-child { border-right: 0; }
[data-theme='nightglass'] .meridian-page .country-fact__icon { color: #3570ff; background: #edf3ff; border-radius: 50%; }
[data-theme='nightglass'] .meridian-page .country-fact__label { color: #3570ff; font-size: 10px; }
[data-theme='nightglass'] .meridian-page .country-fact__value { color: #10203a; font-size: 14px; }
[data-theme='nightglass'] .meridian-page .country-fact__note { color: #72829a; }

@media (max-width: 760px) {
  [data-theme='nightglass'] .meridian-page .country-hero { min-height: 0; padding: 0 0 88px; }
  [data-theme='nightglass'] .meridian-page .country-hero__photo { height: 250px; }
  [data-theme='nightglass'] .meridian-page .country-hero__shade { display: block; background: linear-gradient(180deg, rgba(4, 18, 39, .26), rgba(4, 18, 39, .94) 78%); }
  [data-theme='nightglass'] .meridian-page .country-hero__inner { display: flex; gap: 20px; }
  [data-theme='nightglass'] .meridian-page .country-hero__copy { padding: 20px 16px 0; }
  [data-theme='nightglass'] .meridian-page .country-hero h1 { font-size: clamp(50px, 16vw, 66px); }
  [data-theme='nightglass'] .meridian-page .country-hero__intro { display: block; font-size: 14px; }
  [data-theme='nightglass'] .meridian-page .country-hero__actions { display: grid; grid-template-columns: 1fr; }
  [data-theme='nightglass'] .meridian-page .country-hero__actions .country-btn { width: 100%; }
  [data-theme='nightglass'] .meridian-page .country-hero__highlights { display: none; }
  [data-theme='nightglass'] .meridian-page .country-map-panel { width: calc(100% - 32px); margin-inline: auto; }
  [data-theme='nightglass'] .meridian-page .country-map-panel__frame { min-height: 280px; }
  [data-theme='nightglass'] .meridian-page .country-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: -58px; padding: 14px 8px; border-radius: 16px; gap: 8px 0; }
  [data-theme='nightglass'] .meridian-page .country-fact { min-height: 88px; padding: 7px 9px; border-right: 1px solid #dfe7f1; }
  [data-theme='nightglass'] .meridian-page .country-fact:first-child { padding-left: 9px; }
  [data-theme='nightglass'] .meridian-page .country-fact:nth-child(even) { border-right: 0; }
}

/* Places list: this is intentionally a text-only directory, not a compact card grid. */
[data-theme='nightglass'] .meridian-page .country-places.is-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card {
  display: block;
  min-height: 0;
  padding: 16px 0;
  border: 0;
  border-bottom: 1px solid rgba(160, 179, 234, 0.16);
  border-radius: 0;
  background: transparent;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__media {
  display: none !important;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px 20px;
  margin: 0;
  padding: 0;
  border: 0;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__title,
[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__where,
[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__summary,
[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__trust {
  grid-column: 1;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__summary {
  min-height: 0;
  margin-bottom: 0;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__actions {
  grid-column: 2;
  grid-row: 1 / span 4;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 0;
  padding: 0;
  border: 0;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__info {
  min-height: 36px;
  padding: 0 12px;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__quick {
  display: flex;
  gap: 6px;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__action {
  width: 36px;
  min-height: 36px;
  padding: 0;
}

[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__action span:not(:first-child),
[data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__report {
  display: none;
}

@media (max-width: 760px) {
  [data-theme='nightglass'] .meridian-page .country-places.is-list .place-card {
    padding: 14px 0;
  }

  [data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__body {
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
  }

  [data-theme='nightglass'] .meridian-page .country-places.is-list .place-card__actions {
    grid-column: 1;
    grid-row: auto;
    justify-content: flex-start;
    margin-top: 6px;
  }
}

[data-theme='nightglass'] .meridian-page .country-facts {
  width: var(--c-wrap);
  margin: 24px auto 18px;
  padding: 0;
  gap: 10px;
  border: 0;
  background: transparent;
  box-shadow: none;
}
[data-theme='nightglass'] .meridian-page .country-fact {
  min-height: 90px;
  padding: 16px;
  border: 1px solid rgba(160, 179, 234, .16);
  border-radius: 11px;
  background: linear-gradient(135deg, rgba(20, 42, 75, .78), rgba(10, 25, 48, .82));
}
[data-theme='nightglass'] .meridian-page .country-fact:first-child { padding-left: 16px; }
[data-theme='nightglass'] .meridian-page .country-fact__icon { color: #9f91ff; }
[data-theme='nightglass'] .meridian-page .country-fact__label { color: rgba(233, 235, 244, .54); }
[data-theme='nightglass'] .meridian-page .country-fact__value { color: #f0f2fb; }

[data-theme='nightglass'] .meridian-page .country-section-nav {
  position: static;
  width: var(--c-wrap);
  margin: 18px auto 0;
  padding: 0 18px;
  border: 1px solid rgba(160, 179, 234, .16);
  border-radius: 11px 11px 0 0;
  background: rgba(13, 31, 59, .78);
}
[data-theme='nightglass'] .meridian-page .country-section-nav a { min-height: 48px; padding: 14px 18px; color: rgba(233, 235, 244, .72); letter-spacing: 0; text-transform: none; }
[data-theme='nightglass'] .meridian-page .country-section-nav a:first-child { padding-left: 18px; }
[data-theme='nightglass'] .meridian-page .country-section-nav a:first-child::after { content: ""; position: absolute; bottom: -1px; height: 2px; background: #8b7dff; }

[data-theme='nightglass'] .meridian-page .country-section {
  width: var(--c-wrap);
  margin: 0 auto 18px;
  padding: 28px 24px 26px;
  border: 1px solid rgba(160, 179, 234, .16);
  border-radius: 0 0 14px 14px;
  background: linear-gradient(135deg, rgba(13, 32, 61, .68), rgba(5, 17, 35, .84));
}
[data-theme='nightglass'] .meridian-page .country-section + .country-section { margin-top: 18px; border-radius: 14px; }
[data-theme='nightglass'] .meridian-page .country-section__head h2 { font-size: clamp(29px, 3.1vw, 40px); }
[data-theme='nightglass'] .meridian-page .country-section__head p { color: rgba(233, 235, 244, .67); font-size: 13px; }
[data-theme='nightglass'] .meridian-page .country-section__count { color: #d8d3ff; border-color: rgba(160, 179, 234, .25); }

[data-theme='nightglass'] .meridian-page .country-routes {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  border: 0;
}
[data-theme='nightglass'] .meridian-page .route-card {
  border: 1px solid rgba(160, 179, 234, .18);
  border-radius: 10px;
  background: #0b1c35;
}
[data-theme='nightglass'] .meridian-page .route-card__media { min-height: 164px; }
[data-theme='nightglass'] .meridian-page .route-card__media img { filter: saturate(.94) contrast(1.03); }
[data-theme='nightglass'] .meridian-page .route-card__map .leaflet-tile-pane { filter: var(--map-filter); }
[data-theme='nightglass'] .meridian-page .route-card__map .leaflet-control-attribution { color: rgba(229,231,241,.62); background: rgba(3,12,28,.8); }
[data-theme='nightglass'] .meridian-page .route-card__map .leaflet-control-attribution a { color: #c7b9ff; }
[data-theme='nightglass'] .meridian-page .route-card__caption h3 { font-size: 19px; }
[data-theme='nightglass'] .meridian-page .route-card__caption p { font-size: 10px; }
[data-theme='nightglass'] .meridian-page .route-card__body { padding: 12px; }
[data-theme='nightglass'] .meridian-page .route-card__summary { min-height: 56px; font-size: 11px; color: rgba(233, 235, 244, .66); }
[data-theme='nightglass'] .meridian-page .route-card__meta { gap: 6px; font-size: 10px; color: rgba(233, 235, 244, .58); }
[data-theme='nightglass'] .meridian-page .route-card__meta li { gap: 5px; }
[data-theme='nightglass'] .meridian-page .route-card__meta svg { width: 13px; height: 13px; color: #aaa1ff; }
[data-theme='nightglass'] .meridian-page .route-card__actions { display: grid; grid-template-columns: 1fr 1.15fr; gap: 7px; margin-top: 12px; }
[data-theme='nightglass'] .meridian-page .route-card__actions .country-btn { min-height: 38px; padding: 8px 5px; font-size: 10px; }

[data-theme='nightglass'] .meridian-page .country-filters { padding: 0 0 16px; border: 0; background: transparent; }
[data-theme='nightglass'] .meridian-page .country-search,
[data-theme='nightglass'] .meridian-page .country-select select,
[data-theme='nightglass'] .meridian-page .country-chip { border-color: rgba(160, 179, 234, .2); background: rgba(6, 20, 42, .58); }
[data-theme='nightglass'] .meridian-page .country-places { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
[data-theme='nightglass'] .meridian-page .place-card { padding: 8px; border: 1px solid rgba(160, 179, 234, .16); border-radius: 10px; background: #0b1c35; }
[data-theme='nightglass'] .meridian-page .place-card__media { height: 146px; border-radius: 7px; }
[data-theme='nightglass'] .meridian-page .place-card__tag { color: #f4f5fc; background: rgba(46, 143, 212, .92); }
[data-theme='nightglass'] .meridian-page .place-card__time { background: rgba(4, 13, 29, .74); }
[data-theme='nightglass'] .meridian-page .place-card__body { margin-top: 8px; padding: 0; border: 0; }
[data-theme='nightglass'] .meridian-page .place-card__body h3 { font-size: 16px; }
[data-theme='nightglass'] .meridian-page .place-card__where,
[data-theme='nightglass'] .meridian-page .place-card__summary { color: rgba(233, 235, 244, .63); font-size: 11px; }
[data-theme='nightglass'] .meridian-page .place-card__summary { display: -webkit-box; min-height: 47px; }
[data-theme='nightglass'] .meridian-page .place-card__actions { gap: 6px; padding-top: 8px; }
[data-theme='nightglass'] .meridian-page .place-card__info { display: none; }
[data-theme='nightglass'] .meridian-page .place-card__quick { grid-template-columns: 1.3fr repeat(3, .65fr); }
[data-theme='nightglass'] .meridian-page .place-card__action { min-height: 35px; padding: 5px; flex-direction: row; gap: 4px; color: rgba(233, 235, 244, .73); border-color: rgba(160, 179, 234, .2); background: rgba(6, 20, 42, .48); font-size: 9px; }
[data-theme='nightglass'] .meridian-page .place-card__action span:first-child { font-size: .88rem; }
[data-theme='nightglass'] .meridian-page .place-card__report { display: none; }

@media (max-width: 1100px) {
  [data-theme='nightglass'] .meridian-page .country-hero__inner { grid-template-columns: minmax(0, 1fr) minmax(min(330px, 100%), .7fr); gap: 28px; }
  [data-theme='nightglass'] .meridian-page .country-routes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-theme='nightglass'] .meridian-page .country-places { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  [data-theme='nightglass'] .meridian-page .country { padding: 0; }
  [data-theme='nightglass'] .meridian-page .country-hero { padding: 0 0 22px; border-width: 0 0 1px; border-radius: 0; }
  [data-theme='nightglass'] .meridian-page .country-hero__photo { height: 242px; }
  [data-theme='nightglass'] .meridian-page .country-hero__inner { display: flex; gap: 18px; }
  [data-theme='nightglass'] .meridian-page .country-hero__copy { padding: 18px 16px 0; }
  [data-theme='nightglass'] .meridian-page .country-hero h1 { font-size: clamp(54px, 18vw, 72px); }
  [data-theme='nightglass'] .meridian-page .country-hero__lede { font-size: 17px; }
  [data-theme='nightglass'] .meridian-page .country-hero__intro { display: block; font-size: 13px; }
  [data-theme='nightglass'] .meridian-page .country-hero__actions { grid-template-columns: 1fr; max-width: none; }
  [data-theme='nightglass'] .meridian-page .country-map-panel { width: calc(100% - 32px); }
  [data-theme='nightglass'] .meridian-page .country-map-panel__frame { min-height: 270px; }
  [data-theme='nightglass'] .meridian-page .country-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-block: 16px; gap: 8px; }
  [data-theme='nightglass'] .meridian-page .country-fact { min-height: 105px; padding: 12px; }
  [data-theme='nightglass'] .meridian-page .country-fact:first-child { padding-left: 12px; }
  [data-theme='nightglass'] .meridian-page .country-section-nav { width: calc(100% - 32px); overflow-x: auto; padding-inline: 4px; }
  [data-theme='nightglass'] .meridian-page .country-section-nav a { flex: 0 0 auto; padding-inline: 13px; }
  [data-theme='nightglass'] .meridian-page .country-section { width: calc(100% - 32px); padding: 22px 14px; }
  [data-theme='nightglass'] .meridian-page .country-section__head { margin-bottom: 18px; }
  [data-theme='nightglass'] .meridian-page .country-routes { grid-template-columns: 1fr; gap: 12px; }
  [data-theme='nightglass'] .meridian-page .route-card__media { min-height: 200px; }
  [data-theme='nightglass'] .meridian-page .route-card__summary { min-height: 0; }
  [data-theme='nightglass'] .meridian-page .country-places { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  [data-theme='nightglass'] .meridian-page .place-card { padding: 6px; }
  [data-theme='nightglass'] .meridian-page .place-card__media { height: 118px; }
  [data-theme='nightglass'] .meridian-page .place-card__body h3 { font-size: 14px; }
  [data-theme='nightglass'] .meridian-page .place-card__summary { display: none; }
  [data-theme='nightglass'] .meridian-page .place-card__quick { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-theme='nightglass'] .meridian-page .place-card__action { min-height: 34px; }
  [data-theme='nightglass'] .meridian-page .place-card__action:not(.place-card__action--more) span:not(:first-child) { display: none; }
  [data-theme='nightglass'] .meridian-page .place-card__action--more span:first-child { display: none; }
}

/* Interest chips share the generic selected token, but the catalogue's dark
   chip surface was declared later and replaced the selected light fill. Keep
   the selected state explicit so every category label has real contrast. */
[data-theme='nightglass'] .meridian-page .country-chip {
  color: #e7eaf6;
}

[data-theme='nightglass'] .meridian-page .country-chip:hover {
  color: #ffffff;
  border-color: rgba(190, 181, 255, .72);
}

[data-theme='nightglass'] .meridian-page .country-chip.is-active,
[data-theme='nightglass'] .meridian-page .country-chip[aria-pressed='true'] {
  color: #0b1931;
  border-color: #f1f2f8;
  background: #f1f2f8;
  box-shadow: 0 5px 14px rgba(3, 12, 29, .24);
}

[data-theme='nightglass'] .meridian-page .country-chip.is-active small,
[data-theme='nightglass'] .meridian-page .country-chip[aria-pressed='true'] small {
  color: inherit;
  opacity: .7;
}
