/* Artboards 17–20, 27–29, 37–40, 42 and 50. Only loaded on journeys. */
.journeys { overflow-wrap: anywhere; }
.journeys-inner { padding-block: 40px var(--main-end-space); }
.journeys-hero { margin-bottom: 48px; }
.journeys-hero .eyebrow { margin-bottom: 16px; }
.journeys-hero h1 { margin-bottom: 16px; font-size: clamp(2.75rem, 5vw, 4.5rem); line-height: 1.08; letter-spacing: -.025em; }
.journeys-intro { max-width: 976px; margin-bottom: 0; font-size: clamp(1rem, 1.39vw, 1.25rem); line-height: 1.6; }
.journeys-hero .button { margin-top: 24px; }
.journeys-columns { display: grid; grid-template-columns: minmax(0, 848fr) minmax(0, 368fr); gap: clamp(32px, 6.667vw, 96px); align-items: start; }
.journeys-fields { min-width: 0; }
.journeys-guidance { padding: 24px; background: var(--green-pale); }
.journeys-guidance > p:not(.eyebrow):not(.journeys-help) { margin-bottom: 24px; font-size: 1.25rem; font-weight: 600; line-height: 1.5; }
.journeys-guidance .eyebrow { margin-bottom: 16px; }
.journeys-guidance .journeys-help { margin-bottom: 0; font-size: 0.875rem; }
.journeys-help a { display: inline-flex; align-items: center; min-height: 44px; }
.journeys-subtitle { font-size: clamp(1.375rem, 1.81vw, 1.625rem); text-transform: none; letter-spacing: 0; line-height: 1.35; }
.journeys-choice, .journeys-preview fieldset { border: 0; padding: 0; margin: 0 0 32px; min-width: 0; }
.journeys-choice legend { padding: 0; margin-bottom: 16px; }
.journeys-options { display: flex; flex-wrap: wrap; gap: 12px; }
.journeys-options label { position: relative; margin: 0; }
.journeys-options input { position: absolute; opacity: 0; width: 1px; height: 1px; min-height: 0; padding: 0; }
.journeys-options span { display: flex; align-items: center; justify-content: center; min-height: 44px; min-width: 80px; padding: 8px 16px; background: var(--paper); border: 1px solid var(--ink); }
.journeys-options input:checked + span { background: var(--ink); color: var(--paper); }
.journeys-options input:focus-visible + span { outline: 3px solid var(--green-dark); outline-offset: 4px; }
.journeys-amounts span { min-height: 52px; min-width: 96px; font-size: 1.25rem; font-weight: 800; color: var(--green-dark); }
.journeys-amounts input:checked + span { background: var(--green); color: var(--ink); }
.journeys .form-field { margin: 0 0 32px; }
.journeys input:not([type=checkbox]):not([type=radio]), .journeys select { font-size: 0.875rem; min-height: 56px; }
.journeys input, .journeys textarea { max-width: 100%; }
.journeys input:disabled, .journeys button:disabled { opacity: .65; cursor: not-allowed; }
.journeys button:disabled { background: var(--line); color: var(--ink); }
.journeys-check { display: flex; align-items: flex-start; gap: 12px; min-height: 44px; margin: 24px 0; font-size: 0.8125rem; font-weight: 400; }
.journeys-check input { flex: 0 0 22px; width: 22px; height: 22px; min-height: 22px; padding: 0; margin: 3px 0 0; accent-color: var(--green-dark); }
.journeys-check > span { flex: 1; min-width: 0; }
.journeys-small { font-size: 0.8125rem; line-height: 1.65; }
.journeys-note { margin-top: 24px; }
.journeys-feedback { padding: 24px; background: var(--green-wash); margin-bottom: 32px; }
.journeys-feedback p:last-child { margin-bottom: 0; }
.journeys-error { color: var(--error); }
.journeys-feedback.journeys-error { border: 1px solid var(--error); background: var(--paper); }
.journeys-cards { margin-top: 64px; }
.journeys-card { display: flex; min-width: 0; }
.journeys-card > a { display: flex; flex-direction: column; width: 100%; border: 1px solid var(--ink); background: var(--paper); color: var(--ink); text-decoration: none; }
.journeys-card > a:hover { background: var(--green); color: var(--ink); text-decoration: none; }
.journeys-card > a > div { padding: 24px; flex: 1; min-height: 184px; }
.journeys-card .eyebrow { margin-bottom: 16px; }
.journeys-card h3 { font-size: clamp(1.5625rem, 1.806vw, 1.625rem); line-height: 1.3; margin-bottom: 16px; }
.journeys-card p:not(.eyebrow) { font-size: 0.875rem; margin: 0; }
.journeys-card-action { display: flex; justify-content: space-between; gap: 16px; padding: 12px 24px; min-height: 52px; align-items: center; border-top: 1px solid var(--ink); color: var(--green-dark); text-transform: uppercase; font-size: 0.75rem; font-weight: 700; }
.journeys-section { margin-top: 64px; scroll-margin-top: 24px; }
.journeys-join-photo img { display: block; width: 100%; aspect-ratio: 1312 / 504; object-fit: cover; }
.journeys-search { margin-bottom: 32px; }
.journeys-search input { min-width: 0; }
.journeys-search .button { min-width: 144px; }
.journeys-section > p { max-width: 72ch; }
.journeys-section > .button, .journeys-route .button { margin-top: 8px; }
.journeys-section-list:has(> li:not([hidden])) { margin-block: 0 32px; }
.journeys-section-list:not(:has(> li:not([hidden]))), [data-journeys-section-count]:empty { display: none; }
.journeys-route, .journeys-route-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; border-top: 1px solid var(--ink); padding-top: 48px; }
.journeys-route > *, .journeys-route-pair > * { min-width: 0; }
.journeys-route .eyebrow, .journeys-route-pair .eyebrow { margin-bottom: 16px; }
.journeys-route h2, .journeys-route-pair h2 { font-size: clamp(1.625rem, 3vw, 2.5rem); }
.journeys-route-pair > section { display: flex; flex-direction: column; align-items: flex-start; scroll-margin-top: 24px; }
.journeys-route-pair .button { margin-top: auto; }
.journeys-embed { max-width: 100%; }
.journeys-embed iframe { display: block; max-width: 100%; width: 100%; border: 0; }
.journeys-editions ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; list-style: none; padding: 0; margin: 0; }
.journeys-editions a { display: flex; align-items: center; min-height: 56px; padding-block: 8px; border-bottom: 1px solid var(--ink); }
.journeys-section-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 32px; padding: 0; list-style: none; margin-bottom: 32px; }
.journeys-section-list a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 16px; min-height: 56px; border-bottom: 1px solid var(--ink); font-size: 0.875rem; font-weight: 600; }
.journeys-preview { margin-top: 40px; }
.journeys-preview summary { display: flex; align-items: center; min-height: 52px; padding: 16px 0; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--ink); cursor: pointer; font-weight: 600; }
.journeys-preview summary::before { content: '+'; margin-right: 16px; }
.journeys-preview[open] summary::before { content: '−'; }
.journeys-preview[open] summary { margin-bottom: 24px; }
.journeys-preview section + section { margin-top: 48px; }
.journeys-review { margin: 0 0 32px; }
.journeys-review dt { margin-top: 16px; font-size: 0.8125rem; font-weight: 700; }
.journeys-review dd { margin: 0; padding-bottom: 16px; border-bottom: 1px solid var(--line); white-space: pre-wrap; }
.journeys-state-fields { max-width: 848px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
.journeys-focus-example input { outline: 3px solid var(--green-dark); outline-offset: 4px; }
.journeys-state-feedback { max-width: 848px; }
.journeys-cookie-preferences { max-width: 976px; margin-top: 64px; }
.journeys-cookie-preferences .journeys-check { border-top: 1px solid var(--line); padding-top: 16px; }
.journeys-cookie-category { padding-block: 16px; border-top: 1px solid var(--line); }
.journeys-cookie-category p { margin-bottom: 8px; }
.journeys-cookie-notice { max-height: calc(100dvh - 48px); overflow-y: auto; }
.journeys-text-button { border: 0; background: transparent; padding: 8px 0; cursor: pointer; }
@media (max-width: 1023px) {
  .journeys-columns { grid-template-columns: minmax(0, 1fr) 280px; gap: 32px; }
  .journeys .grid-three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .journeys .grid-three > :last-child:nth-child(odd) { grid-column: 1 / -1; }
  .journeys-section-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .journeys-inner { padding-block: 40px var(--main-end-space); }
  .journeys-hero { margin-bottom: 40px; }
  .journeys-hero h1 { font-size: clamp(2.25rem, 11.28vw, 2.75rem); line-height: 1.12; }
  .journeys-columns { grid-template-columns: minmax(0, 1fr); }
  .journeys-guidance { margin-top: 16px; }
  .journeys-options { gap: 8px; }
  .journeys-amounts span { min-width: 80px; }
  .journeys-cards { margin-top: 48px; }
  .journeys .grid-three, .journeys-state-fields, .journeys-section-list { grid-template-columns: minmax(0, 1fr); }
  .journeys .grid-three { gap: 24px; }
  .journeys .grid-three > :last-child:nth-child(odd) { grid-column: auto; }
  .journeys-card > a > div { min-height: 184px; }
  .journeys-card h3 { font-size: 1.5625rem; }
  .journeys-section { margin-top: 48px; }
  .journeys-route, .journeys-route-pair { grid-template-columns: minmax(0, 1fr); gap: 32px; padding-top: 32px; }
  .journeys-route-pair > section + section { border-top: 1px solid var(--ink); padding-top: 32px; }
  .journeys-route .button, .journeys-route-pair .button, .journeys-section > .button { width: 100%; justify-content: flex-start; }
  .journeys-route-pair .button { margin-top: 8px; }
  .journeys-join-photo img { aspect-ratio: 342 / 260; }
  .journeys-cookie-notice { left: 16px; right: 16px; padding: 16px; }
}

.journeys-guidance .menu a { display: flex; width: 100%; align-items: center; min-height: 44px; padding: 8px 0; }
