@charset "UTF-8";
.string-svg[data-v-3acded25] {
    fill: none;
    stroke: currentColor;
    stroke-width: var(--6a90ba4d);
    height: var(--room);
    margin: calc(var(--room)*-1/2) 0
}

*[data-v-3acded25] {
    will-change: auto
}

.-gc[data-v-3a044df5] {
    grid-column-gap: var(--g-gap);
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(var(--columns), 1fr);
    grid-template-rows: repeat(var(--rows, 1), var(--rowsHeight, auto));
    position: relative
}

.-gc[data-v-3a044df5]>* {
    --left: 1;
    --top: 1;
    --width: 1;
    --height: 1;
    grid-column-end: calc(var(--left, 1) + var(--width, 1));
    grid-column-start: var(--left, 1);
    grid-row-end: calc(var(--top, 1) + var(--height, 1));
    grid-row-start: var(--top, 1)
}

footer[data-v-8efeae1e] {
    background-color: var(--c-black);
    box-sizing: border-box;
    color: var(--c-white);
    display: grid;
    min-height: calc(var(--vh, 1vh)*101);
    padding-top: var(--h5);
    place-items: start;
    pointer-events: none;
    position: relative
}

footer a[data-v-8efeae1e] {
    color: var(--c-berry)
}

footer .overlay[data-v-8efeae1e] {
    display: none
}

footer>svg[data-v-8efeae1e] {
    fill: transparent;
    stroke-width: 1px;
    stroke: rgba(var(--c-grey-dark-rgb), .4);
    width: 100%
}

footer .-w[data-v-8efeae1e],
footer>svg[data-v-8efeae1e] {
    grid-area: 1/1;
    position: relative;
    transform: translateZ(0);
    z-index: 20
}

footer .-w[data-v-8efeae1e] {
    justify-self: stretch;
    padding-bottom: var(--large);
    padding-top: var(--h1);
    pointer-events: all
}

footer .-w .string-svg[data-v-8efeae1e] {
    --left: 1;
    stroke: var(--c-grey-dark);
    align-self: center
}

footer .-w .heading[data-v-8efeae1e],
footer .-w .string-svg[data-v-8efeae1e] {
    --width: 6;
    position: relative
}

footer .-w .heading.-l[data-v-8efeae1e] {
    justify-self: start
}

footer .-w .heading.-l[data-v-8efeae1e]:before {
    font-feature-settings: "ss03", "ss14";
    bottom: 100%;
    content: "→";
    font-size: var(--mm);
    left: 0;
    margin-right: var(--g-gap);
    position: absolute
}

footer .-w .heading.-r[data-v-8efeae1e] {
    justify-self: end
}

footer .-w .statement[data-v-8efeae1e] {
    --top: 2;
    --width: 2;
    margin-top: var(--h3)
}

footer .-w .statement[data-v-8efeae1e]:before {
    font-feature-settings: "ss03", "ss14";
    content: "+";
    display: block;
    font-size: var(--mm);
    margin-bottom: var(--g-gap)
}

footer .-w .statement.-st-1[data-v-8efeae1e] {
    --left: 1
}

footer .-w .statement.-st-2[data-v-8efeae1e] {
    --left: 3
}

footer .-w .statement.-st-3[data-v-8efeae1e] {
    --left: 5
}

footer .-w .own-modules[data-v-8efeae1e] {
    --top: 3;
    --left: 5;
    --width: 2;
    justify-self: start;
    margin-top: var(--p)
}

footer .-w .own-modules[data-v-8efeae1e]:after {
    content: "↗";
    margin-left: var(--g-gap)
}

footer .-w nav[data-v-8efeae1e] {
    --top: 4;
    --left: 1;
    --width: 6;
    display: grid;
    gap: var(--g-gap);
    grid-template-columns: repeat(6, 1fr);
    margin-top: var(--h3);
    position: relative;
    row-gap: var(--g-gap);
    z-index: 30
}

footer .-w nav .devider[data-v-8efeae1e] {
    display: none
}

footer .-w nav[data-v-8efeae1e] .b-1 {
    grid-column-end: 4;
    grid-column-start: 1;
    grid-row-start: 1
}

footer .-w nav[data-v-8efeae1e] .b-2 {
    grid-column-start: 5;
    grid-row-start: 1
}

footer .-w nav[data-v-8efeae1e] .b-3 {
    grid-column-start: 6;
    grid-row-start: 1
}

footer .-w nav .button:has(svg) svg[data-v-8efeae1e] {
    fill: var(--c-grey);
    margin: .1rem;
    scale: 1;
    transform: translateZ(0);
    transition: scale .3s var(--f-cubic);
    width: var(--h6)
}

footer .-w nav .button:has(svg):hover svg[data-v-8efeae1e] {
    scale: 1.2
}

footer .-w nav .button:has(svg.discord) svg[data-v-8efeae1e] {
    rotate: 0deg
}

footer .-w nav .button:has(svg.discord) svg[data-v-8efeae1e]:not(.i-1) {
    position: absolute
}

footer .-w nav .button:has(svg.discord) svg[data-v-8efeae1e] {
    -webkit-mask-image: radial-gradient(transparent 42%, #000 0, #000 64%, transparent 0);
    mask-image: radial-gradient(transparent 42%, #000 0, #000 64%, transparent 0);
    transition: rotate .9s cubic-bezier(.6, -.5, .4, 1.5), scale .9s var(--f-cubic)
}

footer .-w nav .button:has(svg.discord) svg.i-1[data-v-8efeae1e] {
    -webkit-mask-image: radial-gradient(#000 0, #000 43%, transparent 0);
    mask-image: radial-gradient(#000 0, #000 43%, transparent 0);
    transition: rotate .75s cubic-bezier(.6, -.5, .4, 1.5), scale .75s var(--f-cubic)
}

footer .-w nav .button:has(svg.discord) svg.i-3[data-v-8efeae1e] {
    -webkit-mask-image: radial-gradient(transparent 63%, #000 0, #000 100%, transparent 0);
    mask-image: radial-gradient(transparent 63%, #000 0, #000 100%, transparent 0);
    transition: rotate .975s cubic-bezier(.6, -.5, .4, 1.5), scale .975s var(--f-cubic)
}

footer .-w nav .button:has(svg.discord):hover svg[data-v-8efeae1e] {
    rotate: 1turn
}

footer .-w .the-name[data-v-8efeae1e] {
    --top: 5;
    --width: 6;
    align-items: center;
    align-self: center;
    color: rgba(var(--c-grey-dark-rgb), .4);
    display: flex;
    flex-direction: column;
    justify-content: center;
    justify-self: center;
    line-height: var(--h1-lh);
    margin-top: var(--h3);
    position: relative;
    scale: -1 1;
    translate: .1em 0
}

footer .-w .the-name[data-v-8efeae1e]:after {
    color: var(--c-grey-dark);
    content: "©";
    font-size: var(--h3);
    left: calc(50% + 7.125rem);
    position: absolute;
    top: calc(50% - .25rem);
    vertical-align: super
}

footer .-w .the-name span[data-v-8efeae1e]:last-child {
    margin-right: .15em
}

footer .-w .fidoru[data-v-8efeae1e] {
    --top: 5;
    --width: 6;
    fill: var(--c-white);
    align-self: center;
    aspect-ratio: 76/20;
    height: var(--p);
    justify-self: center;
    margin-top: var(--h2);
    transform: translateZ(0);
    width: auto
}

footer .-w .sub[data-v-8efeae1e] {
    color: var(--c-grey);
    margin-top: var(--h4)
}

footer .-w .-su-1[data-v-8efeae1e] {
    --top: 6;
    --left: 1;
    --width: 3;
    color: var(--c-purple)
}

footer .-w .-su-1[data-v-8efeae1e],
footer .-w .-su-2[data-v-8efeae1e] {
    padding-right: calc(var(--g-margin)*2)
}

footer .-w .-su-2[data-v-8efeae1e] {
    --top: 7;
    --left: 1;
    --width: 3
}

footer .-w .-su-3[data-v-8efeae1e] {
    --top: 7;
    --left: 5;
    --width: 2
}

footer .-w .-su-4[data-v-8efeae1e] {
    --top: 6;
    --left: 5;
    --width: 2;
    color: var(--c-purple)
}

footer .-w .kw[data-v-8efeae1e],
footer .-w .polygon[data-v-8efeae1e] {
    display: none
}

@media (min-width:1024px) {
    footer[data-v-8efeae1e] {
        background-color: initial;
        grid-template-rows: var(--h5) auto;
        padding-top: 0
    }
    footer a[data-v-8efeae1e]:hover {
        color: var(--c-white)
    }
    footer .overlay[data-v-8efeae1e] {
        align-items: flex-end;
        display: flex;
        grid-area: 1/1;
        height: 0;
        justify-content: center;
        pointer-events: none;
        position: sticky;
        top: calc(var(--vh, 1vh)*100);
        width: 100%;
        will-change: scroll-position
    }
    footer .overlay[data-v-8efeae1e]:before {
        background-color: var(--c-black);
        clip-path: url(#trapezium);
        content: ""
    }
    footer .overlay[data-v-8efeae1e]:after,
    footer .overlay[data-v-8efeae1e]:before {
        display: block;
        flex-shrink: 0;
        height: calc(var(--vh, 1vh)*100);
        width: 100%;
        will-change: auto
    }
    footer .overlay[data-v-8efeae1e]:after {
        background-color: #00f;
        bottom: 0;
        left: 0;
        -webkit-mask: radial-gradient(closest-side at center, transparent 90%, #000 0, #000 100%) no-repeat;
        mask: radial-gradient(closest-side at center, transparent 90%, #000 0, #000 100%) no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;
        position: absolute
    }
    footer .-w[data-v-8efeae1e],
    footer>svg[data-v-8efeae1e] {
        grid-area: 2/1
    }
    footer .-w[data-v-8efeae1e] {
        padding-bottom: var(--h3);
        padding-top: var(--large)
    }
    footer .-w .string-svg[data-v-8efeae1e] {
        --left: 2;
        --width: 12;
        top: var(--g-gap)
    }
    footer .-w .heading.-l[data-v-8efeae1e] {
        --left: 2
    }
    footer .-w .heading.-l[data-v-8efeae1e]:before {
        left: auto;
        right: 100%
    }
    footer .-w .heading.-r[data-v-8efeae1e] {
        --left: 8
    }
    footer .-w .statement[data-v-8efeae1e] {
        margin-top: var(--h1)
    }
    footer .-w .statement.-st-1[data-v-8efeae1e] {
        --left: 4
    }
    footer .-w .statement.-st-2[data-v-8efeae1e] {
        --left: 7
    }
    footer .-w .own-modules[data-v-8efeae1e],
    footer .-w .statement.-st-3[data-v-8efeae1e] {
        --left: 10
    }
    footer .-w nav[data-v-8efeae1e] {
        --left: 6;
        --width: 4;
        align-items: center;
        display: flex;
        gap: var(--g-gap)
    }
    footer .-w nav .devider[data-v-8efeae1e] {
        border-right: 1px solid rgba(var(--c-grey-dark-rgb), .4);
        display: block;
        height: 100%;
        margin-left: var(--g-gap);
        margin-right: var(--g-gap);
        padding-bottom: calc(var(--g-gap)/2);
        padding-top: calc(var(--g-gap)/2)
    }
    footer .-w nav[data-v-8efeae1e] .b-1 {
        flex-grow: 1
    }
    footer .-w nav[data-v-8efeae1e] .b-1 {
        grid-column-end: auto;
        grid-column-start: auto;
        grid-row-start: auto
    }
    footer .-w nav[data-v-8efeae1e] .b-2 {
        grid-column-end: auto;
        grid-column-start: auto;
        grid-row-start: auto
    }
    footer .-w nav[data-v-8efeae1e] .b-3 {
        grid-column-end: auto;
        grid-column-start: auto;
        grid-row-start: auto
    }
    footer .-w nav .button:has(svg) svg[data-v-8efeae1e] {
        width: var(--p)
    }
    footer .-w .the-name[data-v-8efeae1e] {
        --width: 14;
        align-items: flex-start;
        color: rgba(var(--c-grey-dark-rgb), .2);
        flex-direction: row;
        justify-content: normal;
        line-height: var(--large-lh);
        translate: calc(var(--h2)*-.5) 0
    }
    footer .-w .the-name[data-v-8efeae1e]:after {
        color: rgba(var(--c-purple-rgb), .4);
        font-size: calc(var(--large)/3);
        left: auto;
        margin-left: var(--g-gap);
        position: static;
        top: auto
    }
    footer .-w .the-name span[data-v-8efeae1e]:last-child {
        margin-right: 0
    }
    footer .-w .fidoru[data-v-8efeae1e] {
        --width: 14;
        margin-top: var(--h1)
    }
    footer .-w .sub[data-v-8efeae1e] {
        margin-top: var(--h6)
    }
    footer .-w .-su-1[data-v-8efeae1e] {
        --top: 6;
        --left: 1;
        --width: 2;
        padding-right: 0
    }
    footer .-w .-su-2[data-v-8efeae1e] {
        --top: 6;
        --left: 5;
        --width: 2;
        padding-right: 0
    }
    footer .-w .-su-3[data-v-8efeae1e] {
        --top: 6;
        --left: 9;
        --width: 2
    }
    footer .-w .-su-4[data-v-8efeae1e] {
        --top: 6;
        --left: 13;
        --width: 2;
        justify-self: end;
        text-align: right
    }
    footer .-w .polygon[data-v-8efeae1e] {
        --top: 7;
        --left: 5;
        --width: 6;
        aspect-ratio: 1/1;
        background-image: url(../images/general/footer-polygon-bg.jpg);
        background-repeat: no-repeat;
        background-size: cover;
        clip-path: polygon(50% 0, 85% 15%, 100% 50%, 85% 85%, 50% 100%, 15% 85%, 0 50%, 15% 15%);
        display: grid;
        margin-top: var(--h3);
        place-items: center
    }
    footer .-w .polygon>*[data-v-8efeae1e] {
        grid-area: 1/1
    }
    footer .-w .polygon .sword[data-v-8efeae1e] {
        aspect-ratio: 1/1
    }
    footer .-w .polygon svg[data-v-8efeae1e] {
        align-self: end;
        justify-self: center;
        margin-bottom: var(--m);
        width: 1.2rem
    }
    footer .-w .kw[data-v-8efeae1e] {
        --top: 7;
        --left: 4;
        --width: 8;
        align-self: center;
        display: block
    }
    footer.-home[data-v-8efeae1e] {
        grid-template-rows: calc(var(--vh, 1vh)*50) auto
    }
}