/* SEPINDAR R12.31.01 — MOBILE HOME RESPONSIVE POLISH
   Scope: mobile home only. Desktop is untouched.
*/
.sep-mobile-home-r1230{display:none}

@media (max-width:768px){
  html,body{max-width:100%;overflow-x:hidden!important}
  body.home-page{background:#031a37!important}

  /* Mobile header */
  .home-page .utility-bar{display:none!important}
  .home-page .site-header{
    position:sticky!important;top:0!important;z-index:2147483000!important;
    isolation:isolate!important;overflow:visible!important;
    background:linear-gradient(180deg,#082c50 0%,#062441 100%)!important;
    border:0!important;box-shadow:none!important
  }
  .home-page .site-header .wrap.nav{
    position:relative!important;z-index:2147483001!important;overflow:visible!important;
    min-height:88px!important;width:100%!important;padding:12px 14px!important;
    display:grid!important;grid-template-columns:72px minmax(0,1fr) 72px!important;
    align-items:center!important;gap:6px!important
  }
  .home-page .brand{
    position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;
    grid-column:auto!important;grid-row:auto!important;justify-self:auto!important;align-self:auto!important;
    margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;
    z-index:2!important
  }
  .home-page .brand picture{display:block!important;line-height:0!important}
  .home-page .brand-logo{
    display:block!important;width:150px!important;max-width:min(150px,42vw)!important;
    height:auto!important;max-height:58px!important;object-fit:contain!important
  }
  .home-page .menu-toggle{
    display:flex!important;grid-row:1!important;justify-self:center!important;
    width:54px!important;height:54px!important;border-radius:16px!important;
    border:1px solid rgba(255,255,255,.26)!important;background:rgba(255,255,255,.04)!important;
    box-shadow:none!important;align-items:center!important;justify-content:center!important
  }
  .home-page .menu-toggle span{background:#fff!important}
  [dir="rtl"] .home-page .menu-toggle{grid-column:3!important}
  [dir="ltr"] .home-page .menu-toggle{grid-column:1!important}
  .home-page .language-switch{grid-row:1!important;justify-self:center!important;margin:0!important}
  [dir="rtl"] .home-page .language-switch{grid-column:1!important}
  [dir="ltr"] .home-page .language-switch{grid-column:3!important}
  .home-page .language-switch>button{
    min-width:64px!important;width:auto!important;height:54px!important;padding:0 10px!important;
    border:1px solid rgba(255,255,255,.26)!important;border-radius:16px!important;
    background:rgba(255,255,255,.04)!important;color:#fff!important;box-shadow:none!important
  }
  .home-page .language-switch .lang-name-v390{display:none!important}
  .home-page .language-switch .lang-caret{color:#fff!important}
  .home-page .nav-cta{display:none!important}
  .home-page .site-header #primary-navigation,
  .home-page .site-header nav{
    position:fixed!important;top:88px!important;left:12px!important;right:12px!important;
    z-index:2147483640!important;display:none!important;flex-direction:column!important;
    width:auto!important;height:auto!important;max-height:calc(100dvh - 104px)!important;
    margin:0!important;padding:12px!important;overflow-y:auto!important;overflow-x:hidden!important;
    background:#fff!important;border:1px solid rgba(6,38,79,.12)!important;border-radius:18px!important;
    box-shadow:0 28px 70px rgba(0,15,40,.38)!important
  }
  .home-page .site-header #primary-navigation.open,
  .home-page .site-header nav.open,
  body.menu-open.home-page .site-header #primary-navigation,
  body.menu-open.home-page .site-header nav{display:flex!important}
  .home-page .site-header nav a{
    width:100%!important;color:#06264f!important;padding:11px 13px!important;border-radius:10px!important;
    font-size:15px!important;line-height:1.35!important
  }

  body.menu-open.home-page:before{
    content:""!important;position:fixed!important;inset:88px 0 0!important;
    background:rgba(3,25,52,.44)!important;backdrop-filter:blur(2px)!important;
    z-index:2147483630!important;pointer-events:auto!important
  }

  /* Desktop hero stays available for desktop only */
  .home-page .premium-hero-v37{display:none!important}

  .home-page .sep-mobile-home-r1230{
    display:block!important;position:relative!important;overflow:hidden!important;
    width:100%!important;max-width:100%!important;min-height:calc(100svh - 88px)!important;
    background:#031a37!important;color:#fff!important
  }
  .home-page .sep-mobile-home-r1230-bg{
    position:absolute!important;inset:0!important;background-image:var(--sep-mobile-hero)!important;
    background-size:cover!important;background-position:center top!important
  }
  .home-page .sep-mobile-home-r1230-overlay{
    position:absolute!important;inset:0!important;
    background:linear-gradient(180deg,rgba(3,25,52,.24) 0%,rgba(3,25,52,.43) 25%,rgba(3,25,52,.72) 58%,#031a37 100%)!important
  }
  .home-page .sep-mobile-home-r1230-shell{
    position:relative!important;z-index:2!important;width:100%!important;max-width:100%!important;
    min-width:0!important;padding:72px 12px 30px!important;box-sizing:border-box!important
  }

  /* Main copy + route desk remain side-by-side, never overlapping */
  .home-page .sep-mobile-home-r1230-main{
    display:grid!important;grid-template-columns:minmax(0,1.62fr) minmax(118px,.78fr)!important;
    gap:10px!important;align-items:stretch!important;width:100%!important;max-width:100%!important;
    min-width:0!important;box-sizing:border-box!important
  }
  .home-page .sep-mobile-home-r1230-copy{
    min-width:0!important;max-width:100%!important;padding-top:28px!important;
    display:flex!important;flex-direction:column!important
  }
  .home-page .sep-mobile-home-r1230-kicker{
    display:flex!important;align-items:center!important;gap:8px!important;
    color:#f1c64d!important;font-size:10px!important;line-height:1.45!important;font-weight:800!important;
    margin:0 0 12px!important;white-space:normal!important;word-break:keep-all!important;overflow-wrap:normal!important
  }
  .home-page .sep-mobile-home-r1230-kicker:before{
    content:""!important;display:block!important;width:24px!important;height:2px!important;background:#f1c64d!important;flex:none!important
  }
  .home-page .sep-mobile-home-r1230-copy h1{
    margin:0!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
    font-size:clamp(31px,8.3vw,40px)!important;line-height:1.18!important;font-weight:850!important;
    letter-spacing:0!important;overflow-wrap:normal!important;word-break:keep-all!important;hyphens:none!important;
    white-space:normal!important;text-wrap:balance!important;text-shadow:0 3px 20px rgba(0,0,0,.26)!important
  }
  [dir="ltr"] .home-page .sep-mobile-home-r1230-copy h1{
    font-size:clamp(30px,7.7vw,39px)!important;line-height:1.08!important
  }
  .home-page .sep-mobile-home-r1230-copy p{
    margin:18px 0 0!important;color:#edf3f8!important;font-size:14px!important;line-height:1.78!important;
    overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important
  }
  .home-page .sep-mobile-home-r1230-actions{
    display:grid!important;gap:9px!important;margin-top:auto!important;padding-top:20px!important
  }
  .home-page .sep-mobile-home-r1230-actions a{
    min-height:54px!important;padding:0 15px!important;border-radius:16px!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    text-decoration:none!important;font-size:16px!important;line-height:1.2!important;font-weight:820!important;
    white-space:normal!important;word-break:keep-all!important;overflow-wrap:normal!important
  }
  .home-page .sep-mobile-home-r1230-actions a.primary{
    color:#08213f!important;background:linear-gradient(135deg,#f6d46e,#dfa936)!important;
    box-shadow:0 12px 28px rgba(218,166,49,.20)!important
  }
  .home-page .sep-mobile-home-r1230-actions a.secondary{
    color:#fff!important;background:rgba(3,29,60,.74)!important;border:1px solid rgba(244,195,72,.70)!important;
    backdrop-filter:blur(8px)!important
  }
  .home-page .sep-mobile-home-r1230-actions b{font-size:26px!important;font-weight:400!important;flex:none!important}

  /* Route desk: vertical but wide enough for natural word wrapping. Its bottom equals CTA block bottom. */
  .home-page .sep-mobile-route-r1230{
    min-width:0!important;max-width:100%!important;margin:24px 0 0!important;padding:13px 10px 14px!important;
    align-self:stretch!important;border-radius:20px!important;
    background:linear-gradient(180deg,rgba(8,48,91,.96),rgba(3,30,62,.99))!important;
    border:1px solid rgba(146,191,231,.45)!important;box-shadow:0 20px 44px rgba(0,0,0,.28)!important;
    overflow:hidden!important;box-sizing:border-box!important
  }
  .home-page .sep-mobile-route-r1230-logo{display:flex!important;justify-content:center!important;margin-bottom:9px!important}
  .home-page .sep-mobile-route-r1230-logo img{display:block!important;width:108px!important;max-width:100%!important;height:auto!important}
  .home-page .sep-mobile-route-r1230-title{
    display:block!important;color:#f0c54c!important;font-size:10px!important;line-height:1.45!important;
    text-align:center!important;overflow-wrap:normal!important;word-break:keep-all!important;hyphens:none!important
  }
  .home-page .sep-mobile-route-r1230-rule{height:1px!important;background:rgba(255,255,255,.18)!important;margin:11px 0 13px!important}
  .home-page .sep-mobile-route-r1230-step{
    display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:8px!important;
    align-items:center!important;min-width:0!important
  }
  [dir="rtl"] .home-page .sep-mobile-route-r1230-step{grid-template-columns:minmax(0,1fr) 40px!important}
  [dir="rtl"] .home-page .sep-mobile-route-r1230-step .num{grid-column:2!important}
  [dir="rtl"] .home-page .sep-mobile-route-r1230-step>div{grid-column:1!important;grid-row:1!important;text-align:right!important}
  .home-page .sep-mobile-route-r1230-step .num{
    width:40px!important;height:40px!important;border-radius:50%!important;border:1px solid rgba(160,201,237,.48)!important;
    display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;
    font-size:12px!important;overflow:hidden!important
  }
  .home-page .sep-mobile-route-r1230-step.core .num{
    border-radius:12px!important;background:#efbd28!important;border-color:#efbd28!important;color:#071a30!important
  }
  .home-page .sep-mobile-route-r1230-step .num svg{width:22px!important;height:22px!important}
  .home-page .sep-mobile-route-r1230-step small{
    display:block!important;margin-bottom:3px!important;color:#91a6bb!important;font-size:8px!important;line-height:1.25!important;
    letter-spacing:0!important;overflow-wrap:normal!important;word-break:keep-all!important;hyphens:none!important
  }
  .home-page .sep-mobile-route-r1230-step b{
    display:block!important;color:#fff!important;font-size:12px!important;line-height:1.35!important;
    overflow-wrap:normal!important;word-break:keep-all!important;hyphens:none!important
  }
  .home-page .sep-mobile-route-r1230-rail{width:40px!important;height:30px!important;position:relative!important}
  [dir="rtl"] .home-page .sep-mobile-route-r1230-rail{margin-inline-start:auto!important}
  .home-page .sep-mobile-route-r1230-rail:before{
    content:""!important;position:absolute!important;left:19px!important;top:0!important;bottom:0!important;
    width:1px!important;background:rgba(255,255,255,.18)!important
  }
  .home-page .sep-mobile-route-r1230-rail i{
    position:absolute!important;left:15px!important;top:11px!important;width:9px!important;height:9px!important;
    border-radius:50%!important;background:#efbd28!important;box-shadow:0 0 0 5px rgba(239,189,40,.09)!important
  }
  .home-page .sep-mobile-route-r1230-note{
    margin-top:12px!important;padding-top:10px!important;border-top:1px solid rgba(255,255,255,.16)!important;
    color:#b3c1cf!important;font-size:9px!important;line-height:1.45!important;text-align:center!important;
    word-break:normal!important;overflow-wrap:normal!important
  }

  /* Brand transport icons — force SEPINDAR gold, never black. */
  .home-page .sep-mobile-home-r1230-modes{
    margin-top:24px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;min-width:0!important
  }
  .home-page .sep-mobile-home-r1230-modes a{min-width:0!important;color:#fff!important;text-decoration:none!important;text-align:center!important}
  .home-page .sep-mobile-home-r1230-modes i{
    width:56px!important;height:56px!important;max-width:100%!important;margin:0 auto 7px!important;
    border-radius:15px!important;border:1px solid rgba(125,174,215,.38)!important;
    display:flex!important;align-items:center!important;justify-content:center!important;color:#f1c64d!important;
    background:rgba(3,31,64,.34)!important
  }
  .home-page .sep-mobile-home-r1230-modes svg{width:27px!important;height:27px!important;color:#f1c64d!important}
  .home-page .sep-mobile-home-r1230-modes svg *,
  .home-page .sep-mobile-route-r1230 svg *{stroke:#f1c64d!important}
  .home-page .sep-mobile-home-r1230-modes svg [fill]:not([fill="none"]),
  .home-page .sep-mobile-route-r1230 svg [fill]:not([fill="none"]){fill:#f1c64d!important}
  .home-page .sep-mobile-home-r1230-modes svg path:not([fill="none"]),
  .home-page .sep-mobile-home-r1230-modes svg rect:not([fill="none"]),
  .home-page .sep-mobile-home-r1230-modes svg circle:not([fill="none"]),
  .home-page .sep-mobile-home-r1230-modes svg polygon:not([fill="none"]){fill:#f1c64d!important}
  .home-page .sep-mobile-home-r1230-modes span{
    display:block!important;font-size:10.5px!important;line-height:1.35!important;color:#f0f4f8!important;
    overflow-wrap:normal!important;word-break:keep-all!important;hyphens:none!important
  }

  .home-page .sep-mobile-home-r1230-foot{
    margin-top:26px!important;padding-bottom:4px!important;display:grid!important;gap:5px!important;color:#fff!important
  }
  .home-page .sep-mobile-home-r1230-foot b{color:#c0cfdf!important;font-size:10px!important;letter-spacing:.30em!important}
  .home-page .sep-mobile-home-r1230-foot span{color:#9caec0!important;font-size:11px!important}
  .home-page .mobile-quote-v1612{display:none!important}
  .home-page .tracking-home-v680,.home-page .tracking-home-v700{margin-top:0!important}

  /* RTL language discipline and readable mobile typography */
  html[lang="fa"] .home-page,
  html[lang="ar"] .home-page,
  html[lang="ku"] .home-page,
  html[lang="fa"] .sep-assistant,
  html[lang="ar"] .sep-assistant,
  html[lang="ku"] .sep-assistant{
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif!important;
    font-feature-settings:"kern" 1,"liga" 1!important;-webkit-font-smoothing:antialiased!important;
    text-rendering:optimizeLegibility!important
  }
  html[lang="fa"] .sep-mobile-home-r1230,
  html[lang="ar"] .sep-mobile-home-r1230,
  html[lang="ku"] .sep-mobile-home-r1230,
  html[lang="fa"] .sep-assistant,
  html[lang="ar"] .sep-assistant,
  html[lang="ku"] .sep-assistant{direction:rtl!important;text-align:right!important}
  html[lang="fa"] .sep-mobile-home-r1230 *,
  html[lang="ar"] .sep-mobile-home-r1230 *,
  html[lang="ku"] .sep-mobile-home-r1230 *{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
  html[lang="fa"] .sep-mobile-home-r1230-copy h1,
  html[lang="ar"] .sep-mobile-home-r1230-copy h1,
  html[lang="ku"] .sep-mobile-home-r1230-copy h1{font-weight:850!important;word-break:keep-all!important}

  /* AI launcher — unmistakably AI, compact, and kept above Safari chrome. */
  .sep-assistant[data-sep-ai] .sep-assistant__launcher,
  .home-page .sep-assistant__launcher{
    width:60px!important;height:60px!important;right:14px!important;
    bottom:calc(14px + env(safe-area-inset-bottom))!important;border-radius:50%!important;
    background:linear-gradient(145deg,#f6d568,#dca933)!important;border:2px solid rgba(255,220,105,.78)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.24),0 0 0 3px rgba(6,38,79,.55)!important;
    transform:none!important
  }
  [dir="rtl"] .sep-assistant[data-sep-ai] .sep-assistant__launcher,
  [dir="rtl"] .home-page .sep-assistant__launcher{right:auto!important;left:14px!important}
  .sep-assistant[data-sep-ai] .sep-assistant__launcher:hover,
  .sep-assistant[data-sep-ai] .sep-assistant__launcher:focus-visible{width:60px!important;transform:none!important}
  .sep-assistant[data-sep-ai] .sep-assistant__launcher-mark{
    width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;
    align-items:center!important;justify-content:center!important;gap:1px!important;background:transparent!important;
    color:#06264f!important;font-size:13px!important;font-weight:950!important;line-height:1!important;letter-spacing:.01em!important
  }
  .sep-assistant[data-sep-ai] .sep-assistant__launcher-mark::before{
    content:"🤖"!important;display:block!important;font-size:19px!important;line-height:1!important;margin:0!important
  }
  .sep-assistant[data-sep-ai] .sep-assistant__launcher-label{display:none!important}
}

@media (max-width:410px){
  .home-page .sep-mobile-home-r1230-shell{padding-left:10px!important;padding-right:10px!important;padding-top:64px!important}
  .home-page .sep-mobile-home-r1230-main{
    grid-template-columns:minmax(0,1.58fr) minmax(116px,.78fr)!important;gap:8px!important
  }
  .home-page .sep-mobile-home-r1230-copy{padding-top:24px!important}
  .home-page .sep-mobile-home-r1230-copy h1{font-size:clamp(29px,7.9vw,36px)!important}
  .home-page .sep-mobile-home-r1230-copy p{font-size:13.5px!important;line-height:1.72!important}
  .home-page .sep-mobile-home-r1230-actions a{font-size:15px!important;min-height:52px!important;padding-inline:13px!important}
  .home-page .sep-mobile-route-r1230{margin-top:20px!important;padding-left:8px!important;padding-right:8px!important}
  .home-page .sep-mobile-route-r1230-logo img{width:98px!important}
  .home-page .sep-mobile-route-r1230-step b{font-size:11.5px!important}
  .home-page .sep-mobile-home-r1230-modes{gap:6px!important}
  .home-page .sep-mobile-home-r1230-modes i{width:52px!important;height:52px!important}
  .home-page .sep-mobile-home-r1230-modes span{font-size:10px!important}
}

@media (max-width:340px){
  .home-page .sep-mobile-home-r1230-main{grid-template-columns:1fr!important}
  .home-page .sep-mobile-home-r1230-copy{padding-top:18px!important}
  .home-page .sep-mobile-route-r1230{margin-top:8px!important}
}

/* R12.31.03 — mobile tracking/service icon color hotfix only */
@media (max-width: 767px){
  /* Tracking mode selector icons: force SEPINDAR gold instead of browser/default black. */
  .tracking-home-v680 .tracking-home-mode-v411 label > span > svg,
  .tracking-home-v680 .tracking-home-mode-v411 label > span > svg *,
  .tracking-page .tracking-home-mode-v411 label > span > svg,
  .tracking-page .tracking-home-mode-v411 label > span > svg *{
    color:#e5b83f!important;
    stroke:#e5b83f!important;
  }
  .tracking-home-v680 .tracking-home-mode-v411 label > span > svg path:not([fill="none"]),
  .tracking-home-v680 .tracking-home-mode-v411 label > span > svg rect:not([fill="none"]),
  .tracking-home-v680 .tracking-home-mode-v411 label > span > svg circle:not([fill="none"]),
  .tracking-home-v680 .tracking-home-mode-v411 label > span > svg polygon:not([fill="none"]),
  .tracking-home-v680 .tracking-home-mode-v411 label > span > svg use,
  .tracking-page .tracking-home-mode-v411 label > span > svg path:not([fill="none"]),
  .tracking-page .tracking-home-mode-v411 label > span > svg rect:not([fill="none"]),
  .tracking-page .tracking-home-mode-v411 label > span > svg circle:not([fill="none"]),
  .tracking-page .tracking-home-mode-v411 label > span > svg polygon:not([fill="none"]),
  .tracking-page .tracking-home-mode-v411 label > span > svg use{
    fill:#e5b83f!important;
  }

  /* Home transport mode icons: include <use>/<g> based SVGs as well. */
  .home-page .sep-mobile-home-r1230-modes svg,
  .home-page .sep-mobile-home-r1230-modes svg *{
    color:#e5b83f!important;
    stroke:#e5b83f!important;
  }
  .home-page .sep-mobile-home-r1230-modes svg use,
  .home-page .sep-mobile-home-r1230-modes svg path:not([fill="none"]),
  .home-page .sep-mobile-home-r1230-modes svg rect:not([fill="none"]),
  .home-page .sep-mobile-home-r1230-modes svg circle:not([fill="none"]),
  .home-page .sep-mobile-home-r1230-modes svg polygon:not([fill="none"]){
    fill:#e5b83f!important;
  }
}

/* R12.31.04 — MOBILE HEADER / MENU CONSISTENCY HOTFIX
   Header only, all mobile public pages. Desktop untouched.
*/
@media (max-width:768px){
  body .site-header{
    position:sticky!important;
    top:0!important;
    z-index:10000!important;
    isolation:isolate!important;
    overflow:visible!important;
    background:linear-gradient(180deg,#082c50 0%,#062441 100%)!important;
    border:0!important;
    box-shadow:none!important;
  }
  body .site-header .wrap.nav{
    position:relative!important;
    z-index:10001!important;
    overflow:visible!important;
    min-height:88px!important;
    width:100%!important;
    padding:12px 14px!important;
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr) 72px!important;
    align-items:center!important;
    gap:6px!important;
  }
  body .site-header .brand{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    margin:0!important;
    padding:0!important;
    width:auto!important;
    max-width:46vw!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:2!important;
  }
  body .site-header .brand picture{
    display:block!important;
    line-height:0!important;
    width:auto!important;
  }
  body .site-header .brand-logo{
    display:block!important;
    width:150px!important;
    max-width:min(150px,42vw)!important;
    height:auto!important;
    max-height:58px!important;
    object-fit:contain!important;
    margin:0!important;
  }
  body .site-header .menu-toggle{
    display:flex!important;
    grid-row:1!important;
    width:54px!important;
    height:54px!important;
    border-radius:16px!important;
    border:1px solid rgba(255,255,255,.26)!important;
    background:rgba(255,255,255,.04)!important;
    box-shadow:none!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:4!important;
  }
  body .site-header .menu-toggle span{background:#fff!important}
  [dir="rtl"] body .site-header .menu-toggle{grid-column:3!important;justify-self:center!important}
  [dir="ltr"] body .site-header .menu-toggle{grid-column:1!important;justify-self:center!important}

  body .site-header .language-switch{
    grid-row:1!important;
    justify-self:center!important;
    margin:0!important;
    z-index:4!important;
  }
  [dir="rtl"] body .site-header .language-switch{grid-column:1!important}
  [dir="ltr"] body .site-header .language-switch{grid-column:3!important}
  body .site-header .language-switch>button{
    min-width:64px!important;
    width:auto!important;
    height:54px!important;
    padding:0 10px!important;
    border:1px solid rgba(255,255,255,.26)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.04)!important;
    color:#fff!important;
    box-shadow:none!important;
  }
  body .site-header .language-switch .lang-name-v390{display:none!important}
  body .site-header .language-switch .lang-caret{color:#fff!important}
  body .site-header .nav-cta{display:none!important}

  body .site-header #primary-navigation,
  body .site-header nav#primary-navigation{
    position:fixed!important;
    top:88px!important;
    left:12px!important;
    right:12px!important;
    z-index:10020!important;
    display:none!important;
    flex-direction:column!important;
    width:auto!important;
    height:auto!important;
    max-height:calc(100dvh - 104px)!important;
    margin:0!important;
    padding:12px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    background:#fff!important;
    border:1px solid rgba(6,38,79,.12)!important;
    border-radius:18px!important;
    box-shadow:0 28px 70px rgba(0,15,40,.38)!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
  }
  body.menu-open .site-header #primary-navigation,
  body .site-header #primary-navigation.open,
  body .site-header nav#primary-navigation.open{
    display:flex!important;
  }
  body .site-header #primary-navigation a{
    display:block!important;
    width:100%!important;
    color:#06264f!important;
    padding:11px 13px!important;
    border-radius:10px!important;
    font-size:15px!important;
    line-height:1.35!important;
    position:relative!important;
    z-index:1!important;
  }

  /* Existing home dimmer must stay BELOW the complete header/menu stacking context. */
  body.menu-open.home-page:before{z-index:9990!important}
}

/* R12.31.05 — MOBILE DUPLICATE HERO + MENU EVENT HOTFIX */
@media (max-width:768px){
  /* The desktop hero must never coexist with the dedicated mobile hero. */
  body.home-page .premium-hero-v37{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }

  /* Keep the mobile navigation above every hero/media layer. */
  body .site-header{z-index:2147483000!important;overflow:visible!important}
  body .site-header .wrap.nav{z-index:2147483001!important;overflow:visible!important}
  body .site-header #primary-navigation{
    z-index:2147483002!important;
    pointer-events:auto!important;
  }
  body.menu-open .site-header #primary-navigation,
  body .site-header #primary-navigation.open{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}


/* R12.31.06 — hard mobile duplicate-logo + deterministic menu fix */
@media (max-width:768px){
  body.home-page .premium-hero-v37,
  body.home-page .premium-hero-v37 > *,
  body.home-page .home-route-desk-v123,
  body.home-page .home-route-desk-v123 picture,
  body.home-page .home-route-desk-v123 img{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  body .site-header #primary-navigation.sep-mobile-menu-open-r123106{
    display:flex!important;
    position:fixed!important;
    top:88px!important;
    left:12px!important;
    right:12px!important;
    z-index:2147483646!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
}

/* R12.31.07 — mobile logo placement: header + footer only */
@media (max-width:768px){
  /* No company logo inside the mobile hero / route desk. */
  body.home-page .sep-mobile-route-r1230-logo,
  body.home-page .sep-mobile-route-r1230-logo picture,
  body.home-page .sep-mobile-route-r1230-logo img,
  body.home-page .home-route-desk-v123-head picture,
  body.home-page .home-route-desk-v123-head picture img,
  body.home-page .premium-hero-v37 .home-route-desk-v123 picture,
  body.home-page .premium-hero-v37 .home-route-desk-v123 img{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    height:0!important;
    max-width:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    pointer-events:none!important;
  }

  /* Footer is the only content-area location for the company logo on mobile. */
  body .site-footer .footer-main .footer-brand{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    width:100%!important;
    height:auto!important;
    margin:0 0 20px!important;
    padding:0!important;
    justify-content:center!important;
    align-items:center!important;
    pointer-events:auto!important;
  }
  body .site-footer .footer-main .footer-brand picture{
    display:block!important;
    width:min(72vw,260px)!important;
    max-width:260px!important;
    height:auto!important;
    margin:0 auto!important;
  }
  body .site-footer .footer-main .footer-brand .brand-logo{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:static!important;
    transform:none!important;
    width:100%!important;
    max-width:260px!important;
    height:auto!important;
    max-height:none!important;
    object-fit:contain!important;
    margin:0 auto!important;
  }
}
