.srbx-wrap{max-width:1180px;margin:0 auto;padding:20px 18px 60px;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#1e3040}.srbx-hero{background:linear-gradient(135deg,#0f7658 0%,#0c8c94 48%,#1e9ec9 100%);color:#fff;border-radius:22px;padding:34px 38px;box-shadow:0 18px 50px rgba(9,95,114,.18)}.srbx-brand{font-size:11px;letter-spacing:.16em;font-weight:900;opacity:.92}.srbx-hero h2{margin:8px 0 5px;font-size:38px;line-height:1.05}.srbx-hero p{margin:0;font-size:15px}.srbx-search-card{background:#fff;border-radius:22px;padding:22px 26px 16px;box-shadow:0 16px 48px rgba(27,59,75,.12);margin:-16px 20px 18px;position:relative;z-index:4}.srbx-tabs{display:flex;justify-content:center;margin-bottom:22px;border-radius:10px;overflow:hidden;border:1px solid #b8c9d0;width:max-content;margin-left:auto;margin-right:auto}.srbx-tab{border:0;background:#fff;padding:13px 26px;font-weight:900;letter-spacing:.04em;cursor:pointer;color:#253844}.srbx-tab+.srbx-tab{border-left:1px solid #b8c9d0}.srbx-tab.active{background:#159bd1;color:#fff}.srbx-main-grid{display:grid;grid-template-columns:1.1fr 28px 1.1fr .9fr .9fr .9fr .9fr;gap:16px;align-items:end}.srbx-location-block label,.srbx-compact-field label,.srbx-passenger-field label{display:block;font-size:12px;font-weight:900;letter-spacing:.05em;margin-bottom:6px;color:#203a49}.srbx-autocomplete{position:relative}.srbx-icon{position:absolute;left:0;top:12px;color:#7d8f99;font-size:24px}.srbx-autocomplete input{border:0;border-bottom:2px solid #b6c6cf;border-radius:0;padding:8px 8px 10px 26px;font-size:15px;width:100%;box-sizing:border-box}.srbx-autocomplete input:focus{outline:none;border-bottom-color:#159bd1}.srbx-compact-field input,.srbx-passenger-field select{width:100%;border:0;border-bottom:2px solid #b6c6cf;padding:8px 4px 10px;background:#fff;font-size:15px;box-sizing:border-box}.srbx-compact-field input:focus,.srbx-passenger-field select:focus{outline:none;border-bottom-color:#159bd1}.srbx-suggestions{position:absolute;z-index:50;left:0;right:0;top:45px;background:#fff;border:1px solid #d8e1e5;border-radius:12px;box-shadow:0 18px 38px rgba(20,43,58,.18);overflow-y:auto;overflow-x:hidden;max-height:280px;display:none;min-width:310px}.srbx-suggest{display:block;width:100%;text-align:left;background:#fff;border:0;border-bottom:1px solid #eef2f3;padding:14px 16px;cursor:pointer}.srbx-suggest:hover{background:#eef9fc}.srbx-suggest b{display:block;color:#1390bf;font-size:14px}.srbx-suggest small{display:block;color:#61717a;font-size:12px;margin-top:4px}.srbx-swap{width:28px;height:28px;border-radius:50%;border:0;background:#eef7fa;color:#159bd1;font-size:22px;cursor:pointer;margin-bottom:4px}.srbx-return-date-field,.srbx-return-time-field{transition:opacity .2s}.srbx-explore{display:block;margin:20px auto -7px;border:0;background:#f36a1f;color:#fff;padding:15px 40px;border-radius:6px;font-weight:900;font-size:17px;letter-spacing:.03em;box-shadow:0 10px 24px rgba(243,106,31,.22);cursor:pointer}.srbx-explore:disabled{opacity:.6;cursor:not-allowed}.srbx-status{text-align:center;font-size:12px;min-height:18px;margin-top:12px;color:#a44836}.srbx-status.ok{color:#167447}.srbx-popular-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:15px 20px 22px}.srbx-popular-title{font-size:12px;font-weight:900;color:#6a7c85;letter-spacing:.06em}.srbx-city-chip{border:1px solid #d0e2e9;background:#fff;color:#1390bf;border-radius:999px;padding:8px 14px;font-weight:800;cursor:pointer}.srbx-city-chip:hover{background:#eef9fc}.srbx-results{margin-top:18px}.srbx-trip-summary{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;background:#f1f9fc;border:1px solid #d6e8ef;border-radius:14px;padding:16px;margin-bottom:14px}.srbx-trip-summary span{display:block;color:#6b7d87;font-size:11px;text-transform:uppercase}.srbx-trip-summary strong{display:block;margin-top:4px;font-size:15px}.srbx-package-wrap{background:#f7fbf8;border:1px solid #d5eadc;border-radius:16px;padding:15px;margin-bottom:16px}.srbx-section-title{font-weight:900;color:#0d7656;font-size:13px;margin-bottom:10px}.srbx-package-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.srbx-package-card{background:#fff;border:1px solid #d5eadc;border-radius:12px;padding:14px;text-align:left;display:flex;justify-content:space-between;gap:10px;cursor:pointer}.srbx-package-card.selected,.srbx-package-card:hover{border-color:#0d7656;background:#effaf4}.srbx-package-card b{display:block;color:#21423a}.srbx-package-card span{display:block;color:#6d7e84;font-size:11px;margin-top:3px}.srbx-package-card strong{color:#0d7656;white-space:nowrap}.srbx-results-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:20px 0 12px}.srbx-results-head h3{margin:0;font-size:22px}.srbx-results-head p{margin:4px 0 0;color:#6c7b84;font-size:13px}.srbx-filter{display:flex;gap:8px;align-items:center}.srbx-filter label{font-size:12px;font-weight:800}.srbx-filter select{border:1px solid #c7d8df;border-radius:10px;padding:8px 12px;background:#fff}.srbx-vehicle-list{display:flex;flex-direction:column;gap:12px}.srbx-car{display:grid;grid-template-columns:160px 1fr 160px;gap:18px;align-items:center;background:#fff;border:1px solid #ccd8dd;border-radius:15px;overflow:hidden;box-shadow:0 4px 12px rgba(27,60,74,.05)}.srbx-car.selected{border-color:#159bd1;box-shadow:0 0 0 2px rgba(21,155,209,.12)}.srbx-car-img{height:100%;min-height:160px;background:linear-gradient(135deg,#eef7fa,#f7f7f7);display:flex;align-items:center;justify-content:center}.srbx-car-icon{font-size:62px}.srbx-car-main{padding:18px 0}.srbx-car-main h4{margin:0;font-size:20px}.srbx-car-sub{color:#60737c;font-size:12px;margin-top:5px}.srbx-car-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.srbx-car-tags span{font-size:11px;color:#4c6871;background:#f3f8fa;border-radius:999px;padding:6px 9px}.srbx-car-rate{font-size:20px;font-weight:900;color:#1590bf;margin-top:10px}.srbx-select-car{background:#f36a1f;color:#fff;border:0;padding:11px 18px;border-radius:5px;font-weight:900;margin-top:12px;cursor:pointer}.srbx-car>div:last-child{padding-right:20px;text-align:right}.srbx-empty{padding:18px;border:1px dashed #d2dee3;border-radius:14px;background:#fbfdfe;text-align:center;color:#687c85}.srbx-route-area{display:grid;grid-template-columns:1fr;gap:18px;margin-top:20px}.srbx-route-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.srbx-route-metrics div{background:#f8fbfc;border:1px solid #dce7ec;border-radius:12px;padding:12px}.srbx-route-metrics span{display:block;font-size:10px;color:#6b7c84;font-weight:800}.srbx-route-metrics b{display:block;font-size:18px;margin-top:3px}.srbx-map{height:420px;border-radius:15px;overflow:hidden;border:1px solid #d7e0e5}.srbx-fare{background:#fff;border:1px solid #ccd8dd;border-radius:15px;padding:18px;box-shadow:0 4px 12px rgba(27,60,74,.05)}.srbx-fare h3{margin-top:0}.srbx-line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #eef2f3}.srbx-total{display:flex;justify-content:space-between;align-items:end;padding:14px 0;border-top:2px solid #203a49;margin-top:8px}.srbx-total strong{font-size:27px;color:#1590bf}.srbx-advance{background:#eef9fc;border-radius:12px;padding:13px;margin-top:10px}.srbx-advance span{display:block;font-size:12px;font-weight:800}.srbx-advance strong{display:block;font-size:24px;color:#0d7656;margin-top:3px}.srbx-advance small{display:block;color:#61737d;margin-top:6px;line-height:1.45}.srbx-contact{margin-top:15px}.srbx-contact h4{margin:0 0 9px}.srbx-grid3{display:grid;grid-template-columns:1fr;gap:8px}.srbx-grid3 label{display:block;font-size:11px;font-weight:800;margin-bottom:4px}.srbx-grid3 input{width:100%;box-sizing:border-box;border:1px solid #cbd9df;border-radius:9px;padding:10px;background:#fff}.srbx-pay{width:100%;margin-top:15px;background:#1590bf;color:#fff;border:0;border-radius:7px;padding:13px;font-weight:900;cursor:pointer}.srbx-pay:disabled{opacity:.55;cursor:not-allowed}.srbx-note{margin-top:14px;padding:12px;background:#fff9df;border:1px solid #f0e0a6;border-radius:10px;color:#6d5d20;font-size:11px;line-height:1.5}.srbx-success{margin-top:10px;padding:12px;border-radius:10px;background:#e6f7ec;color:#18673e;font-weight:800}@media(max-width:1000px){.srbx-main-grid{grid-template-columns:1fr 28px 1fr}.srbx-compact-field:nth-of-type(n){grid-column:auto}.srbx-route-area{grid-template-columns:1fr}.srbx-package-list{grid-template-columns:1fr 1fr}.srbx-car{grid-template-columns:120px 1fr}.srbx-car>div:last-child{grid-column:2;padding:0 18px 18px;text-align:left}}@media(max-width:700px){.srbx-wrap{padding:10px}.srbx-hero h2{font-size:29px}.srbx-search-card{margin:-10px 0 16px;padding:14px}.srbx-tabs{width:100%;overflow:auto}.srbx-tab{padding:11px 16px;white-space:nowrap}.srbx-main-grid{grid-template-columns:1fr;gap:12px}.srbx-swap{display:none}.srbx-package-list{grid-template-columns:1fr}.srbx-trip-summary{grid-template-columns:1fr 1fr}.srbx-route-metrics{grid-template-columns:1fr 1fr}.srbx-car{grid-template-columns:1fr}.srbx-car-img{min-height:120px}.srbx-car>div:last-child{grid-column:1;padding:0 18px 18px}.srbx-car-main{padding:16px 18px}.srbx-results-head{align-items:start;flex-direction:column}}

/* Vehicle gallery */
.srbx-car-gallery{background:#eef6f8;padding:12px;display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:180px}.srbx-car-main-image{height:150px;background:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.srbx-car-main-image img{width:100%;height:100%;object-fit:contain}.srbx-car-thumbs{display:flex;gap:8px;justify-content:center}.srbx-car-thumb{width:52px;height:38px;padding:0;border:1px solid #ccdfe5;border-radius:6px;background:#fff;overflow:hidden;cursor:pointer}.srbx-car-thumb.active{border:2px solid #159bd1}.srbx-car-thumb img{width:100%;height:100%;object-fit:cover}@media(max-width:1000px){.srbx-car{grid-template-columns:150px 1fr 150px}.srbx-car-gallery{grid-column:1}.srbx-car-main-image{height:120px}}@media(max-width:700px){.srbx-car-gallery{padding:10px}.srbx-car-main-image{height:180px}}

.srb370-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;align-items:end}.srb370-field label{display:block;font-size:12px;font-weight:900;letter-spacing:.05em;color:#203a49;margin-bottom:6px}.srb370-field input,.srb370-field select{width:100%;box-sizing:border-box;border:0;border-bottom:2px solid #b6c6cf;padding:9px 6px 10px;background:#fff;font-size:14px}.srb370-field input:focus,.srb370-field select:focus{outline:none;border-bottom-color:#159bd1}.srb370-auto{position:relative}.srb370-popular{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 20px}.srb370-pop-title{font-size:12px;font-weight:900;letter-spacing:.06em;color:#6a7c85;margin-right:4px}.srb370-search-card{position:relative;z-index:10}.srb370-grid .srbx-suggestions{top:42px;min-width:0;max-width:100%}.srb370-results .srbx-trip-summary{margin-top:10px}.srb370-field input::placeholder{color:#8b989e}.srb370-route-area.hidden{display:none}.srb370-local-note{padding:10px 12px;background:#f2fbf8;border:1px solid #d3eee1;border-radius:10px;margin-top:10px;color:#366356;font-size:12px}
@media(max-width:1100px){.srb370-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.intercity-grid .srb370-field:nth-child(2){grid-column:auto}.srb370-grid .srbx-swap{display:none}}
@media(max-width:700px){.srb370-grid{grid-template-columns:1fr}.srb370-grid .srbx-swap{display:none}.srbx-search-card{padding:16px}.srbx-hero{padding:26px 24px}.srbx-hero h2{font-size:30px}.srbx-tabs{width:100%;overflow:auto}.srbx-tab{white-space:nowrap;padding:11px 15px}.srbx-trip-summary{grid-template-columns:1fr 1fr}.srb370-popular{margin:8px 0 15px}}
.srbx-terms{margin-top:12px;background:#f7fafc;border:1px solid #dbe7ef;border-radius:12px;padding:14px 16px;line-height:1.55}.srbx-terms strong{display:block;margin-bottom:6px}.srbx-package-price-note{font-size:12px;margin-top:5px;opacity:.8}

.srbx-car.selected{outline:2px solid #1295d0;box-shadow:0 10px 30px rgba(18,149,208,.16)} .srbx-fare-highlight{outline:2px solid #1295d0;box-shadow:0 10px 30px rgba(18,149,208,.12);transition:.2s} .srbx-select-car{cursor:pointer}/* 3.7.6 local-package presentation */
.srb370-local-fare-only > div:first-child{display:none!important}.srb370-local-fare-only{grid-template-columns:1fr!important}.srbx-package-only-tags span{background:#effaf4;color:#28644e}
.srbx-local-fare-only{grid-template-columns:1fr!important}.srbx-local-fare-only>div:first-child{display:none!important}.srbx-package-only-tags span{background:#effaf4;color:#28644e}

.srbx-package-pick{background:#fff;border:1px solid #d7e4e8;border-radius:14px;padding:14px;margin:0 0 14px}
.srbx-package-pick label,.srbx-vehicle-picker>label{display:block;font-size:12px;font-weight:900;color:#203a49;margin-bottom:7px;letter-spacing:.04em}
.srbx-package-pick select,.srbx-vehicle-picker select{width:100%;box-sizing:border-box;border:1px solid #c8d8df;border-radius:10px;padding:11px 12px;background:#fff;font-size:14px}
.srbx-package-info{margin-top:8px;color:#5f747d;font-size:12px;line-height:1.45}
.srbx-vehicle-picker{background:#fff;border:1px solid #ccd8dd;border-radius:15px;padding:16px;display:grid;grid-template-columns:1.1fr 1.2fr;gap:14px;align-items:center}
.srbx-vehicle-picker .srbx-package-selected-gallery{grid-column:1;grid-row:2}.srbx-picked-vehicle{grid-column:2;grid-row:2}.srbx-picked-vehicle h4{margin:0;font-size:20px}.srbx-picked-vehicle p{color:#60737c;font-size:12px}.srbx-picked-vehicle .srbx-select-car{margin-top:12px}
.srbx-package-selected-gallery .srbx-car-main-image{height:170px;border:1px solid #e1eaed}.srbx-package-selected-gallery .srbx-car-main-image img{width:100%;height:100%;object-fit:contain}.srbx-package-selected-gallery .srbx-car-thumbs{display:flex;gap:8px;margin-top:8px}.srbx-package-selected-gallery .srbx-car-thumb{width:56px;height:42px}.srbx-package-only-tags{margin:8px 0}.srbx-package-only-tags span{background:#eef9f4;color:#27654e;border-radius:999px;padding:6px 9px;font-size:11px}
@media(max-width:700px){.srbx-vehicle-picker{grid-template-columns:1fr}.srbx-vehicle-picker .srbx-package-selected-gallery,.srbx-picked-vehicle{grid-column:1;grid-row:auto}}

.srbx-nearest-note{margin:0 0 12px;padding:11px 13px;border:1px solid #f0d99a;background:#fff8df;border-radius:10px;color:#6d5d20;font-size:12px;font-weight:800}.srbx-capacity-note{margin-top:8px;color:#9b4b38;font-size:11px;font-weight:700}.srbx-select-car:disabled{opacity:.55;cursor:not-allowed}.srbx-package-only-tags{min-height:26px}

/* =========================================================
   3.9.7 UI polish - responsive/mobile only, no booking logic
   ========================================================= */
body:has(#srb370-app){
  background:#f3f7fa;
}
body:has(#srb370-app) .wp-site-blocks{
  background:#f3f7fa;
}
body:has(#srb370-app) header{
  background:rgba(255,255,255,.98);
  border-bottom:1px solid #e2ebef;
}

/* Keep the WordPress site title compact on phones. */
body:has(#srb370-app) .wp-block-site-title,
body:has(#srb370-app) .wp-block-site-title a,
body:has(#srb370-app) .wp-block-site-title__link{
  white-space:nowrap !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  max-width:none !important;
}
body:has(#srb370-app) .wp-block-site-title{
  width:max-content;
  flex:0 1 auto;
}

/* Give the booking area a softer premium canvas. */
.srbx-wrap{
  background:linear-gradient(180deg,#f3f7fa 0%,#edf5f8 100%);
  border-radius:26px;
}
.srbx-hero{
  box-shadow:0 18px 42px rgba(21,93,115,.16);
}
.srbx-search-card{
  border:1px solid #e3edf1;
  box-shadow:0 18px 44px rgba(27,59,75,.13);
}

/* Four booking modes: equal-width and fully visible on mobile. */
@media(max-width:700px){
  .srbx-wrap{
    padding:10px 10px 42px;
    border-radius:0;
    background:linear-gradient(180deg,#f3f7fa 0%,#edf5f8 100%);
  }
  .srbx-hero{
    border-radius:22px;
    padding:25px 22px 28px;
  }
  .srbx-hero h2{
    font-size:30px;
    line-height:1.04;
  }
  .srbx-hero p{
    font-size:14px;
    line-height:1.5;
    max-width:30em;
  }
  .srbx-search-card{
    margin:-10px 0 16px;
    padding:13px 12px 16px;
    border-radius:22px;
  }
  .srbx-tabs{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    width:100%;
    overflow:hidden;
    margin:0 0 18px;
    border-radius:12px;
    box-sizing:border-box;
  }
  .srbx-tab,
  .srbx-tabs .srbx-tab{
    min-width:0;
    width:100%;
    box-sizing:border-box;
    padding:11px 4px;
    font-size:11px;
    line-height:1.1;
    letter-spacing:0;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:clip;
  }
  .srbx-tab+.srbx-tab{
    border-left:1px solid #b8c9d0;
  }
  .srb370-grid{gap:11px}
  .srbx-main-grid{gap:11px}
  .srbx-explore{
    width:100%;
    margin:18px 0 -2px;
    padding:14px 18px;
    border-radius:10px;
  }
}

@media(max-width:380px){
  .srbx-tab,
  .srbx-tabs .srbx-tab{
    font-size:10px;
    padding-left:2px;
    padding-right:2px;
  }
  body:has(#srb370-app) .wp-block-site-title,
  body:has(#srb370-app) .wp-block-site-title a,
  body:has(#srb370-app) .wp-block-site-title__link{
    font-size:18px !important;
    line-height:1.05 !important;
  }
}

/* Desktop: make the booking card/tab row feel more balanced. */
@media(min-width:701px){
  .srbx-tabs{
    box-shadow:0 2px 8px rgba(27,59,75,.05);
  }
}


/* =========================================================
   3.9.10 COMPLETE RESPONSIVE + PREMIUM UI
   Final UI layer: keeps booking logic unchanged.
   ========================================================= */
:root{
  --srt10-navy:#063b5b;
  --srt10-navy2:#0a5478;
  --srt10-teal:#0798ae;
  --srt10-teal2:#19b7c5;
  --srt10-orange:#f46b20;
  --srt10-ink:#17384c;
  --srt10-muted:#607784;
}

/* Premium desktop booking shell */
.srbx-wrap{
  max-width:1240px;
  margin:0 auto;
  padding:24px 22px 60px;
  background:linear-gradient(180deg,#f7fbfd 0%,#edf6f9 100%);
  color:var(--srt10-ink);
  border-radius:28px;
}
.srbx-hero{
  background:linear-gradient(120deg,var(--srt10-navy) 0%,var(--srt10-navy2) 52%,var(--srt10-teal) 100%);
  border-radius:26px;
  padding:42px 46px 48px;
  box-shadow:0 20px 50px rgba(6,59,91,.20);
}
.srbx-hero h2{
  font-size:clamp(36px,4vw,52px);
  line-height:1.05;
  margin:9px 0 8px;
  letter-spacing:-.02em;
}
.srbx-hero p{font-size:16px;line-height:1.6}
.srbx-search-card{
  background:#fff;
  border:1px solid #d9e7ed;
  border-radius:24px;
  padding:25px 28px 18px;
  margin:-26px 28px 18px;
  box-shadow:0 22px 55px rgba(18,60,80,.16);
}

/* Desktop tabs */
.srbx-tabs{
  display:flex;
  width:max-content;
  max-width:100%;
  margin:0 auto 24px;
  border:1px solid #c6d8e0;
  border-radius:13px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 4px 12px rgba(18,60,80,.06);
}
.srbx-tab{
  min-height:48px;
  padding:13px 28px;
  border:0;
  background:#fff;
  color:#234354;
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.045em;
  white-space:nowrap;
}
.srbx-tab+.srbx-tab{border-left:1px solid #c6d8e0}
.srbx-tab:hover{background:#eef8fb;color:#086e8a}
.srbx-tab.active{
  background:linear-gradient(135deg,#0798b3,#18a9c6);
  color:#fff;
}

.srbx-explore{
  min-width:190px;
  padding:15px 30px;
  border-radius:11px;
  background:linear-gradient(135deg,var(--srt10-orange),#ff812f);
  box-shadow:0 12px 26px rgba(244,107,32,.24);
}
.srbx-city-chip{
  padding:9px 14px;
  border-radius:999px;
  border:1px solid #cfe1e8;
  background:#fff;
  color:#087fa1;
  font-size:12px;
  font-weight:800;
  box-shadow:0 2px 7px rgba(18,60,80,.04);
}

/* Final mobile layout: 2 x 2 tabs so EVERY mode is fully readable. */
@media(max-width:700px){
  .srbx-wrap{
    width:100%;
    max-width:none;
    padding:8px 10px 36px;
    border-radius:0;
  }
  .srbx-hero{
    padding:27px 21px 32px;
    border-radius:22px;
  }
  .srbx-hero h2{
    font-size:31px;
    line-height:1.06;
  }
  .srbx-hero p{
    font-size:14px;
    line-height:1.55;
  }
  .srbx-search-card{
    margin:-12px 0 14px;
    padding:13px 12px 16px;
    border-radius:20px;
  }
  .srbx-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    max-width:none;
    margin:0 0 18px;
    border-radius:13px;
    overflow:hidden;
  }
  .srbx-tab,
  .srbx-tabs .srbx-tab{
    width:100%;
    min-width:0;
    min-height:50px;
    padding:13px 8px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    white-space:nowrap;
    overflow:visible;
    text-overflow:clip;
    font-size:12px;
    line-height:1;
    letter-spacing:.015em;
  }
  .srbx-tab:nth-child(odd){border-left:0}
  .srbx-tab:nth-child(n+3){border-top:1px solid #c6d8e0}
  .srbx-tab:nth-child(even){border-left:1px solid #c6d8e0}
  .srbx-tab.active{box-shadow:inset 0 -2px 0 rgba(255,255,255,.18)}
  .srbx-explore{width:100%;margin-top:18px}
  .srbx-popular-row,.srb370-popular{
    margin-left:0;
    margin-right:0;
    gap:7px;
  }
  .srbx-popular-title,.srb370-pop-title{font-size:10px}
  .srbx-city-chip{font-size:11px;padding:8px 11px}
}

@media(max-width:360px){
  .srbx-tab,
  .srbx-tabs .srbx-tab{
    min-height:48px;
    font-size:11px;
    padding-left:5px;
    padding-right:5px;
  }
}


/* =========================================================
   3.9.14 FINAL BOOKING CONTAINER REDESIGN
   - Removes the bottom Popular Cities strip from the booking widget.
   - Full-width responsive booking shell with no blue side canvas.
   - Rounded single visual card, optimized for desktop and mobile.
   - Booking logic remains unchanged.
   ========================================================= */
.srbx-wrap{
  width:min(1440px,100%);
  max-width:1440px;
  margin:0 auto;
  padding:20px 0 40px;
  background:transparent !important;
  border-radius:0;
  color:#183346;
}
.srbx-hero{
  width:100%;
  max-width:none;
  margin:0;
  padding:42px 52px 56px;
  background:linear-gradient(120deg,#087f8c 0%,#0b9db2 55%,#18aec3 100%);
  border-radius:28px 28px 0 0;
  box-shadow:none;
  position:relative;
  z-index:1;
}
.srbx-hero h2{font-size:clamp(36px,4vw,54px);line-height:1.04;margin:8px 0 8px}
.srbx-hero p{font-size:17px;line-height:1.55;max-width:760px}
.srbx-search-card{
  width:calc(100% - 64px);
  max-width:none;
  margin:-28px 32px 0;
  padding:28px 34px 24px;
  background:#fff;
  border:1px solid #d6e5eb;
  border-radius:24px;
  box-shadow:0 18px 44px rgba(19,58,74,.13);
  position:relative;
  z-index:3;
}
.srbx-tabs{margin-bottom:26px}
.srbx-main-grid,.srb370-grid{max-width:100%}
.srbx-explore{min-width:220px}
.srb370-popular{display:none !important}
.srbx-popular-row{display:none !important}
.srbx-trust-panel,.srbx-services-panel{max-width:calc(100% - 64px);margin-left:32px;margin-right:32px}

@media(min-width:1101px){
  .srbx-main-grid{grid-template-columns:1.35fr 36px 1.35fr 1fr 1fr 1fr 1fr;gap:20px}
  .srb370-grid{gap:18px}
}

@media(max-width:900px){
  .srbx-wrap{width:100%;padding:10px 12px 30px}
  .srbx-hero{padding:30px 24px 44px;border-radius:22px 22px 0 0}
  .srbx-hero h2{font-size:34px}
  .srbx-search-card{width:100%;margin:-20px 0 0;padding:18px 14px 20px;border-radius:20px}
  .srbx-trust-panel,.srbx-services-panel{max-width:100%;margin-left:0;margin-right:0}
}

@media(max-width:700px){
  .srbx-wrap{padding:0 8px 28px;background:transparent !important}
  .srbx-hero{
    padding:27px 20px 48px;
    border-radius:20px 20px 0 0;
  }
  .srbx-hero h2{font-size:31px;line-height:1.04}
  .srbx-hero p{font-size:14px;line-height:1.55}
  .srbx-search-card{
    width:100%;
    margin:-20px 0 0;
    padding:14px 12px 18px;
    border-radius:20px;
    box-shadow:0 12px 30px rgba(19,58,74,.10);
  }
  .srbx-tabs{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    margin:0 0 20px;
    border-radius:13px;
  }
  .srbx-tab,
  .srbx-tabs .srbx-tab{
    min-width:0;
    width:100%;
    min-height:56px;
    padding:12px 6px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    white-space:nowrap;
    overflow:visible;
    font-size:13px;
    line-height:1.05;
    letter-spacing:0;
  }
  .srbx-tab:nth-child(n+3){border-top:1px solid #c6d8e0}
  .srbx-tab:nth-child(even){border-left:1px solid #c6d8e0}
  .srbx-tab:nth-child(odd){border-left:0}
  .srbx-explore{width:100%;min-width:0;min-height:56px;margin-top:18px;font-size:17px}
  .srbx-city-chip,.srbx-popular-row,.srb370-popular{display:none !important}
}

@media(max-width:380px){
  .srbx-wrap{padding-left:5px;padding-right:5px}
  .srbx-hero{padding-left:18px;padding-right:18px}
  .srbx-search-card{padding-left:10px;padding-right:10px}
  .srbx-tab,.srbx-tabs .srbx-tab{font-size:12px;min-height:54px;padding-left:4px;padding-right:4px}
}


/* =========================================================
   1.4.3 — BOOKING SECTION ONLY / STABLE PAGE-CANVAS LAYOUT
   The website/theme background is NOT changed. This section
   alone gets the available page width and stays white.
   ========================================================= */
#srb370-app.srbx-wrap{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  color:#1e3040 !important;
}
#srb370-app.srbx-wrap,
#srb370-app.srbx-wrap *{box-sizing:border-box !important}
#srb370-app .srbx-hero{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
#srb370-app .srbx-search-card{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
#srb370-app .srbx-results{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:22px 0 50px !important;
}
#srb370-app .srbx-trip-summary,
#srb370-app .srbx-package-wrap,
#srb370-app .srbx-results-head,
#srb370-app .srbx-vehicle-list,
#srb370-app .srbx-route-area,
#srb370-app .srbx-terms{
  width:100% !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
#srb370-app .srbx-trip-summary{margin-bottom:18px !important}
#srb370-app .srbx-results-head{padding-left:0;padding-right:0}
#srb370-app .srbx-vehicle-list{gap:14px !important}
#srb370-app .srbx-car-main-image,
#srb370-app .srbx-package-selected-gallery .srbx-car-main-image{
  height:120px !important;
  min-height:120px !important;
}
#srb370-app .srbx-car-main-image img,
#srb370-app .srbx-package-selected-gallery .srbx-car-main-image img{
  width:100% !important;
  height:100% !important;
  max-width:112px !important;
  max-height:82px !important;
  object-fit:contain !important;
  margin:auto !important;
  display:block !important;
}
#srb370-app .srbx-car-gallery{display:flex;align-items:center;justify-content:center}

/* Do not repaint the whole WordPress page when this shortcode exists. */
body:has(#srb370-app),
body:has(#srb370-app) .wp-site-blocks,
body:has(#srb370-app) main,
body:has(#srb370-app) .entry-content,
body:has(#srb370-app) .wp-block-post-content{
  background:inherit !important;
}

@media(max-width:1180px){
  #srb370-app .srbx-trip-summary,
  #srb370-app .srbx-package-wrap,
  #srb370-app .srbx-results-head,
  #srb370-app .srbx-vehicle-list,
  #srb370-app .srbx-route-area,
  #srb370-app .srbx-terms{max-width:calc(100% - 32px) !important}
}
@media(max-width:700px){
  #srb370-app.srbx-wrap{width:100% !important;max-width:100% !important}
  #srb370-app .srbx-hero{padding:28px 20px 36px !important}
  #srb370-app .srbx-search-card{padding:14px 12px 20px !important}
  #srb370-app .srbx-results{padding:18px 0 36px !important}
  #srb370-app .srbx-trip-summary,
  #srb370-app .srbx-package-wrap,
  #srb370-app .srbx-results-head,
  #srb370-app .srbx-vehicle-list,
  #srb370-app .srbx-route-area,
  #srb370-app .srbx-terms{max-width:calc(100% - 24px) !important}
  #srb370-app .srbx-trip-summary{grid-template-columns:1fr 1fr !important}
  #srb370-app .srbx-results-head{align-items:flex-start !important;flex-direction:column !important;gap:10px !important}
  #srb370-app .srbx-car{
    grid-template-columns:86px minmax(0,1fr) !important;
    gap:12px !important;
    align-items:center !important;
  }
  #srb370-app .srbx-car-gallery{grid-column:1 !important;grid-row:1 !important}
  #srb370-app .srbx-car-main{grid-column:2 !important;grid-row:1 !important;padding:14px 10px 14px 0 !important;min-width:0 !important}
  #srb370-app .srbx-car > div:last-child{padding-right:0 !important}
  #srb370-app .srbx-car-main-image{height:82px !important;min-height:82px !important;border:0 !important;background:#f5fafc !important;border-radius:10px !important}
  #srb370-app .srbx-car-main-image img{max-width:76px !important;max-height:58px !important}
  #srb370-app .srbx-car-main h4{font-size:18px !important}
  #srb370-app .srbx-car-sub{font-size:11px !important;line-height:1.35 !important}
  #srb370-app .srbx-car-rate{font-size:18px !important}
  #srb370-app .srbx-select-car{width:100% !important}
}


/* =========================================================
   1.4.4 — BOOKING SECTION FULL CANVAS
   Only the booking component is expanded. The rest of the
   website/theme keeps its own colors and layout.
   ========================================================= */
#srb370-app.srbx-wrap{
  position:relative !important;
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 0 56px !important;
  background:#fff !important;
  color:#17384d !important;
  overflow:visible !important;
  isolation:isolate !important;
  box-shadow:0 0 0 100vmax #fff !important;
  clip-path:inset(0 -100vmax) !important;
}
#srb370-app.srbx-wrap > .srbx-hero,
#srb370-app.srbx-wrap > .srbx-search-card,
#srb370-app.srbx-wrap > .srbx-results{
  position:relative !important;
  z-index:1 !important;
}
#srb370-app .srbx-hero{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
#srb370-app .srbx-search-card{
  width:min(1180px, calc(100% - 32px)) !important;
  max-width:1180px !important;
  margin:0 auto 22px !important;
}
#srb370-app .srbx-results{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:22px 0 44px !important;
  background:#fff !important;
}
#srb370-app .srbx-trip-summary,
#srb370-app .srbx-package-wrap,
#srb370-app .srbx-results-head,
#srb370-app .srbx-vehicle-list,
#srb370-app .srbx-route-area,
#srb370-app .srbx-terms{
  width:min(1180px, calc(100% - 32px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
#srb370-app .srbx-trip-summary{
  margin-bottom:18px !important;
}
#srb370-app .srbx-results-head{
  margin-top:24px !important;
}
#srb370-app .srbx-vehicle-list{
  gap:16px !important;
}
#srb370-app .srbx-car{
  min-width:0 !important;
  width:100% !important;
}
@media(max-width:700px){
  #srb370-app.srbx-wrap{
    width:100% !important;
    max-width:none !important;
    padding:0 0 36px !important;
  }
  #srb370-app .srbx-search-card{
    width:calc(100% - 20px) !important;
    max-width:none !important;
    margin:0 auto 16px !important;
  }
  #srb370-app .srbx-results{
    padding:16px 0 34px !important;
  }
  #srb370-app .srbx-trip-summary,
  #srb370-app .srbx-package-wrap,
  #srb370-app .srbx-results-head,
  #srb370-app .srbx-vehicle-list,
  #srb370-app .srbx-route-area,
  #srb370-app .srbx-terms{
    width:calc(100% - 20px) !important;
    max-width:none !important;
  }
  #srb370-app .srbx-trip-summary{
    grid-template-columns:1fr 1fr !important;
  }
}
@media(max-width:380px){
  #srb370-app .srbx-search-card,
  #srb370-app .srbx-trip-summary,
  #srb370-app .srbx-package-wrap,
  #srb370-app .srbx-results-head,
  #srb370-app .srbx-vehicle-list,
  #srb370-app .srbx-route-area,
  #srb370-app .srbx-terms{
    width:calc(100% - 14px) !important;
  }
}

/* =========================================================
   1.4.5 — MOBILE LENGTH / ALIGNMENT FINAL
   Keep the website/theme untouched. The booking section and
   its result content use the actual available page width.
   ========================================================= */
#srb370-app.srbx-wrap,
#srb370-app.srbx-wrap *{
  box-sizing:border-box !important;
  min-width:0;
}
#srb370-app.srbx-wrap{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  overflow-x:clip !important;
}
#srb370-app .srbx-results{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:16px !important;
  padding-right:16px !important;
}
#srb370-app .srbx-trip-summary,
#srb370-app .srbx-package-wrap,
#srb370-app .srbx-results-head,
#srb370-app .srbx-vehicle-list,
#srb370-app .srbx-route-area,
#srb370-app .srbx-terms{
  width:100% !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
#srb370-app .srbx-results-head h3,
#srb370-app .srbx-results-head p,
#srb370-app .srbx-trip-summary strong,
#srb370-app .srbx-car-main h4,
#srb370-app .srbx-car-sub{
  max-width:100% !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
#srb370-app .srbx-vehicle-list{display:flex !important;flex-direction:column !important}
#srb370-app .srbx-car{width:100% !important;max-width:100% !important;min-width:0 !important}
#srb370-app .srbx-car-gallery,
#srb370-app .srbx-car-main,
#srb370-app .srbx-car > div:last-child{min-width:0 !important}

@media(max-width:700px){
  #srb370-app .srbx-results{
    padding-left:12px !important;
    padding-right:12px !important;
  }
  #srb370-app .srbx-trip-summary,
  #srb370-app .srbx-package-wrap,
  #srb370-app .srbx-results-head,
  #srb370-app .srbx-vehicle-list,
  #srb370-app .srbx-route-area,
  #srb370-app .srbx-terms{
    width:100% !important;
    max-width:100% !important;
  }
  #srb370-app .srbx-results-head h3{font-size:26px !important;line-height:1.08 !important}
  #srb370-app .srbx-results-head p{font-size:14px !important;line-height:1.45 !important}
  #srb370-app .srbx-trip-summary{grid-template-columns:1fr 1fr !important}
}
@media(max-width:380px){
  #srb370-app .srbx-results{padding-left:10px !important;padding-right:10px !important}
}


/* =========================================================
   1.4.6 — CONTROLLED BOOKING WIDTH / MOBILE LENGTH
   Expand ONLY the booking component to the usable mobile
   canvas. Do not make the entire website full-screen.
   ========================================================= */
#srb370-app.srbx-wrap{
  width:min(680px, calc(100vw - 40px)) !important;
  max-width:min(680px, calc(100vw - 40px)) !important;
  margin-left:50% !important;
  margin-right:0 !important;
  transform:translateX(-50%) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
#srb370-app.srbx-wrap > .srbx-hero,
#srb370-app.srbx-wrap > .srbx-search-card,
#srb370-app.srbx-wrap > .srbx-results{
  width:100% !important;
  max-width:100% !important;
}
#srb370-app .srbx-search-card{
  margin-left:0 !important;
  margin-right:0 !important;
}
#srb370-app .srbx-results{
  padding-left:0 !important;
  padding-right:0 !important;
}
#srb370-app .srbx-trip-summary,
#srb370-app .srbx-package-wrap,
#srb370-app .srbx-results-head,
#srb370-app .srbx-vehicle-list,
#srb370-app .srbx-route-area,
#srb370-app .srbx-terms{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
#srb370-app .srbx-car{
  width:100% !important;
  max-width:100% !important;
}
@media(max-width:700px){
  #srb370-app.srbx-wrap{
    width:calc(100vw - 40px) !important;
    max-width:680px !important;
    margin-left:50% !important;
    transform:translateX(-50%) !important;
    padding:0 0 30px !important;
  }
  #srb370-app .srbx-hero{
    border-radius:0 !important;
  }
  #srb370-app .srbx-search-card{
    padding-left:20px !important;
    padding-right:20px !important;
  }
  #srb370-app .srbx-results{
    padding-left:0 !important;
    padding-right:0 !important;
  }
}
@media(max-width:380px){
  #srb370-app.srbx-wrap{
    width:calc(100vw - 24px) !important;
  }
}


/* =========================================================
   1.4.7 — EXACT MOBILE MARGIN + LENGTH CONTROL
   Booking section only. Do not alter the website canvas.
   ========================================================= */
#srb370-app.srbx-wrap{
  box-sizing:border-box !important;
  width:calc(100% - 32px) !important;
  max-width:680px !important;
  margin-left:16px !important;
  margin-right:16px !important;
  transform:none !important;
  left:auto !important;
  right:auto !important;
  position:relative !important;
}
#srb370-app.srbx-wrap,
#srb370-app.srbx-wrap *{box-sizing:border-box !important;min-width:0 !important}
#srb370-app .srbx-hero,
#srb370-app .srbx-search-card,
#srb370-app .srbx-results,
#srb370-app .srbx-trip-summary,
#srb370-app .srbx-package-wrap,
#srb370-app .srbx-results-head,
#srb370-app .srbx-vehicle-list,
#srb370-app .srbx-route-area,
#srb370-app .srbx-terms,
#srb370-app .srbx-car{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
#srb370-app .srbx-results-head h3,
#srb370-app .srbx-results-head p,
#srb370-app .srbx-car h4,
#srb370-app .srbx-car p,
#srb370-app .srbx-trip-summary *{
  max-width:100% !important;
  overflow-wrap:anywhere !important;
}
#srb370-app .srbx-car{overflow:hidden !important}
@media(max-width:700px){
  #srb370-app.srbx-wrap{
    width:calc(100% - 24px) !important;
    max-width:none !important;
    margin-left:12px !important;
    margin-right:12px !important;
    padding:0 0 24px !important;
    transform:none !important;
  }
  #srb370-app .srbx-search-card{padding-left:16px !important;padding-right:16px !important}
  #srb370-app .srbx-results{padding-left:0 !important;padding-right:0 !important}
}

/* =========================================================
   1.4.8 — CONTROLLED MOBILE EXPANSION
   Booking section only. Keep the site canvas/theme unchanged.
   Expand the booking section beyond the narrow WP content column,
   but retain a small, balanced viewport margin.
   ========================================================= */
@media (max-width:700px){
  #srb370-app.srbx-wrap{
    width:calc(100vw - 64px) !important;
    max-width:calc(100vw - 64px) !important;
    margin-left:calc((100% - (100vw - 64px))/2) !important;
    margin-right:calc((100% - (100vw - 64px))/2) !important;
    padding-left:0 !important;
    padding-right:0 !important;
    transform:none !important;
    left:auto !important;
    right:auto !important;
  }
  #srb370-app .srbx-hero,
  #srb370-app .srbx-search-card,
  #srb370-app .srbx-results,
  #srb370-app .srbx-trip-summary,
  #srb370-app .srbx-results-head,
  #srb370-app .srbx-vehicle-list,
  #srb370-app .srbx-car,
  #srb370-app .srbx-route-area,
  #srb370-app .srbx-terms{
    width:100% !important;
    max-width:100% !important;
  }
}

/* =========================================================
   1.5.0 additions: sticky contact button, approx fare hint,
   customer testimonials. No existing booking logic touched.
   ========================================================= */
.srbx-sticky-contact{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:flex-end;
}
.srbx-sticky-btn{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px 18px;
  border-radius:999px;
  font-weight:900;
  font-size:14px;
  text-decoration:none;
  box-shadow:0 10px 26px rgba(20,43,58,.22);
  transition:transform .15s ease;
}
.srbx-sticky-btn:hover{ transform:translateY(-2px); }
.srbx-sticky-whatsapp{ background:#25d366; color:#fff; }
.srbx-sticky-call{ background:#159bd1; color:#fff; }
@media(max-width:700px){
  .srbx-sticky-contact{ right:12px; bottom:12px; }
  .srbx-sticky-btn{ padding:11px 14px; font-size:13px; }
}

.srbx-approx-fare{
  text-align:center;
  font-size:13px;
  font-weight:700;
  color:#0d7656;
  background:#effaf4;
  border:1px solid #d5eadc;
  border-radius:10px;
  padding:9px 14px;
  margin:0 0 16px;
}
.srbx-approx-fare:empty{ display:none; }

.srbx-reviews{
  margin-top:28px;
  padding:26px 20px;
}
.srbx-reviews .srbx-section-title{
  text-align:center;
  font-size:14px;
}
.srbx-reviews-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:16px;
  margin-top:14px;
}
.srbx-review-card{
  background:#fff;
  border:1px solid #ccd8dd;
  border-radius:16px;
  padding:18px;
  box-shadow:0 4px 12px rgba(27,60,74,.05);
}
.srbx-review-stars{
  color:#f0a83c;
  font-size:16px;
  letter-spacing:2px;
}
.srbx-review-quote{
  color:#2b3f49;
  font-size:14px;
  line-height:1.55;
  margin:10px 0;
}
.srbx-review-meta{
  font-size:12px;
  color:#60737c;
}
@media(max-width:700px){
  .srbx-reviews{ padding:18px 12px; }
}

/* =========================================================
   1.5.1 — DESKTOP WIDTH & BOOKING-FORM FIT
   Desktop-only presentation enhancement. Mobile rules above
   are intentionally left unchanged.
   ========================================================= */
@media (min-width: 1201px){
  #srb370-app.srbx-wrap{
    width:min(1440px, 100vw) !important;
    max-width:1440px !important;
    margin-left:50% !important;
    margin-right:0 !important;
    transform:translateX(-50%) !important;
    padding:26px 28px 60px !important;
    border-radius:30px !important;
  }

  #srb370-app .srbx-hero{
    border-radius:28px !important;
    padding:44px 54px 50px !important;
  }

  #srb370-app .srbx-hero h2{
    font-size:clamp(40px,3.2vw,56px) !important;
    line-height:1.03 !important;
  }

  #srb370-app .srbx-hero p{
    font-size:17px !important;
    max-width:820px !important;
  }

  #srb370-app .srbx-search-card{
    width:calc(100% - 48px) !important;
    max-width:1360px !important;
    margin:-30px auto 22px !important;
    padding:28px 30px 20px !important;
    border-radius:26px !important;
  }

  #srb370-app .srbx-tabs{
    margin-bottom:26px !important;
  }

  #srb370-app .srbx-tab{
    min-width:170px !important;
    padding:14px 30px !important;
    font-size:13px !important;
  }

  /* One-way / round-trip row: fit all controls cleanly. */
  #srb370-app .srbx-main-grid{
    grid-template-columns:1.45fr 34px 1.45fr 1fr 1fr .92fr .92fr !important;
    gap:18px !important;
    align-items:end !important;
  }

  #srb370-app .srb370-grid{
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    gap:18px !important;
  }

  #srb370-app .srbx-location-block label,
  #srb370-app .srbx-compact-field label,
  #srb370-app .srbx-passenger-field label,
  #srb370-app .srb370-field label{
    font-size:12px !important;
  }

  #srb370-app .srbx-autocomplete input,
  #srb370-app .srbx-compact-field input,
  #srb370-app .srbx-passenger-field select,
  #srb370-app .srb370-field input,
  #srb370-app .srb370-field select{
    font-size:16px !important;
    min-height:46px !important;
  }

  #srb370-app .srbx-explore{
    min-width:210px !important;
    padding:15px 42px !important;
    font-size:17px !important;
    margin-top:24px !important;
  }

  #srb370-app .srbx-popular-row,
  #srb370-app .srb370-popular{
    margin-left:0 !important;
    margin-right:0 !important;
    gap:10px !important;
  }

  #srb370-app .srbx-city-chip{
    padding:9px 14px !important;
    font-size:13px !important;
  }

  #srb370-app .srbx-results{
    padding-top:26px !important;
  }

  #srb370-app .srbx-trip-summary,
  #srb370-app .srbx-package-wrap,
  #srb370-app .srbx-results-head,
  #srb370-app .srbx-vehicle-list,
  #srb370-app .srbx-route-area,
  #srb370-app .srbx-terms{
    width:100% !important;
    max-width:1360px !important;
  }

  #srb370-app .srbx-car{
    grid-template-columns:220px minmax(0,1fr) 190px !important;
    gap:24px !important;
  }

  #srb370-app .srbx-car-main{
    padding:22px 0 !important;
  }

  #srb370-app .srbx-car-main h4{
    font-size:22px !important;
  }

  #srb370-app .srbx-car-rate{
    font-size:22px !important;
  }

  /* 1.9.31: this used to force the map/fare summary side-by-side on wide screens with
     !important, silently overriding the stacked layout further down this file. Per explicit
     request, desktop now stacks the same way mobile does — map on top, fare summary below. */
  #srb370-app .srbx-route-area{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }

  #srb370-app .srbx-map{
    height:460px !important;
  }

  #srb370-app .srbx-fare{
    padding:22px !important;
  }
}

@media (min-width: 1600px){
  #srb370-app.srbx-wrap{
    padding-left:34px !important;
    padding-right:34px !important;
  }
  #srb370-app .srbx-search-card{
    width:calc(100% - 68px) !important;
  }
}

/* =========================================================
   1.5.5: terms & conditions rendered as a real point-wise list
   ========================================================= */
.srbx-note{ line-height:1.6; }
.srbx-terms-heading{
  font-weight:900;
  font-size:13px;
  letter-spacing:.03em;
  color:#5b4a12;
  margin-bottom:8px;
  text-transform:uppercase;
}
.srbx-terms-list{
  margin:0;
  padding-left:20px;
}
.srbx-terms-list li{
  margin:0 0 10px;
  padding-left:2px;
}
.srbx-terms-list li:last-child{ margin-bottom:0; }
.srbx-note p{ margin:0; }

/* =========================================================
   1.7.0: payment receipt summary shown after a verified payment
   ========================================================= */
.srbx-receipt{ margin:10px 0; }
.srbx-receipt:empty{ display:none; }
.srbx-receipt-row{
  font-size:13.5px;
  color:#12303c;
  margin-bottom:6px;
  line-height:1.5;
}
.srbx-receipt-note{ color:#60737c; font-size:12.5px; }
.srbx-receipt-wa{
  display:inline-block;
  margin-top:4px;
  padding:10px 16px;
  border-radius:9px;
  background:#25d366;
  color:#fff;
  font-weight:800;
  font-size:13.5px;
  text-decoration:none;
}

/* =========================================================
   1.9.0: premium visual polish pass — additive only, doesn't
   change any layout/structure, just adds motion, depth, and
   richer button/card styling on top of what already exists.
   ========================================================= */
.srbx-hero{ position:relative; overflow:hidden; }
.srbx-hero::after{
  content:'';
  position:absolute;
  top:-40%;
  right:-10%;
  width:280px;
  height:280px;
  background:radial-gradient(circle, rgba(255,255,255,.14), transparent 70%);
  pointer-events:none;
}
.srbx-hero h2{ letter-spacing:-.01em; }

.srbx-tab{ transition:background .15s ease, color .15s ease; }
.srbx-tab:hover:not(.active){ background:#f3f9fb; }
.srbx-tab.active{ background:linear-gradient(135deg,#159bd1,#0f7fb0); }

.srbx-explore, .srbx-select-car, .srbx-pay{
  background:linear-gradient(135deg,#f36a1f,#e0530f);
  transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.srbx-explore:hover:not(:disabled), .srbx-select-car:hover, .srbx-pay:hover:not(:disabled){
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(243,106,31,.3);
  filter:brightness(1.04);
}
.srbx-pay{ background:linear-gradient(135deg,#1590bf,#0f6f96); }
.srbx-pay:hover:not(:disabled){ box-shadow:0 14px 30px rgba(21,144,191,.3); filter:brightness(1.04); }

.srbx-car{ transition:transform .18s ease, box-shadow .18s ease; }
.srbx-car:hover{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(27,60,74,.12); }
.srbx-car.selected{ transform:translateY(-2px); }

.srbx-package-card{ transition:transform .15s ease, box-shadow .15s ease; }
.srbx-package-card:hover{ transform:translateY(-2px); box-shadow:0 10px 22px rgba(13,118,86,.12); }

.srbx-city-chip{ transition:transform .12s ease, background .15s ease, color .15s ease; }
.srbx-city-chip:hover{ transform:translateY(-2px); background:#159bd1; color:#fff; border-color:#159bd1; }

.srbx-results{ animation:srbx-fade-in .35s ease; }
@keyframes srbx-fade-in{
  from{ opacity:0; transform:translateY(10px); }
  to{ opacity:1; transform:translateY(0); }
}

.srbx-total strong{ background:linear-gradient(135deg,#1590bf,#0d7656); -webkit-background-clip:text; background-clip:text; color:transparent; }

.srbx-reviews-google-link{ text-align:center; margin-top:18px; }
.srbx-reviews-google-link a{
  color:#159bd1;
  font-weight:800;
  font-size:13.5px;
  text-decoration:none;
}
.srbx-reviews-google-link a:hover{ text-decoration:underline; }

.srb370-place input{padding-right:38px}
.srb370-place .srbx-locbtn{position:absolute;right:0;top:4px;background:#eef7fa;border:1px solid #cfe4ea;border-radius:8px;width:30px;height:30px;font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.srb370-place .srbx-locbtn:hover{background:#dff1f8}
.srb370-place .srbx-locbtn:disabled{opacity:.6;cursor:wait}

/* 1.9.8: header call button, tab description line, trust badges row */
.srbx-hero-call{display:inline-block;margin-top:14px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.5);color:#fff;text-decoration:none;font-weight:800;font-size:14px;padding:9px 18px;border-radius:999px}
.srbx-hero-call:hover{background:rgba(255,255,255,.28)}
.srbx-tab-desc{text-align:center;color:#5c7078;font-size:12.5px;margin:6px 0 16px;font-weight:600}
.srbx-trust-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:0 0 30px;padding:14px 10px;background:#f4f9fb;border-top:1px solid #e2edf0;border-radius:0 0 22px 22px}
.srbx-trust-item{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:800;color:#25404b;background:#fff;border:1px solid #dbe6ea;border-radius:999px;padding:8px 14px}

/* 1.9.9: two-tier trip tabs — 3 across on top (Outstation/Local/Airport), 2 across below
   (One Way/Round Trip, shown only while Outstation is active). Full width at every size. */
#srb370-app .srbx-tabs-top{display:grid;grid-template-columns:repeat(3,1fr);width:100%;border:1px solid #b8c9d0;border-radius:10px 10px 0 0;overflow:hidden;box-sizing:border-box;margin:0;}
#srb370-app .srbx-tab-top{border:0;background:#fff;padding:13px 6px;font-weight:900;letter-spacing:.02em;cursor:pointer;color:#253844;font-size:13.5px;box-sizing:border-box;}
#srb370-app .srbx-tab-top+.srbx-tab-top{border-left:1px solid #b8c9d0;}
#srb370-app .srbx-tab-top.active{background:#159bd1;color:#fff;}
#srb370-app .srbx-tabs-sub{display:grid;grid-template-columns:repeat(2,1fr);width:100%;border:1px solid #b8c9d0;border-top:0;border-radius:0 0 10px 10px;overflow:hidden;box-sizing:border-box;margin:0 0 16px;}
#srb370-app .srbx-tab-sub{border:0;background:#f4f9fb;padding:11px 6px;font-weight:800;letter-spacing:.02em;cursor:pointer;color:#3c545f;font-size:13px;box-sizing:border-box;}
#srb370-app .srbx-tab-sub+.srbx-tab-sub{border-left:1px solid #b8c9d0;}
#srb370-app .srbx-tab-sub.active{background:#0d7656;color:#fff;}

/* 1.9.18: covers a case the mobile-only fixes above don't — "Force desktop layout on mobile"
   makes the browser report a wide (1280px) viewport, so every @media(max-width:700px) rule
   above simply never activates, leaving the widget unprotected again. On an actual desktop
   screen this widget is meant to be centered with a sensible max-width (not edge-to-edge) — this
   makes sure that happens reliably at ANY viewport width, forced or real, beating the theme's
   own centering the same way the mobile fix does (see 1.9.14's note on :where() specificity). */
/* 1.9.27: mobile Fare Summary showing giant, overlapping CGST/SGST/Total text — these elements
   never had their own explicit font-size, they inherited it from whatever was around them. Given
   this theme has already proven to impose its own global text styling aggressively (that's been
   the root of several fights in this conversation), explicit sizes here removes the guesswork:
   nothing in the fare box depends on inheritance anymore, so a theme rule can't blow it up. */
#srb370-app .srbx-fare,
#srb370-app .srbx-fare *{ font-size:14px; line-height:1.4; }
#srb370-app .srbx-fare h3{ font-size:18px !important; }
#srb370-app .srbx-line{ display:flex !important; flex-wrap:wrap; justify-content:space-between !important; gap:6px 10px; align-items:baseline; padding:9px 0 !important; }
#srb370-app .srbx-line span{ font-size:13px !important; color:#5c6c74; }
#srb370-app .srbx-line b{ font-size:14px !important; font-weight:800; white-space:nowrap; }
#srb370-app .srbx-total{ display:flex !important; flex-wrap:wrap; justify-content:space-between !important; align-items:baseline; gap:6px; }
#srb370-app .srbx-total strong{ font-size:22px !important; }
#srb370-app .srbx-advance strong{ font-size:19px !important; }
#srb370-app .srbx-advance span{ font-size:12px !important; }
#srb370-app .srbx-advance small{ font-size:11.5px !important; line-height:1.5 !important; }
@media(max-width:420px){
  #srb370-app .srbx-total strong{ font-size:19px !important; }
}

/* 1.9.25: split back into genuinely separate desktop and mobile treatments, per request. Desktop
   goes back to the simplest version that worked correctly on its own (confirmed in an earlier
   round, before ancestor-neutralizing was layered on top of it) — just defeating the theme's
   :where()-based centering directly on this element, with no ancestor changes at all. Mobile
   keeps its own proven full-bleed approach, including the ancestor fix, completely separately. */
html,body{overflow-x:hidden !important;}

/* Desktop / laptop (701px and up): centered, capped width, no ancestor changes. */
@media(min-width:701px){
  #srb370-app.srbx-wrap{
    max-width:1100px !important;
    width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
    transform:none !important;
    left:auto !important;
    right:auto !important;
    position:static !important;
  }
}

/* Mobile (700px and below): full-bleed edge-to-edge, ancestors neutralized too. */
@media(max-width:700px){
  html body *:has(> #srb370-app), html body *:has(#srb370-app){
    max-width:none !important;
    width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
  #srb370-app.srbx-wrap{width:100% !important;max-width:none !important;margin-left:0 !important;margin-right:0 !important;padding:0 10px !important;box-sizing:border-box !important;}
  #srb370-app .srbx-hero{border-radius:16px 16px 0 0 !important;padding:24px 16px 30px !important;width:100%;box-sizing:border-box;}
  #srb370-app .srbx-hero-call{white-space:nowrap !important;font-size:13px !important;padding:9px 14px !important;}
  #srb370-app .srbx-search-card{margin:-14px 0 0 !important;padding:14px !important;border-radius:0 0 16px 16px !important;width:100% !important;box-sizing:border-box;}
  #srb370-app .srbx-tabs-top{grid-template-columns:repeat(3,1fr) !important;border-radius:10px 10px 0 0;}
  #srb370-app .srbx-tab-top{border-left:1px solid #b8c9d0 !important;border-top:0 !important;padding:10px 2px !important;font-size:10.5px !important;line-height:1.2;text-align:center;white-space:normal;word-break:keep-all;}
  #srb370-app .srbx-tab-top:first-child{border-left:0 !important;}
  #srb370-app .srbx-tab-sub{padding:11px 4px !important;font-size:12px !important;white-space:normal !important;}
  #srb370-app .srbx-trust-row{margin:0 !important;border-radius:0 !important;}
}
@media(max-width:360px){
  #srb370-app .srbx-tab-top{font-size:9.5px !important;padding:9px 1px !important;}
  #srb370-app .srbx-hero-call{font-size:11.5px !important;padding:8px 10px !important;}
}

/* 1.9.31: final safety net — guarantees the map/fare stack vertically at every screen size,
   regardless of any other rule (including ones not yet found) that might set grid columns. */
#srb370-app .srbx-route-area{ grid-template-columns:1fr !important; }

/* 1.9.36: for Round Trip bookings, the "One Way" metric box is hidden (redundant with Round
   Trip km shown right next to it) — this reflows the remaining 3 boxes to fill the row evenly. */
#srb370-app .srbx-route-metrics.srbx-metrics-3col{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }

/* 1.9.52: dynamic "+" add/remove stop list UI */
.srbx-stop-list{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.srbx-stop-row{display:flex;align-items:center;gap:8px}
.srbx-stop-input{flex:1;box-sizing:border-box;border:1px solid #ccd8dd;border-radius:8px;padding:9px 11px;font-size:13.5px;font-family:inherit}
.srbx-stop-input:focus{outline:none;border-color:#159bd1}
.srbx-stop-remove{flex:0 0 auto;width:30px;height:30px;border:1px solid #e3b7ae;background:#fbeeec;color:#a44836;border-radius:8px;font-size:16px;line-height:1;cursor:pointer}
.srbx-stop-remove:hover{background:#f6dbd6}
.srbx-stop-add{background:#eef6fb;border:1px dashed #9dc6dc;color:#146a94;font-weight:800;font-size:12.5px;padding:8px 14px;border-radius:8px;cursor:pointer}
.srbx-stop-add:hover{background:#e0eef6}
