/*
 * Atlantis OTA design — mobile navigation (hamburger + slide-in drawer).
 * Used only by header-ota.php (homepage) and header-ota-inner.php (inner pages).
 * Markup: template-parts/ota-mobile-nav.php · Behaviour: assets/js/ota-nav.js
 */
/* ---- Sticky header (all widths): the contact strip scrolls away, the menu bar stays on top ---- */
.fixed_header,.ota-header{position:sticky!important;top:0;z-index:900;transition:box-shadow .25s ease}
.fixed_header.is-stuck,.ota-header.is-stuck{box-shadow:0 6px 22px rgba(18,53,82,.09)}
@media (min-width:783px){body.admin-bar .fixed_header,body.admin-bar .ota-header{top:32px}}
@media (min-width:601px) and (max-width:782px){body.admin-bar .fixed_header,body.admin-bar .ota-header{top:46px}}
/* In-page anchors (#inquiryForm, #services…) land below the sticky bar. */
html{scroll-padding-top:90px}
/* Legacy CSS sets overflow-x:hidden on html/body, which disables sticky; clip prevents sideways scroll without breaking it. */
html,body{overflow-x:clip!important;overflow-y:visible!important}

.ota-mbar{display:none}
.ota-mnav[hidden]{display:none!important}

@media (max-width:991px){
  /* ---- Header bar: logo left · Sign Up + hamburger right ---- */
  .fixed_header>.container>.row,
  .ota-header__row{display:flex!important;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:12px;min-height:66px;padding:0!important}
  .fixed_header .col-md-2,.ota-header__brand{flex:0 0 auto}
  .fixed_header .col-md-10{flex:0 0 auto;width:auto}
  .logo_normal img,.ota-header__logo img{width:132px!important;margin:0!important}
  .fixed_header .main-menu,.ota-header__nav{display:none!important}

  .ota-mbar{display:flex;align-items:center;gap:10px}
  .ota-mbar__signup{display:inline-flex;align-items:center;height:38px;padding:0 16px;border-radius:8px;background:#0877ce;color:#fff!important;font:750 12px/1 'Segoe UI',Arial,sans-serif;letter-spacing:.3px;text-transform:uppercase;text-decoration:none!important;white-space:nowrap}
  .ota-burger{position:relative;width:42px;height:38px;border:1px solid #d9e9f3;border-radius:8px;background:#fff;padding:0;cursor:pointer;display:grid;place-items:center}
  .ota-burger span,.ota-burger span::before,.ota-burger span::after{display:block;width:18px;height:2px;border-radius:2px;background:#123552;transition:transform .3s ease,background-color .2s ease}
  .ota-burger span{position:relative}
  .ota-burger span::before,.ota-burger span::after{content:'';position:absolute;left:0}
  .ota-burger span::before{top:-6px}
  .ota-burger span::after{top:6px}
  .ota-burger:focus-visible{outline:2px solid #0877ce;outline-offset:2px}

  /* ---- Drawer ---- */
  .ota-mnav{position:fixed;inset:0;z-index:1000;font-family:'Segoe UI',Arial,sans-serif}
  .ota-mnav__backdrop{position:absolute;inset:0;background:rgba(10,41,72,.45);opacity:0;transition:opacity .3s ease}
  .ota-mnav__panel{position:absolute;top:0;right:0;bottom:0;width:min(360px,88vw);background:#fff;display:flex;flex-direction:column;box-shadow:-18px 0 50px rgba(8,47,73,.2);transform:translateX(100%);transition:transform .32s cubic-bezier(.4,0,.2,1)}
  .ota-mnav.is-open .ota-mnav__backdrop{opacity:1}
  .ota-mnav.is-open .ota-mnav__panel{transform:none}

  .ota-mnav__head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #e1edf4;min-height:66px}
  .ota-mnav__logo img{width:120px;height:auto;display:block}
  .ota-mnav__close{width:38px;height:38px;border:1px solid #d9e9f3;border-radius:8px;background:#fff;position:relative;cursor:pointer;padding:0}
  .ota-mnav__close span::before,.ota-mnav__close span::after{content:'';position:absolute;left:50%;top:50%;width:16px;height:2px;border-radius:2px;background:#123552;margin:-1px 0 0 -8px}
  .ota-mnav__close span::before{transform:rotate(45deg)}
  .ota-mnav__close span::after{transform:rotate(-45deg)}

  .ota-mnav__panel{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .ota-mnav__body{flex:1 0 auto;padding:8px 0}
  .ota-mnav__list,.ota-mnav__sub{list-style:none;margin:0;padding:0}
  .ota-mnav__list>li{border-bottom:1px solid #eef4f8;margin:0}
  .ota-mnav__list>li>a,.ota-mnav__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 22px;font-size:15px;font-weight:650;color:#123552;background:none;border:0;text-align:left;text-decoration:none;cursor:pointer;line-height:1.3;font-family:inherit}
  .ota-mnav__list a.is-current,.ota-mnav__group.is-current>.ota-mnav__toggle{color:#0877ce}
  .ota-mnav__list>li>a.is-current{background:#edf8ff;box-shadow:inset 3px 0 0 #0877ce}
  .ota-mnav__toggle::after{content:'';width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid currentColor;transition:transform .3s ease}
  .ota-mnav__group.is-open>.ota-mnav__toggle::after{transform:rotate(180deg)}
  .ota-mnav__sub{display:block;max-height:0;overflow:hidden;transition:max-height .3s ease;background:#f7fbfe}
  .ota-mnav__sub>li{margin:0}
  .ota-mnav__group.is-open>.ota-mnav__sub{max-height:520px}
  .ota-mnav__sub a{display:block;padding:12px 22px 12px 36px;font-size:14px;color:#46687f;text-decoration:none}
  .ota-mnav__sub li:first-child a{padding-top:14px}
  .ota-mnav__sub li:last-child a{padding-bottom:16px}
  .ota-mnav__sub a.is-current{color:#0877ce;font-weight:650}
  .ota-mnav__list a:hover,.ota-mnav__toggle:hover{color:#0877ce}

  .ota-mnav__foot{padding:18px 20px 22px;border-top:1px solid #e1edf4;display:grid;gap:10px;background:#fff}
  .ota-mnav__cta{display:flex;align-items:center;justify-content:center;height:46px;border-radius:9px;background:#0877ce;border:1px solid #0877ce;color:#fff!important;font-size:14px;font-weight:750;text-decoration:none!important;letter-spacing:.2px}
  .ota-mnav__cta.is-ghost{background:#fff;color:#0877ce!important;border-color:#bcdcf2}
  .ota-mnav__contact{display:flex;flex-direction:column;gap:4px;margin-top:6px;font-size:12px;color:#61798d}
  .ota-mnav__contact span{font-weight:700;color:#123552;font-size:11px;text-transform:uppercase;letter-spacing:1px;margin-bottom:2px}
  .ota-mnav__contact a{color:#466c87;text-decoration:none}

  html.ota-mnav-lock,html.ota-mnav-lock body{overflow:hidden!important}
}

@media (max-width:380px){
  .ota-mbar__signup{padding:0 12px;font-size:11px}
  .logo_normal img,.ota-header__logo img{width:118px!important}
}

@media (prefers-reduced-motion:reduce){
  .ota-mnav__panel,.ota-mnav__backdrop,.ota-mnav__sub,.ota-burger span,.ota-mnav__toggle::after{transition:none!important}
}
