/* Journey enquiry controls and a viewport-safe mobile date range dialog. */
@media (max-width: 900px) {
  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form {
    --ame-form-ink: #2c2c2a;
    --ame-form-muted: #64625d;
    --ame-form-error: #8a3e33;
    max-width: 100% !important;
    min-width: 0;
    color: var(--ame-form-ink);
    scroll-margin-top: 154px;
    padding-bottom: max(12px, env(safe-area-inset-bottom, 0px));
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(input, select, textarea) {
    font-size: 16px !important;
    line-height: 1.5 !important;
    color: var(--ame-form-ink) !important;
    max-width: 100%;
    box-sizing: border-box;
    scroll-margin-top: 156px;
    scroll-margin-bottom: 28px;
    -webkit-text-size-adjust: 100%;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]), select) {
    min-height: 52px !important;
    border-bottom-color: #9b9890 !important;
    border-radius: 0;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form textarea {
    min-height: 132px !important;
    padding-top: 12px !important;
    border-bottom-color: #9b9890 !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(input, textarea)::placeholder {
    color: #74716b !important;
    opacity: 1 !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(label, legend, .ame-label) {
    color: var(--ame-form-muted) !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
    letter-spacing: .1em !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(.ame-field, [data-ame-name-row] > div) {
    min-width: 0;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form [data-ame-name-row] {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    width: 100% !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(button, .ame-pills label, .ame-pills label > span, .iti__selected-flag) {
    min-height: 48px !important;
    box-sizing: border-box;
    touch-action: manipulation;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form button {
    max-width: 100%;
    color: var(--ame-form-ink);
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(#cal-start-display, #cal-end-display, #start_date_input, #end_date_input, .ame-date-trigger) {
    min-height: 52px !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    color: var(--ame-form-ink) !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(#tab-calendar, #tab-flexible) {
    min-height: 48px !important;
    padding: 12px 8px !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    letter-spacing: .1em !important;
    color: var(--ame-form-ink) !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .ame-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .ame-pills label > span {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 12px 16px !important;
    color: var(--ame-form-ink) !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    letter-spacing: .06em !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(.ame-pills input:checked + span, button[aria-pressed="true"], button[type="submit"]) {
    color: var(--ame-form-ink) !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form button[type="submit"] {
    min-height: 54px !important;
    padding: 16px 14px !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    letter-spacing: .12em !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(input, select, textarea, button):focus-visible {
    outline: 2px solid #81623b !important;
    outline-offset: 3px !important;
    border-bottom-color: #81623b !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .ame-pills input:focus-visible + span {
    outline: 2px solid #81623b !important;
    outline-offset: 3px !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(.ame-inline-error, .ame-date-inline-error, .ame-error, #phone-error, #date-error, #date-range-error) {
    color: var(--ame-form-error) !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    letter-spacing: 0 !important;
    margin-top: 8px;
    overflow-wrap: anywhere;
    scroll-margin-top: 154px;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form [aria-invalid="true"] {
    border-bottom-color: var(--ame-form-error) !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(.ame-privacy, .ame-form-assurance p, .ame-form-assurance span) {
    font-size: 13px !important;
    line-height: 1.65 !important;
    color: var(--ame-form-muted) !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .iti {
    width: 100%;
    min-width: 0;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .iti__selected-dial-code {
    font-size: 16px !important;
    color: var(--ame-form-ink) !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .iti__country-list {
    max-width: min(340px, calc(100vw - 32px));
    max-height: min(320px, 45dvh);
    overscroll-behavior: contain;
    white-space: normal;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .iti__country {
    min-height: 44px;
    padding: 12px 10px;
    font-size: 15px;
    line-height: 1.4;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) body.ame-journey-form-active :is(#mobile-sticky-cta, .ame-floating-journey-cta, .classic-desktop-sticky-bar) {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transform: translateY(calc(100% + env(safe-area-inset-bottom, 0px))) !important;
  }
}

.ame-mobile-date-dialog {
  --ame-date-ink: #2c2c2a;
  --ame-date-paper: #f5f2ec;
  --ame-date-gold: #c8a97e;
  position: fixed !important;
  inset: 0 !important;
  width: 100% !important;
  max-width: 560px !important;
  height: 100vh !important;
  height: 100dvh !important;
  max-height: 100vh !important;
  max-height: 100dvh !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0;
  background: var(--ame-date-paper);
  color: var(--ame-date-ink);
  box-shadow: 0 0 60px rgba(44, 44, 42, .18);
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  overflow: hidden;
  overscroll-behavior: contain;
  z-index: 2000;
}

.ame-mobile-date-dialog[open] {
  display: flex !important;
  flex-direction: column;
}

.ame-mobile-date-dialog:not([open]),
.ame-mobile-date-dialog[hidden],
.ame-mobile-date-dialog [hidden] {
  display: none !important;
}

.ame-mobile-date-dialog *,
.ame-mobile-date-dialog *::before,
.ame-mobile-date-dialog *::after {
  box-sizing: border-box;
}

.ame-mobile-date-dialog::backdrop {
  background: rgba(44, 44, 42, .48);
}

.ame-mobile-date-dialog button {
  margin: 0;
  border: 0;
  font: inherit;
  color: var(--ame-date-ink);
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.ame-mobile-date-dialog button:focus-visible {
  outline: 2px solid #81623b;
  outline-offset: 3px;
}

.ame-date-header {
  position: relative;
  flex: 0 0 auto;
  padding: calc(20px + env(safe-area-inset-top, 0px)) 72px 16px 20px;
  border-bottom: 1px solid #dfdbd2;
}

.ame-date-header h2 {
  margin: 0;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.02em;
}

.ame-date-header p {
  margin: 8px 0 0;
  color: #64625d;
  font-size: 14px;
  line-height: 1.5;
}

.ame-date-header :is(.ame-date-close, .ame-date-closebtn, .ame-date-closebutton) {
  position: absolute;
  top: calc(12px + env(safe-area-inset-top, 0px));
  right: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  min-width: 48px;
  height: 48px;
  background: transparent;
  border-radius: 50%;
  font-size: 26px;
  line-height: 1;
}

.ame-date-header :is(.ame-date-close, .ame-date-closebtn, .ame-date-closebutton):hover {
  background: #e9e4da;
}

.ame-date-selection {
  display: grid;
  flex: 0 0 auto;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 16px 20px;
  border-bottom: 1px solid #dfdbd2;
}

.ame-date-selection :is(.ame-date-start, .ame-date-end) {
  display: flex;
  min-width: 0;
  min-height: 70px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 5px;
  padding: 12px;
  border: 1px solid #9b9890;
  border-radius: 4px;
  background: transparent;
  text-align: left;
}

.ame-date-selection button :is(span, label) {
  color: #64625d;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.ame-date-selection button strong {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.35;
}

.ame-date-selection :is([aria-pressed="true"], [aria-current="step"], .is-active) {
  border-color: #81623b;
  box-shadow: inset 0 0 0 1px #81623b;
  background: #eee6d9;
}

.ame-date-body {
  flex: 1 1 auto;
  min-height: 0;
  padding: 16px 20px 20px;
  overflow-y: auto;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

.ame-date-month-nav {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 48px;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}

.ame-date-month-nav button {
  display: flex;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  border: 1px solid #b4afa5;
  border-radius: 50%;
  background: transparent;
  font-size: 22px;
  line-height: 1;
}

.ame-date-month-nav :is(h3, [aria-live], .ame-date-month-heading) {
  margin: 0;
  color: var(--ame-date-ink);
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}

.ame-date-weekdays,
.ame-date-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
}

.ame-date-weekdays {
  margin-bottom: 6px;
  color: #64625d;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
}

.ame-date-weekdays > * {
  padding: 8px 0;
}

.ame-date-grid button[data-day] {
  display: flex;
  min-width: 0;
  width: 100%;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 8px 0;
  border: 1px solid transparent;
  border-radius: 50%;
  background: transparent;
  color: var(--ame-date-ink);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.4;
}

.ame-date-grid button[data-day]:not(:disabled):hover {
  background: #e8e0d3;
}

.ame-date-grid button[data-day].is-range {
  border-radius: 0;
  background: #e9ddcb;
}

.ame-date-grid button[data-day].is-today {
  border-color: #81623b;
}

.ame-date-grid button[data-day]:is(.is-start, .is-end, [aria-selected="true"]) {
  border-color: var(--ame-date-gold);
  border-radius: 50%;
  background: var(--ame-date-gold);
  color: var(--ame-date-ink);
  font-weight: 600;
}

.ame-date-grid button[data-day]:disabled {
  color: #a29e96;
  cursor: default;
}

.ame-date-footer {
  display: grid;
  flex: 0 0 auto;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 14px 20px calc(16px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid #dfdbd2;
  background: var(--ame-date-paper);
  box-shadow: 0 -8px 24px rgba(44, 44, 42, .04);
}

.ame-date-summary {
  margin: 0;
  grid-column: 1 / -1;
  min-width: 0;
  color: #64625d;
  font-size: 13px;
  line-height: 1.5;
}

.ame-date-summary p {
  margin: 0;
}

.ame-date-footer :is(.ame-date-apply, .ame-date-applybutton) {
  grid-column: 1;
  min-height: 50px;
  padding: 12px 18px;
  border: 1px solid var(--ame-date-gold);
  border-radius: 4px;
  background: var(--ame-date-gold);
  color: var(--ame-date-ink);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
}

.ame-date-footer :is(.ame-date-apply, .ame-date-applybutton):disabled {
  border-color: #d9d4ca;
  background: #e3ded4;
  color: #74716b;
  cursor: default;
}

.ame-date-footer :is(.ame-date-clear, .ame-date-clearbutton) {
  grid-column: 2;
  min-height: 48px;
  padding: 10px 14px;
  border-radius: 4px;
  background: transparent;
  color: #56544f;
  font-size: 14px;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.ame-date-inline-error {
  color: #8a3e33;
  font-size: 13px;
  line-height: 1.5;
  margin: 8px 0 0;
}

@media (max-width: 359px) {
  .ame-date-header {
    padding-right: 68px;
    padding-left: 16px;
  }
  .ame-date-header h2 {
    font-size: 30px;
  }
  .ame-date-selection {
    padding-right: 16px;
    padding-left: 16px;
    gap: 8px;
  }
  .ame-date-selection :is(.ame-date-start, .ame-date-end) {
    padding: 10px;
  }
  .ame-date-selection button strong {
    font-size: 15px;
  }
  .ame-date-body {
    padding-right: 12px;
    padding-left: 12px;
    scrollbar-gutter: auto;
  }
  .ame-date-grid,
  .ame-date-weekdays {
    gap: 2px;
  }
  .ame-date-grid button[data-day] {
    min-height: 44px;
  }
  .ame-date-footer {
    padding-right: 16px;
    padding-left: 16px;
  }
}

/* Keep the current month visible while the date grid scrolls on small phones. */
.ame-date-month-nav {
  margin-bottom: 0;
  padding-bottom: 12px;
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--ame-date-paper);
  box-shadow: 0 -16px 0 16px var(--ame-date-paper);
}

.ame-date-weekdays {
  position: sticky;
  top: 60px;
  z-index: 1;
  background: var(--ame-date-paper);
  box-shadow: 0 4px 0 var(--ame-date-paper);
}

.ame-date-month-nav button:disabled {
  color: #a29e96;
  border-color: #d3cfc6;
  cursor: default;
}

.ame-date-grid button[data-day]:is(.is-start, .is-end),
.ame-date-grid button[data-day]:is(.is-start, .is-end):is(:hover, :disabled, :focus-visible) {
  border-color: var(--ame-date-gold);
  background: var(--ame-date-gold);
  color: var(--ame-date-ink);
  font-weight: 600;
}

/* Landscape phones put the calendar beside the controls, preserving room to browse. */
@media (max-height: 500px) and (min-width: 480px) {
  .ame-mobile-date-dialog[open] {
    display: grid !important;
    grid-template-columns: minmax(200px, .75fr) minmax(0, 1fr);
    grid-template-rows: auto minmax(0, 1fr) auto;
    max-width: none !important;
  }

  .ame-mobile-date-dialog .ame-date-header {
    grid-column: 1;
    grid-row: 1;
    padding: calc(12px + env(safe-area-inset-top, 0px)) 56px 10px max(16px, env(safe-area-inset-left, 0px));
    border-bottom: 0;
  }

  .ame-mobile-date-dialog .ame-date-header h2 {
    font-size: 26px;
    line-height: 1.05;
  }

  .ame-mobile-date-dialog .ame-date-header p {
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.4;
  }

  .ame-mobile-date-dialog .ame-date-header :is(.ame-date-close, .ame-date-closebtn, .ame-date-closebutton) {
    top: calc(4px + env(safe-area-inset-top, 0px));
    right: 4px;
  }

  .ame-mobile-date-dialog .ame-date-selection {
    grid-column: 1;
    grid-row: 2;
    align-self: start;
    gap: 6px;
    padding: 4px 12px 8px max(16px, env(safe-area-inset-left, 0px));
    border-bottom: 0;
  }

  .ame-mobile-date-dialog .ame-date-selection :is(.ame-date-start, .ame-date-end) {
    min-height: 64px;
    gap: 3px;
    padding: 8px;
  }

  .ame-mobile-date-dialog .ame-date-selection button :is(span, label) {
    font-size: 10px;
    letter-spacing: .03em;
  }

  .ame-mobile-date-dialog .ame-date-selection button strong {
    font-size: 14px;
    line-height: 1.25;
  }

  .ame-mobile-date-dialog .ame-date-body {
    grid-column: 2;
    grid-row: 1 / span 3;
    min-width: 0;
    height: 100%;
    padding: calc(8px + env(safe-area-inset-top, 0px)) max(12px, env(safe-area-inset-right, 0px)) calc(12px + env(safe-area-inset-bottom, 0px)) 12px;
    border-left: 1px solid #dfdbd2;
    scrollbar-gutter: auto;
  }

  .ame-mobile-date-dialog .ame-date-footer {
    grid-column: 1;
    grid-row: 3;
    gap: 6px;
    padding: 8px 12px calc(10px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px));
    box-shadow: none;
  }

  .ame-mobile-date-dialog .ame-date-summary {
    font-size: 12px;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }

  .ame-mobile-date-dialog .ame-date-footer :is(.ame-date-apply, .ame-date-applybutton) {
    min-height: 48px;
    padding: 10px 8px;
    font-size: 14px;
  }

  .ame-mobile-date-dialog .ame-date-footer :is(.ame-date-clear, .ame-date-clearbutton) {
    min-height: 48px;
    padding: 10px 4px;
    font-size: 12px;
  }

  .ame-mobile-date-dialog .ame-date-grid,
  .ame-mobile-date-dialog .ame-date-weekdays {
    gap: 2px;
  }

  .ame-mobile-date-dialog .ame-date-grid button[data-day] {
    min-height: 44px;
  }
}

@media (max-width: 900px) {
  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form [data-ame-name-row] > div,
  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form [data-ame-name-row] input {
    width: 100% !important;
    max-width: none !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(#flex-duration-group, #duration-options) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(#flex-duration-group, #duration-options) button {
    width: 100% !important;
    min-width: 0 !important;
    padding: 10px 8px !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(#month-prev, #month-next, button[onclick*="flex-month-scroll"]) {
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    flex-shrink: 0;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(.flex-duration.active, .flex-month.active, .flex-pill-rect.selected, .month-card-new.selected) {
    border-color: #81623b !important;
    background: #c8a97e !important;
    color: #2c2c2a !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(.flex-duration.active, .flex-month.active, .flex-pill-rect.selected, .month-card-new.selected) :is(span, strong) {
    color: #2c2c2a !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form :is(.flex-duration.active, .flex-month.active, .flex-pill-rect.selected, .month-card-new.selected) svg {
    stroke: #2c2c2a !important;
    opacity: 1 !important;
  }
}

@media (max-width: 900px) {
  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form .ame-field {
    overflow: visible !important;
  }

  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) :is(#enquiry-form, #itinerary-enquiry-form, #speak-form).ame-mobile-form [data-ame-name-row] {
    grid-column: 1 / -1 !important;
  }
}

/* Timing headings and hints remain readable alongside the enlarged controls. */
@media (max-width: 900px) {
  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) .ame-mobile-form :is(#flexible-panel, #date-panel-flexible) > :is(p, span):not([id]),
  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) .ame-mobile-form :is(#flexible-panel, #date-panel-flexible) > div > :is(p, span),
  :is(html[data-ame-kind="journey"],html[data-ame-style-form]) .ame-mobile-form :is(#flexible-panel, #date-panel-flexible) > div > :is(p, span) > span {
    color: #64625d !important;
    opacity: 1 !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
  }
}
