/* MONTANI Motion Fix - Remove .montani-motion dependency */

:root{
  --mmx-ease:cubic-bezier(.16,1,.3,1);
  --mmx-soft:cubic-bezier(.22,1,.36,1);
  --mmx-y:0px;
}

@keyframes mmxFadeUp{
  from{opacity:0;transform:translate3d(0,18px,0);filter:blur(2px)}
  to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
}
@keyframes mmxCardIn{
  from{opacity:0;transform:translate3d(0,16px,0) scale(.985);clip-path:inset(3% 3% 3% 3%)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1);clip-path:inset(0 0 0 0)}
}
@keyframes mmxLineGrow{
  from{transform:scaleX(0);opacity:0}
  to{transform:scaleX(1);opacity:1}
}

/* Remove .montani-motion prefix */
nav{
  transition:box-shadow .32s var(--mmx-soft),background-color .32s var(--mmx-soft),border-color .32s var(--mmx-soft),transform .32s var(--mmx-soft);
}
nav.is-scrolled{
  background:rgba(255,255,255,.97);
  border-color:rgba(22,22,22,.08);
  box-shadow:0 10px 34px rgba(0,0,0,.07);
}

.logo img,
.footer-brand img{
  transition:transform .55s var(--mmx-soft),filter .55s var(--mmx-soft);
}
@media(hover:hover){
  .logo:hover img{transform:translateY(-1px) scale(1.035)}
  .footer-brand:hover img{transform:scale(1.025)}
}

.eyebrow:before,
.s-label:before{
  transform-origin:left center;
  animation:mmxLineGrow .72s .08s var(--mmx-soft) both;
}

.hero .eyebrow,
.hero h1,
.hero .hero-lead,
.hero .hero-proof,
.hero .hero-actions,
.hero .hero-note,
.page-hero .eyebrow,
.page-hero h1,
.page-hero .hero-lead,
.page-hero .hero-aside{
  animation:mmxFadeUp .9s var(--mmx-ease) both;
}
.hero h1,.page-hero h1{animation-delay:.08s}
.hero .hero-lead,.page-hero .hero-lead{animation-delay:.16s}
.hero .hero-proof,.page-hero .hero-aside{animation-delay:.23s}
.hero .hero-actions{animation-delay:.30s}
.hero .hero-note{animation-delay:.36s}
.hero-card{
  animation:mmxCardIn 1.08s .16s var(--mmx-ease) both;
  transform:translate3d(0,calc(var(--mmx-y) * .035),0);
  transition:box-shadow .45s var(--mmx-soft),border-color .45s var(--mmx-soft);
}

.mmx-reveal{
  opacity:0;
  transform:translate3d(0,18px,0);
  filter:blur(1.5px);
  transition:opacity .82s var(--mmx-ease),transform .82s var(--mmx-ease),filter .82s var(--mmx-ease),border-color .45s var(--mmx-soft),box-shadow .45s var(--mmx-soft),background-color .45s var(--mmx-soft);
  transition-delay:var(--mmx-delay,0ms);
  will-change:opacity,transform;
}
.mmx-reveal.mmx-visible{
  opacity:1;
  transform:translate3d(0,0,0);
  filter:blur(0);
}

.btn,
.nav-cta,
.wa-float,
.back{
  transition:transform .32s var(--mmx-soft),box-shadow .32s var(--mmx-soft),background-color .32s var(--mmx-soft),border-color .32s var(--mmx-soft),color .32s var(--mmx-soft),opacity .32s var(--mmx-soft);
}
@media(hover:hover){
  .btn:hover,
  .nav-cta:hover{transform:translateY(-2px)}
  .wa-float:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 20px 44px rgba(0,0,0,.26)}
  .back:hover{transform:translateY(-2px)}
  .problem:hover,
  .pillar:hover,
  .case:hover,
  .principle:hover,
  .application:hover,
  .deliverable:hover,
  .process-step:hover,
  .faq details:hover{
    transform:translateY(-4px);
    border-color:rgba(0,74,173,.22);
    box-shadow:0 20px 46px rgba(0,0,0,.055);
  }
}

.mobile-menu{
  display:block;
  visibility:hidden;
  opacity:0;
  pointer-events:none;
  transform:translateY(-8px) scale(.985);
  transition:opacity .28s var(--mmx-soft),transform .32s var(--mmx-soft),visibility 0s linear .32s;
}
.mobile-menu.is-open{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
  transition-delay:0s;
}
.mobile-toggle span{
  transition:transform .25s var(--mmx-soft),opacity .2s ease;
}
.mobile-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mobile-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.mobile-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:700px){
  .mmx-reveal{transform:translate3d(0,10px,0);filter:none;transition-duration:.58s}
  .hero-card{transform:none!important}
  .hero .eyebrow,
  .hero h1,
  .hero .hero-lead,
  .hero .hero-proof,
  .hero .hero-actions,
  .hero .hero-note,
  .page-hero .eyebrow,
  .page-hero h1,
  .page-hero .hero-lead,
  .page-hero .hero-aside{animation-duration:.62s}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,
  *:before,
  *:after{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
  .mmx-reveal{opacity:1!important;transform:none!important;filter:none!important}
}
