/* Brutalist Details */
body {
    background-color: #09090B;
    color: #E4E4E7;
    font-family: 'Rajdhani', sans-serif;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Anton', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.text-stroke {
    -webkit-text-stroke: 1.5px #FFFFFF;
    color: transparent;
}

.text-stroke-red {
    -webkit-text-stroke: 1px #DC2626;
    color: transparent;
}

/* Sharp Edges & Custom Scrollbar */
* {
    border-radius: 0 !important;
}

::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #09090B;
}

::-webkit-scrollbar-thumb {
    background: #DC2626;
}

::-webkit-scrollbar-thumb:hover {
    background: #ef4444;
}

/* Glitch Effect Animation on Hover for specific text */
.glitch-hover:hover {
    animation: glitch 0.3s cubic-bezier(.25, .46, .45, .94) both infinite;
    color: #DC2626;
}

@keyframes glitch {
    0% {
        transform: translate(0)
    }

    20% {
        transform: translate(-2px, 2px)
    }

    40% {
        transform: translate(-2px, -2px)
    }

    60% {
        transform: translate(2px, 2px)
    }

    80% {
        transform: translate(2px, -2px)
    }

    100% {
        transform: translate(0)
    }
}

/* Sword Cut Effect */
.fire-glow {
    background: radial-gradient(circle, rgba(220, 38, 38, 0.25) 0%, rgba(9, 9, 11, 0) 70%);
    filter: blur(60px);
    animation: pulse-fire 6s infinite alternate;
}

@keyframes pulse-fire {
    0% {
        transform: scale(0.8);
        opacity: 0.4;
    }

    100% {
        transform: scale(1.2);
        opacity: 0.7;
    }
}

/* Sword Cut Effect */
.word-appear {
    opacity: 0;
    transform: scale(1.5);
    animation: impact-appear 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

@keyframes impact-appear {
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.cut-container {
    position: relative;
    display: inline-block;
}

.cut-text-top,
.cut-text-bottom {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    opacity: 0;
}

.cut-text-top {
    clip-path: polygon(0 0, 100% 0, 100% 55%, 0 45%);
    animation: impact-appear 0.5s forwards 1.2s, split-top 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.5s;
}

.cut-text-bottom {
    clip-path: polygon(0 45%, 100% 55%, 100% 100%, 0 100%);
    animation: impact-appear 0.5s forwards 1.2s, split-bottom 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.5s;
}

@keyframes split-top {
    to {
        transform: translate(-3px, -3px) rotate(-0.5deg);
    }
}

@keyframes split-bottom {
    to {
        transform: translate(3px, 3px) rotate(0.5deg);
        text-shadow: 0 0 15px rgba(220, 38, 38, 0.8);
    }
}

.sword-slash-line {
    position: absolute;
    top: 50%;
    left: -50%;
    width: 200%;
    height: 2px;
    background: white;
    box-shadow: 0 0 15px white, 0 0 30px rgba(255, 255, 255, 0.8);
    transform: rotate(-5deg) translateY(-50%);
    opacity: 0;
    animation: slash-pass 0.15s linear forwards 2.45s;
    pointer-events: none;
    z-index: 20;
}

@keyframes slash-pass {
    0% {
        left: -50%;
        opacity: 0;
    }
    10% {
        opacity: 1;
        transform: scale(1.5);
    }
    90% {
        opacity: 1;
    }
    100% {
        left: 100%;
        opacity: 0;
    }
}

/* Dual Tone Text Effect (Static) */
.dual-tone-text {
    -webkit-text-stroke: 1.5px #FFFFFF;
    color: transparent;
    text-shadow: 0 0 15px rgba(220, 38, 38, 0.8);
}
