
/* =========================================================
   JASCOMA COMMON / FINAL HANDOFF v3
   Mobile navigation + shared header behavior only.
   ========================================================= */

.header .nav .contact-link{
  color:#050505 !important;
}

.menu-btn{
  display:none;
  position:relative;
  z-index:130;
  width:44px;
  height:44px;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}

.menu-btn span{
  display:block;
  width:25px;
  height:2px;
  margin:0 auto;
  background:#050505;
  transition:transform .24s ease, opacity .24s ease;
}

.menu-btn span + span{
  margin-top:7px;
}

.menu-btn.open span:first-child{
  transform:translateY(4.5px) rotate(45deg);
}

.menu-btn.open span:last-child{
  transform:translateY(-4.5px) rotate(-45deg);
}

.mobile-menu{
  position:fixed;
  z-index:95;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:92px 24px 40px;
  background:rgba(255,255,255,.99);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease, visibility .24s ease;
}

.mobile-menu.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.mobile-menu nav{
  width:min(100%,360px);
  display:flex;
  flex-direction:column;
  align-items:stretch;
}

.mobile-menu nav a{
  position:relative;
  padding:16px 0;
  border-bottom:1px solid #dedede;
  color:#050505;
  font-size:22px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.08em;
}

.mobile-menu nav a::after{
  content:"↗";
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  color:#e31967;
  font-size:18px;
  font-weight:700;
}

body.menu-open{
  overflow:hidden;
}

@media(max-width:767px){
  .header{
    z-index:120;
  }

  .header .nav{
    display:none !important;
  }

  .menu-btn{
    display:block;
  }

  .header.scrolled{
    background:rgba(255,255,255,.985) !important;
    border-bottom:1px solid rgba(5,5,5,.08) !important;
    box-shadow:0 8px 24px rgba(0,0,0,.08) !important;
    backdrop-filter:blur(14px) !important;
    -webkit-backdrop-filter:blur(14px) !important;
  }
}

@media(min-width:768px){
  .mobile-menu{
    display:none !important;
  }
}
