/* Atlas product finish, 2026-11-03. Deliberately limited to three surfaces.
   No country rules, payment styles, identity documents or navigation changes. */

/* Explorer: overlay the photograph at the top; become white after scrolling.
   Fixed in both states, so changing the surface never moves page content. */
html body.explorer-editorial { --atlas-sticky-header-height: 82px; }
html body.explorer-editorial [data-site-header],
html body.explorer-editorial [data-site-header].is-scrolled {
  --explorer-header-ink: #fff;
  --explorer-header-small: #dcc69f;
  --explorer-header-hover: #e5c99e;
  --explorer-account-surface: #fff;
  --explorer-account-border: #ffffff24;
  position: fixed; inset: 0 0 auto; z-index: 45;
  background: transparent; color: var(--explorer-header-ink);
  border-bottom: 1px solid transparent; box-shadow: none;
  transition: background-color 180ms ease, border-color 180ms ease;
}
html body.explorer-editorial [data-site-header][data-explorer-scrolled="true"] {
  --explorer-header-ink: #142239;
  --explorer-header-small: #a07840;
  --explorer-header-hover: #805f2c;
  --explorer-account-surface: #f7f7f5;
  --explorer-account-border: #e8e6e1;
  background: #fff; border-bottom-color: #e9e7e2;
}
html body.explorer-editorial [data-site-header] :is(.aa-brand,.aa-wordmark,.aa-nav a,.site-language-button,.site-language select) {
  color: var(--explorer-header-ink) !important; text-shadow: none !important;
  transition: color 180ms ease;
}
html body.explorer-editorial [data-site-header] .aa-wordmark small { color: var(--explorer-header-small) !important; }
html body.explorer-editorial [data-site-header] :is(.aa-account,.atlas-identity__trigger) {
  background: var(--explorer-account-surface) !important; border-color: var(--explorer-account-border) !important; color: #17243b !important;
}
html body.explorer-editorial [data-site-header] .aa-nav a:hover { color: var(--explorer-header-hover) !important; }
/* Keep focused map controls and in-page targets clear of the persistent header. */
html body.explorer-editorial #explorerPage :is([id],a,button,input,select,[tabindex]) {
  scroll-margin-top: calc(var(--atlas-sticky-header-height) + 16px);
}
/* The expanded map owns the viewport. Do not cover its close/filter controls. */
html body.explorer-editorial.explorer-expanded [data-site-header] { visibility: hidden; pointer-events: none; }
@media(max-width:760px) { html body.explorer-editorial { --atlas-sticky-header-height: 96px; } }
@media(prefers-reduced-motion:reduce) {
  html body.explorer-editorial [data-site-header],
  html body.explorer-editorial [data-site-header] :is(.aa-brand,.aa-wordmark,.aa-nav a,.site-language-button,.site-language select) { transition: none; }
}

/* My trips: same photograph/summary/action hierarchy for all upcoming cards. */
html body.atlas-space-page #countryOverview :is(.space-next-trip,.space-trip-row[data-overview-entry]) {
  display: grid; grid-template-columns: minmax(180px,29%) minmax(0,1fr);
  align-items: stretch; gap: 0; min-height: 216px; margin: 0; padding: 0;
  overflow: hidden; border: 1px solid #e0e6ed; border-radius: 15px;
  background: #fff; box-shadow: 0 4px 18px #172b4505;
}
html body.atlas-space-page #countryOverview .space-next-trip { border-color: #dcc7a5; }
html body.atlas-space-page #countryOverview .space-next-photo {
  grid-column: 1; grid-row: 1; width: 100%; height: 100%; min-height: 216px; border-radius: 0;
}
html body.atlas-space-page #countryOverview .space-trip-row[data-overview-entry] > .space-trip-photo {
  grid-column: 1; grid-row: 1 / 3; width: 100%; height: 100%; min-height: 216px; border-radius: 0;
}
html body.atlas-space-page #countryOverview .space-next-content {
  grid-column: 2; grid-row: 1; min-width: 0; padding: 26px 28px;
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
}
html body.atlas-space-page #countryOverview .space-trip-row[data-overview-entry] > .space-trip-details {
  grid-column: 2; grid-row: 1; display: flex; flex-wrap: wrap; align-content: center;
  gap: 9px 12px; padding: 25px 28px 0; min-width: 0;
}
html body.atlas-space-page #countryOverview :is(.space-next-title,.space-trip-details h3) {
  flex: 0 0 100%; margin: 0 0 6px; color: #172b45;
  font-size: 26px; font-weight: 750; line-height: 1.25; letter-spacing: -.03em;
}
html body.atlas-space-page #countryOverview .space-trip-title-link {
  color: inherit; font: inherit; line-height: inherit; text-align: left;
  border: 0; background: transparent; padding: 0; max-width: 100%; overflow-wrap: anywhere;
}
html body.atlas-space-page #countryOverview .space-country-dates {
  flex: 0 0 100%; margin: 0; color: #5d7087; font-size: 14px; line-height: 1.6;
}
html body.atlas-space-page #countryOverview .space-next-content > :is(.space-next-title,.space-country-dates) { flex: none; }
html body.atlas-space-page #countryOverview .space-next-content > .space-order-pill { margin-top: 14px; }
html body.atlas-space-page #countryOverview .space-order-pill { font-size: 12px; min-height: 27px; padding: 4px 9px; }
html body.atlas-space-page #countryOverview .space-trip-row[data-overview-entry] > .space-trip-actions {
  grid-column: 2; grid-row: 2; padding: 12px 28px 25px;
}
html body.atlas-space-page #countryOverview :is(.space-next-actions,.space-trip-actions) {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end;
  gap: 9px; min-width: 0; max-width: 100%;
}
html body.atlas-space-page #countryOverview .space-next-actions { width: 100%; margin-top: 12px; }
html body.atlas-space-page #countryOverview :is(.space-next-actions,.space-trip-actions) > .space-trip-next-hint {
  margin: 0; padding: 0; border: 0; color: #52667e; font-size: 13px; font-weight: 500; line-height: 1.5;
}
html body.atlas-space-page #countryOverview :is(.space-country-primary,.space-trip-row[data-overview-entry] .space-trip-open) {
  display: inline-flex !important; align-items: center; justify-content: space-between; gap: 20px;
  min-height: 44px; min-width: 0; width: auto; max-width: 100%; padding: 11px 15px;
  border-radius: 9px; font-size: 13px; font-weight: 650; line-height: 1.5; text-align: left;
  white-space: normal; overflow-wrap: anywhere; text-decoration: none;
}
html body.atlas-space-page #countryOverview :is(.space-country-primary,.space-trip-open) svg { flex-shrink: 0; }
html body.atlas-space-page #countryOverview .space-trip-timing { margin: 9px 0 0; font-size: 12px; line-height: 1.5; }
html body.atlas-space-page #countryOverview .space-next-heading-title { font-size: 17px; line-height: 1.5; letter-spacing: -.01em; }
html body.atlas-space-page #countryOverview .space-list-heading { margin: 0 0 12px; font-size: 15px; color: #5d7087; }
html body.atlas-space-page #countryOverview .space-trip-list { display: grid; gap: 16px; border: 0; }
html body.atlas-space-page #countryOverview #nextTrip:not([hidden]) { margin-bottom: 26px; }
html body.atlas-space-page #countryOverview .space-trip-section + .space-trip-section { margin-top: 26px; }
/* History is still readable, simply quieter and smaller. */
html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-row[data-overview-entry] {
  grid-template-columns: 112px minmax(0,1fr); min-height: 150px; box-shadow: none;
}
html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-photo { min-height: 150px; }
html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-details { padding-top: 18px; }
html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-details h3 { font-size: 20px; }
html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-actions { padding-bottom: 18px; }
@media(max-width:640px) {
  html body.atlas-space-page #countryOverview :is(.space-next-trip,.space-trip-row[data-overview-entry]) {
    grid-template-columns: minmax(0,1fr); min-height: 0; border-radius: 13px;
  }
  html body.atlas-space-page #countryOverview .space-next-photo,
  html body.atlas-space-page #countryOverview .space-trip-row[data-overview-entry] > .space-trip-photo {
    grid-column: 1; grid-row: 1; min-height: 0; height: 140px; width: 100%;
  }
  html body.atlas-space-page #countryOverview .space-next-content { grid-column: 1; grid-row: 2; padding: 20px; }
  html body.atlas-space-page #countryOverview .space-trip-row[data-overview-entry] > .space-trip-details { grid-column: 1; grid-row: 2; padding: 20px 20px 0; }
  html body.atlas-space-page #countryOverview .space-trip-row[data-overview-entry] > .space-trip-actions { grid-column: 1; grid-row: 3; padding: 12px 20px 20px; }
  html body.atlas-space-page #countryOverview :is(.space-next-title,.space-trip-details h3) { font-size: 24px; }
  html body.atlas-space-page #countryOverview :is(.space-country-primary,.space-trip-row[data-overview-entry] .space-trip-open) {
    width: 100%; max-width: 100%; min-height: 46px; padding: 11px 14px; font-size: 13px;
  }
  html body.atlas-space-page #countryOverview :is(.space-next-actions,.space-trip-actions) { width: 100%; }
  html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-row[data-overview-entry] {
    grid-template-columns: 80px minmax(0,1fr); min-height: 0;
  }
  html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-photo { grid-column: 1; grid-row: 1 / 3; height: 100%; min-height: 0; }
  html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-details { grid-column: 2; grid-row: 1; padding: 16px 14px 0; }
  html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-actions { grid-column: 2; grid-row: 2; padding: 10px 14px 16px; }
  html body.atlas-space-page #countryOverview .space-trip-section:is([data-phase="past"],[data-phase="inactive"]) .space-trip-details h3 { font-size: 18px; }
}

/* Destination: open, aligned preparation rows, not another stack of boxes. */
html body.destination-clarity #departureResult #departureRouteDetails #route-documents {
  margin-top: 12px; padding: 20px 0 0; border: 0 !important; border-top: 1px solid #e4e3de !important;
  border-radius: 0; background: transparent; box-shadow: none; overflow: visible;
}
html body.destination-clarity #departureResult #departureRouteDetails #route-documents > h3 {
  margin: 0 0 8px; padding: 0 0 8px; border: 0; font-size: 18px; letter-spacing: -.02em;
}
html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-document-label {
  gap: 12px; min-height: 54px; padding: 14px 36px 14px 0; border-radius: 6px;
}
html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-item + .route-item { border-top-color: #e7e6e1; }
html body.destination-clarity #departureResult #departureRouteDetails #route-documents summary.route-document-label:hover { background: #f1efea; }
html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-document-label > .route-icon {
  width: 24px; height: 24px; background: transparent; border: 0; color: #65748a;
}
html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-document-label strong { font-size: 14px; font-weight: 600; }
html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-document-body { padding: 0 20px 16px 36px; }
html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-more-documents { margin-top: 8px; border: 0; background: transparent; }
html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-more-summary { min-height: 44px; padding: 12px 0; }
html body.destination-clarity #departureResult #departureRouteSummary .route-offer-heading h3 { margin: 0; font-size: 21px; line-height: 1.3; }
html body.destination-clarity #departureResult #departureRouteSummary .route-offer-subtitle { margin: 10px 0 0; font-size: 13px; line-height: 1.65; }
html body.destination-clarity #departureResult #departureRouteSummary[data-service-availability="available"] .route-offer-badge { display: none; }
@media(max-width:820px) {
  html body.destination-clarity #departureResult #departureRouteSummary .route-offer-heading h3 { font-size: 17px; }
  /* Keep the first action above the fee detail on phones; no extra copy ahead of it. */
  html body.destination-clarity #departureResult #departureRouteSummary .route-offer-subtitle { display: none; }
  html body.destination-clarity #departureResult #departureRouteDetails #route-documents { margin-top: 18px; padding-top: 18px; }
  html body.destination-clarity #departureResult #departureRouteDetails #route-documents > h3 { font-size: 17px; }
  html body.destination-clarity #departureResult #departureRouteDetails #route-documents .route-document-label {
    padding: 12px 24px 12px 0;
  }
}
@media(prefers-reduced-motion:reduce) {
  html body.atlas-space-page #countryOverview :is(.space-country-primary,.space-trip-open) { transition: none; }
}
