/* Give the grid a full track; content must not squeeze it to text width. */
.home.evs-path-mode .scene-frame { grid-template-columns: minmax(0, 1fr); justify-content: stretch; }
.home .destination-grid--path { width: 100%; }
.home .destination-grid--path .evs-path-button { flex: 0 0 180px; width: 180px; height: auto; min-height: 0; aspect-ratio: 1; padding: 16px; }
.home .evs-path-button .destination-title { display: block; width: 100%; min-width: 0; max-width: 100%; margin: 0; text-align: center; }
.home .evs-path-nav { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 12px; align-items: center; }
.home [data-path-back] { justify-self: start; }
.home [data-path-home] { justify-self: end; }
.home [data-path-reset] { justify-self: center; background: var(--surface-solid); color: var(--fg-soft); box-shadow: var(--shadow-border); font-weight: 500; }
.home .theme-toggle { width: 70px; height: 40px; min-height: 40px; flex: 0 0 70px; padding: 5px; border-radius: 999px; justify-content: flex-start; }
.home .theme-toggle .toggle-orb { flex: 0 0 30px; transition: transform 240ms ease, background 240ms ease; }
.home .theme-toggle[aria-checked="true"] .toggle-orb { transform: translateX(30px); }
.home .theme-toggle .toggle-copy { display: none; }
.home .assistant-entry-text { font-weight: 400; color: color-mix(in srgb, var(--fg) 48%, transparent); }
.home .assistant-entry { justify-content: flex-start; text-align: left; padding-inline: 18px; }
.assistant-form input::placeholder { color: color-mix(in srgb, var(--fg) 48%, transparent); opacity: 1; }
.home [data-discount-membership] { display: grid; gap: 20px; padding-block: 12px 8px; }
.home [data-discount-membership] .builder-card-heading { flex-wrap: wrap; row-gap: 8px; margin: 0; }
.home [data-discount-membership] .builder-help { margin: 0; }
.home [data-discount-membership] .account-choice-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.home [data-discount-membership] .account-choice-row .offer-button { max-width: 100%; padding: 14px 18px; line-height: 1.45; }
.home [data-discount-membership] .builder-field { gap: 10px; margin: 0; }
.home [data-discount-membership] .pricing-warning { margin: 0; padding: 16px 18px; line-height: 1.6; }
.home .booking-details + [data-checkout-preview] { margin-top: 28px; }
@media (max-width: 720px) {
  .home .destination-grid--path .evs-path-button,
  .home .destination-grid--path[data-path-count="3"] .evs-path-button { flex-basis: calc(50% - 6px); width: auto; padding: 10px; }
  .home .evs-path-button .destination-title { font-size: 1rem; }
}
@media (prefers-reduced-motion: reduce) { .home .theme-toggle .toggle-orb { transition: none; } }
.path-help-tooltip { position: fixed; z-index: 100; width: max-content; max-width: min(280px, calc(100vw - 24px)); padding: 13px 16px; border: 1px solid color-mix(in srgb, var(--fg) 12%, transparent); border-radius: 14px; background: color-mix(in srgb, var(--surface-solid) 58%, transparent); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); color: var(--fg); box-shadow: 0 4px 16px #0000000d; font-family: var(--font-sans, sans-serif); font-size: .8rem; font-weight: 400; line-height: 1.5; text-align: center; overflow-wrap: break-word; }
.path-help-tooltip[hidden] { display: none; }
.reset-dialog { width: min(390px, calc(100vw - 32px)); max-width: none; padding: 28px 24px; }
.reset-dialog-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 24px; }
.reset-dialog-actions button { padding: 12px 18px; min-height: 44px; font: inherit; font-size: .9rem; transition: box-shadow 180ms ease; }
.reset-dialog-actions button:hover { box-shadow: 0 0 18px color-mix(in srgb, var(--fg) 14%, transparent); }
.reset-dialog-actions [data-path-reset-cancel] { background: var(--surface-soft); color: var(--fg); }
.reset-dialog-actions button:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
