/* ICODE MOBILE HEADER V19 */
@media (max-width:900px){
  html.icode-v19-public,
  html.icode-v19-public body{
    overflow-x:hidden !important;
  }

  html.icode-v19-public .icode-v19-original-header{
    display:none !important;
  }

  .icode-v19-mobile-header{
    position:sticky;
    top:0;
    z-index:2147482000;
    width:100%;
    padding:10px 12px;
    background:rgba(247,249,249,.92);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(14,48,57,.06);
  }

  .icode-v19-mobile-bar{
    width:min(100%,680px);
    height:62px;
    margin:0 auto;
    padding:8px 9px 8px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    background:#fff;
    border:1px solid rgba(14,48,57,.08);
    border-radius:18px;
    box-shadow:0 12px 34px rgba(14,48,57,.09);
  }

  .icode-v19-brand{
    display:flex;
    align-items:center;
    min-width:0;
    text-decoration:none;
  }

  .icode-v19-brand img{
    display:block;
    width:auto;
    height:auto;
    max-width:min(168px,46vw);
    max-height:43px;
    object-fit:contain;
  }

  .icode-v19-toggle{
    appearance:none;
    border:0;
    width:44px;
    height:44px;
    border-radius:13px;
    background:#0e3039;
    color:#fff;
    display:grid;
    place-items:center;
    cursor:pointer;
    box-shadow:0 8px 18px rgba(14,48,57,.18);
    flex:0 0 auto;
  }

  .icode-v19-toggle-lines{
    width:20px;
    height:16px;
    position:relative;
    display:block;
  }

  .icode-v19-toggle-lines span{
    position:absolute;
    left:0;
    width:20px;
    height:2px;
    border-radius:99px;
    background:currentColor;
    transition:transform .24s ease,opacity .2s ease,top .24s ease;
  }
  .icode-v19-toggle-lines span:nth-child(1){top:1px}
  .icode-v19-toggle-lines span:nth-child(2){top:7px}
  .icode-v19-toggle-lines span:nth-child(3){top:13px}

  .icode-v19-toggle[aria-expanded="true"] .icode-v19-toggle-lines span:nth-child(1){
    top:7px; transform:rotate(45deg);
  }
  .icode-v19-toggle[aria-expanded="true"] .icode-v19-toggle-lines span:nth-child(2){
    opacity:0;
  }
  .icode-v19-toggle[aria-expanded="true"] .icode-v19-toggle-lines span:nth-child(3){
    top:7px; transform:rotate(-45deg);
  }

  .icode-v19-backdrop{
    position:fixed;
    inset:0;
    z-index:2147481500;
    background:rgba(6,27,33,.58);
    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);
    opacity:0;
    pointer-events:none;
    transition:opacity .24s ease;
  }

  .icode-v19-backdrop.is-open{
    opacity:1;
    pointer-events:auto;
  }

  .icode-v19-drawer{
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    z-index:2147481800;
    width:min(88vw,390px);
    padding:20px 18px 24px;
    background:
      radial-gradient(circle at 90% 0%,rgba(221,160,110,.18),transparent 25%),
      linear-gradient(180deg,#0d3039,#0a2830 75%,#08242b);
    color:#fff;
    box-shadow:-24px 0 70px rgba(0,0,0,.24);
    transform:translateX(105%);
    transition:transform .28s cubic-bezier(.2,.75,.2,1);
    overflow-y:auto;
    overscroll-behavior:contain;
  }

  .icode-v19-drawer.is-open{
    transform:translateX(0);
  }

  .icode-v19-drawer-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:4px 0 20px;
    border-bottom:1px solid rgba(255,255,255,.10);
  }

  .icode-v19-drawer-logo{
    display:block;
    max-width:155px;
    max-height:44px;
    width:auto;
    height:auto;
    object-fit:contain;
    filter:brightness(0) invert(1);
    opacity:.95;
  }

  .icode-v19-close{
    appearance:none;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.06);
    color:#fff;
    width:42px;
    height:42px;
    border-radius:13px;
    font-size:24px;
    line-height:1;
    cursor:pointer;
  }

  .icode-v19-kicker{
    margin:24px 0 10px;
    color:#dda06e;
    font-size:11px;
    font-weight:900;
    letter-spacing:.18em;
    text-transform:uppercase;
  }

  .icode-v19-nav{
    display:grid;
    gap:6px;
  }

  .icode-v19-nav a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:54px;
    padding:0 4px;
    color:#fff;
    text-decoration:none;
    font-size:24px;
    line-height:1;
    font-weight:800;
    letter-spacing:-.035em;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .icode-v19-nav a::after{
    content:"↗";
    color:#dda06e;
    font-size:17px;
    transform:translateY(-1px);
  }

  .icode-v19-nav a:hover,
  .icode-v19-nav a:focus{
    color:#f0b17f;
  }

  .icode-v19-nav a.icode-v19-system{
    margin-top:10px;
    min-height:50px;
    justify-content:center;
    border:1px solid rgba(221,160,110,.42);
    border-radius:14px;
    color:#fff;
    background:rgba(221,160,110,.10);
    font-size:16px;
  }

  .icode-v19-nav a.icode-v19-system::after{
    content:"";
  }

  .icode-v19-drawer-foot{
    margin-top:24px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.10);
  }

  .icode-v19-drawer-foot p{
    margin:0;
    color:rgba(255,255,255,.58);
    font-size:12px;
    line-height:1.6;
  }

  .icode-v19-drawer-cta{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    margin-top:16px;
    border-radius:14px;
    background:#dda06e;
    color:#0e3039;
    text-decoration:none;
    font-size:15px;
    font-weight:900;
  }

  body.icode-v19-lock{
    overflow:hidden !important;
    touch-action:none;
  }

  /* Remove only the excessive space left by the old mobile header.
     This is intentionally narrow and does not center or rebuild sections. */
  html.icode-v19-public main{
    margin-top:0 !important;
  }

  html.icode-v19-public main > :first-child{
    scroll-margin-top:86px;
  }
}

@media (max-width:520px){
  .icode-v19-mobile-header{padding:8px}
  .icode-v19-mobile-bar{
    height:58px;
    padding-left:13px;
    padding-right:7px;
    border-radius:16px;
  }
  .icode-v19-brand img{
    max-width:min(155px,44vw);
    max-height:39px;
  }
  .icode-v19-toggle{
    width:42px;
    height:42px;
    border-radius:12px;
  }
  .icode-v19-drawer{
    width:min(91vw,370px);
  }
}
/* END ICODE MOBILE HEADER V19 */