.hbbe-app{
  color:var(--hbbe-text,#0f172a);
}
.hbbe-app .hbbe-main-centered{
  max-width:1400px;
  margin:0 auto;
}
.hbbe-app.hbbe-layout-boxed .hbbe-main-centered{
  max-width:1180px;
}
.hbbe-app .hbbe-tabs,
.hbbe-app .hbbe-form,
.hbbe-app .hbbe-card,
.hbbe-app .hbbe-confirmation,
.hbbe-app .hbbe-coming-soon{
  transition:all .25s ease;
}
.hbbe-app .hbbe-form,
.hbbe-app .hbbe-card,
.hbbe-app .hbbe-confirmation,
.hbbe-app .hbbe-coming-soon,
.hbbe-app .hbbe-results-shell,
.hbbe-app .hbbe-hotel-shell,
.hbbe-app .hbbe-transfers-hero,
.hbbe-app .hbbe-transfer-summary,
.hbbe-app .hbbe-trip-builder,
.hbbe-app .hbbe-ticket-card,
.hbbe-app .hbbe-cart,
.hbbe-app .hbbe-checkout,
.hbbe-app .hbbe-tabs{
  border-radius:var(--hbbe-radius,18px);
}
.hbbe-app.hbbe-card-shadow .hbbe-form,
.hbbe-app.hbbe-card-shadow .hbbe-card,
.hbbe-app.hbbe-card-shadow .hbbe-results-shell,
.hbbe-app.hbbe-card-shadow .hbbe-hotel-shell,
.hbbe-app.hbbe-card-shadow .hbbe-transfers-hero,
.hbbe-app.hbbe-card-shadow .hbbe-transfer-summary,
.hbbe-app.hbbe-card-shadow .hbbe-trip-builder,
.hbbe-app.hbbe-card-shadow .hbbe-ticket-card,
.hbbe-app.hbbe-card-shadow .hbbe-cart,
.hbbe-app.hbbe-card-shadow .hbbe-checkout{
  box-shadow:0 16px 38px rgba(15,23,42,.09);
}
.hbbe-app.hbbe-card-flat .hbbe-form,
.hbbe-app.hbbe-card-flat .hbbe-card,
.hbbe-app.hbbe-card-flat .hbbe-results-shell,
.hbbe-app.hbbe-card-flat .hbbe-hotel-shell,
.hbbe-app.hbbe-card-flat .hbbe-transfers-hero,
.hbbe-app.hbbe-card-flat .hbbe-transfer-summary,
.hbbe-app.hbbe-card-flat .hbbe-trip-builder,
.hbbe-app.hbbe-card-flat .hbbe-ticket-card,
.hbbe-app.hbbe-card-flat .hbbe-cart,
.hbbe-app.hbbe-card-flat .hbbe-checkout{
  box-shadow:none;
  border:1px solid rgba(15,23,42,.08);
}
.hbbe-app.hbbe-card-outline .hbbe-form,
.hbbe-app.hbbe-card-outline .hbbe-card,
.hbbe-app.hbbe-card-outline .hbbe-results-shell,
.hbbe-app.hbbe-card-outline .hbbe-hotel-shell,
.hbbe-app.hbbe-card-outline .hbbe-transfers-hero,
.hbbe-app.hbbe-card-outline .hbbe-transfer-summary,
.hbbe-app.hbbe-card-outline .hbbe-trip-builder,
.hbbe-app.hbbe-card-outline .hbbe-ticket-card,
.hbbe-app.hbbe-card-outline .hbbe-cart,
.hbbe-app.hbbe-card-outline .hbbe-checkout{
  box-shadow:none;
  border:2px solid color-mix(in srgb, var(--hbbe-primary,#0b66c3) 20%, white);
}
.hbbe-app .hbbe-form{
  background:var(--hbbe-surface,#fff);
  color:var(--hbbe-text,#0f172a);
}
.hbbe-app .hbbe-form label,
.hbbe-app .hbbe-tabs,
.hbbe-app .hbbe-tab,
.hbbe-app .hbbe-tab svg{
  color:var(--hbbe-tab-text,var(--hbbe-text,#0f172a));
}
.hbbe-app .hbbe-form input,
.hbbe-app .hbbe-form select,
.hbbe-app .hbbe-stepper,
.hbbe-app .hbbe-stepper-input,
.hbbe-app .hbbe-stepper-btn{
  border-radius:calc(var(--hbbe-radius,18px) - 6px);
}
.hbbe-app .hbbe-btn,
.hbbe-app button.hbbe-btn,
.hbbe-app .hbbe-field-btn .hbbe-btn{
  background:var(--hbbe-primary,#0b66c3);
  color:var(--hbbe-button-text,#fff);
  border-color:var(--hbbe-primary,#0b66c3);
}
.hbbe-app .hbbe-tab.is-active,
.hbbe-app .hbbe-tab:hover{
  color:var(--hbbe-button-text,#fff);
  background:var(--hbbe-primary,#0b66c3);
}
.hbbe-app .hbbe-tab.is-active svg,
.hbbe-app .hbbe-tab:hover svg{
  color:var(--hbbe-button-text,#fff);
}
.hbbe-app.hbbe-buttons-pill .hbbe-btn,
.hbbe-app.hbbe-buttons-pill .hbbe-tab{border-radius:999px;}
.hbbe-app.hbbe-buttons-rounded .hbbe-btn,
.hbbe-app.hbbe-buttons-rounded .hbbe-tab{border-radius:14px;}
.hbbe-app.hbbe-buttons-square .hbbe-btn,
.hbbe-app.hbbe-buttons-square .hbbe-tab{border-radius:6px;}

/* Modern */
.hbbe-app.hbbe-theme-modern .hbbe-tabs{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
  background:transparent;
}
.hbbe-app.hbbe-theme-modern .hbbe-tab{
  padding:14px 16px;
  border:1px solid rgba(15,23,42,.08);
  background:color-mix(in srgb, var(--hbbe-surface,#fff) 84%, var(--hbbe-bg,#f6f8fb));
  font-weight:700;
}
.hbbe-app.hbbe-theme-modern .hbbe-form{
  padding:18px;
  border:1px solid rgba(15,23,42,.08);
}
.hbbe-app.hbbe-theme-modern .hbbe-form-row{
  align-items:end;
  gap:14px;
}
.hbbe-app.hbbe-theme-modern .hbbe-field input,
.hbbe-app.hbbe-theme-modern .hbbe-stepper,
.hbbe-app.hbbe-theme-modern .hbbe-stepper-input,
.hbbe-app.hbbe-theme-modern .hbbe-stepper-btn{
  min-height:58px;
}
.hbbe-app.hbbe-theme-modern .hbbe-field-btn .hbbe-btn{
  min-height:58px;
  font-size:22px;
  font-weight:800;
  min-width:188px;
}

/* Tabs clean */
.hbbe-app.hbbe-theme-tabs_clean .hbbe-tabs{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  margin:0 0 0 auto;
  max-width:100%;
  padding:0 24px;
}
.hbbe-app.hbbe-theme-tabs_clean .hbbe-tab{
  padding:18px 34px;
  border-radius:20px 20px 0 0;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(15,23,42,.08);
  border-bottom:none;
  min-width:150px;
  justify-content:center;
  font-weight:700;
}
.hbbe-app.hbbe-theme-tabs_clean .hbbe-form{
  margin-top:-1px;
  border:1px solid rgba(15,23,42,.08);
  padding:22px 20px;
  background:var(--hbbe-surface,#fff);
  border-radius:calc(var(--hbbe-radius,18px) + 6px);
}
.hbbe-app.hbbe-theme-tabs_clean .hbbe-form-row{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr .95fr .95fr .95fr 1.1fr;
  gap:14px;
}
.hbbe-app.hbbe-theme-tabs_clean .hbbe-field label{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:700;
}
.hbbe-app.hbbe-theme-tabs_clean .hbbe-field-btn .hbbe-btn{
  min-height:62px;
  font-size:18px;
  font-weight:800;
}

/* Icon nav */
.hbbe-app.hbbe-theme-icon_nav .hbbe-tabs{
  display:grid;
  grid-template-columns:repeat(7,minmax(120px,1fr));
  gap:8px;
  padding:14px 16px 8px;
  background:var(--hbbe-surface,#fff);
  border:1px solid rgba(15,23,42,.08);
  margin-bottom:0;
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-tab{
  border:none;
  background:transparent;
  padding:12px 8px 14px;
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-tab-inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-tab svg{
  width:28px;
  height:28px;
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-tab.is-active{
  background:transparent;
  color:var(--hbbe-primary,#0b66c3);
  box-shadow:inset 0 -4px 0 var(--hbbe-primary,#0b66c3);
  border-radius:0;
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-tab.is-active svg,
.hbbe-app.hbbe-theme-icon_nav .hbbe-tab:hover svg,
.hbbe-app.hbbe-theme-icon_nav .hbbe-tab:hover{
  color:var(--hbbe-primary,#0b66c3);
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-form{
  padding:18px;
  border:1px solid rgba(15,23,42,.08);
  border-top:none;
  border-radius:0 0 calc(var(--hbbe-radius,18px) + 6px) calc(var(--hbbe-radius,18px) + 6px);
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-form-row{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr)) 1.2fr;
  gap:12px;
}
.hbbe-app.hbbe-theme-icon_nav .hbbe-field-btn .hbbe-btn{
  min-height:54px;
  background:color-mix(in srgb, var(--hbbe-primary,#0b66c3) 80%, #0f172a);
}

/* Vertical card */
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered{
  max-width:1200px;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-form{
  max-width:520px;
  margin-left:auto;
  margin-right:auto;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-attractions-hero,
.hbbe-app.hbbe-theme-vertical_card .hbbe-activity-toolbar,
.hbbe-app.hbbe-theme-vertical_card .hbbe-activity-results,
.hbbe-app.hbbe-theme-vertical_card .hbbe-results-shell,
.hbbe-app.hbbe-theme-vertical_card .hbbe-tickets-module{
  max-width:none;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0;
  overflow:hidden;
  background:transparent;
  max-width:520px;
  margin:0 auto 12px;
  border-radius:calc(var(--hbbe-radius,18px) + 4px);
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-tab{
  border-radius:0;
  min-height:88px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.14);
  background:color-mix(in srgb, var(--hbbe-primary,#0b66c3) 14%, var(--hbbe-surface,#fff));
  color:var(--hbbe-primary,#0b66c3);
  font-weight:700;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-tab svg{color:#fff; width:24px; height:24px;}
.hbbe-app.hbbe-theme-vertical_card .hbbe-tab.is-active{
  background:var(--hbbe-primary,#0b66c3);
  filter:brightness(0.95);
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-form{
  padding:22px;
  border:1px solid rgba(15,23,42,.08);
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-form-row{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-field,
.hbbe-app.hbbe-theme-vertical_card .hbbe-field-btn{
  width:100%;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-field input,
.hbbe-app.hbbe-theme-vertical_card .hbbe-stepper,
.hbbe-app.hbbe-theme-vertical_card .hbbe-stepper-input,
.hbbe-app.hbbe-theme-vertical_card .hbbe-stepper-btn,
.hbbe-app.hbbe-theme-vertical_card .hbbe-field-btn .hbbe-btn{
  min-height:56px;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-field-btn .hbbe-btn{
  font-size:24px;
  font-weight:800;
  background:color-mix(in srgb, var(--hbbe-primary,#0b66c3) 40%, var(--hbbe-accent,#ff7a18));
}

@media (max-width: 1180px){
  .hbbe-app.hbbe-theme-tabs_clean .hbbe-form-row,
  .hbbe-app.hbbe-theme-icon_nav .hbbe-form-row,
  .hbbe-app.hbbe-theme-modern .hbbe-form-row{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .hbbe-app.hbbe-theme-tabs_clean .hbbe-field-btn,
  .hbbe-app.hbbe-theme-icon_nav .hbbe-field-btn,
  .hbbe-app.hbbe-theme-modern .hbbe-field-btn{
    grid-column:1 / -1;
  }
}
@media (max-width: 782px){
  .hbbe-app.hbbe-theme-modern .hbbe-tabs,
  .hbbe-app.hbbe-theme-icon_nav .hbbe-tabs,
  .hbbe-app.hbbe-theme-tabs_clean .hbbe-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr));
    justify-content:stretch;
    padding:0;
  }
  .hbbe-app.hbbe-theme-tabs_clean .hbbe-tab{
    min-width:0;
    border-radius:14px;
    border-bottom:1px solid rgba(15,23,42,.08);
  }
  .hbbe-app.hbbe-theme-icon_nav .hbbe-tab,
  .hbbe-app.hbbe-theme-modern .hbbe-tab{
    min-height:72px;
  }
  .hbbe-app.hbbe-theme-modern .hbbe-form-row,
  .hbbe-app.hbbe-theme-tabs_clean .hbbe-form-row,
  .hbbe-app.hbbe-theme-icon_nav .hbbe-form-row{
    grid-template-columns:1fr;
  }
  .hbbe-app.hbbe-theme-vertical_card .hbbe-tabs{
    grid-template-columns:1fr 1fr;
  }
}


/* v43.12.2 appearance polish: remove white pill hover flash and use branded tab states */
.hbbe-app .hbbe-tab{transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;}
.hbbe-app .hbbe-tab:hover{
  background:color-mix(in srgb, var(--hbbe-primary,#0b66c3) 10%, white) !important;
  color:var(--hbbe-primary,#0b66c3) !important;
  border-color:color-mix(in srgb, var(--hbbe-primary,#0b66c3) 28%, white) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.08);
  transform:translateY(-1px);
}
.hbbe-app .hbbe-tab:hover svg{color:var(--hbbe-primary,#0b66c3) !important;}
.hbbe-app .hbbe-tab.is-active,
.hbbe-app .hbbe-tab[aria-selected="true"]{
  background:var(--hbbe-primary,#0b66c3) !important;
  color:var(--hbbe-button-text,#fff) !important;
  border-color:var(--hbbe-primary,#0b66c3) !important;
  box-shadow:0 10px 22px rgba(15,23,42,.10);
}
.hbbe-app .hbbe-tab.is-active svg,
.hbbe-app .hbbe-tab[aria-selected="true"] svg{color:var(--hbbe-button-text,#fff) !important;}


/* v43.12.3 vertical card emergency layout fix */
.hbbe-app.hbbe-theme-vertical_card .hbbe-tabs .hbbe-tab:hover{
  transform:none;
  box-shadow:none;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-form{
  clear:both;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-field input,
.hbbe-app.hbbe-theme-vertical_card .hbbe-field select,
.hbbe-app.hbbe-theme-vertical_card .hbbe-stepper,
.hbbe-app.hbbe-theme-vertical_card .hbbe-field-btn .hbbe-btn{
  width:100%;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form{
  float:none;
}
@media (max-width: 782px){
  .hbbe-app.hbbe-theme-vertical_card .hbbe-tabs,
  .hbbe-app.hbbe-theme-vertical_card .hbbe-form{
    max-width:100%;
  }
}

/* v43.12.4 vertical card redesign to match compact tabbed card reference */
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form{
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  padding:0;
  margin-bottom:0;
  background:var(--hbbe-primary,#0b66c3);
  border-radius:22px 22px 0 0;
  overflow:hidden;
  box-shadow:0 16px 36px rgba(15,23,42,.14);
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab:nth-child(n+5){display:none;}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab{
  min-height:104px;
  padding:18px 14px;
  background:transparent !important;
  color:var(--hbbe-button-text,#fff) !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transform:none !important;
  opacity:.96;
  flex-direction:column;
  gap:10px;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab .hbbe-tab-ico,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab .hbbe-tab-label{
  display:block;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab svg{
  width:28px;
  height:28px;
  color:currentColor !important;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab .hbbe-tab-label{
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab.is-active,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab[aria-selected="true"]{
  background:var(--hbbe-surface,#fff) !important;
  color:var(--hbbe-primary,#0b66c3) !important;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab:hover{
  background:rgba(255,255,255,.12) !important;
  color:var(--hbbe-button-text,#fff) !important;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab.is-active:hover{
  background:var(--hbbe-surface,#fff) !important;
  color:var(--hbbe-primary,#0b66c3) !important;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form{
  margin-top:0;
  padding:18px 16px 18px;
  border:1px solid rgba(15,23,42,.10);
  border-top:none;
  border-radius:0 0 22px 22px;
  background:var(--hbbe-surface,#fff);
  box-shadow:0 16px 36px rgba(15,23,42,.14);
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-form-row{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-field label,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-field-btn label{
  display:none;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form input,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form select,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-stepper,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-stepper-input,
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-stepper-btn{
  min-height:56px;
  border-radius:8px;
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-field-btn .hbbe-btn{
  width:100%;
  min-height:50px;
  font-size:16px;
  font-weight:800;
  border-radius:8px;
  background:color-mix(in srgb, var(--hbbe-primary,#0b66c3) 88%, #0f172a);
}
.hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form .hbbe-stepper{
  display:grid;
  grid-template-columns:56px 1fr 56px;
}
@media (max-width: 900px){
  .hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs,
  .hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-form{
    max-width:100%;
  }
}
@media (max-width: 640px){
  .hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .hbbe-app.hbbe-theme-vertical_card .hbbe-main-centered > .hbbe-tabs .hbbe-tab:nth-child(n+5){display:none;}
}
