.mobile-menu{position:fixed;inset:0;z-index:var(--z-modal);pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.mobile-menu--active{pointer-events:auto;opacity:1;visibility:visible}.mobile-menu__overlay{position:absolute;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px)}.mobile-menu__content{position:absolute;top:0;right:0;width:85%;max-width:360px;height:100%;background:var(--color-background);box-shadow:var(--shadow-2xl);transform:translateX(100%);transition:transform var(--transition-base);display:flex;flex-direction:column;padding:var(--spacing-2xl) var(--spacing-xl)}.mobile-menu--active .mobile-menu__content{transform:translateX(0)}.mobile-menu__close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);width:40px;height:40px;border:none;background:var(--color-background-alt);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center}.mobile-menu__close::after,.mobile-menu__close::before{content:'';position:absolute;width:20px;height:2px;background:var(--color-text-primary)}.mobile-menu__close::before{transform:rotate(45deg)}.mobile-menu__close::after{transform:rotate(-45deg)}.mobile-nav{list-style:none;margin:var(--spacing-3xl) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.mobile-nav__item{opacity:0;transform:translateX(20px);transition:opacity var(--transition-base),transform var(--transition-base)}.mobile-menu--active .mobile-nav__item{opacity:1;transform:translateX(0)}.mobile-menu--active .mobile-nav__item:first-child{transition-delay:0.1s}.mobile-menu--active .mobile-nav__item:nth-child(2){transition-delay:0.15s}.mobile-menu--active .mobile-nav__item:nth-child(3){transition-delay:0.2s}.mobile-menu--active .mobile-nav__item:nth-child(4){transition-delay:0.25s}.mobile-menu--active .mobile-nav__item:nth-child(5){transition-delay:0.3s}.mobile-menu--active .mobile-nav__item:nth-child(6){transition-delay:0.35s}.mobile-nav__link{display:block;padding:var(--spacing-md) var(--spacing-lg);font-family:var(--font-heading);font-size:var(--font-size-h5);font-weight:var(--font-weight-medium);color:var(--color-text-primary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast)}.mobile-nav__link:hover{background:var(--color-background-alt);color:var(--color-primary);text-decoration:none}