/* ============================================================================
   BB Taxi — styles for the PHP site: shared header bits, the real-fleet
   gallery on the home page, and the booking / rates / thank-you / 404 pages.
   Loaded after site.css and themes.css.
   ============================================================================ */

.skip { position: fixed; left: 8px; top: 8px; z-index: 100; padding: 10px 16px; border-radius: 8px; background: #003580; color: #fff; font-weight: 700; transform: translateY(-200%); }
.skip:focus { transform: none; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
[hidden] { display: none !important; }

/* ---------- Header phone ---------- */
.top-phone { display: none; align-items: center; gap: 7px; font-size: 14px; font-weight: 700; color: #003580; white-space: nowrap; }
.top-phone .icon { width: 17px; height: 17px; color: #006ce4; }
@media (min-width: 1280px) { .top-phone { display: inline-flex; } }
.nav a[aria-current="page"] { color: #003580; font-weight: 700; }

/* ---------- Home: cards are links now ---------- */
a.car { color: inherit; text-decoration: none; }
.car-go { display: inline-flex; }
.alt .alt-form {
  border: 1.5px solid #003580;
  background: #fff;
  color: #003580;
  box-shadow: none;
}
.alt .alt-form .icon { color: #006ce4; }
.alt .alt-form:hover { background: #f1f6fd; }
.board-note a { color: #006ce4; font-weight: 600; }
.board-wrap:not(.all) tr.row.extra { display: none; }
.board-wrap:not(.all) tr.row:nth-child(n + 6):not(.extra):not([hidden]) { display: table-row; }
@media (max-width: 820px) {
  .board-wrap:not(.all) tr.row:nth-child(n + 6):not(.extra):not([hidden]) { display: grid; }
  .dock-book { background: #febb02; color: #001f44 !important; }
  .dock-book .icon { width: 20px; height: 20px; }
}

/* ---------- Home: real fleet gallery ---------- */
.real-fleet { background: linear-gradient(180deg, #fff 0%, #f6f9fd 100%); }
.rf-nav { display: flex; gap: 8px; align-self: flex-end; }
.rf-btn {
  display: grid; place-items: center;
  width: 46px; height: 46px;
  border: 1px solid #dbe4ef; border-radius: 50%;
  background: #fff; color: #003580;
  transition: background .15s, border-color .15s;
}
.rf-btn:hover { border-color: #003580; background: #f1f6fd; }
.rf-btn[data-dir="-1"] .icon { transform: rotate(180deg); }
.rf-row {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 48px) / 4);
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  padding: 4px 2px 6px;
}
.rf-row::-webkit-scrollbar { display: none; }
.rf-card {
  display: grid;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
  text-align: left;
  scroll-snap-align: start;
  cursor: zoom-in;
  box-shadow: 0 14px 30px -22px #0b1f3a80;
  transition: transform .25s ease, box-shadow .25s ease;
}
.rf-pic { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; background: #e2e8f0; }
.rf-pic img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.rf-card:hover { transform: translateY(-3px); box-shadow: 0 22px 40px -22px #0b1f3a99; }
.rf-card:hover img { transform: scale(1.04); }
.rf-card:focus-visible { outline: 3px solid #febb02; outline-offset: 3px; }
.rf-type, .rf-real {
  position: absolute; top: 12px; z-index: 1;
  display: inline-flex; align-items: center; gap: 5px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 11px; font-weight: 800; letter-spacing: .08em;
  box-shadow: 0 4px 12px -6px #0006;
}
.rf-type { left: 12px; background: #febb02; color: #001f44; text-transform: uppercase; }
.rf-real { right: 12px; background: #ffffffeb; color: #003580; letter-spacing: .02em; font-weight: 700; }
.rf-real .icon { width: 13px; height: 13px; color: #16a34a; stroke-width: 3; }
.rf-cap { display: grid; gap: 2px; padding: 14px 16px 16px; }
.rf-cap b { font-size: 16px; font-weight: 800; line-height: 1.25; color: #0f2747; }
.rf-cap small { font-size: 13px; color: #64748b; }
.rf-progress { display: none; }
@media (max-width: 820px) {
  .rf-nav { display: none; }
  .rf-row { grid-auto-columns: 66%; gap: 12px; margin-inline: calc(var(--gut) * -1); padding-inline: var(--gut); scroll-padding-inline: var(--gut); }
  .rf-cap { padding: 12px 14px 14px; }
  .rf-cap b { font-size: 15px; }
  .rf-progress { display: block; }
}

/* ---------- Sub-page hero band ---------- */
.page-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 34px 0 92px;
  color: #fff;
  text-align: center;
}
.page-hero::before {
  content: "";
  position: absolute; inset: 0; z-index: -1;
  background:
    radial-gradient(120% 90% at 85% 0%, #006ce455 0%, transparent 60%),
    linear-gradient(180deg, #001f44f2 0%, #003580e6 100%),
    url("../../images/pattaya-airport-hero.webp") center 30% / cover no-repeat;
}
.page-hero .wrap { display: flex; flex-direction: column; align-items: center; }
.page-hero h1 {
  margin-top: 14px;
  font-size: clamp(28px, 3.6vw, 46px);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #fff;
}
.page-hero h1 span { color: #febb02; }
.page-sub-lead { max-width: 640px; margin-top: 12px; font-size: 17px; line-height: 1.6; color: #c3d4ea; }
.crumb { display: flex; align-items: center; gap: 6px; margin-bottom: 14px; font-size: 13px; color: #c3d4ea; }
.crumb a { color: #fff; font-weight: 600; }
.crumb a:hover { text-decoration: underline; }
.crumb .icon { width: 13px; height: 13px; opacity: .7; }
.page-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 18px; list-style: none; padding: 0; }
.page-chips li { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border: 1px solid #ffffff2e; border-radius: 999px; background: #ffffff14; font-size: 13px; font-weight: 600; }
.page-chips .icon { width: 15px; height: 15px; color: #febb02; stroke-width: 3; }
@media (max-width: 820px) {
  .page-hero { padding: 22px 0 70px; }
  .page-hero h1 { font-size: clamp(26px, 7.6vw, 32px); }
  .page-sub-lead { font-size: 15px; }
  .page-chips li { font-size: 12px; padding: 5px 10px; }
}

/* ---------- Form fields (booking) ---------- */
.fld { display: grid; gap: 6px; min-width: 0; }
.fld > span { font-size: 13px; font-weight: 700; color: #334155; }
.fld em { font-style: normal; color: #dc2626; }
.fld small { font-weight: 500; color: #94a3b8; }
.fld input, .fld select, .fld textarea {
  width: 100%;
  min-width: 0;
  min-height: 50px;
  padding: 12px 14px;
  border: 1.5px solid #dbe4ef;
  border-radius: 12px;
  background: #fff;
  font: 500 16px/1.4 var(--body);
  color: #0f2747;
  transition: border-color .15s, box-shadow .15s;
}
.fld textarea { resize: vertical; min-height: 90px; }
.fld input:focus, .fld select:focus, .fld textarea:focus { outline: none; border-color: #006ce4; box-shadow: 0 0 0 4px #006ce41f; }
.fld input:user-invalid, .fld select:user-invalid { border-color: #dc2626; }
.fld input::placeholder, .fld textarea::placeholder { color: #94a3b8; }

/* ---------- Booking page ---------- */
.bk { position: relative; z-index: 2; margin-top: -64px; padding-bottom: 80px; }
.bk-grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; align-items: start; }
.bk-card {
  display: grid; gap: 26px;
  padding: 30px;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 24px 50px -24px #001f4473, 0 2px 6px #001f4414;
}
.bk-card fieldset { display: grid; gap: 14px; margin: 0; padding: 0; border: 0; min-width: 0; }
.bk-card legend { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; font-size: 18px; font-weight: 800; color: #0f2747; }
.bk-card legend span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #003580; color: #fff; font-size: 14px; }
.bk-route { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.bk-swap {
  position: absolute; left: 50%; bottom: 7px; z-index: 1;
  display: grid; place-items: center;
  width: 36px; height: 36px; transform: translateX(-50%) rotate(90deg);
  border: 1.5px solid #dbe4ef; border-radius: 50%; background: #fff; color: #003580;
}
.bk-swap:hover { border-color: #003580; }
.bk-swap .icon { width: 17px; height: 17px; }
.bk-row2 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.bk-row3 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.2fr); gap: 14px; }
.bk-cars { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.bk-car { position: relative; cursor: pointer; }
.bk-car input { position: absolute; opacity: 0; }
.bk-car-in {
  display: grid; justify-items: center; gap: 2px;
  height: 100%;
  padding: 10px 8px 12px;
  border: 1.5px solid #dbe4ef; border-radius: 14px;
  background: #fff; text-align: center;
  transition: border-color .15s, box-shadow .15s, background .15s;
}
.bk-car-in img { width: 100%; max-width: 130px; height: 70px; object-fit: contain; }
.bk-car-in b { font-size: 15px; color: #0f2747; }
.bk-car-in small { font-size: 11.5px; line-height: 1.35; color: #64748b; }
.bk-car-price { margin-top: 4px; font-style: normal; font-size: 15px; font-weight: 800; color: #006ce4; min-height: 1em; }
.bk-car:hover .bk-car-in { border-color: #94b4dd; }
.bk-car input:checked + .bk-car-in { border-color: #003580; background: #f1f6fd; box-shadow: 0 0 0 3px #0035801f; }
.bk-car input:focus-visible + .bk-car-in { outline: 3px solid #febb02; outline-offset: 2px; }
.bk-submit { width: 100%; grid-column: auto; grid-row: auto; }
.bk-card .fnote { justify-content: center; margin-top: -14px; }
.bk-error { padding: 14px 16px; border: 1px solid #fecaca; border-radius: 12px; background: #fef2f2; color: #991b1b; font-size: 14px; }
.bk-error ul { margin: 6px 0 0 18px; }

.bk-side { position: sticky; top: 96px; display: grid; gap: 16px; }
.bk-quote {
  padding: 22px;
  border-radius: 20px;
  background: linear-gradient(160deg, #003580, #001f44);
  color: #fff;
  box-shadow: 0 24px 50px -24px #001f4499;
}
.bk-quote small { font-size: 11px; font-weight: 800; letter-spacing: .14em; color: #febb02; }
.bk-quote strong { display: block; margin-top: 6px; font-size: 40px; font-weight: 800; line-height: 1; letter-spacing: -.02em; }
.bk-quote.has-price strong { color: #febb02; }
.bk-quote > span { display: block; margin-top: 8px; font-size: 14px; line-height: 1.45; color: #c3d4ea; }
.bk-quote ul { display: grid; gap: 8px; margin-top: 16px; padding-top: 16px; border-top: 1px solid #ffffff24; list-style: none; }
.bk-quote li { display: flex; gap: 8px; font-size: 14px; color: #e2ecf8; }
.bk-quote li .icon { flex: none; width: 17px; height: 17px; color: #22c55e; stroke-width: 3; }
.bk-direct { display: grid; gap: 10px; padding: 20px; border: 1px solid #e2e8f0; border-radius: 20px; background: #fff; }
.bk-direct b { font-size: 15px; color: #0f2747; }
.bkd-wa, .bkd-line, .bkd-call, .bkd-mail {
  display: flex; align-items: center; justify-content: center; gap: 9px;
  min-height: 48px; padding: 0 14px;
  border-radius: 12px;
  font-size: 15px; font-weight: 700; text-decoration: none;
  transition: transform .15s, background .15s;
}
.bkd-wa { background: var(--wa-deep, #128c4a); color: #fff; }
.bkd-wa .bi { width: 22px; height: 22px; color: var(--wa-deep, #128c4a); }
.bkd-line { background: #06c755; color: #fff; }
.bkd-line .bi { --bi-bg: #fff; color: #06c755; width: 22px; height: 22px; }
.bkd-call { background: #003580; color: #fff; }
.bkd-call .icon { color: #febb02; }
.bkd-mail { border: 1.5px solid #dbe4ef; color: #003580; font-size: 14px; }
.bkd-mail .icon { color: #006ce4; }
.bkd-wa:hover, .bkd-line:hover, .bkd-call:hover, .bkd-mail:hover { transform: translateY(-1px); }

@media (max-width: 980px) {
  .bk-grid { grid-template-columns: 1fr; }
  .bk-side { position: static; }
}
@media (max-width: 820px) {
  .bk { margin-top: -50px; padding-bottom: 40px; }
  .bk-card { padding: 20px 16px; gap: 22px; border-radius: 18px; }
  .bk-route, .bk-row3 { grid-template-columns: 1fr; gap: 12px; }
  .bk-route .bk-swap { left: auto; right: 14px; top: 50%; bottom: auto; transform: translateY(-50%); }
  .bk-row3 .fld:last-child { grid-column: 1 / -1; }
  .bk-row3 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .bk-route .fld input { padding-right: 52px; }
  .fld input[type=date], .fld input[type=time] { padding-inline: 10px; font-size: 15px; }
  .bk-cars { grid-template-columns: 1fr 1fr; gap: 8px; }
  .bk-car-in img { height: 56px; }
  .bk-quote strong { font-size: 34px; }
}

/* ---------- Thank-you page ---------- */
.ty-check { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: #22c55e; box-shadow: 0 0 0 8px #22c55e33; }
.ty-check .icon { width: 32px; height: 32px; color: #fff; stroke-width: 3; }
.ty-wrap { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 24px; align-items: start; }
.ty-card { overflow: hidden; border-radius: 20px; background: #fff; box-shadow: 0 24px 50px -24px #001f4473, 0 2px 6px #001f4414; }
.ty-head { padding: 20px 24px; background: #f1f6fd; border-bottom: 1px dashed #c7d6ea; }
.ty-head small { font-size: 11px; font-weight: 800; letter-spacing: .14em; color: #64748b; }
.ty-head strong { display: block; margin-top: 4px; font-size: 26px; font-weight: 800; color: #003580; letter-spacing: .02em; }
.ty-card dl { display: grid; padding: 8px 24px 16px; }
.ty-card dl div { display: grid; grid-template-columns: 120px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid #eef2f7; }
.ty-card dt { font-size: 13px; font-weight: 700; color: #64748b; }
.ty-card dd { margin: 0; font-weight: 600; color: #0f2747; }
.ty-card .ty-fare { border-bottom: 0; }
.ty-card .ty-fare dd { font-size: 20px; font-weight: 800; color: #006ce4; }
.ty-next { display: grid; gap: 10px; padding: 24px; border-radius: 20px; background: #fff; border: 1px solid #e2e8f0; }
.ty-next h2 { font-size: 20px; font-weight: 800; color: #0f2747; }
.ty-next p { font-size: 15px; line-height: 1.6; color: #64748b; margin-bottom: 4px; }
.ty-home { margin-top: 6px; text-align: center; font-size: 14px; font-weight: 600; color: #006ce4; }
@media (max-width: 900px) {
  .ty-wrap { grid-template-columns: 1fr; }
  .ty-card dl div { grid-template-columns: 96px 1fr; }
}

/* ---------- Rates page ---------- */
.rt-search {
  display: flex; align-items: center; gap: 10px;
  width: min(560px, 100%);
  margin-top: 22px;
  padding: 0 16px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 16px 30px -18px #000;
}
.rt-search .icon { flex: none; width: 20px; height: 20px; color: #64748b; }
.rt-search input { flex: 1; min-width: 0; height: 54px; border: 0; outline: none; background: none; font: 500 16px var(--body); color: #0f2747; }
.rt-legend-sec { position: relative; z-index: 2; margin-top: -56px; padding-top: 0; }
.rt-legend { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.rt-car {
  display: grid; justify-items: center; gap: 2px;
  padding: 12px 10px 14px;
  border: 1.5px solid #e2e8f0; border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 30px -22px #001f4480;
  transition: border-color .15s, box-shadow .15s, transform .15s;
}
.rt-car img { width: 100%; max-width: 170px; height: 88px; object-fit: contain; }
.rt-car b { font-size: 17px; font-weight: 800; color: #0f2747; }
.rt-car small { font-size: 12.5px; color: #64748b; }
.rt-car:hover { transform: translateY(-2px); border-color: #94b4dd; }
.rt-car[aria-pressed="true"] { border-color: #003580; background: #f1f6fd; box-shadow: 0 0 0 3px #0035801f; }
.rt-hint { margin: 10px 0 26px; text-align: center; font-size: 13px; color: #64748b; }
.rt-board { display: grid; gap: 22px; }
.rt-group { overflow: hidden; border: 1px solid #e2e8f0; border-radius: 18px; background: #fff; box-shadow: 0 10px 28px -22px #001f4466; }
.rt-ghead { display: flex; align-items: center; gap: 14px; padding: 16px 20px; background: #f8fafc; border-bottom: 1px solid #e2e8f0; }
.rt-gicon { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border-radius: 12px; background: #003580; color: #febb02; }
.rt-ghead h2 { font-size: 18px; font-weight: 800; color: #0f2747; letter-spacing: -.01em; }
.rt-ghead small { font-size: 13px; color: #64748b; }
.rt-gcount { margin-left: auto; padding: 4px 10px; border-radius: 999px; background: #e8f0fb; font-size: 12px; font-weight: 700; color: #003580; white-space: nowrap; }
.rt-thead, .rt-row { display: grid; grid-template-columns: minmax(0, 2.3fr) 1.1fr repeat(4, minmax(0, .8fr)) 96px; gap: 8px; align-items: center; padding: 0 20px; }
.rt-thead { padding-top: 12px; padding-bottom: 8px; font-size: 12px; font-weight: 700; color: #64748b; letter-spacing: .04em; text-transform: uppercase; }
.rt-thead span[data-v] { text-align: center; }
.rt-thead i { display: block; font-style: normal; font-weight: 500; text-transform: none; letter-spacing: 0; color: #94a3b8; }
.rt-row { min-height: 72px; border-top: 1px solid #eef2f7; transition: background .15s; }
.rt-row:hover { background: #f8fbff; }
.rt-dest { display: grid; gap: 4px; justify-items: start; }
.rt-dest b { font-size: 15.5px; font-weight: 700; color: #0f2747; }
.rt-time { display: flex; align-items: center; gap: 5px; font-size: 13px; color: #64748b; }
.rt-time .icon { width: 14px; height: 14px; color: #94a3b8; }
.rt-price {
  display: grid; justify-items: center;
  padding: 8px 4px;
  border-radius: 10px;
  font-size: 16px; font-weight: 800; color: #003580;
  font-variant-numeric: tabular-nums;
  transition: background .15s, color .15s, opacity .15s;
}
.rt-price small { display: none; font-size: 10px; font-weight: 700; letter-spacing: .06em; color: #64748b; text-transform: uppercase; }
.rt-price:hover { background: #003580; color: #fff; }
.rt-price:hover small { color: #c3d4ea; }
.rt-price.na { font-size: 14px; color: #64748b; }
.rt-book {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  min-height: 40px; padding: 0 12px;
  border-radius: 10px;
  background: #febb02; color: #001f44;
  font-size: 14px; font-weight: 800;
}
.rt-book .icon { width: 16px; height: 16px; }
.rt-book:hover { background: #e0a800; }
.rt-board[data-focus] .rt-price { opacity: .35; }
.rt-board[data-focus=""] .rt-price { opacity: 1; }
.rt-board[data-focus="sedan"] .rt-price[data-v="sedan"],
.rt-board[data-focus="mpv"] .rt-price[data-v="mpv"],
.rt-board[data-focus="suv"] .rt-price[data-v="suv"],
.rt-board[data-focus="van"] .rt-price[data-v="van"] { opacity: 1; background: #fff6db; }
.rt-empty { padding: 26px; border: 1px dashed #c7d6ea; border-radius: 16px; text-align: center; color: #475569; }
.rt-empty a { color: #006ce4; font-weight: 700; }
.rt-board + .board-note { margin-top: 14px; text-align: center; }
.rt-incl { background: #f8fafc; }
.rt-incl .sec-head { justify-content: center; text-align: center; }
.rt-incl-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.rt-incl-card { padding: 24px; border-radius: 18px; background: #fff; border: 1px solid #e2e8f0; }
.rt-incl-card h3 { display: flex; align-items: center; gap: 10px; font-size: 18px; font-weight: 800; color: #0f2747; }
.rt-incl-card h3 .icon { width: 26px; height: 26px; padding: 5px; border-radius: 50%; stroke-width: 3; }
.rt-incl-card.is-yes h3 .icon { background: #dcfce7; color: #16a34a; }
.rt-incl-card.is-ask h3 .icon { background: #fff6db; color: #b45309; }
.rt-incl-card ul { display: grid; gap: 10px; margin-top: 14px; padding-left: 20px; color: #475569; font-size: 15px; line-height: 1.5; }
@media (max-width: 980px) {
  .rt-thead { display: none; }
  .rt-row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    padding: 14px 14px 14px;
  }
  .rt-dest { grid-column: 1 / 4; grid-row: 1; }
  .rt-book { grid-column: 4; grid-row: 1; justify-self: end; align-self: start; min-height: 38px; padding: 0 12px; }
  .rt-time { grid-column: 1 / -1; grid-row: 2; margin: -2px 0 4px; }
  .rt-price { grid-row: 3; background: #f8fafc; padding: 8px 2px; }
  .rt-price small { display: block; margin-bottom: 2px; }
  .rt-legend { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .rt-search input { height: 50px; font-size: 15px; }
  .rt-legend-sec { margin-top: -44px; }
  .rt-car img { height: 64px; }
  .rt-car b { font-size: 15px; }
  .rt-car small { font-size: 11px; }
  .rt-ghead { padding: 14px; gap: 10px; }
  .rt-gicon { width: 36px; height: 36px; }
  .rt-ghead h2 { font-size: 16px; }
  .rt-ghead small { display: none; }
  .rt-dest b { font-size: 15px; }
  .rt-time { font-size: 12px; }
  .rt-price { font-size: 14.5px; }
  .rt-incl-grid { grid-template-columns: 1fr; }
}

/* ---------- 404 ---------- */
.page-404 { padding: 80px 0 110px; }
.nf-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 26px; }
.nf-ghost { border: 1.5px solid #ffffff59; color: #fff; }
.nf-ghost:hover { background: #ffffff1a; }

/* Booking: vehicle as a plain dropdown (2026-11-10) */
.bk-rowcar { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
@media (max-width: 820px) {
  .bk-rowcar { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
  .bk-rowcar .fld:first-child { grid-column: 1 / -1; }
}

/* ---------- BB TAXI logo (2026-11-11): viewBox 199 x 56, sizes keep the old logo height ---------- */
.fleet-logo { width: 157px; }
.foot .fleet-logo { width: 166px; }
@media (max-width: 820px) {
  .fleet-logo { width: 136px; }
  .foot .fleet-logo { width: 157px; }
}
@media (max-width: 360px) {
  .fleet-logo { width: 128px; }
}
