/* Only the homepage discovery rail and its public full list. */
.premium-design .hero-grid.tx-dashboard{align-items:start!important}
.premium-design .tx-stage{align-self:start!important}
.premium-design .tx-rail{grid-template-rows:auto auto!important;align-content:start!important;align-self:start!important}
.premium-design .tx-popular{min-height:0!important}
.premium-design .tx-rail-head a{font-size:14px!important;white-space:nowrap;min-height:40px;display:inline-flex;align-items:center;color:#123dda}
.premium-design #real-trips{display:block!important;font-size:15px;color:#4b5870}
.premium-design #real-trips:has(.tx-compact-trip){min-height:0!important;place-items:normal!important;padding:0!important;border:0!important;background:transparent!important}
.premium-design #real-trips:not(:has(.tx-compact-trip)){min-height:0!important;padding:8px 0!important;border:0!important;background:transparent!important;text-align:left!important;display:block!important}
.premium-design #real-trips .tx-compact-trip{display:grid;grid-template-columns:46px minmax(0,1fr) auto 16px;grid-template-rows:auto auto;column-gap:9px;row-gap:4px;align-items:baseline;width:100%;padding:12px 0;border-bottom:1px solid #e3eaf3;background:transparent;color:#10234b;text-decoration:none;min-width:0;min-height:73px;transition:background .15s ease}
.premium-design #real-trips .tx-compact-trip:first-child{padding-top:7px}
.premium-design #real-trips .tx-compact-trip:last-child{border-bottom:0;padding-bottom:2px}
.premium-design #real-trips .tx-compact-trip:hover{background:#f6f9ff}
.premium-design #real-trips .tx-compact-trip:focus-visible{outline:3px solid #2868db;outline-offset:2px;border-radius:7px}
.premium-design #real-trips .tx-compact-hour{grid-column:1;grid-row:1;white-space:nowrap;font-size:14px;font-weight:750;line-height:1.4;color:#10234b}
.premium-design #real-trips .tx-compact-route{grid-column:2;grid-row:1;display:flex;gap:5px;align-items:baseline;min-width:0;font-size:15px;font-weight:700;line-height:1.35;color:#10234b}
.premium-design #real-trips .tx-compact-origin,.premium-design #real-trips .tx-compact-destination{min-width:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.premium-design #real-trips .tx-compact-arrow{flex:none;color:#1264d8;font-weight:700}
.premium-design #real-trips .tx-compact-price{grid-column:3;grid-row:1;white-space:nowrap;font-size:16px;font-weight:750;line-height:1.35;color:#10234b}
.premium-design #real-trips .tx-compact-meta{grid-column:2/4;grid-row:2;font-size:13px;font-weight:500;color:#4b5870;line-height:1.45}
.premium-design #real-trips .tx-compact-seats{color:#277047}
.premium-design #real-trips .tx-compact-chevron{grid-column:4;grid-row:1/3;align-self:center;justify-self:end;font-size:24px;line-height:1;color:#356bca}
.premium-design #real-trips .tx-compact-empty{margin:0;padding:8px 0;font-size:15px;line-height:1.5;color:#4b5870}
@media(max-width:850px){
  .premium-design .tx-popular{padding:14px!important}
  .premium-design #real-trips .tx-compact-trip{grid-template-columns:46px minmax(0,1fr) auto 14px;min-height:68px;padding:10px 0;column-gap:7px}
  .premium-design #real-trips .tx-compact-route{font-size:14px}
  .premium-design #real-trips .tx-compact-price{font-size:15px}
}
@media(max-width:390px){
  .premium-design #real-trips .tx-compact-trip{grid-template-columns:44px minmax(0,1fr) auto 12px;column-gap:5px}
  .premium-design #real-trips .tx-compact-route{font-size:13px}
  .premium-design #real-trips .tx-compact-price{font-size:14px}
}
.tx-all-page{margin:0;background:#f3f7fd;color:#0b1736;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
.tx-all-page *{box-sizing:border-box}
.tx-all-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px max(24px,calc((100vw - 960px)/2));background:#fff;border-bottom:1px solid #e3eaf3}
.tx-all-brand{color:#0b2455;text-decoration:none;font-size:24px;font-weight:800}
.tx-all-header nav{display:flex;gap:18px;align-items:center}
.tx-all-header nav a,.tx-all-back{color:#123dda;font-weight:650;text-decoration:none}
.tx-all-header a:focus-visible,.tx-all-back:focus-visible{outline:3px solid #2868db;outline-offset:4px}
.tx-all-main{width:min(960px,calc(100% - 32px));margin:44px auto 80px}
.tx-all-main h1{font-size:clamp(30px,5vw,40px);line-height:1.14;margin:18px 0 8px;color:#0b1736}
.tx-all-main>p{font-size:16px;line-height:1.6;color:#4b5870;max-width:62ch;margin:0 0 24px}
.tx-all-page .tx-popular{background:#fff;border:1px solid #e3eaf3;border-radius:18px;padding:20px 26px;box-shadow:0 3px 15px #10234b08}
.tx-all-page .tx-rail-head h2{font-size:20px!important;margin:0 0 8px;color:#0b1736}
@media(max-width:600px){.tx-all-header{padding:15px 18px}.tx-all-brand{font-size:20px}.tx-all-header nav{gap:12px;font-size:13px}.tx-all-main{margin:24px auto 72px}.tx-all-page .tx-popular{padding:13px 17px}.tx-all-main>p{font-size:15px}}

/* Homepage rail refinement: keep the separate, content-sized hero columns. */
.premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip{grid-template-columns:46px minmax(0,1fr) 58px 16px;border-bottom-color:#edf1f7;cursor:pointer;transition:background-color .18s ease}
.premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-price{text-align:right}
.premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-chevron{transition:transform .18s ease}
.premium-design .hero-grid.tx-dashboard .tx-driver-promo{padding:16px}
@media(min-width:851px){
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip{min-height:60px;padding:8px 0;row-gap:2px}
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip:first-child{padding-top:7px}
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip:last-child{padding-bottom:7px}
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-meta{line-height:1.35}
}
@media(hover:hover){
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip:hover{background:#f7f9fd}
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip:hover .tx-compact-chevron{transform:translateX(2px)}
}
@media(max-width:850px){
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip{grid-template-columns:46px minmax(0,1fr) 50px 14px}
  .premium-design .hero-grid.tx-dashboard .tx-driver-promo{padding:18px}
}
@media(max-width:390px){
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip{grid-template-columns:44px minmax(0,1fr) 44px 12px}
}
@media(min-width:851px) and (max-width:1100px){
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-route{flex-wrap:wrap}
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-origin,
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-destination{flex:0 0 auto;max-width:100%}
}
/* Final spacing and contrast adjustments for the homepage rail only. */
.premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-meta{text-align:left}
.premium-design .hero-grid.tx-dashboard .tx-driver-promo{background-image:linear-gradient(90deg,rgba(2,18,45,.98),rgba(2,26,62,.68)),url('/trajexcar-hero-v2.jpg')}
@media(min-width:851px){
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip{min-height:56px;padding:6px 0;row-gap:0}
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip:first-child{padding-top:6px}
  .premium-design .hero-grid.tx-dashboard #real-trips .tx-compact-trip:last-child{padding-bottom:6px}
}
/* Upcoming departures below the hero. */
.premium-design .tx-upcoming{background:#fff;padding:42px 0 35px;color:#0b1736}
.premium-design .tx-upcoming-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:20px}
.premium-design .tx-upcoming-head h2{font-size:16px;line-height:1.2;margin:0 0 7px;font-weight:800}
.premium-design .tx-upcoming-head p{font-size:16px;line-height:1.55;color:#4b5870;margin:0}
.premium-design .tx-upcoming-head>a,.premium-design .tx-flow-links a{color:#123dda;font-size:15px;font-weight:650;text-decoration:none}
.premium-design .tx-upcoming-head>a{white-space:nowrap;padding-top:8px}
.premium-design .tx-upcoming-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
.premium-design .tx-upcoming-trip{display:grid;grid-template-columns:minmax(0,1fr) 64px 58px 16px;grid-template-rows:auto auto;align-items:baseline;column-gap:12px;row-gap:1px;min-width:0;padding:14px 8px;border-bottom:1px solid #eaf0f7;color:#0b1736;text-decoration:none;transition:background-color .18s ease}
.premium-design .tx-upcoming-trip:hover{background:#f7f9fd}
.premium-design .tx-upcoming-trip:focus-visible,.premium-design .tx-upcoming-more:focus-visible,.premium-design .tx-upcoming-head a:focus-visible,.premium-design .tx-flow-links a:focus-visible{outline:3px solid #2868db;outline-offset:2px;border-radius:6px}
.premium-design .tx-upcoming-route{grid-column:1;grid-row:1;min-width:0;font-size:16px;font-weight:700;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.premium-design .tx-upcoming-route .arrow{color:#1264d8}
.premium-design .tx-upcoming-hour{grid-column:2;grid-row:1;font-size:15px;font-weight:700;white-space:nowrap}
.premium-design .tx-upcoming-price{grid-column:3;grid-row:1;text-align:right;font-size:16px;font-weight:750;white-space:nowrap}
.premium-design .tx-upcoming-chevron{grid-column:4;grid-row:1/3;align-self:center;justify-self:end;color:#356bca;font-size:24px;line-height:1;transition:transform .18s ease}
.premium-design .tx-upcoming-trip:hover .tx-upcoming-chevron{transform:translateX(2px)}
.premium-design .tx-upcoming-meta{grid-column:1/4;grid-row:2;color:#4b5870;font-size:14px;line-height:1.45}
.premium-design .tx-upcoming-mobile-hour{display:none}
.premium-design .tx-upcoming-seats{color:#277047}
.premium-design .tx-upcoming-more{display:block;margin:22px auto 0;border:1px solid #d6e2f2;border-radius:10px;background:#fff;color:#123dda;padding:11px 18px;font:650 15px Inter,ui-sans-serif,system-ui,sans-serif;cursor:pointer}
.premium-design .tx-upcoming-more:hover{background:#f4f8ff}
.premium-design .tx-upcoming-more[hidden]{display:none}
.premium-design .tx-upcoming-empty{grid-column:1/-1;margin:0;color:#4b5870;font-size:16px;line-height:1.55}
.premium-design .tx-upcoming-empty a{color:#123dda;font-weight:650}
.premium-design .tx-flow-links{display:flex;gap:24px;justify-content:center;padding:0 0 24px}
@media(max-width:850px){
  .premium-design .tx-upcoming{padding:28px 0 25px}
  .premium-design .tx-upcoming-list{grid-template-columns:1fr}
  .premium-design .tx-upcoming-trip{padding:12px 4px}
  .premium-design .tx-flow-links{flex-wrap:wrap;gap:10px 22px}
}
@media(max-width:600px){
  .premium-design .tx-upcoming-head{display:block;margin-bottom:12px}
  .premium-design .tx-upcoming-head h2{font-size:16px}
  .premium-design .tx-upcoming-head p{font-size:15px}
  .premium-design .tx-upcoming-head>a{display:inline-block;padding-top:9px}
  .premium-design .tx-upcoming-trip{grid-template-columns:minmax(0,1fr) 54px 14px;column-gap:8px}
  .premium-design .tx-upcoming-route{font-size:15px}
  .premium-design .tx-upcoming-hour{display:none}
  .premium-design .tx-upcoming-price{grid-column:2;font-size:15px}
  .premium-design .tx-upcoming-chevron{grid-column:3}
  .premium-design .tx-upcoming-meta{grid-column:1/3;font-size:13px}
  .premium-design .tx-upcoming-mobile-hour{display:inline}
  .premium-design .tx-flow-links{justify-content:flex-start;padding-bottom:18px}
}
/* Mobile finish: tighter upcoming rows and unobstructed support controls. */
@media(max-width:600px){
  .premium-design .tx-upcoming{padding-top:23px}
  .premium-design .tx-upcoming-head{margin-bottom:8px}
  .premium-design .tx-upcoming-head>a{padding-top:6px}
  .premium-design .tx-upcoming-trip{padding-top:9px;padding-bottom:9px;min-height:56px}
  .premium-design .support-fab-group{position:static;right:auto;bottom:auto;width:max-content;max-width:calc(100% - 20px);margin:12px 10px 0 auto}
  .premium-design{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
}
