#center-line {
    background-color: red;
    position: absolute;
    left: 50%;
    top: 0px;
    width: 1px;
    height: 100%;
}

#grid {
    position: absolute;
    width: 1px;
    height: 100%;
    top: 0%;
    left: 50%;
    background-color: red;
}

#puzzle-container {
    display: none;
    position: absolute;
    /* top: 340px;
    left: 0px; */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 500px;
    width: 1000px;
    perspective: 1000px;
    transform-style: preserve-3d;
    background-color: #000000ff;
    z-index: 30;
}

#troubleshooting-banner {
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -50%);
    /* transform-origin: center; */
    /* transform: translate3d(613px, 50px, 100px); */
    font-size: 3em;
    height: 76px;
    width: 300px;
    transition-behavior: allow-discrete;

    @starting-style {
        opacity: 0;
    }
}

#troubleshooting-intro {
    position: absolute;
    /* transform-origin: center; */
    /* transform: translate3d(613px, 120px, 100px); */
    top: 25%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 2em;
    height: 70px;
    width: 300px;
    transition-behavior: allow-discrete;

    @starting-style {
        opacity: 0;
    }
}

#troubleshooting-button {
    position: absolute;
    /* transform-origin: center;
    transform: translate3d(642px, 200px, 100px); */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.6em;
    width: 253px;
    height: 209px;
    margin-top: 20px;
    background: url('../img/puzzle/obverse/2-2b.svg') no-repeat;
    border: transparent;
    transition-behavior: allow-discrete;

    @starting-style {
        opacity: 0;
    }
}

.troubleshooting-element {
    font-family: var(--font);
    text-align: center;
    color: #d2af19;
    text-shadow: #333333 2px 2px;
    transition: all 2s;
}

#puzzle {
    display: block;
    position: absolute;
    top: 0px;
    left: 10%;
    /* transform: translate(-50%, -10%); */
    height: 500px;
    width: 1000px;
    margin-top: 70px;
    transform-style: preserve-3d;
}

#pieces {
    display: none;
}

#puzzle-data {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
    position: absolute;
    border: none;
    /* background-color: none; */
    /* box-shadow: 2px 2px 4px 4px #00000000; */
    margin: 0px;
    padding: 0px;
    height: fit-content;
    width: fit-content;
    transition: transform 0.8s;
    transform-style: preserve-3d;
    transition:
        all,
        ease-in,
        3s;

    transition-behavior: allow-discrete;

    @starting-style {
        opacity: 0;
    }
}

.puzzle-data-hidden {
    opacity: 0;
}

#puzzle-headline {
    color: #d2af19;
    font-family: Dosis;
    font-size: 2em;
    text-shadow: #2f403e 2px 2px;
    text-align: center;
    border: none;
}

#puzzle-text {
    color: #d2af19;
    font-family: Dosis;
    font-size: 1.2em;
    text-shadow: #2f403e 2px 2px;
    text-align: center;
    margin: 6px;
    border: none;
}

#puzzle-example {
    position: absolute;
    display: none;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
    /* transform-origin: center; */
    transform: translate3d(0px, 0px, 0px);
    max-height: 600px;
    width: 350px;
    padding: 10px;
    box-sizing: content-box;
    background-color: #333333aa;
    box-shadow: #11111111 4px 4px;
    transform-style: preserve-3d;
    transition:
        all,
        ease-in,
        3s;
    top: 0%;
    left: -25%;
}

#puzzle-example-data {
    color: #d2af19;
    font-family: Dosis;
    font-size: 1.1em;
    text-shadow: #2f403e 2px 2px;
}

.place-piece-button {
    position: absolute;
    background-color: #00000022;
}

.puzzle-button {
    position: relative;
    left: 54%;
    transform: translate(-50%);
    background-image: url('../img/place.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-color: transparent;
    height: 60px;
    width: 200px;
    /* box-shadow: inset #333333 2px 2px; */
    border: none;
    /* color: #2f403e; */
    /* font-family: Dosis;
    font-size: .8em;
    text-shadow: #2f403e .3px .3px;
    border-radius: 50%;
    margin-bottom: 5px; */
}

/* .puzzle-button {
    position: relative;
    left: 50%;
    transform: translate(-50%);
    background-color: #d2af19;
    height: 30px;
    width: 100px;
    box-shadow: inset #333333 2px 2px;
    color: #2f403e;
    font-family: Dosis;
    font-size: .8em;
    text-shadow: #2f403e .3px .3px;
    border-radius: 50%;
    margin-bottom: 5px;
} */

.puzzle-piece {
    position: absolute;
    margin: 0px;
    padding: 0px;
    background-color: #00000000;
    background-repeat: no-repeat;
}

.puzzle-piece-container {
    display: block;
    position: absolute;
    background-color: transparent;
    background-size: contain;
    transform-origin: center;
    scale: 1;
    border: transparent 3px;
    transform: translate3d(0px, 0px, 0px);
    transition: transform 0.8s;
    /* transform-style: preserve-3d; */
}

.puzzle-piece-inner {
    position: absolute;
    /* text-align: center; */
    transition: transform 0.8s;
    transform-style: preserve-3d;
    background-size: contain;
}

.puzzle-piece-front,
.puzzle-piece-back {
    position: absolute;
    height: 100%;
    width: 100%;
    -webkit-backface-visibility: hidden;
    /* Safari */
    backface-visibility: hidden;
    /* transform-style: preserve-3d; */
}

.puzzle-piece-front {
    /* top: -100%; */
    background-color: transparent;
    color: var(--textcolor);
    background-size: contain;
    /* transform-style: preserve-3d; */
}

.puzzle-piece-back {
    background-color: transparent;
    transform: rotateY(180deg);
    background-size: contain;
    /* transform-style: preserve-3d; */
}

.hide-piece {
    display: none;
}

.puzzle-inner text {
    color: #a69342ff;
    font-family: 'Courier New', Courier, monospace;
    font-size: 2em;
}

.puzzle-text h2 p {
    display: block;
    color: #a69342ff;
    font-family: 'Courier New', Courier, monospace;
    font-size: 2em;
}

#puzzle-closer {
    display: none;
    position: absolute;
    transform: translate3d(120px, 40px, 130px);
    background-color: #2f403e33;
    background-blend-mode: darken;
    border: none;
    color: #bc8500;
    box-shadow: #bc8500 2px 2px 3px;
    height: 40px;
    width: 100px;
    font-family: Dosis;
    font-size: 1.2em;
    text-shadow: var(--lightaqua) .3px .3px;
}