:root{
  --wi-vs-page:#f4f7fb;
  --wi-vs-surface:#ffffff;
  --wi-vs-surface-2:#f8fbff;
  --wi-vs-line:#dbe5f0;
  --wi-vs-line-strong:#cad8e8;
  --wi-vs-text:#132238;
  --wi-vs-muted:#6f8098;
  --wi-vs-hero-dark-1:#09111d;
  --wi-vs-hero-dark-2:#102238;
  --wi-vs-hero-dark-3:#15365b;
  --wi-vs-hero-light-1:#ffffff;
  --wi-vs-hero-light-2:#f7fbff;
  --wi-vs-hero-light-3:#eef4fb;
  --wi-vs-hero-text:#f5f9ff;
  --wi-vs-hero-muted:rgba(237,244,255,.86);
  --wi-vs-search:#0f7a4f;
  --wi-vs-search-2:#0c6944;
}

body{
  background:linear-gradient(180deg,#f6f9fc 0%,#eff4fa 100%) !important;
  color:var(--wi-vs-text) !important;
}
body :where(.wi-shell,.ws-shell,.wr-page,.wt-trips,.wt-trip,.wp-search,.wi-hub-page){color:var(--wi-vs-text)}
body :where(.wi-card,.ws-card,.ws-panel,.ws-route-card,.ws-link-card,.ws-gallery-card,.wr-section,.wr-panel,.wr-class-card,.wr-booking-sticky,.wr-book-summary,.t-card,.t-book,.t-form,.wfleet-class-card,.wfleet-stat,.wfleet-vehicle,.wfleet-route-card,.wi-searchbox__panel){
  background:linear-gradient(180deg,var(--wi-vs-surface),var(--wi-vs-surface-2)) !important;
  border-color:var(--wi-vs-line) !important;
  box-shadow:0 14px 34px rgba(10,20,38,.05) !important;
  color:var(--wi-vs-text) !important;
}
body :where(.ws-section-head p,.wr-section-head p,.wr-book-head p,.wr-hero-tagline,.wr-hero-meta,.wr-hero-micro,.wi-card p,.ws-card p,.ws-panel p,.t-card p,.t-sub,.t-summary,.wfleet-class-card p,.wfleet-vehicle__body p,.wfleet-stat span,.ws-note,.wi-muted){
  color:var(--wi-vs-muted) !important;
}

/* dark hero family: homepage + transfers */
body :where(.wp-home-v4 .whm-hero,.wp-transfers-v2 .whm-hero){
  position:relative !important;
  overflow:hidden !important;
  border-radius:30px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:
    radial-gradient(1200px 430px at 0% 0%, rgba(111,164,255,.18), transparent 48%),
    radial-gradient(520px 340px at 100% 0%, rgba(193,223,255,.14), transparent 58%),
    linear-gradient(135deg,var(--wi-vs-hero-dark-1) 0%,var(--wi-vs-hero-dark-2) 58%,var(--wi-vs-hero-dark-3) 100%) !important;
  box-shadow:0 28px 64px rgba(9,18,34,.18) !important;
}
body :where(.wp-home-v4 .whm-hero,.wp-transfers-v2 .whm-hero)::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,0) 38%);
  pointer-events:none;
  z-index:0;
}
body .wp-home-v4 .whm-hero > *,
body .wp-transfers-v2 .whm-hero > *{position:relative;z-index:1}
body :where(.wp-home-v4 .whm-copy h1,.wp-transfers-v2 .whm-copy h1){
  color:var(--wi-vs-hero-text) !important;
  -webkit-text-fill-color:var(--wi-vs-hero-text) !important;
  letter-spacing:-.055em !important;
  line-height:.97 !important;
  text-shadow:none !important;
}
body :where(.wp-home-v4 .whm-copy p,.wp-transfers-v2 .whm-copy p){
  color:var(--wi-vs-hero-muted) !important;
  -webkit-text-fill-color:var(--wi-vs-hero-muted) !important;
  line-height:1.68 !important;
}
body :where(.whm-eyebrow){
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:10px 16px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:rgba(248,251,255,.96) !important;
  text-transform:uppercase !important;
  letter-spacing:.09em !important;
  font-size:12px !important;
  font-weight:900 !important;
}
body :where(.wp-home-v4 .whm-hero .whm-btn,.wp-home-v4 .whm-cta .whm-btn,.wp-transfers-v2 .whm-hero .whm-btn,.wp-transfers-v2 .whm-cta .whm-btn){
  background:#fff !important;
  color:#102238 !important;
  border-color:#fff !important;
  box-shadow:none !important;
}
body :where(.wp-home-v4 .whm-hero .whm-btn--ghost,.wp-home-v4 .whm-cta .whm-btn--ghost,.wp-transfers-v2 .whm-hero .whm-btn--ghost,.wp-transfers-v2 .whm-cta .whm-btn--ghost){
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.16) !important;
}

/* light hero family: routes, fleet, destination, guides, hotels, trips */
body :where(.ws-hero,.wr-hero,.wfleet-hero,.wi-hero,.wi-hub-hero,.wt-trips .t-hero,.wt-trip .t-hero,.wt-trip .t-hero-shell){
  position:relative !important;
  overflow:hidden !important;
  border-radius:30px !important;
  border:1px solid var(--wi-vs-line) !important;
  background:
    radial-gradient(1100px 420px at 100% 0%, rgba(69,126,255,.10), transparent 44%),
    radial-gradient(800px 340px at 0% 100%, rgba(21,118,187,.05), transparent 40%),
    linear-gradient(180deg,var(--wi-vs-hero-light-1) 0%,var(--wi-vs-hero-light-2) 58%,var(--wi-vs-hero-light-3) 100%) !important;
  box-shadow:0 22px 50px rgba(9,18,34,.08) !important;
}
body :where(.ws-hero,.wr-hero,.wfleet-hero,.wi-hero,.wi-hub-hero,.wt-trips .t-hero,.wt-trip .t-hero,.wt-trip .t-hero-shell)::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.58),rgba(255,255,255,0) 42%);
  pointer-events:none;
  z-index:0;
}
body .ws-hero > *,
body .wr-hero > *,
body .wfleet-hero > *,
body .wi-hero > *,
body .wi-hub-hero > *,
body .wt-trips .t-hero > *,
body .wt-trip .t-hero > *,
body .wt-trip .t-hero-shell > *{position:relative;z-index:1}
body :where(.ws-hero h1,.wi-hero h1,.wi-hub-hero h1,.wt-trips .t-title,.wt-trip .t-hero-card h1,.wfleet-hero h1){
  color:var(--wi-vs-text) !important;
  -webkit-text-fill-color:var(--wi-vs-text) !important;
  letter-spacing:-.055em !important;
  line-height:.97 !important;
  text-shadow:none !important;
}
body :where(.ws-hero p,.wi-hero p,.wi-hub-hero p,.wt-trips .t-sub,.wt-trip .t-hero-card .t-summary,.wfleet-hero p){
  color:var(--wi-vs-muted) !important;
  -webkit-text-fill-color:var(--wi-vs-muted) !important;
  line-height:1.68 !important;
}
body :where(.ws-eyebrow,.wi-hero-kicker,.t-kicker,.wi-eyebrow,.wfleet-hero .ws-eyebrow){
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:10px 16px !important;
  border-radius:999px !important;
  background:#f1f6fd !important;
  border:1px solid var(--wi-vs-line) !important;
  color:#516885 !important;
  text-transform:uppercase !important;
  letter-spacing:.09em !important;
  font-size:12px !important;
  font-weight:900 !important;
}
body :where(.ws-actions .wi-btn,.wr-hero-actions .wr-btn--primary,.wfleet-cta .wi-btn,.wi-hero-cta .wi-btn,.t-hero-actions .wi-btn,.wt-trips .wi-btn,.wfleet-hero .wi-btn){
  background:linear-gradient(180deg,var(--wi-vs-search),var(--wi-vs-search-2)) !important;
  color:#fff !important;
  border-color:rgba(11,105,68,.35) !important;
  box-shadow:0 14px 28px rgba(11,105,68,.16) !important;
}
body :where(.ws-actions .wi-btn2,.wr-hero-actions .wr-btn--ghost,.wfleet-cta .wi-btn2,.wi-hero-cta .wi-btn--ghost,.t-hero-actions .wi-btn2,.wfleet-hero .wi-btn2,.wi-hero .wi-btn,.wi-hero .wi-btn--ghost){
  background:#fff !important;
  color:var(--wi-vs-text) !important;
  border-color:var(--wi-vs-line) !important;
  box-shadow:none !important;
}
body :where(.wr-hero-strip span,.wr-service-strip span,.ws-pills span,.t-pill,.wfleet-jump a){
  background:#f7fbff !important;
  border:1px solid var(--wi-vs-line) !important;
  color:var(--wi-vs-text) !important;
}
body .wfleet-jump a:hover{background:#fff !important;border-color:var(--wi-vs-line-strong) !important}
body .wfleet-stat{background:#fff !important;border-color:var(--wi-vs-line) !important}
body .wfleet-stat small{color:#7a8ea8 !important}
body .wfleet-stat strong{color:var(--wi-vs-text) !important}
body .wfleet-stat span{color:var(--wi-vs-muted) !important}
body .wi-hero-overlay,
body .wr-hero-overlay,
body .wt-trip .t-hero:after{background:none !important}
body :where(.wi-hero-photo,.wt-trips .t-hero>img,.wt-trip .t-hero-media img,.wr-hero-media img){filter:none !important}

/* shared search widget: icon inside input, no separate big button */
body .wi-searchbox{width:100% !important}
body .wi-searchbox__form,
body .wp-home-v4 .whm-search .wi-searchbox__form,
body .wp-transfers-v2 .whm-search .wi-searchbox__form,
body .wp-search .wi-searchbox--page,
body .ww-search{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
body .wi-searchbox__label,
body .wp-home-v4 .whm-search .wi-searchbox__label,
body .wp-transfers-v2 .whm-search .wi-searchbox__label{
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  margin:0 0 10px !important;
}
body :where(.wp-home-v4 .whm-search .wi-searchbox__label,.wp-transfers-v2 .whm-search .wi-searchbox__label){color:rgba(247,252,255,.92) !important}
body :where(.wr-hero .wi-searchbox__label,.wi-hero .wi-searchbox__label,.ws-hero .wi-searchbox__label,.wi-hub-hero .wi-searchbox__label,.wfleet-hero .wi-searchbox__label){color:#5d738f !important}
body :where(.wi-searchbox__row,.ww-search-shell,.wp-home-v4 .whm-search .wi-searchbox__row,.wp-transfers-v2 .whm-search .wi-searchbox__row){
  position:relative !important;
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
  padding:0 !important;
  border-radius:22px !important;
  background:#ffffff !important;
  border:1px solid var(--wi-vs-line) !important;
  box-shadow:0 18px 40px rgba(9,18,34,.10) !important;
}
body :where(.wi-searchbox__input,.ww-search input){
  width:100% !important;
  min-height:60px !important;
  height:60px !important;
  padding:0 64px 0 18px !important;
  border:0 !important;
  border-radius:22px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#102238 !important;
  font-size:16px !important;
  font-weight:700 !important;
  outline:none !important;
}
body :where(.wi-searchbox__input,.ww-search input)::placeholder{color:#8a97aa !important;opacity:1 !important}
body :where(.wi-searchbox__submit,.ww-search-btn,.wp-home-v4 .whm-search .wi-searchbox__submit,.wp-transfers-v2 .whm-search .wi-searchbox__submit){
  position:absolute !important;
  right:10px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  padding:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(7,18,34,.06) !important;
  background:linear-gradient(180deg,var(--wi-vs-search),var(--wi-vs-search-2)) !important;
  box-shadow:0 12px 24px rgba(11,105,68,.22) !important;
  color:transparent !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
}
body :where(.wi-searchbox__submit,.ww-search-btn,.wp-home-v4 .whm-search .wi-searchbox__submit,.wp-transfers-v2 .whm-search .wi-searchbox__submit)::before{
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:18px;
  height:18px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:18px 18px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M8.75 3.75a5 5 0 1 0 0 10a5 5 0 0 0 0-10Zm0 0c2.761 0 5 2.239 5 5a4.98 4.98 0 0 1-1.189 3.24m0 0L16.25 15.75' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
body .wi-searchbox__panel{
  margin-top:10px !important;
  border-radius:22px !important;
  border:1px solid var(--wi-vs-line) !important;
  box-shadow:0 22px 48px rgba(9,18,34,.14) !important;
}
body .wi-searchbox__item{background:linear-gradient(180deg,#fbfdff,#f6f9fc) !important;border:1px solid transparent !important}
body .wi-searchbox__item:hover{background:#fff !important;border-color:#dbe5f0 !important}
body .wi-searchbox__pill{background:#eef5ff !important;color:#335a8c !important}
body .ww-search input{min-height:52px !important;height:52px !important;border-radius:22px !important}
body .ww-search-btn{width:38px !important;height:38px !important;min-width:38px !important;min-height:38px !important;right:8px !important}

/* trips hero search refinement */
body .wt-trips .t-search{display:grid !important;gap:12px !important;max-width:640px !important}
body .wt-trips .t-search-main{position:relative !important}
body .wt-trips .t-search .wi-input,
body .wt-trips .t-search select{
  background:#fff !important;
  border:1px solid var(--wi-vs-line) !important;
  border-radius:22px !important;
  min-height:56px !important;
  height:56px !important;
  color:var(--wi-vs-text) !important;
  box-shadow:0 16px 32px rgba(9,18,34,.08) !important;
}
body .wt-trips .t-search-q{padding-right:60px !important}
body .wt-trips .t-search-submit{
  position:absolute !important;
  right:8px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  min-height:40px !important;
  border-radius:999px !important;
  border:1px solid rgba(7,18,34,.06) !important;
  background:linear-gradient(180deg,var(--wi-vs-search),var(--wi-vs-search-2)) !important;
  color:transparent !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
  box-shadow:0 12px 24px rgba(11,105,68,.22) !important;
}
body .wt-trips .t-search-submit::before{
  content:"";
  position:absolute;
  inset:0;
  margin:auto;
  width:18px;
  height:18px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:18px 18px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M8.75 3.75a5 5 0 1 0 0 10a5 5 0 0 0 0-10Zm0 0c2.761 0 5 2.239 5 5a4.98 4.98 0 0 1-1.189 3.24m0 0L16.25 15.75' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

body .wfleet-class-card__meta span,body .wfleet-vehicle__meta span,body .wr-meta-row span,body .wi-class-meta span{background:#f5f8fd !important;border-color:var(--wi-vs-line) !important;color:var(--wi-vs-text) !important}
body .wfleet-vehicle img,body .wr-vehicle-media img,body .ws-route-card img,body .ws-link-card img{background:#dfe7f2 !important}
body .wfleet-vehicle__kicker,body .wfleet-class-card__eyebrow,body .wfleet-section__eyebrow,body .wfleet-route-card__eyebrow{color:#6d82a0 !important}
body .wp-home-v4,body .wp-transfers-v2,body .wp-fleet,body .wt-trips,body .wt-trip,body .wr-page{padding-top:18px !important}

@media (max-width:980px){
  body :where(.wp-home-v4 .whm-hero,.wp-transfers-v2 .whm-hero,.ws-hero,.wr-hero,.wfleet-hero,.wi-hero,.wi-hub-hero,.wt-trips .t-hero,.wt-trip .t-hero,.wt-trip .t-hero-shell){border-radius:26px !important}
}
@media (max-width:760px){
  body :where(.wp-home-v4 .whm-hero,.wp-transfers-v2 .whm-hero,.ws-hero,.wr-hero,.wfleet-hero,.wi-hero,.wi-hub-hero,.wt-trips .t-hero,.wt-trip .t-hero,.wt-trip .t-hero-shell){padding:18px !important;border-radius:24px !important}
  body .wi-searchbox__input,body .ww-search input{min-height:56px !important;height:56px !important;font-size:15px !important}
  body .wi-searchbox__submit,body .ww-search-btn,body .wp-home-v4 .whm-search .wi-searchbox__submit,body .wp-transfers-v2 .whm-search .wi-searchbox__submit{width:40px !important;height:40px !important;min-width:40px !important;min-height:40px !important}
}
@media (max-width:640px){
  body :where(.wp-home-v4 .whm-copy h1,.wp-transfers-v2 .whm-copy h1,.ws-hero h1,.wi-hero h1,.wi-hub-hero h1,.wt-trips .t-title,.wt-trip .t-hero-card h1,.wfleet-hero h1){font-size:clamp(30px,9.6vw,42px) !important;max-width:none !important}
  body :where(.wp-home-v4 .whm-copy p,.wp-transfers-v2 .whm-copy p,.ws-hero p,.wi-hero p,.wi-hub-hero p,.wt-trips .t-sub,.wt-trip .t-hero-card .t-summary,.wfleet-hero p){font-size:14px !important;max-width:100% !important}
  body :where(.ws-hero-grid,.wt-trips .t-hero-inner,.wt-trip .t-hero-shell,.wi-hero-inner){grid-template-columns:1fr !important;gap:14px !important}
  body .wi-searchbox__input,body .ww-search input{padding-left:16px !important;padding-right:58px !important}
}

/* force home/transfers hero search to stay one-field + icon on mobile */
body .wp-home-v4 .whm-search .wi-searchbox__form,
body .wp-transfers-v2 .whm-search .wi-searchbox__form{
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
body .wp-home-v4 .whm-search .wi-searchbox__row,
body .wp-transfers-v2 .whm-search .wi-searchbox__row{
  display:block !important;
  position:relative !important;
  grid-template-columns:none !important;
  gap:0 !important;
  border-radius:22px !important;
  background:#fff !important;
  border:1px solid var(--wi-vs-line) !important;
  box-shadow:0 18px 40px rgba(9,18,34,.10) !important;
}
body .wp-home-v4 .whm-search .wi-searchbox__input,
body .wp-transfers-v2 .whm-search .wi-searchbox__input{
  min-height:60px !important;
  height:60px !important;
  padding:0 64px 0 18px !important;
  border:0 !important;
  border-radius:22px !important;
  background:transparent !important;
}
body .wp-home-v4 .whm-search .wi-searchbox__submit,
body .wp-transfers-v2 .whm-search .wi-searchbox__submit{
  position:absolute !important;
  right:10px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  padding:0 !important;
  border-radius:999px !important;
}
@media (max-width:760px){
  body .wp-home-v4 .whm-search .wi-searchbox__submit,
  body .wp-transfers-v2 .whm-search .wi-searchbox__submit{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }
}
