.-ethics-table {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto 2rem;
    max-width: 90%;
}

.-ethics-col {
    flex: 1;
    min-width: 260px;
}

.virtue-card {
    position: relative;
    width: fit-content;
    max-width: 70%;
    margin: 72px auto;
    padding: 16px 70px 72px 70px;
    -moz-animation: shadows 16s ease-in-out infinite;
    -o-animation: shadows 16s ease-in-out infinite;
    -webkit-animation: shadows 16s ease-in-out infinite;
    animation: shadows 16s ease-in-out infinite;
    border: 2px solid rgb(from var(--flicker-dark) r g b / 0.4);
    border-radius: 24px;
    background-color: var(--bg-container-medium);
    z-index: 2;
}

.virtue-card .title {
    color: var(--primary);
}

.virtue-card .prayer {
    text-align: center;
}

@keyframes shadows {
    10% {
        box-shadow: var(--flicker-ethics) 0 0 14px 6px, 5px 0 13px 6px var(--flicker-dark), 5px 0 18px 5px var(--flicker-dark), -2px 2px 28px 6px var(--flicker-dark) inset;
    }
    25% {
        box-shadow: var(--flicker-dark) 0 -6px 14px 6px, 5px 0 28px 3px var(--flicker-ethics), 5px 0 18px 5px var(--flicker-dark), 8px 10px 33px 3px var(--flicker-dark) inset;
    }
    50% {
        box-shadow: var(--flicker-ethics) 0 0 14px 6px, 5px 0 11px 5px var(--flicker-dark), 5px 0 18px 5px var(--flicker-dark), 0 0 16px 5px var(--flicker-dark) inset;
    }
    75% {
        box-shadow: var(--flicker-dark) 0 0 14px 6px, 5px 0 28px 2px var(--flicker-ethics), 5px 0 18px 5px var(--flicker-dark), -2px 2px 18px 8px var(--flicker-dark) inset;
    }
}

@media (max-width: 1067px) {

    .virtue-card {
        padding: 16px 90px 72px 90px !important;
    }
}

@media (max-width: 768px) {
    .virtue-card {
        margin: 36px auto !important;
        padding: 0 42px 72px 42px !important;
    }
}

@media (max-width: 425px) {

    .virtue-card {
        margin: 36px auto !important;
        padding: 0 42px 72px 42px !important;
    }
}

@media (max-width: 320px) {
    .virtue-card {
        margin: 24px auto !important;
        padding: 0 24px 72px 24px !important;
    }
}