/* V25.00.14: equally sized search controls, with a compact two-column layout. */
#tbeMount .tbe-switch__tab:focus-visible { outline:3px solid #008add; outline-offset:2px; }
:is(#tbeMount,#city-tbe,#fit-tbe) .tbe-switch__tabs.ro-travel-tabs {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px; overflow:visible;
}
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab {
  box-sizing:border-box; min-width:0; width:auto; height:52px; min-height:52px; padding:0 12px; gap:8px; border-radius:10px;
}
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab > span:first-child {
  display:inline-flex !important; visibility:visible !important; white-space:nowrap;
}
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-native-package { order:1; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-native-hotel { order:2; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-native-flight { display:none !important; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-cruise { order:3; padding:0 !important; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab.ro-travel-types {
  order:4; position:relative; overflow:visible; padding:0;
  border-color:#cbd9e5; background:#f8fafc; color:var(--navy,#082f5f); box-shadow:none;
}
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .ro-travel-types:hover {
  border-color:#9ebbd0; background:#f1f6fa;
}
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-types::after { display:none !important; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle {
  appearance:none; display:flex; align-items:center; justify-content:space-between;
  box-sizing:border-box; position:absolute; inset:0; gap:8px; width:100%; height:100%; min-height:0; padding:0 12px;
  border:0; border-radius:inherit; background:transparent; color:inherit;
  font:inherit; line-height:1.2; text-align:left; cursor:pointer;
}
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle .ro-travel-label { display:block !important; min-width:0; white-space:normal; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle .ro-travel-symbols { display:flex; flex:none; align-items:center; gap:10px; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols svg { width:20px; height:20px; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols svg:last-child { width:16px; height:16px; transform:rotate(90deg); }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle[aria-expanded="true"] .ro-travel-symbols svg:last-child { transform:rotate(-90deg); }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle:focus-visible { outline:3px solid #008add; outline-offset:2px; }
.ro-travel-panel {
  position:fixed; z-index:1500; box-sizing:border-box; margin:0; padding:10px 8px 8px;
  overflow-y:auto; overscroll-behavior:contain; border:1px solid #b9d0e5; border-radius:12px;
  background:#fff; color:#082f5f; box-shadow:0 12px 30px rgba(8,47,95,.18);
  font-family:inherit; font-size:16px; line-height:1.35;
}
.ro-travel-panel[hidden] { display:none !important; }
.ro-travel-panel h2 { margin:3px 10px 8px; color:#082f5f; font-size:17px; line-height:1.4; font-weight:700; }
.ro-travel-item {
  appearance:none; position:relative; box-sizing:border-box; display:flex; align-items:center;
  gap:22px; width:100%; min-height:54px; padding:11px 14px; border:0; border-radius:9px;
  background:transparent; color:#084780; text-align:left; text-decoration:none; font:inherit; cursor:pointer;
}
.ro-travel-item + .ro-travel-item::before {
  position:absolute; top:0; left:70px; right:10px; height:1px; background:#e7eff5; content:"";
}
.ro-travel-item svg { width:28px; height:28px; flex:none; color:#007bd4; }
.ro-travel-item span { flex:1; }
.ro-travel-item svg:last-child { width:18px; height:18px; }
.ro-travel-item:hover, .ro-travel-item:focus-visible, .ro-travel-item[aria-current] { background:#e5f3fd; color:#005cb5; }
.ro-travel-item:focus-visible { outline:2px solid #008add; outline-offset:-2px; }
/* Narrow results columns use two equal columns so every label remains readable. */
:is(body.results-mode, body.destination-results-mode) :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs {
  grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px;
}
:is(body.results-mode, body.destination-results-mode) :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab {
  padding:0 8px; justify-content:center; gap:0; font-size:13px;
}
:is(body.results-mode, body.destination-results-mode) :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle {
  padding:0 8px; font-size:13px; gap:3px; justify-content:center; text-align:center;
}
:is(body.results-mode, body.destination-results-mode) :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols svg:first-child { display:none; }
:is(body.results-mode, body.destination-results-mode) :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols svg:last-child { width:12px; height:12px; }
@media(max-width:680px) {
  :is(#tbeMount,#city-tbe,#fit-tbe) .tbe-switch__tabs.ro-travel-tabs {
    grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px;
  }
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab {
    justify-content:center; gap:0; padding:0 8px; font-size:13px;
  }
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab::after,
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab > span + span { display:none !important; }
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle { gap:3px; padding:0 8px; font-size:13px; justify-content:center; text-align:center; }
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-toggle .ro-travel-symbols { gap:3px; }
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols svg:first-child { display:none; }
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols svg:last-child { width:12px; height:12px; }
  .ro-travel-item { gap:18px; }
}

/* The new cruise entry is ordinary same-site navigation, not a fake TBE mode. */
.ro-travel-cruise > a { box-sizing:border-box; display:flex; align-items:center; justify-content:space-between; gap:8px; width:100%; height:100%; min-height:0; padding:0 12px; color:inherit; text-decoration:none; font:inherit; white-space:nowrap; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-cruise > a > span { display:inline !important; visibility:visible !important; }
.ro-travel-cruise > a svg { width:20px; height:20px; flex:none; }
.ro-travel-cruise > a:focus-visible { outline:3px solid #008add; outline-offset:2px; border-radius:inherit; }
:is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-tabs > .tbe-switch__tab.ro-travel-types.ro-travel-selected { background:#0868b8; color:white; border-color:#0868b8; }
.ro-travel-item[aria-pressed="true"] { background:#e5f3fd; color:#005cb5; }
:is(body.results-mode,body.destination-results-mode) .ro-travel-cruise > a svg { display:none; }
.ro-primary-static { grid-template-columns:minmax(0,.9fr) minmax(0,.7fr) minmax(0,1.25fr) minmax(0,1.55fr); gap:4px; font-size:11px; }
.ro-primary-static > * { min-width:0; padding:0 4px; gap:0; min-height:48px; }
.ro-primary-static > .ro-travel-types { padding:0; }
.ro-primary-static .ro-travel-toggle { width:100%; min-height:48px; padding:4px; display:flex; align-items:center; justify-content:center; border:0; border-radius:inherit; background:transparent; color:inherit; font:inherit; font-weight:700; cursor:pointer; }
.ro-primary-static .ro-travel-toggle:focus-visible { outline:2px solid #1683c9; outline-offset:2px; }
@media(max-width:680px){
  .ro-travel-cruise > a svg { display:none; }
  .ro-travel-cruise > a { padding-inline:2px; }
}
/* Keep the dropdown arrow independent of the centered compact label. */
:is(body.results-mode,body.destination-results-mode) :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols { position:absolute; right:8px; }
:is(body.results-mode,body.destination-results-mode) :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-label { max-width:calc(100% - 22px); }
:is(body.results-mode,body.destination-results-mode) .ro-travel-cruise > a { justify-content:center; padding-inline:8px; }
@media(max-width:680px){
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-symbols { position:absolute; right:6px; }
  :is(#tbeMount,#city-tbe,#fit-tbe) .ro-travel-label { max-width:calc(100% - 20px); }
  .ro-travel-cruise > a { justify-content:center; padding-inline:8px; }
}
@media(max-width:480px){
  :is(#tbeMount,#city-tbe,#fit-tbe) .tbe-switch__tabs.ro-travel-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
