.textures-main {
    min-height: calc(100vh - 82px);
}

.textures-coming-soon {
    position: relative;
    min-height: calc(100vh - 82px);
    padding: 61px 0 80px;
    overflow: hidden;
    background:
        radial-gradient(circle at 50% 38%, rgba(149, 25, 255, 0.16), transparent 23%),
        radial-gradient(circle at 82% 14%, rgba(255, 56, 213, 0.15), transparent 24%),
        radial-gradient(circle at 12% 84%, rgba(78, 47, 255, 0.13), transparent 25%),
        linear-gradient(to bottom, rgba(17, 7, 29, 0.65), rgba(8, 7, 13, 0.92));
}

.textures-coming-soon::before {
    position: absolute;
    inset: 0;
    content: "";
    opacity: 0.32;
    background-image:
        linear-gradient(rgba(218, 137, 255, 0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(218, 137, 255, 0.06) 1px, transparent 1px);
    background-size: 36px 36px;
    mask-image: radial-gradient(circle at 50% 43%, black, transparent 69%);
    pointer-events: none;
}

.textures-coming-soon::after {
    position: absolute;
    width: 700px;
    height: 210px;
    content: "";
    top: 52%;
    left: 50%;
    background: rgba(133, 28, 255, 0.18);
    border-radius: 50%;
    filter: blur(72px);
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.textures-container {
    position: relative;
    z-index: 3;
}

.textures-back-link {
    position: relative;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #d48eff;
    font-size: 13px;
    font-weight: 700;
    transition: color 0.2s ease, transform 0.2s ease;
}

.textures-back-link:hover {
    color: #f2dfff;
    transform: translateX(-4px);
}

.textures-back-link span {
    font-size: 19px;
}

.textures-content {
    display: flex;
    max-width: 760px;
    flex-direction: column;
    align-items: center;
    margin: 30px auto 0;
    text-align: center;
}

.coming-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 13px;
    color: #f0b6ff;
    background: rgba(195, 58, 255, 0.1);
    border: 1px solid rgba(226, 130, 255, 0.27);
    border-radius: 50px;
    box-shadow: 0 0 30px rgba(177, 35, 255, 0.11);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 1.1px;
}

.coming-badge-dot {
    width: 7px;
    height: 7px;
    background: #ff8cf0;
    border-radius: 50%;
    box-shadow: 0 0 0 5px rgba(255, 112, 235, 0.13);
    animation: texturePulseDot 1.65s ease-in-out infinite;
}

.texture-cube-wrap {
    position: relative;
    width: 230px;
    height: 192px;
    margin: 28px 0 2px;
    perspective: 700px;
}

.texture-cube-glow {
    position: absolute;
    width: 130px;
    height: 130px;
    top: 34px;
    left: 50%;
    background: #b124ff;
    border-radius: 50%;
    filter: blur(38px);
    opacity: 0.56;
    transform: translateX(-50%);
    animation: cubeGlowPulse 3s ease-in-out infinite;
}

.texture-cube {
    position: absolute;
    width: 93px;
    height: 93px;
    top: 39px;
    left: 50%;
    transform-style: preserve-3d;
    transform: translateX(-50%) rotateX(-22deg) rotateY(38deg);
    animation: cubeFloat 4.4s ease-in-out infinite;
}

.cube-face {
    position: absolute;
    display: grid;
    width: 93px;
    height: 93px;
    place-items: center;
    backface-visibility: hidden;
}

.cube-front {
    background:
        linear-gradient(135deg, rgba(253, 181, 255, 0.2), transparent 45%),
        linear-gradient(135deg, #b529f1, #6111c4);
    border: 1px solid rgba(255, 211, 255, 0.42);
    box-shadow: inset 0 0 20px rgba(255, 255, 255, 0.12);
    color: #fce9ff;
    font-size: 45px;
    text-shadow: 0 0 16px rgba(255, 255, 255, 0.8);
    transform: translateZ(46px);
}

.cube-right {
    background: linear-gradient(135deg, #6613ba, #2f075f);
    border: 1px solid rgba(244, 183, 255, 0.25);
    transform: rotateY(90deg) translateZ(46px);
}

.cube-top {
    background: linear-gradient(135deg, #ed82ff, #a423dd);
    border: 1px solid rgba(255, 225, 255, 0.5);
    transform: rotateX(90deg) translateZ(46px);
}

.floating-pixel {
    position: absolute;
    display: block;
    background: linear-gradient(135deg, #f1a2ff, #8e2eff);
    border: 1px solid rgba(255, 234, 255, 0.55);
    box-shadow: 0 0 18px rgba(209, 81, 255, 0.77);
    animation: pixelFloat 4s ease-in-out infinite;
}

.pixel-one {
    width: 13px;
    height: 13px;
    top: 29px;
    left: 35px;
}

.pixel-two {
    width: 9px;
    height: 9px;
    top: 62px;
    right: 29px;
    animation-delay: 0.8s;
}

.pixel-three {
    width: 11px;
    height: 11px;
    bottom: 29px;
    left: 52px;
    animation-delay: 1.5s;
}

.pixel-four {
    width: 7px;
    height: 7px;
    right: 57px;
    bottom: 41px;
    animation-delay: 2.4s;
}

.textures-eyebrow {
    color: #d996ff;
}

.textures-content h1 {
    margin-top: 10px;
    color: #f7effd;
    font-family: "Space Grotesk", sans-serif;
    font-size: clamp(41px, 5vw, 64px);
    font-weight: 700;
    letter-spacing: -2.5px;
    line-height: 1.02;
}

.textures-content h1 span {
    background: linear-gradient(100deg, #a42bff, #ff90eb);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.textures-content > p {
    max-width: 648px;
    margin-top: 19px;
    color: #afa0bd;
    font-size: 14px;
    line-height: 1.8;
}

.textures-progress-card {
    width: min(100%, 624px);
    margin-top: 30px;
    padding: 18px;
    background: linear-gradient(145deg, rgba(36, 16, 50, 0.74), rgba(16, 10, 26, 0.75));
    border: 1px solid rgba(216, 127, 255, 0.2);
    border-radius: 16px;
    box-shadow: 0 16px 35px rgba(0, 0, 0, 0.21);
    text-align: left;
    backdrop-filter: blur(13px);
}

.progress-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
}

.progress-card-top > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.progress-icon {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    background: rgba(180, 51, 255, 0.25);
    border: 1px solid rgba(235, 165, 255, 0.25);
    border-radius: 10px;
    color: #f1b2ff;
    font-size: 17px;
}

.progress-card-top strong,
.progress-card-top small {
    display: block;
}

.progress-card-top strong {
    color: #f1e4f8;
    font-size: 12px;
}

.progress-card-top small {
    margin-top: 3px;
    color: #aa98b4;
    font-size: 9px;
}

.progress-percent {
    color: #eaa5ff;
    font-family: "Space Grotesk", sans-serif;
    font-size: 20px;
    font-weight: 700;
}

.progress-bar {
    height: 8px;
    margin-top: 17px;
    overflow: hidden;
    background: rgba(255, 238, 255, 0.09);
    border: 1px solid rgba(255, 211, 255, 0.08);
    border-radius: 50px;
}

.progress-bar span {
    display: block;
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, #8224f0, #e041ff, #ff94eb);
    border-radius: inherit;
    box-shadow: 0 0 17px rgba(220, 66, 255, 0.72);
    transition: width 1.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.progress-steps {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 14px;
    margin-top: 14px;
    color: #78687f;
    font-size: 9px;
    font-weight: 700;
}

.progress-steps .done {
    color: #b78dff;
}

.progress-steps .active-step {
    color: #f3a7ed;
}

.textures-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px;
}

.textures-discord-button {
    color: white;
    background: linear-gradient(135deg, #a72af1, #6820ce);
    border: 1px solid rgba(241, 170, 255, 0.37);
    box-shadow: 0 13px 30px rgba(131, 26, 215, 0.4);
}

.textures-discord-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 19px 38px rgba(163, 38, 234, 0.53);
}

.textures-secondary-button {
    color: #e8dff1;
    background: rgba(255, 255, 255, 0.045);
    border: 1px solid rgba(255, 255, 255, 0.13);
}

.textures-secondary-button:hover {
    transform: translateY(-3px);
    background: rgba(255, 255, 255, 0.085);
}

.textures-features {
    display: grid;
    width: min(100%, 700px);
    grid-template-columns: repeat(3, 1fr);
    gap: 11px;
    margin-top: 35px;
}

.texture-feature {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 12px;
    background: rgba(28, 16, 39, 0.45);
    border: 1px solid rgba(217, 137, 255, 0.12);
    border-radius: 11px;
    text-align: left;
}

.texture-feature > span {
    display: grid;
    width: 29px;
    height: 29px;
    flex: 0 0 auto;
    place-items: center;
    color: #e4a0ff;
    background: rgba(178, 51, 251, 0.17);
    border-radius: 8px;
    font-size: 13px;
}

.texture-feature strong,
.texture-feature small {
    display: block;
}

.texture-feature strong {
    color: #e9deef;
    font-size: 10px;
}

.texture-feature small {
    margin-top: 3px;
    color: #95869f;
    font-size: 8px;
    line-height: 1.35;
}

.texture-orbit {
    position: absolute;
    z-index: 1;
    top: 47%;
    left: 50%;
    border: 1px solid rgba(222, 135, 255, 0.12);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.orbit-large {
    width: 670px;
    height: 310px;
    animation: orbitPulse 6s ease-in-out infinite;
}

.orbit-medium {
    width: 480px;
    height: 235px;
    border-style: dashed;
    animation: orbitRotate 22s linear infinite;
}

.orbit-small {
    width: 290px;
    height: 138px;
    border-color: rgba(255, 145, 232, 0.17);
    animation: orbitRotate 16s linear infinite reverse;
}

.texture-particles {
    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.particle {
    position: absolute;
    width: 5px;
    height: 5px;
    background: #e98cff;
    border-radius: 50%;
    box-shadow: 0 0 12px #cb57ff;
    opacity: 0.55;
    animation: particleDrift 10s ease-in-out infinite;
}

.particle-one {
    top: 23%;
    left: 15%;
}

.particle-two {
    top: 68%;
    left: 13%;
    width: 8px;
    height: 8px;
    animation-delay: 1.4s;
}

.particle-three {
    top: 28%;
    right: 17%;
    animation-delay: 2.6s;
}

.particle-four {
    top: 76%;
    right: 14%;
    width: 7px;
    height: 7px;
    animation-delay: 4s;
}

.particle-five {
    top: 39%;
    left: 26%;
    animation-delay: 5.2s;
}

.particle-six {
    top: 64%;
    right: 27%;
    animation-delay: 3.3s;
}

.particle-seven {
    top: 17%;
    left: 42%;
    width: 4px;
    height: 4px;
    animation-delay: 6.2s;
}

.particle-eight {
    top: 83%;
    left: 45%;
    width: 4px;
    height: 4px;
    animation-delay: 7.1s;
}

@keyframes texturePulseDot {
    0%,
    100% {
        opacity: 0.75;
        box-shadow: 0 0 0 4px rgba(255, 112, 235, 0.09);
    }

    50% {
        opacity: 1;
        box-shadow: 0 0 0 8px rgba(255, 112, 235, 0.2);
    }
}

@keyframes cubeFloat {
    0%,
    100% {
        transform: translateX(-50%) translateY(0) rotateX(-22deg) rotateY(38deg);
    }

    50% {
        transform: translateX(-50%) translateY(-13px) rotateX(-19deg) rotateY(51deg);
    }
}

@keyframes cubeGlowPulse {
    0%,
    100% {
        opacity: 0.42;
        transform: translateX(-50%) scale(0.86);
    }

    50% {
        opacity: 0.78;
        transform: translateX(-50%) scale(1.16);
    }
}

@keyframes pixelFloat {
    0%,
    100% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-14px) rotate(80deg);
    }
}

@keyframes orbitPulse {
    0%,
    100% {
        opacity: 0.42;
        transform: translate(-50%, -50%) scale(0.98);
    }

    50% {
        opacity: 0.83;
        transform: translate(-50%, -50%) scale(1.04);
    }
}

@keyframes orbitRotate {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

@keyframes particleDrift {
    0%,
    100% {
        transform: translate(0, 0);
        opacity: 0.26;
    }

    50% {
        transform: translate(15px, -24px);
        opacity: 0.9;
    }
}

@media (max-width: 700px) {
    .textures-coming-soon {
        min-height: calc(100vh - 70px);
        padding: 42px 0 58px;
    }

    .textures-content {
        margin-top: 25px;
    }

    .texture-cube-wrap {
        width: 200px;
        height: 172px;
        margin-top: 22px;
        transform: scale(0.9);
    }

    .textures-content h1 {
        font-size: 42px;
    }

    .textures-content > p {
        font-size: 13px;
    }

    .textures-progress-card {
        padding: 14px;
    }

    .progress-card-top small {
        max-width: 180px;
    }

    .textures-features {
        grid-template-columns: 1fr;
    }

    .texture-feature {
        padding: 13px;
    }

    .orbit-large {
        width: 510px;
        height: 260px;
    }

    .orbit-medium {
        width: 365px;
        height: 190px;
    }

    .orbit-small {
        width: 230px;
        height: 120px;
    }
}

@media (max-width: 410px) {
    .textures-content h1 {
        font-size: 37px;
    }

    .textures-buttons {
        width: 100%;
    }

    .textures-buttons .button {
        width: 100%;
    }

    .progress-steps {
        gap: 8px;
    }
}