/* CDO Travel mobile header/navigation — v0.3.42.
   Single mobile-only presentation layer. Desktop CSS + isolated actions untouched.
   Values are intentionally compact and independent from LAB/Woo/CDO Menu visual rules. */
body.cdo-theme .cdo-mobile-drawer,
body.cdo-theme header.cdo-theme-header .cdo-theme-mobile-actions { display:none; }
@media (max-width:1023px) {
  body.cdo-theme.cdo-mobile-menu-open { overflow:hidden; }
  body.cdo-theme .cdo-theme-topbar { display:none; }

  /* Mobile shell: equal side rails keep the logo centered with 2 right actions. */
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-top {
    display:grid;grid-template-columns:minmax(80px,1fr) auto minmax(80px,1fr);
    grid-template-rows:44px 38px;column-gap:7px;row-gap:12px;
    align-items:center;width:100%;min-height:0;
    margin:0;padding:var(--cdo-mobile-header-pad,12px) 12px var(--cdo-mobile-header-pad-bottom,16px)!important;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-top > * {
    align-self:center;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-brand {
    display:flex;grid-column:2;grid-row:1;align-items:center;
    justify-self:center;justify-content:center;min-width:0;min-height:0;
    margin:0;padding:0;order:0;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-brand-link {display:inline-flex;align-items:center;justify-content:center;min-height:0;line-height:0;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-logo-desktop{display:none;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-logo-mobile{display:block;line-height:0;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-brand img {
    display:block;width:auto!important;height:auto!important;
    max-width:var(--cdo-mobile-logo-max,100px)!important;max-height:31px!important;object-fit:contain;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-brand-tagline{display:none;}
  /* The hamburger has its own first-paint Shadow DOM, like account and cart.
     Only positioning the HOST is a light-DOM responsibility. */
  body.cdo-theme header.cdo-theme-header .cdo-theme-mobile-menu-host {
    grid-column:1;grid-row:1;justify-self:start;align-self:center;
    width:40px;height:44px;min-width:40px;min-height:44px;
    margin:0;padding:0;
  }
  /* Account/cart remain in a protected Shadow DOM on the right. */
  /* Mobile account and cart live in one isolated Shadow DOM.
     CSS from any plugin cannot change their exact desktop SVG appearance. */
  body.cdo-theme header.cdo-theme-header .cdo-theme-mobile-actions {
    display:flex!important;grid-column:3;grid-row:1;justify-self:end;
    align-items:center;align-self:center;min-width:0;height:44px;margin:0;padding:0;
  }

  /* Discovery logic untouched. Mobile uses a quiet field instead of desktop glow. */
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-tools {
    display:block;grid-column:1/-1;grid-row:2;width:100%;min-width:0;
    order:0;height:38px;margin:0;padding:0;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-actions,
  body.cdo-theme header.cdo-theme-header .cdo-theme-whatsapp{display:none!important;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery{
    display:block;position:relative;width:100%;min-width:0;max-width:none;
    height:38px;margin:0;padding:0;isolation:auto;border:0;border-radius:18px;
    background:transparent;box-shadow:none!important;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery::before,
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery::after {
    display:none!important;content:none!important;animation:none!important;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-discovery-header-search,
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-theme-search-form{
    width:100%;height:38px;min-height:38px;margin:0;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-discovery-header-search__field,
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-theme-search-form {
    display:flex;align-items:center;box-sizing:border-box;width:100%;
    height:38px!important;min-height:38px!important;margin:0;padding:0 6px;
    border:1px solid var(--cdo-search-border,#e4e8f0)!important;border-radius:19px!important;
    background:var(--cdo-search-bg,#fff)!important;box-shadow:none!important;filter:none!important;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-discovery-header-search__field:hover {border-color:var(--cdo-search-border,#d5dce9)!important;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-discovery-header-search__field:focus-within {
    border-color:var(--cdo-search-border,#b8a2eb)!important;box-shadow:0 0 0 2px rgba(104,59,205,.06)!important;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-discovery-header-search__field button.cdo-discovery-header-search__submit {
    left:5px;right:auto;top:50%;width:33px;min-width:33px;
    height:33px;min-height:33px;margin:0;padding:0;
    transform:translateY(-50%);color:#203858;
    background:transparent;border:0;box-shadow:none;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-discovery-header-search__submit::before{width:18px;height:18px;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery input.cdo-discovery-header-search__input[type="search"]{
    height:100%;min-height:0;min-width:0;margin:0;
    padding:0 8px 0 36px!important;font-size:14px!important;font-weight:400;
    line-height:1.25;color:#203858;border:0!important;background:transparent!important;
    box-shadow:none!important;outline:none;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery input.cdo-discovery-header-search__input::placeholder{color:#7b8390;opacity:1;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-theme-search-form{gap:0;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-theme-search-form button{
    display:grid;place-items:center;order:-1;flex:0 0 33px;
    width:33px;height:33px;min-height:33px;padding:6px;
    margin:0;color:#203858;background:transparent;border:0;box-shadow:none;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-theme-search-form button svg{width:18px;height:18px;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-discovery .cdo-theme-search-form input{
    min-width:0;padding:0 6px!important;font-size:14px!important;border:0!important;box-shadow:none!important;
  }

  /* Horizontal shortcuts are visible only when the drawer is closed. */
  body.cdo-theme header.cdo-theme-header .cdo-theme-mobile-chips{
    display:block;width:100%;overflow:hidden;margin:0;padding:0;border:0;background:#fff;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-mobile-chips-track{
    display:flex;align-items:center;gap:7px;overflow-x:auto;overflow-y:hidden;
    padding:11px 12px 10px;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  body.cdo-theme header.cdo-theme-header .cdo-theme-mobile-chips-track::-webkit-scrollbar{display:none;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-mobile-chips a{
    display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
    min-height:30px;padding:5px 11px;border:1px solid #dce2ee;border-radius:999px;
    background:#fff;color:#203858;text-decoration:none;white-space:nowrap;
    font-size:11px;line-height:1.3;font-weight:600;
  }
  body.cdo-theme.cdo-mobile-menu-open header.cdo-theme-header .cdo-theme-mobile-chips{display:none!important;}
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-nav-row,
  body.cdo-theme header.cdo-theme-header .cdo-theme-header-nav-row.is-open{display:none!important;}

  /* Distinct mobile navigation; the WP/CDO menu remains the data source. */
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer{
    display:none;position:fixed;z-index:20000;inset:0;box-sizing:border-box;
    width:100%;height:100dvh;padding:0 12px;
    background:#fff;overflow:hidden;overscroll-behavior:contain;flex-direction:column;
  }
  body.admin-bar.cdo-theme header.cdo-theme-header .cdo-mobile-drawer{top:46px;height:calc(100dvh - 46px);}
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer.is-open{display:flex;}
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-head{
    display:flex;align-items:center;justify-content:space-between;gap:8px;flex:0 0 56px;
    min-height:56px;padding:0;border-bottom:1px solid #e9edf3;background:#fff;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-head-actions {
    display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-currency {
    display:inline-flex;align-items:center;flex:none;gap:3px;min-height:0;
    color:#203858;font-size:12px;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-currency-icon {
    display:inline-flex;align-items:center;justify-content:center;margin-right:3px;
    width:19px;height:19px;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-currency-icon svg {
    width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.55;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-currency a {
    display:inline-flex;align-items:center;justify-content:center;flex:none;
    min-width:35px;height:30px;padding:3px 7px;
    border:1px solid #e4e7ef;border-radius:999px;
    color:#203858;background:#fff;text-decoration:none;
    font-size:12px;line-height:1.3;font-weight:600;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-currency a[aria-current="true"] {
    color:#683bcd;background:#f5efff;border-color:#e6d8ff;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-title{color:#203858;font-size:17px;font-weight:650;}
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-close{
    display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;
    margin:0;padding:0;border:0;border-radius:8px;
    background:#fff;color:#203858;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-close:focus-visible {
    outline:2px solid #8b97a8;outline-offset:0;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-close:focus:not(:focus-visible) {
    outline:none;
  }
  @media (hover:none) {
    body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-close:hover {
      color:#203858;background:transparent;border-color:transparent;box-shadow:none;
    }
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-close svg,
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-close svg * {
    width:21px;height:21px;fill:none!important;stroke:currentColor!important;
    stroke-width:1.65!important;stroke-linejoin:round!important;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-scroll {
    flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;
    overscroll-behavior:contain;scrollbar-width:thin;
    padding-bottom:max(18px,env(safe-area-inset-bottom));
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-list{
    display:block;min-height:0;overflow:visible;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-group{border-bottom:1px solid #edf0f4;}
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-row{
    display:flex;align-items:center;gap:0;min-height:48px;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-link{
    display:flex;align-items:center;flex:1;min-width:0;min-height:48px;
    margin:0;padding:0 3px;border:0;background:transparent;color:#203858;
    text-align:left;text-decoration:none;text-transform:none;cursor:pointer;
    font-size:14px;line-height:1.3;font-weight:600;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-expand{
    display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;
    margin:0;padding:0;background:transparent;border:0;border-radius:6px;color:#64738a;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-expand svg{
    width:16px;height:16px;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;
    transition:transform .15s ease;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-expand[aria-expanded="true"]{color:#683bcd;}
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-expand[aria-expanded="true"] svg{transform:rotate(180deg);}
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-subitems{
    display:block;margin:0 -12px;padding:3px 12px 6px 20px;
    background:#f7f8fb;border-top:1px solid #f0f2f6;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-subitems[hidden]{display:none!important;}
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-subrow .cdo-mobile-drawer-link{
    min-height:40px;padding:0 4px;font-size:13px;line-height:1.35;font-weight:450;color:#283d59;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-utilities{
    display:grid;gap:0;margin:14px 0 0;
    padding:9px 3px 6px;
    border-top:1px solid #e7ecf3;background:#fff;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-utilities>a{
    display:flex;align-items:center;gap:9px;min-height:36px;
    color:#203858;font-size:13px;font-weight:600;text-decoration:none;
  }
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-utilities svg,
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-utilities svg * {
    width:18px;height:18px;fill:none!important;stroke:currentColor!important;
    stroke-width:1.65!important;
  }

}
@media (max-width:359px) {
  body.cdo-theme header.cdo-theme-header .cdo-theme-brand img{max-width:88px!important;max-height:29px!important;}
}
@media (prefers-reduced-motion:reduce) {
  body.cdo-theme header.cdo-theme-header .cdo-mobile-drawer-expand svg{transition:none;}
}
