@utility premium-blur {
    backdrop-filter: blur(12px);
    background-color: rgba(255, 255, 255, 0.98);
}

@utility shadow-premium {
    box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.05);
}

@utility shadow-premium-hover {
    box-shadow: 0 20px 60px -12px rgba(0, 0, 0, 0.08);
}

@utility nav-link-premium {
    @apply relative px-8 py-2 text-[12px] font-bold tracking-[0.12em] uppercase text-midnight/80 transition-all duration-300;
    
    &::after {
        content: '';
        @apply absolute bottom-1 left-1/2 w-0 h-[2px] bg-primary transition-all duration-300 -translate-x-1/2;
    }
    
    &:hover::after, &.active::after {
        @apply w-6;
    }
    
    &:hover, &.active {
        @apply text-primary opacity-100 -translate-y-[1px];
    }
}

@utility text-gradient {
    background-image: linear-gradient(135deg, #117850 0%, #117873 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@utility border-premium {
    border-color: var(--color-line);
}
