body {
    font-family: "Open Sans", "Segoe UI";
    font-size: 16px;
    color: #202020;
    margin: 0;
    padding: 0;
}

.container {
    width: 800px;
    margin: 0 auto;
    padding: 32px;
}

.header {
    text-align: center;
    margin-bottom: 16px;
}

h1 {
    all: unset;
    font-size:32px;
}

.subtitle {
    padding: 4px;
}

.contact-info ul {
    justify-content: center;
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
}

.contact-info li {
    padding: 8px 12px;
    position: relative;
}

.contact-info li a {
    color: #202020;
    text-decoration: none;
}

.contact-info li::after {
    content: "|";
    position: absolute;
    right: -4px;
    color: rgb(85, 85, 85, 0.6);
}

.contact-info li:last-child::after {
    content: "";
}

.cover {
    margin: 0 auto;
    text-align: justify;
    width: 700px;
    padding-top: 16px;
    line-height: 150%;
    /*animation: fadeIn 0.5s linear forwards;*/
}

.col-container {
    display: flex;
}

.column {
    width: 50%;
    padding-right: 24px;
}

.column:last-child::after {
    padding-right: 0;
    padding-left: 24px;
}

h2 {
    all: unset;
    display: flex;
    align-items: baseline;
    gap: 10px;
    font-size: 18px;
    margin-top: 24px;
}

h2::after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background: rgb(85, 85, 85, 0.6);
}

.date-block {
    display: flex;
    margin: 8px;
}

.date-col {
    width: 30%;
    text-align: right;
    padding-right: 8px;
    font-size: 15px;
}

.data-col {
    width: 70%;
    padding-left: 8px;
    border-left: solid 1px rgba(85, 85, 85, 0.6);
}

.loc-col {
    width: 70%;
    padding-left: 8px;
}

.title {
    font-weight: bold;
}

.location {
    font-style: italic;
}

.desc {
    font-size: 15px;
}

.level-col {
    width: 30%;
    text-align: right;
    padding-right: 8px;
    font-size: 15px;
}

.lan-col {
    width: 70%;
    padding-left: 8px;
    border-left: solid 1px rgb(65, 65, 65);
}

.img-block {
    margin: 16px 8px;
}

img {
    padding: 4px;
    color: #f39325;
}

.block-left {
    /*animation: slideLeft 1s linear forwards;*/
}

.block-right {
    /*animation: slideRight 1.5s linear forwards;*/
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    50% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideLeft {
    from {
        opacity: 0;
        transform: translateX(-600px);
    }
    75% {
        opacity: 0;
        transform: translateX(-600px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideRight {
    from {
        opacity: 0;
        transform: translateX(600px);
    }
    85% {
        opacity: 0;
        transform: translateX(600px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@media (max-width: 768px) {
    .container {
        width: 100%;
        margin: 0;
        padding: 16px;
        box-sizing: border-box;
    }

    .contact-info ul {
        flex-direction: column;
        align-items: center;
    }

    .contact-info li {
        padding: 4px 12px;
        position: relative;
    }
    
    .contact-info li::after {
        all: unset;
    }

    .cover {
        width: 100%;
    }

    .col-container {
        flex-direction: column;
    }

    .column {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
    }
}
