/* __ORBI_MOBILEPOLISH1102__ OrbiTrip mobile polish v1 (CSS only; markup and behaviour unchanged) */
@media (max-width: 767px) {
  /* ---------- Hero ---------- */
  html body #orbi-home .orb-hero { --orbi-hero-bottom-reveal: 26px !important; padding-bottom: 26px !important; }
  html body #orbi-home .orb-hero-copy { padding: 30px 20px 6px !important; text-align: center; }
  html body #orbi-home .orb-hero-kicker { margin: 0 auto 14px !important; font-size: 10.5px !important; letter-spacing: .08em; }
  html body #orbi-home #orb-hero-title { font-size: 28px !important; line-height: 1.18 !important; letter-spacing: -.015em; text-shadow: 0 2px 14px rgba(0, 0, 0, .45); margin-bottom: 10px !important; }
  html body #orbi-home .orb-hero-copy p { font-size: 15px !important; line-height: 1.45 !important; text-shadow: 0 1px 8px rgba(0, 0, 0, .5); }
  html body #orbi-home #orb-booking { margin: 20px 14px 0 !important; }

  /* tabs: two equal pills, one line */
  html body #orbi-home .orb-tabs { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px !important; padding-bottom: 10px !important; align-items: stretch; }
  html body #orbi-home .orb-tab { min-height: 48px !important; height: 48px !important; border-radius: 12px !important; padding: 0 10px !important; justify-content: center !important; gap: 8px !important; font-size: 15px !important; }
  html body #orbi-home .orb-tab span { white-space: nowrap; font-size: 14px !important; line-height: 1.1 !important; letter-spacing: -.01em; }
  html body #orbi-home .orb-tab svg { width: 16px !important; height: 16px !important; flex: 0 0 16px; }
  html body #orbi-home .orb-tab:not(.is-active) { background: rgba(12, 35, 52, .62) !important; border: 1px solid rgba(255, 255, 255, .28) !important; }

  /* search card */
  html body #orbi-home .orbi-search-surface { background: rgba(10, 28, 42, .66) !important; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-radius: 18px !important; padding: 16px 14px 18px 18px !important; border: 1px solid rgba(255, 255, 255, .18) !important; box-shadow: 0 18px 40px -18px rgba(0, 0, 0, .6) !important; }
  html body #orbi-home .orbi-find { margin-top: 18px !important; }
  html body #orbi-home .orbi-find button { height: 54px !important; min-height: 54px !important; border-radius: 12px !important; box-shadow: 0 10px 22px -10px rgba(215, 79, 9, .9); }
  html body #orbi-home .orbi-find button span { font-size: 18px !important; font-style: normal !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 800 !important; }

  /* what-you-get strip under the search card */
  html body #orbi-home .orb-u1 { border-radius: 16px !important; margin-top: 12px !important; padding: 14px 14px 8px !important; box-shadow: 0 10px 26px -16px rgba(9, 29, 43, .55); }
  html body #orbi-home .orb-u1-steps { border-top: 1px solid #EEF2F5; }
  html body #orbi-home .orb-u1-num { min-width: 22px; height: 22px; display: inline-flex !important; align-items: center; justify-content: center; color: #D74F09; font-weight: 800; }

  /* ---------- Trust: 2 x 2 icon grid ---------- */
  html body #orbi-home .orb-trust { padding: 34px 0 18px !important; }
  html body #orbi-home .orb-trust-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 26px 12px !important; }
  html body #orbi-home .orb-trust-item { flex-direction: column !important; align-items: center !important; text-align: center; gap: 12px !important; }
  html body #orbi-home .orb-trust-item svg { width: 60px !important; height: 60px !important; padding: 15px !important; color: #D74F09 !important; background: #FFF1E8 !important; }
  html body #orbi-home .orb-trust-item strong { font-size: 15px !important; line-height: 1.3 !important; margin-bottom: 4px; }
  html body #orbi-home .orb-trust-item span { display: block; font-size: 13.5px !important; line-height: 1.4 !important; color: #4A5D70; }
  html body #orbi-home .orb-payment-trust178 { display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; gap: 12px !important; padding: 0 !important; background: none !important; border: 0 !important; }
  html body #orbi-home .orb-payment-trust178-icon { width: 60px !important; height: 60px !important; border-radius: 50% !important; background: #FFF1E8 !important; display: flex !important; align-items: center; justify-content: center; margin: 0 !important; }
  html body #orbi-home .orb-payment-trust178-icon svg { width: 28px !important; height: 28px !important; padding: 0 !important; background: none !important; color: #D74F09 !important; }
  html body #orbi-home .orb-payment-trust178-copy { text-align: center !important; }
  html body #orbi-home .orb-payment-trust178-copy strong { display: block; font-size: 15px !important; line-height: 1.3 !important; margin-bottom: 4px; }

  /* ---------- Sections ---------- */
  html body #orbi-home .orb-section { padding: 30px 0 !important; }
  html body #orbi-home .orb-section-head h2 { font-size: 26px !important; line-height: 1.2 !important; letter-spacing: -.01em; }
  html body #orbi-home .orb-section-head p { font-size: 15px !important; line-height: 1.5 !important; }

  /* photo cards: swipeable row instead of a long column */
  html body #orbi-home .orb-grid-3:has(> .orb-photo-card) { display: flex !important; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px !important; margin: 0 -16px; padding: 4px 16px 14px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  html body #orbi-home .orb-grid-3:has(> .orb-photo-card)::-webkit-scrollbar { display: none; }
  html body #orbi-home .orb-grid-3 > .orb-photo-card { flex: 0 0 82%; scroll-snap-align: start; border-radius: 16px !important; overflow: hidden; box-shadow: 0 10px 24px -18px rgba(9, 29, 43, .6); }
  html body #orbi-home .orb-photo-visual img { height: 220px !important; object-fit: cover; }
  html body #orbi-home .orb-photo-body { padding: 14px 16px 16px !important; }
  html body #orbi-home .orb-photo-body h3 { font-size: 17px !important; line-height: 1.3 !important; }
  html body #orbi-home .orb-photo-body .orb-button { min-height: 46px !important; height: 46px; border-radius: 12px !important; background: #D74F09 !important; font-size: 15px !important; }

  /* popular route rows */
  html body #orbi-home .orb-route-row { border-radius: 16px !important; box-shadow: 0 8px 20px -18px rgba(9, 29, 43, .55); }

  /* ---------- How it works: big numbers with a rule ---------- */
  html body #orbi-home .orb-how-grid { gap: 30px !important; }
  html body #orbi-home .orb-step-num { display: flex !important; align-items: center; gap: 16px; width: 100% !important; height: auto !important; border: 0 !important; border-radius: 0 !important; background: none !important; font-size: 54px !important; line-height: 1 !important; font-weight: 800 !important; color: #D74F09 !important; letter-spacing: -.02em; }
  html body #orbi-home .orb-step-num::after { content: ""; flex: 1; height: 2px; background: linear-gradient(90deg, #F2A77D, rgba(242, 167, 125, .15)); }
  html body #orbi-home .orb-how-step h3 { font-size: 19px !important; margin-top: 12px !important; }
  html body #orbi-home .orb-how-step p { font-size: 15.5px !important; line-height: 1.5 !important; color: #3F4F63; }

  /* CTA band */
  html body #orbi-home .orb-cta-band { border-radius: 18px !important; padding: 26px 20px !important; }
  html body #orbi-home .orb-cta-band .orb-button { border-radius: 12px !important; min-height: 52px; background: #D74F09 !important; }

  /* ---------- All routes: compact chips instead of a long list ---------- */
  html body #orbi-home .orb-routes-col { margin-bottom: 22px; }
  html body #orbi-home .orb-routes-col h3 { font-size: 15px !important; margin-bottom: 10px !important; }
  html body #orbi-home #orb-routes ul.orb-routes-list { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 8px !important; padding: 0 !important; }
  html body #orbi-home #orb-routes ul.orb-routes-list > li { list-style: none; margin: 0 !important; min-width: 0 !important; }
  html body #orbi-home #orb-routes ul.orb-routes-list > li > a { display: flex !important; align-items: center; height: 100%; min-height: 48px !important; min-block-size: 48px !important; padding: 8px 11px !important; padding-block: 8px !important; border: 1px solid #E3E9EE; border-radius: 12px; background: #fff; font-size: 13px !important; line-height: 1.3 !important; color: #16324B !important; font-weight: 500; text-decoration: none !important; box-shadow: 0 4px 12px -10px rgba(9, 29, 43, .5); }
}

/* ---------- Results page (/transfer/<route>) ---------- */
@media (max-width: 767px) {
  html body #modify-search > * { border-radius: 16px !important; border: 1px solid #E3E9EE !important; box-shadow: 0 10px 24px -20px rgba(9, 29, 43, .6) !important; }
  html body .orb-results-mount > .orb-wrap[data-orbi-transfer-availability] { display: inline-flex !important; align-items: center; gap: 6px; margin: 10px 16px 0 !important; padding: 6px 12px !important; border-radius: 999px; background: #EEF7F1; color: #2E6B4A !important; font-size: 13px !important; font-weight: 600; line-height: 1.3 !important; }
  html body .orb-results-mount > .orb-wrap[data-orbi-transfer-availability]::before { content: "✓"; font-weight: 800; }
  html body #vehicle-results #orv-trust-bar { scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, #000 86%, transparent); mask-image: linear-gradient(90deg, #000 86%, transparent); gap: 8px !important; }
  html body #vehicle-results #orv-trust-bar::-webkit-scrollbar { display: none; }
  html body #vehicle-results #orv-trust-bar li { background: #FFF1E8 !important; color: #16324B !important; font-size: 12.5px !important; font-weight: 600; padding: 6px 12px !important; white-space: nowrap; flex: 0 0 auto; }
  html body #vehicle-results .orb-heading h2 { font-size: 25px !important; letter-spacing: -.01em; }
  html body #vehicle-results .orb-heading p { font-size: 14.5px !important; color: #4A5D70 !important; margin-top: 4px !important; }
  html body #vehicle-results .orb-rv5-tools { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px !important; margin-top: 14px !important; width: 100%; }
  html body #vehicle-results .orb-rv5-filter-toggle, html body #vehicle-results .orb-sort select { height: 46px !important; min-height: 46px !important; width: 100% !important; border-radius: 12px !important; border: 1px solid #CFD9E2 !important; background-color: #fff !important; color: #16324B !important; font-size: 15px !important; font-weight: 700 !important; justify-content: center; }
  html body #vehicle-results .orb-sort { width: 100% !important; }
  html body #vehicle-results .orb-sort > span { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  html body #vehicle-results .orb-results-bar { margin: 4px 0 12px !important; }
  html body #vehicle-results article.orv-card { border-radius: 20px !important; box-shadow: 0 14px 30px -22px rgba(9, 29, 43, .55) !important; border: 1px solid #E8EDF2 !important; overflow: hidden; }
  html body #vehicle-results .orv-book { background: #D74F09 !important; border-radius: 12px !important; min-height: 52px; font-size: 17px !important; font-weight: 700 !important; box-shadow: 0 10px 20px -12px rgba(215, 79, 9, .9); }
  html body #vehicle-results .ogt-cls { border-color: #F2C3A6 !important; background: #FFF6F0 !important; color: #A63E06 !important; }

  /* filter sheet */
  html body #vehicle-results #orv-filter-bar[data-g19-panel][data-open="true"] { border-radius: 22px 22px 0 0 !important; padding: 0 18px 0 !important; overflow-y: auto; }
  html body:has(#orv-filter-bar[data-open="true"]) #orbi-wafab { display: none !important; }
  html body #orv-filter-bar .orb-g19-sheet-head { position: sticky; top: 0; z-index: 2; display: flex !important; align-items: center; justify-content: space-between; margin: 0 -18px 16px !important; padding: 16px 18px !important; background: #16324B !important; border-radius: 22px 22px 0 0; }
  html body #orv-filter-bar .orb-g19-sheet-head strong { color: #fff !important; font-size: 19px !important; font-weight: 800 !important; }
  html body #orv-filter-bar .orb-g19-sheet-head button { width: 40px !important; height: 40px !important; border-radius: 12px !important; border: 1px solid rgba(255, 255, 255, .35) !important; background: transparent !important; color: #fff !important; font-size: 24px !important; line-height: 1 !important; }
  html body #orv-filter-bar .orb-categories, html body #orv-filter-bar .orb-luggage-chips1014 { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; }
  html body #orv-filter-bar .orb-categories button, html body #orv-filter-bar .orb-luggage-chips1014 button { height: 42px !important; min-height: 42px !important; padding: 0 14px !important; border-radius: 10px !important; border: 1px solid #CFD9E2 !important; background: #fff !important; color: #16324B !important; font-size: 14.5px !important; font-weight: 600 !important; box-shadow: none !important; }
  html body #orv-filter-bar .orb-categories button[aria-pressed="true"], html body #orv-filter-bar .orb-luggage-chips1014 button[aria-pressed="true"] { background: #D74F09 !important; border-color: #D74F09 !important; color: #fff !important; }
  html body #orv-filter-bar .orb-luggage-chips1014 { gap: 6px !important; flex-wrap: nowrap !important; }
  html body #orv-filter-bar .orb-luggage-chips1014 button { flex: 1 1 auto; min-width: 0 !important; padding: 0 8px !important; font-size: 14px !important; }
  html body #orv-filter-bar .orb-category-count { margin-left: 6px; opacity: .75; font-weight: 700; }
  html body #orv-filter-bar .orb-luggage-row1014, html body #orv-filter-bar .orb-filter-fields { margin-top: 20px !important; }
  html body #orv-filter-bar .orb-luggage-row1014 > span, html body #orv-filter-bar .orb-filter-fields label > span, html body #orv-filter-bar .orb-filter-query > span, html body #orv-filter-bar .orb-budget-filter > summary { font-size: 15.5px !important; font-weight: 800 !important; color: #16324B !important; margin-bottom: 8px; }
  html body #orv-filter-bar .orb-filter-fields { gap: 16px 10px !important; }
  html body #orv-filter-bar .orb-field { height: 48px !important; min-height: 48px !important; border-radius: 12px !important; border: 1px solid #CFD9E2 !important; font-size: 15px !important; padding: 0 14px !important; background-color: #fff !important; }
  html body #orv-filter-bar .orb-budget-filter > summary { height: 48px; display: flex; align-items: center; border: 1px solid #CFD9E2; border-radius: 12px; padding: 0 14px !important; font-weight: 600 !important; }
  html body #orv-filter-bar .orb-g19-sheet-foot { position: sticky; bottom: 0; z-index: 2; background: #fff; margin: 16px -18px 0 !important; padding: 12px 18px calc(14px + env(safe-area-inset-bottom)) !important; box-shadow: 0 -10px 20px -16px rgba(9, 29, 43, .45); }
  html body #orv-filter-bar .orb-g19-sheet-foot .orb-btn-primary { height: 54px !important; border-radius: 12px !important; background: #D74F09 !important; font-size: 17px !important; font-weight: 800 !important; }
}
