* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Raleway", sans-serif; 
    background-image: url(img/annie-spratt-WIrdnp0_MBo-unsplash.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center; 
}

.body-dark {
    background-image: url(img/kendal-hnysCJrPpkc-unsplash.jpg);
}

.main-container {
    display: grid;
    grid-template-columns: 1fr 2fr;
    width: 70vw;
    margin: 2.5vw auto;
    position: relative;
    box-shadow: 1px 2px 11px -3px #444440;
    color: #444440;
    background-color:rgba(217, 217, 217, 0.75);
    border-radius: 5px;
}

.main-container-dark {
    color: #D9D9D9;
    background-color: rgba(25, 71, 74, 0.75);
    background-image: none;
}

.theme-icon {
    font-size: 2vw;
    position: absolute;
    top: 1.5vw;
    left: 1.5vw;
}

.data-column {
    background-color:rgba(217, 217, 217, 1);
    padding-bottom: 5vw;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.data-column-dark {
    background-color: #19474a;
}

.data {
    margin-top: 5vw;
    margin-left: 5vw;
    margin-right: 5vw;
}

.data__top-container {
    text-align: center;
}

.data__name {
    font-size: 2vw;
}

.data__name-content {
    font-size: 1vw;
    margin-top: 1vw;
    font-style: italic;
}

.data__photo {
    width: 100%;
    border-radius: 50%;
    margin-top: 2vw;
    box-shadow: 1px 2px 11px -3px #19474a;
}

.data__photo, .data-column .data__container-title {
    margin-top: 5vw;
}

.data__container {
    font-size: 1vw;
    line-height: 150%;
}

.data__container-title {
    font-size: 1.5vw;
    margin-block-start: 2vw;
    margin-block-end: 2vw;
    font-weight: normal;
    border-top: 0.5px solid #827e7c;
    border-bottom: 0.5px solid #827e7c;
    padding-top: 0.5vw;
    padding-bottom: 0.5vw;
}

.data__container-icon {
    display: flex;
    align-items: center;
    gap: 1vw;
}

.icon {
    width: 1vw;
}

.link {
    text-decoration: solid underline #827e7c 0.5px;
    color: inherit;
    display: inline;
    padding: 2px;
    border-radius: 5px;
    transition: background-color 0.5s ease;
    &:hover {
        background-color: #19474a;
        color: #D9D9D9;
        border-radius: 5px;
        padding: 2px;
        text-decoration: none;
    }
}

.contact-link {
    white-space: nowrap;
}

.link-dark {
    transition: background-color 0.5s ease;
    &:hover {
        background-color: #827e7c;
        color: #000;
        text-decoration: none;
    }
}

.link-content {
    display: inline-block;
}

.experience-column {
    padding-bottom: 5vw;
}

.experience {
    margin-top: 5vw;
    margin-left: 5vw;
    margin-right: 5vw;
}

.data__container-elements {
    border-left: 0.5px solid #827e7c;
    padding-left: 3vw;
    line-height: 150%;
}

.data__container-education-element, .data__container-experience-element {
    margin-bottom: 0.83em;
    position: relative;
    border-radius: 5px;
    padding: 0.5vw;
    background-color: rgba(217, 217, 217, 0.5);
    &::after {
        width: 0.5em;
        height: 0.5em;
        border-radius: 50%;
        border: 0.5px solid #444440;
        background-color: #444440;
        position: absolute;
        left: -3em;
        top: 50%;
        transform: translate(-50%, -50%);
        content: "";
    }
}

.data__container-education-element-dark, .data__container-experience-element-dark {
    background-color:rgba(25, 71, 74, 0.5);
    &::after {
        border: 0.5px solid #D9D9D9;
        background-color: #D9D9D9;
    }
}

.data__container-margin-top {
    margin-bottom: 0.83em;
}

.data__container-education-content, .data__container-experience-content {
    font-weight: bolder;
}

.element-margin {
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
}

.rodo {
    margin-top: 10vw;
    font-style: italic;
}

@media (orientation: portrait) {
    body {
        background-image: url(img/annie-spratt-WIrdnp0_MBo-unsplash_.jpg);
    }
    .body-dark {
        background-image: url(img/kendal-hnysCJrPpkc-unsplash_.jpg);
    }
    .main-container {
        width: 95vw;
    }
    .theme-icon, .data__name {
        font-size: 4vw;
    }
    .data__name-content, .data__container {
        font-size: 2vw;
    }
    .data__photo, .data-column .data__container-title {
        margin-top: 10vw;
    }
    .data__container-title {
        font-size: 3vw;
    }
    .data__container-icon {
        gap: 2vw;
    }
    .icon {
        width: 2vw;
    }
    .data__container-education-element, .data__container-experience-element {
        &::after {
            left: -1.5em;
        }
    }
}
