/* Unified OrbiTrip Public Shell Contract: Pure White Background, Navy Text, Orange Brand Accent */
:root {
  --orb-shell-bg: #ffffff;
  --orb-shell-navy: #0f172a;
  --orb-shell-navy-muted: #334155;
  --orb-shell-border: #e2e8f0;
  --orb-shell-accent: #ff6200;
  --orb-shell-accent-hover: #e05600;
}

/* Common Header & Footer Scoped Overrides */
.orb-shell-header,
.orb-shell-footer,
.tour100-header.orb-shell-header,
.tour100-footer.orb-shell-footer,
.orb-footer.orb-shell-footer,
.orb-public-header.orb-shell-header,
.orb-public-footer.orb-shell-footer {
  background-color: var(--orb-shell-bg) !important;
  color: var(--orb-shell-navy) !important;
  border-color: var(--orb-shell-border) !important;
}

/* Wordmark Consistency */
.orb-shell-brand .orb-wordmark,
.orb-shell-header .orb-wordmark,
.orb-shell-footer .orb-wordmark,
.tour100-header.orb-shell-header .tour100-brand {
  font-size: 20px;
  font-weight: 800;
  color: var(--orb-shell-navy) !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  letter-spacing: -0.02em;
}
.orb-shell-brand .orb-wordmark b,
.orb-shell-header .orb-wordmark b,
.orb-shell-footer .orb-wordmark b,
.tour100-header.orb-shell-header .tour100-brand b {
  color: var(--orb-shell-accent) !important;
  font-weight: 800;
}

/* Navigation links across chrome */
.orb-shell-nav a,
.orb-shell-nav .orb-nav-link,
.orb-shell-footer-nav a,
.orb-shell-primary-nav a,
.tour100-header.orb-shell-header nav a,
.tour100-footer.orb-shell-footer a {
  color: var(--orb-shell-navy) !important;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  padding: 8px 12px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  box-sizing: border-box;
  transition: color 0.15s ease, background-color 0.15s ease;
}
.orb-shell-nav a:hover,
.orb-shell-nav .orb-nav-link:hover,
.orb-shell-footer-nav a:hover,
.orb-shell-primary-nav a:hover,
.tour100-header.orb-shell-header nav a:hover,
.tour100-footer.orb-shell-footer a:hover {
  color: var(--orb-shell-accent) !important;
  background-color: rgba(255, 98, 0, 0.06);
}

/* Focusable 44px Support Email with wrapping at 320px */
.orb-shell-email,
a.orb-public-mail.orb-shell-email {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  min-width: 44px !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--orb-shell-navy) !important;
  background-color: #f8fafc !important;
  border: 1px solid var(--orb-shell-border) !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
  word-break: break-all !important;
  overflow-wrap: anywhere !important;
  max-width: 100% !important;
  transition: all 0.15s ease-in-out !important;
}
.orb-shell-email:hover,
a.orb-public-mail.orb-shell-email:hover {
  color: var(--orb-shell-accent) !important;
  border-color: var(--orb-shell-accent) !important;
  background-color: rgba(255, 98, 0, 0.08) !important;
}
.orb-shell-email:focus-visible,
a.orb-public-mail.orb-shell-email:focus-visible {
  outline: 2px solid var(--orb-shell-accent) !important;
  outline-offset: 2px !important;
}

/* Footer layout rows */
.orb-shell-footer {
  padding: 28px 20px 24px;
  box-sizing: border-box;
  border-top: 1px solid var(--orb-shell-border);
}
.orb-shell-footer-main {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--orb-shell-border);
}
.orb-shell-footer-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.orb-shell-contact {
  display: flex;
  align-items: center;
}
.orb-shell-utility {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  font-size: 12px;
  color: var(--orb-shell-navy-muted) !important;
}
.orb-shell-utility a {
  color: var(--orb-shell-navy-muted) !important;
  text-decoration: none;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
.orb-shell-utility p {
  margin: 0;
  color: var(--orb-shell-navy-muted) !important;
}

@media (max-width: 640px) {
  .orb-shell-footer-main {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .orb-shell-footer-nav {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 4px;
  }
  .orb-shell-utility {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}

/* Reviewer/Codex integration: observed catalog EN320/RU320+390 overflow.
   Preserve all controls, allow wrapping, and restore the original header brand scale. */
.tour100-header.orb-shell-header nav {
  flex-wrap: wrap;
  min-width: 0;
  max-width: 100%;
  gap: 4px;
}
.tour100-header.orb-shell-header nav a {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
.orb-shell-header > .orb-shell-header-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 24px;
  width: 100%;
  max-width: 1240px;
  margin-inline: auto;
  padding: 12px 24px;
  box-sizing: border-box;
}
.orb-shell-header-inner > .orb-shell-header-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  min-width: 0;
  max-width: 100%;
}
.orb-shell-header-nav > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 12px;
  max-width: 100%;
  box-sizing: border-box;
  overflow-wrap: anywhere;
  color: var(--orb-shell-navy);
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
}
.tour100-header.orb-shell-header .tour100-brand,
.orb-shell-header-inner > .orb-wordmark {
  font-size: 32px;
  flex-shrink: 0;
}
@media (max-width: 650px) {
  .tour100-header.orb-shell-header nav { flex-basis: 100%; }
  .orb-shell-header > .orb-shell-header-inner { padding: 12px 16px; }
  .orb-shell-header-inner > .orb-shell-header-nav { flex-basis: 100%; }
  .tour100-header.orb-shell-header .tour100-brand,
  .orb-shell-header-inner > .orb-wordmark { font-size: 28px; }
}

/* Parent-authorized shared brand scale; original home reference overrides26px. */
.orb-shell-header .orb-wordmark,
.orb-shell-footer .orb-wordmark,
#orbi-home .orb-header .orb-wordmark,
#orbi-home .orb-shell-footer .orb-wordmark { font-size:32px; }
@media(max-width:650px) {
  .orb-shell-header .orb-wordmark,
  .orb-shell-footer .orb-wordmark,
  #orbi-home .orb-header .orb-wordmark,
  #orbi-home .orb-shell-footer .orb-wordmark { font-size:28px; }
}

/* Observed hydrated EN320 menu clipped1.69px: reduce existing mobile gap8px to6px. */
@media(max-width:360px) { #orbi-home .orb-header-inner { column-gap:6px; flex-wrap:wrap; row-gap:8px; padding-block:8px; } }

@media(max-width:360px) { #orbi-home .orb-header { height:auto; } }

/* Legacy public shell adapter. Selectors were verified by parent loaded DOM; no JS/controls rewritten. */
body[data-orbi-shell-legacy] #root > header,
body[data-orbi-shell-legacy] #orbi-site-footer > footer {
  background:#fff!important; color:#16324b!important; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  border-color:#e3e9ee!important;
}
body[data-orbi-shell-legacy] #root > header {box-shadow:none!important;backdrop-filter:none!important}
body[data-orbi-shell-legacy] #root > header nav {font-size:14px!important;letter-spacing:0!important;text-transform:none!important;font-weight:600!important}
body[data-orbi-shell-legacy] #root > header nav :is(a,button) {min-height:44px;align-items:center}
body[data-orbi-shell-legacy] #root > header span[class~="text-[26px]"],
body[data-orbi-shell-legacy] #orbi-site-footer > footer span[class~="text-2xl"] {font-size:32px!important;font-style:normal!important;line-height:1.1!important;letter-spacing:-1px!important;color:#16324b!important}
body[data-orbi-shell-legacy] #orbi-site-footer > footer {padding-top:40px!important;padding-bottom:28px!important}
body[data-orbi-shell-legacy] #orbi-site-footer > footer a[href="mailto:support@orbitrip.ge"] {display:inline-flex!important;align-items:center;min-height:44px;padding:6px 0;box-sizing:border-box;font-size:15px!important;color:#16324b!important;text-decoration:none}
body[data-orbi-shell-legacy] #orbi-site-footer > footer :is(a,button):focus-visible {outline:3px solid #f4772f;outline-offset:3px}
@media(max-width:767px){body[data-orbi-shell-legacy] #root > header span[class~="text-[26px]"],body[data-orbi-shell-legacy] #orbi-site-footer > footer span[class~="text-2xl"] {font-size:28px!important}body[data-orbi-shell-legacy] #orbi-site-footer > footer {padding-top:28px!important}}

/* STAGE ONLY: one owned core; legacy styles/utilities stay outside it. */
header[data-orb-header-shell="v2"] {
  display:block!important; height:auto!important; min-height:0!important;
  width:100%!important; max-width:none!important; padding:0!important;
  background:#fff!important; color:#0f172a!important;
}
footer[data-orb-footer-shell="v2"] {
  box-sizing:border-box; display:block!important; width:100%!important; max-width:none!important; margin:0!important;
  padding:28px 0 24px!important; border-top:1px solid #e2e8f0;
  background:#fff!important; color:#0f172a!important;
}
[data-orb-footer-core="v2"], [data-orb-header-core="v2"] {
  box-sizing:border-box; width:100%; max-width:1240px; margin-inline:auto;
  display:flex; align-items:center; gap:24px; padding:0 24px;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px!important; line-height:1.55!important; letter-spacing:normal!important;
  color:#0f172a; background:#fff;
}
[data-orb-footer-core="v2"] { flex-wrap:wrap; }
[data-orb-header-core="v2"] { flex-wrap:wrap; padding-block:12px; }
[data-orb-mobile-nav="v2"] { display:none; }
footer[data-orb-footer-shell="v2"] [data-orb-footer-core="v2"] > a[data-orb-role="brand"],
[data-orb-header-core="v2"] > a[data-orb-role="brand"] {
  display:inline-flex!important; align-items:center; flex-shrink:0;
  margin:0!important; padding:0!important; min-height:44px;
  font-family:inherit!important; font-size:32px!important; font-weight:800!important;
  line-height:1!important; letter-spacing:-.02em!important;
  color:#0f172a!important; text-decoration:none!important; border:0!important;
}
[data-orb-footer-core="v2"] [data-orb-role="brand"] b,
[data-orb-header-core="v2"] [data-orb-role="brand"] b { color:#ff6200!important; font-weight:800!important; }
[data-orb-footer-core="v2"] > nav[data-orb-role="primary"],
[data-orb-header-core="v2"] > nav[data-orb-role="primary"] {
  display:flex!important; flex-wrap:wrap; align-items:center; gap:4px;
  flex:1; min-width:0; margin:0!important; padding:0!important;
  font-size:15px!important; line-height:1.55!important; letter-spacing:normal!important;
}
[data-orb-footer-core="v2"] > nav[data-orb-role="primary"] > a,
[data-orb-header-core="v2"] nav[data-orb-role="primary"] > a {
  display:inline-flex!important; align-items:center; box-sizing:border-box;
  min-height:44px; max-width:100%; margin:0!important; padding:8px 12px!important;
  font-family:inherit!important; font-size:14px!important; font-weight:600!important;
  line-height:1.4!important; color:#0f172a!important; text-decoration:none!important;
  white-space:normal; overflow-wrap:anywhere;
  letter-spacing:normal!important;
}
footer[data-orb-footer-shell="v2"] [data-orb-footer-core="v2"] > a[data-orb-role="support"],
#orbi-site-footer footer[data-orb-footer-shell="v2"] [data-orb-footer-core="v2"] > a[data-orb-role="support"] {
  display:inline-flex!important; align-items:center; box-sizing:border-box;
  min-height:44px; max-width:100%; margin:0!important; padding:8px 14px!important;
  font-family:inherit!important; font-size:14px!important; font-weight:700!important;
  line-height:1.4!important; color:#0f172a!important; text-decoration:none!important;
  background:#f8fafc!important; border:1px solid #e2e8f0!important; border-radius:8px;
  overflow-wrap:anywhere;
}
[data-orb-footer-core="v2"] a:focus-visible,
[data-orb-header-core="v2"] a:focus-visible,
[data-orb-mobile-nav="v2"] > summary:focus-visible { outline:2px solid #ff6200; outline-offset:2px; }
[data-orb-footer-extras="v2"] {
  box-sizing:border-box; width:100%; max-width:1240px; margin:16px auto 0; padding:16px 24px 0;
  border-top:1px solid #e2e8f0;
}
[data-orb-header-utilities="v2"] { box-sizing:border-box; width:100%; max-width:1240px; margin-inline:auto; padding:0 24px 12px; }
[data-orb-header-utilities="v2"] [data-orb-native-controls="v2"] { display:flex!important; flex-wrap:wrap; align-items:center; gap:8px; max-width:100%; }
/* Measured legacy utility contrast failures; core branding and navigation are unchanged. */
body[data-orbi-shell-legacy] [data-orb-header-utilities="v2"] button.text-rose-400 { color:#9f1239!important; }
body[data-orbi-shell-legacy] [data-orb-header-utilities="v2"] button[class~="text-[var(--primary)]"] { color:#9a3412!important; }
body[data-orbi-shell-legacy] [data-orb-header-utilities="v2"] [data-orb-native-controls="v2"] .bg-slate-100 > button.text-white { color:#0f172a!important; }
body[data-orbi-shell-legacy] [data-orb-footer-extras="v2"] div[class="flex items-center gap-4 mt-6"] { box-sizing:border-box; width:100%; max-width:100%; min-width:0; flex-wrap:wrap; }
/* Preserve the owner injector and cabinet row; hide only its redundant plain registration link. */
footer[data-orb-footer-shell="v2"]:has(> [data-orb-footer-core="v2"] [data-orb-nav="drivers"][href="/driver-signup/"]) > a#orbi-drvlink-foot[href="/driver-signup/"][rel~="nofollow"]:not([onclick]):not([data-action]) { display:none!important; }
/* Legacy row layout must not create a second primary section around retained utilities. */
[data-orb-footer-extras="v2"] .orb-shell-footer-main { border:0; margin:0; padding:0; }
@media(max-width:760px) {
  [data-orb-footer-core="v2"] { flex-direction:column; align-items:flex-start; gap:12px; padding-inline:16px; }
  [data-orb-footer-core="v2"] > nav[data-orb-role="primary"] { flex:none; flex-direction:column; align-items:flex-start; width:100%; }
  [data-orb-footer-core="v2"] > nav[data-orb-role="primary"] > a { padding-inline:0!important; }
  [data-orb-header-core="v2"] { padding-inline:16px; gap:12px; flex-wrap:nowrap; justify-content:space-between; position:relative; }
  [data-orb-header-core="v2"] > nav[data-orb-role="primary"] { display:none!important; }
  [data-orb-header-core="v2"] > details[data-orb-mobile-nav="v2"] { display:block; margin-left:auto; }
  [data-orb-mobile-nav="v2"] > summary { cursor:pointer; box-sizing:border-box; min-height:44px; display:flex; align-items:center; padding:8px 12px; border:1px solid #e2e8f0; border-radius:8px; font:600 14px/1.4 system-ui,sans-serif; color:#0f172a; background:#fff; list-style:none; }
  [data-orb-mobile-nav="v2"] > summary::-webkit-details-marker { display:none; }
  [data-orb-mobile-nav="v2"] > nav[data-orb-role="primary"] { display:none!important; }
  [data-orb-mobile-nav="v2"][open] > nav[data-orb-role="primary"] { display:flex!important; flex-direction:column; align-items:stretch; box-sizing:border-box; width:auto!important; max-width:none!important; position:absolute; top:100%; left:16px; right:16px; z-index:100; padding:8px; margin:0; border:1px solid #e2e8f0; border-radius:8px; background:#fff; box-shadow:0 8px 20px #0f172a1a; font-size:15px; line-height:1.55; letter-spacing:normal!important; }
  footer[data-orb-footer-shell="v2"] [data-orb-footer-core="v2"] > a[data-orb-role="brand"],
  [data-orb-header-core="v2"] > a[data-orb-role="brand"] { font-size:28px!important; }
  [data-orb-footer-extras="v2"] { padding-inline:16px; }
  [data-orb-header-utilities="v2"] { padding-inline:16px; }
  [data-orb-native-controls="v2"] .orb-auth-desktop { display:flex!important; flex-wrap:wrap; gap:8px; }
}

/* Local KA footer clearance for the existing fixed guide CTA. */
html[lang="ka"] body:has(> #orbi-gcta) footer[data-orb-footer-shell="v2"] {
  padding-bottom:calc(128px + env(safe-area-inset-bottom))!important;
}

/* Reserve the mobile shell row below the existing fixed language panel. */
@media(max-width:760px) {
  body:has(> #orbi-lang.fx):not(:has([data-orb-native-controls="v2"] #orbi-lang)) header[data-orb-header-shell="v2"] > [data-orb-header-core="v2"] {
    padding-top:76px!important;
  }
}

/* Clear the first legal control below the shared fixed header at every width. */
body:has(> #orbi-lang.fx):not(:has([data-orb-native-controls="v2"] #orbi-lang)) #root > header[data-orb-header-shell="v2"].fixed + div.w-full:has(> .pt-16 > .max-w-4xl) {
  padding-top:80px!important;
}
@media(max-width:760px) {
  body:has(> #orbi-lang.fx):not(:has([data-orb-native-controls="v2"] #orbi-lang)) #root > header[data-orb-header-shell="v2"].fixed + div.w-full:has(> .pt-16 > .max-w-4xl) {
    padding-top:144px!important;
  }
}

/* Retained current-app utility callbacks keep their original navigation target styles. */
[data-orb-header-utilities="v2"]:has(> [data-orb-native-controls="v2"].orb-tools) {
  display:flex; flex-wrap:wrap; align-items:center; gap:0 12px;
}
[data-orb-header-utilities="v2"]:has(> [data-orb-native-controls="v2"].orb-tools) > button {
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  min-height:44px; padding:0; border:0; background:transparent; color:var(--ot-ink);
  box-shadow:none; font:inherit; font-size:14px; font-weight:650; letter-spacing:0;
  text-transform:none; white-space:nowrap;
}
[data-orb-header-utilities="v2"]:has(> [data-orb-native-controls="v2"].orb-tools) > button:hover { color:var(--ot-accent); }

/* Replace old native fixed-header assumptions only after a real header measurement. */
html[data-orb-native-header-offset="v1"] #modify-search.orb-shared-react {
  padding-top:calc(var(--orb-native-header-height) + 12px)!important;
}
html[data-orb-native-header-offset="v1"] [data-orbi-view="BOOKING_PAGE"] > .booking151-host {
  padding-top:calc(var(--orb-native-header-height) + 1px)!important;
}
html[data-orb-native-header-offset="v1"] [data-orbi-view="DRIVER_PROFILE"] > .pt-24,
html[data-orb-native-header-offset="v1"] [data-orbi-view="SEARCH_RESULTS"] > .orb-results-page {
  padding-top:calc(var(--orb-native-header-height) + 24px)!important;
}
html[data-orb-native-header-offset="v1"] #modify-search + [data-orbi-view="DRIVER_PROFILE"] > .pt-24 { padding-top:24px!important; }
html[data-orb-native-header-offset="v1"] #modify-search + [data-orbi-view="SEARCH_RESULTS"] > .orb-results-page { padding-top:0!important; }
html[data-orb-native-header-offset="v1"] #booking-step151,
html[data-orb-native-header-offset="v1"] #modify-search,
html[data-orb-native-header-offset="v1"] .orb-results-mount,
html[data-orb-native-header-offset="v1"] #vehicle-results {
  scroll-margin-top:calc(var(--orb-native-header-height) + 8px)!important;
}

/* Local R2 candidate: current221 shared shell composition; existing DOM and handlers retained. */
/* Join preferences and alternate-language link at every width, without changing the menu. */
#orbi-home > header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"] {
  display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:8px 16px;
}
#orbi-home > header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"] > .orb-header-tools {
  margin:0; flex:0 1 auto;
}
#orbi-home > header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"] > a[data-i18n="nav.ru"],
#orbi-home > header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"] > a[data-i18n="nav.en"] {
  display:inline-flex; align-items:center; justify-content:center; min-height:44px;
  color:#0f172a; font:600 14px/1.4 system-ui,sans-serif; text-decoration:none;
}
/* The roomy desktop breakpoint is deliberate: preserve the existing compact/menu fallback. */
@media(min-width:1200px) {
  header[data-orb-header-shell="v2"]:has(> [data-orb-header-utilities="v2"] > :is(.orb-header-tools,.orb-tools)) {
    display:flex!important; align-items:center; justify-content:center; gap:24px;
    padding:12px max(24px,calc((100% - 1192px)/2))!important;
    box-sizing:border-box;
  }
  header[data-orb-header-shell="v2"]:has(> [data-orb-header-utilities="v2"] > :is(.orb-header-tools,.orb-tools)) > [data-orb-header-core="v2"] {
    flex:1 1 auto; width:auto; min-width:0; margin:0; padding:0; flex-wrap:nowrap;
  }
  header[data-orb-header-shell="v2"]:has(> [data-orb-header-utilities="v2"] > :is(.orb-header-tools,.orb-tools)) > [data-orb-header-utilities="v2"] {
    flex:0 1 auto; width:auto; max-width:none; margin:0; padding:0;
  }
}
/* The home footer retained only the meta column after its old brand/nav were replaced. */
#orbi-home > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] {
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 32px;
}
#orbi-home > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .orb-footer-inner {
  width:auto; max-width:none; min-width:0; flex:1 1 400px; margin:0; padding:0;
}
#orbi-home > footer[data-orb-footer-shell="v2"] .orb-footer-meta {
  width:100%; text-align:left; gap:4px;
}
#orbi-home > footer[data-orb-footer-shell="v2"] .orb-footer-legal {
  justify-content:flex-start; flex-wrap:wrap; margin:0;
}
#orbi-home > footer[data-orb-footer-shell="v2"] .orb-footer-legal button {
  min-height:44px;
}
#orbi-home > footer[data-orb-footer-shell="v2"] [data-orbi-slot="payment-methods-footer"] {
  flex:0 1 auto; min-width:0; max-width:100%; margin:0;
}
/* Preserve all three injected account destinations and their original callbacks/URLs. */
footer[data-orb-footer-shell="v2"] > #orbi-cabinets-row {
  max-width:1240px; box-sizing:border-box; margin:0 auto;
  justify-content:flex-start!important; padding:12px 24px 0!important; gap:8px 16px!important;
}
footer[data-orb-footer-shell="v2"] > #orbi-cabinets-row > a {
  min-height:44px; box-sizing:border-box; padding:8px 12px!important;
  border:1px solid #e2e8f0; border-radius:8px!important;
  background:#fff!important; color:#334155!important;
}
@media(max-width:760px) {
  footer[data-orb-footer-shell="v2"] > #orbi-cabinets-row {padding-inline:16px!important;}
}

/* Native homepage utility targets keep their exact event delegation and labels. */
#orbi-home > header[data-orb-header-shell="v2"] .orb-header-tools > :is(.orb-pref-trigger,.orb-signin) {
  min-height:44px; box-sizing:border-box;
}
/* All retained extras share the same outer measure; no dialog header/footer is selected. */
footer[data-orb-footer-shell="v2"] > [data-orb-footer-extras="v2"] {
  margin-top:12px; padding-top:12px;
}
footer[data-orb-footer-shell="v2"] > [data-orb-footer-extras="v2"] > .orb-wrap {
  width:100%; max-width:none; padding-inline:0;
}
footer[data-orb-footer-shell="v2"] > [data-orb-footer-extras="v2"] > .orb-wrap > .orb-footer-main {
  display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:16px 32px;
}
footer[data-orb-footer-shell="v2"] > [data-orb-footer-extras="v2"] .orb-footer-main > .orb-footer-brand {
  flex:1 1 240px;
}
footer[data-orb-footer-shell="v2"] > [data-orb-footer-extras="v2"] .orb-footer-main > .orb-footer-meta {
  align-items:flex-start; text-align:left;
}
footer[data-orb-footer-shell="v2"] > [data-orb-footer-extras="v2"] .orb-footer-legal :is(button,a) {
  min-height:44px;
}
/* This existing editorial disclosure is outside the app root. Preserve every child/link. */
body:has(footer[data-orb-footer-shell="v2"]) > details.orb-legacy-editorial {
  box-sizing:border-box; width:calc(100% - 48px); max-width:1192px;
  margin:0 auto 24px!important; padding:0!important;
  color:#334155; background:#fff!important; border:1px solid #e2e8f0; border-radius:8px;
}
body:has(footer[data-orb-footer-shell="v2"]) > details.orb-legacy-editorial > summary {
  min-height:44px; box-sizing:border-box; padding:12px 16px; cursor:pointer;
}
body:has(footer[data-orb-footer-shell="v2"]) > details.orb-legacy-editorial > :not(summary) {
  margin-inline:16px; max-width:calc(100% - 32px);
}
@media(max-width:760px) {
  body:has(footer[data-orb-footer-shell="v2"]) > details.orb-legacy-editorial {width:calc(100% - 32px);}
}

/* Mobile/footer compactness: preserve all five destinations in three accessible rows. */
@media(max-width:760px) {
  footer[data-orb-footer-shell="v2"] > [data-orb-footer-core="v2"] > nav[data-orb-role="primary"] {
    display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch; gap:4px 16px; width:100%; min-width:0;
  }
  footer[data-orb-footer-shell="v2"] > [data-orb-footer-core="v2"] > nav[data-orb-role="primary"] > a {
    min-height:44px; min-width:0; width:100%; box-sizing:border-box;
    justify-content:flex-start; white-space:normal; overflow-wrap:anywhere;
  }
  footer[data-orb-footer-shell="v2"] > [data-orb-footer-core="v2"] > :is([data-orb-role="brand"],[data-orb-role="support"]) {
    max-width:100%;
  }
}

/* Leave the final disclosure reachable above retained fixed HOME CTA/WhatsApp.
   Observed RU320: 52px WhatsApp + 84px bottom offset + 16px clearance. */
@media(max-width:760px) {
  body:has(#orbi-home) > details.orb-legacy-editorial {
    margin-bottom:calc(152px + env(safe-area-inset-bottom))!important;
  }
}

/* R5: retained legacy app utilities; no reparenting or callback changes. */
header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"]:has(> [data-orb-native-controls="v2"][class~="md:flex"]):has(> button) {
  display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:4px 8px;
}
header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"]:has(> [data-orb-native-controls="v2"][class~="md:flex"]) > button {
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  min-height:44px; min-width:44px; padding:0; border:0; background:transparent;
  color:var(--ot-ink); font:600 14px/1.4 system-ui,sans-serif; white-space:nowrap;
}
header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"] > [data-orb-native-controls="v2"][class~="md:flex"] {
  margin:0; gap:8px; flex:0 0 auto;
}
/* The selected class is updated by the original locale callback; the old 34px sliding
   decoration cannot describe two 44px targets, so selected styling moves to the buttons. */
header[data-orb-header-shell="v2"] [data-orb-native-controls="v2"][class~="md:flex"] > div:has(> button) {
  width:auto; height:auto; min-height:44px; padding:0; display:flex; overflow:visible;
}
header[data-orb-header-shell="v2"] [data-orb-native-controls="v2"][class~="md:flex"] > div:has(> button) > div.absolute { display:none; }
header[data-orb-header-shell="v2"] [data-orb-native-controls="v2"][class~="md:flex"] > div > button {
  min-width:44px; min-height:44px; margin:0; border-radius:999px;
}
header[data-orb-header-shell="v2"] [data-orb-native-controls="v2"][class~="md:flex"] > div > button.text-white {
  color:#fff!important; background:var(--primary,#f26b21);
}
@media(max-width:360px) {
  header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"]:has(> [data-orb-native-controls="v2"][class~="md:flex"]):has(> button) { column-gap:2px; }
}
/* Keep the separate fixed language panel and its existing mobile clearance intact. */
@media(min-width:1200px) {
  header[data-orb-header-shell="v2"]:has(> [data-orb-header-utilities="v2"] > [data-orb-native-controls="v2"][class~="md:flex"]) {
    display:flex!important; align-items:center; justify-content:center; gap:24px;
    padding:12px max(24px,calc((100% - 1192px)/2))!important; box-sizing:border-box;
  }
  header[data-orb-header-shell="v2"]:has(> [data-orb-header-utilities="v2"] > [data-orb-native-controls="v2"][class~="md:flex"]) > [data-orb-header-core="v2"] {
    flex:1 1 auto; width:auto; min-width:0; margin:0; padding:0;
  }
  header[data-orb-header-shell="v2"] > [data-orb-header-utilities="v2"]:has(> [data-orb-native-controls="v2"][class~="md:flex"]) {
    flex:0 1 auto; width:auto; max-width:none; margin:0; padding:0;
  }
}
/* Retain the complete legacy contact, legal, history and account content while
   removing its nested template gutters and oversized separator spacing. */
#orbi-site-footer > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .max-w-6xl {
  max-width:none; padding-inline:0;
}
#orbi-site-footer > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .max-w-6xl > .flex {
  gap:16px 32px;
}
#orbi-site-footer > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .max-w-6xl > .flex > div {
  gap:8px; max-width:100%;
}
#orbi-site-footer > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .max-w-6xl .mt-20 {
  margin-top:20px; padding-top:16px;
}
#orbi-site-footer > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .max-w-6xl .mb-8 { margin-bottom:12px; }
#orbi-site-footer > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .max-w-6xl :is(button,summary) {
  min-height:44px;
}
#orbi-site-footer > footer[data-orb-footer-shell="v2"] [data-orb-footer-extras="v2"] > .max-w-6xl .gap-6:has(> button) {
  flex-wrap:wrap; gap:8px 16px;
}

/* The retained fixed locale panel is outside the header. Reserve its observed
   172px width +14px right inset +24px separation only for this legacy family. */
@media(min-width:1200px) {
  body:has(> #orbi-lang.fx) header[data-orb-header-shell="v2"]:has(> [data-orb-header-utilities="v2"] > [data-orb-native-controls="v2"][class~="md:flex"]) {
    padding-right:210px!important;
    flex-wrap:wrap;
  }
  body:has(> #orbi-lang.fx) header[data-orb-header-shell="v2"]:has(> [data-orb-header-utilities="v2"] > [data-orb-native-controls="v2"][class~="md:flex"]) > [data-orb-header-core="v2"] {
    flex:1 0 620px;
  }
}
