.contacts {
    width: 100%;
}

.contacts tr {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.contacts h2 {
    padding: 0;
}

.contacts tr td {
    width: 100%;
    height: fit-content;
    padding-bottom: 10px;
}

.ts3viewer {
    background-color: rgba(4, 5, 5, 0.82);
    border: 1px solid rgba(125, 33, 40, 0.45);
    border-radius: 16px;
    box-shadow: 0 24px 40px rgba(0, 0, 0, 0.35);
    width: 100%;
    padding: 10px;
    height: 100%;
    overflow: scroll;
}

.discordviewer {
    width: 100%;
    height: 300px;
}

.socials {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    padding: 8px 0;
}

.socials a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(4, 5, 5, 0.82);
    border: 1px solid rgba(125, 33, 40, 0.45);
    border-radius: 12px;
    box-shadow: 0 16px 28px rgba(0, 0, 0, 0.3);
    padding: 12px;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.socials a:hover,
.socials a:focus {
    border-color: rgba(255, 100, 120, 0.85);
    transform: translateY(-2px);
}

.socials a img {
    width: 48px;
    height: 48px;
}

@media screen and (min-width:768px) {
    .contacts tr {
        flex-direction: row;
        justify-content: space-between;
    }

    .contacts tr td {
        width: 50%;
        padding: 0 12px;
    }

    .discordviewer {
        width: 90%;
        height: 90%;
    }

    .ts3viewer {
        height: 90%;
    }
}

@media screen and (min-width:1200px) {
    .contacts tr td h2 {
        padding: 10px 0;
    }

    .discordviewer {
        height: 800px;
    }
}
