* {
    box-sizing: border-box;
}

body {
    font-family: din-2014, sans-serif;
    font-weight: 400;
    font-style: normal;
    padding: 1em;
    color: #222222;
    font-size: 12px;
}

@media (min-width: 768px) and (max-width: 1024px) {
    body {
        padding: 4rem;
    }
}

#logo {
    width: 15em;
    height: auto;
    margin: 0;
    -webkit-padding-before: 0.8em;
    padding-block-start: 0.8em;
}

@media (min-width: 768px) and (max-width: 1024px) {
    #logo {
        width: 35vw;
    }
}

.photo {
    display: flex;
    position: relative;
    width: 90em;
    max-width: 460px;
    height: auto;
    margin: 0 0 0 60%;
    top: -35rem;
    -webkit-padding-before: 0.8em;
    padding-block-start: 0.8em;
}

@media (max-width: 1024px) {
    .photo {
        display: none;
    }
}

.text {
    display: block;
    position: relative;
    -webkit-padding-before: 8.5em;
    padding-block-start: 8.5em;
    text-transform: uppercase;
    font-size: 0.4rem;
    font-family: din-2014, sans-serif;
    font-weight: 800;
    font-style: normal;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .text {
        font-size: 1.5vw;
    }
}

p {
    margin: 0;
    font-size: 4.5em;
}

.text p {
    margin: 0;
}

div.p_slide_soft {
    width: 100%;
}

div.p_slide_soft {
    -webkit-animation: 1s slide_soft;
    animation: 1s slide_soft;
}

@-webkit-keyframes slide_soft {
    from {
        margin-left: -100%;
    }

    to {
        margin-left: 0%;
        width: 100%;
    }
}

@keyframes slide_soft {
    from {
        margin-left: -100%;
    }

    to {
        margin-left: 0%;
        width: 100%;
    }
}


.text div:nth-child(2) {
    margin: 0.5em 0 0.5em 0;
    -webkit-padding-start: 6em;
    padding-inline-start: 6em;
}

div.p_slide_hdw {
    width: 100%;
}

div.p_slide_hdw {
    -webkit-animation: 2s slide_hdw;
    animation: 2s slide_hdw;
}

@-webkit-keyframes slide_hdw {
    from {
        margin-left: -100%;
    }

    to {
        margin-left: 0%;
        width: 100%;
    }
}

@keyframes slide_hdw {
    from {
        margin-left: -100%;
    }

    to {
        margin-left: 0%;
        width: 100%;
    }
}

.text div:nth-child(3) {
    -webkit-padding-start: 12em;
    padding-inline-start: 12em;
}

div.p_slide_progr {
    width: 100%;
}

div.p_slide_progr {
    -webkit-animation: 3s slide_progr;
    animation: 3s slide_progr;
}

@-webkit-keyframes slide_progr {
    from {
        margin-left: -100%;
    }

    to {
        margin-left: 0%;
        width: 100%;
    }
}

@keyframes slide_progr {
    from {
        margin-left: -100%;
    }

    to {
        margin-left: 0%;
        width: 100%;
    }
}

.database {
    text-align: center;
    font-size: 2em;
    font-family: din-2014, sans-serif;
    font-weight: 800;
    font-style: normal;
    margin-top: -30px;
    padding: 0 0 1em 0;
    text-transform: uppercase;
    -webkit-padding-before: 6.5rem;
    padding-block-start: 6.5rem;
}


@media (min-width: 768px) and (max-width: 1024px) {
    .database {
        -webkit-padding-before: 4em;
        padding-block-start: 4em;
        font-size: 3em;
    }
}

.container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;

}

.content h3 {
    color: #fff;
    -webkit-padding-before: 1em;
    padding-block-start: 1em;
    margin: 0;
    font-size: 5rem;
    font-weight: bold;
}

.container .box {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 12em;
    height: 9em;
    margin: 1em;
    background: #121e27;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .container .box {
        background: #222222;
        flex: 0 0 20.5%;
        width: 20em;
        height: 20em;
        padding: 50px 50px 50px 50px;
        text-align: center;
    }
}

.container a {
    text-decoration: none;
}



.container .box .content {
    padding: 2.5em;
    text-align: center;
}

.quote {
    max-width: 3em;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .quote {
        max-width: 6em;
    }
}

.container .box .content h3 {
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: 1px;
    font-weight: 600;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .container .box .content h3 {
        text-transform: uppercase;
        padding-top: 0.5rem;
        font-size: 2rem;
        letter-spacing: 1px;
        font-weight: 400;
        font-weight: bold;
    }
}

@media (max-width: 300px) {
    .container .box {
        width: 100%;
        height: auto;
        padding: 2.500em 1.667em;
    }
}

#html:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem #EA6228);
    filter: drop-shadow(0 0 0.35rem #EA6228);
    background-color: #EA6228;
    transition: 0.3s;
}

#css:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem #2AA2E0);
    filter: drop-shadow(0 0 0.35rem #2AA2E0);
    background-color: #2AA2E0;
    transition: 0.3s;
}


#javascript:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem #F0D81D);
    filter: drop-shadow(0 0 0.35rem #F0D81D);
    background-color: #F0D81D;
    transition: 0.3s;
}


#csharp:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem #642076);
    filter: drop-shadow(0 0 0.35rem #642076);
    background-color: #642076;
    transition: 0.3s;
}


#vba:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem #217145);
    filter: drop-shadow(0 0 0.35rem #217145);
    background-color: #217145;
    transition: 0.3s;
}


#powershell:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem #0273B7);
    filter: drop-shadow(0 0 0.35rem #0273B7);
    background-color: #0273B7;
    transition: 0.3s;
}


#games:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem brown);
    filter: drop-shadow(0 0 0.35rem brown);
    background-color: brown;
    transition: 0.3s;
}

#other:hover {
    -webkit-filter: drop-shadow(0 0 0.35rem rgb(71, 145, 68));
    filter: drop-shadow(0 0 0.35rem rgb(71, 145, 68));
    background-color: rgb(71, 145, 68);
    transition: 0.3s;
}

.h1about {
    text-align: center;
    -webkit-padding-before: 4rem;
    padding-block-start: 4rem;
    text-transform: uppercase;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .h1about {
        font-size: 3em;
    }
}

.me {
    text-align: center;
    max-width: 95%;
    padding: 0 0 0 1em;
    font-size: 1.5em;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .me {
        font-size: 2em;
    }
}

.technology {
    position: relative;
    padding: 0 0 30em 0;
    margin: -955px 0 0 0;
    font-size: 3em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    /* vertical text*/
    transform: rotate(180deg);
    text-transform: uppercase;
    color: #D4D4D4;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .technology {
        top: 8em;
    }
}

.bar {
    margin: -250px 0 0 0;
    display: grid;
    grid-template-columns: 1fr;
    font-size: 2.2em;
    width: 80%;
    margin-left: 3.5rem;
}

.buttons {
    margin-top: 0.5rem;
}

.meter {
    margin-top: 0.3125em;
    height: 1.5625em;
    background: #EEEEEE;
}

.meter>span {
    display: block;
    margin: 0;
    height: 100%;
    background: linear-gradient(to right,
            #00D595 0%,
            #9832FF 100%);
    overflow: hidden;
}

/*html bar*/
.htmlbar {
    -webkit-animation: html 4s ease-in-out;
    animation: html 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes html {
    0% {
        width: 0;
    }

    100% {
        width: 98%;
    }

}

@keyframes html {
    0% {
        width: 0;
    }

    100% {
        width: 98%;
    }

}

/*C# bar*/
.csharpbar {
    -webkit-animation: csharp 4s ease-in-out;
    animation: csharp 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes csharp {
    0% {
        width: 0;
    }

    100% {
        width: 45%;
    }
}

@keyframes csharp {
    0% {
        width: 0;
    }

    100% {
        width: 45%;
    }
}

/*linux*/
.linux {
    -webkit-animation: linux 4s ease-in-out;
    animation: linux 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes linux {
    0% {
        width: 0;
    }

    100% {
        width: 20%;
    }
}

@keyframes linux {
    0% {
        width: 0;
    }

    100% {
        width: 20%;
    }
}

.sql {
    -webkit-animation: sql 4s ease-in-out;
    animation: sql 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes sql {
    0% {
        width: 0;
    }

    100% {
        width: 15%;
    }
}

@keyframes sql {
    0% {
        width: 0;
    }

    100% {
        width: 15%;
    }
}

.shell {
    -webkit-animation: shell 4s ease-in-out;
    animation: shell 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes shell {
    0% {
        width: 0;
    }

    100% {
        width: 30%;
    }
}

@keyframes shell {
    0% {
        width: 0;
    }

    100% {
        width: 30%;
    }
}

/*vba*/
.vba {
    -webkit-animation: vba 4s ease-in-out;
    animation: vba 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes vba {
    0% {
        width: 0;
    }

    100% {
        width: 5%;
    }
}

@keyframes vba {
    0% {
        width: 0;
    }

    100% {
        width: 5%;
    }
}

.css {
    -webkit-animation: css 4s ease-in-out;
    animation: css 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes css {
    0% {
        width: 0;
    }

    100% {
        width: 90%;
    }
}

@keyframes css {
    0% {
        width: 0;
    }

    100% {
        width: 90%;
    }
}

.windows {
    -webkit-animation: winserver 4s ease-in-out;
    animation: winserver 4s ease-in-out;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@-webkit-keyframes winserver {
    0% {
        width: 0;
    }

    100% {
        width: 80%;
    }
}

@keyframes winserver {
    0% {
        width: 0;
    }

    100% {
        width: 80%;
    }
}

.about {
    position: relative;
    text-align: center;
    padding: 2em 0 1em 1.5em;
    max-width: 90%;
    font-size: 2em;
}


footer {
    text-align: center;
}

.contact {
    -webkit-margin-before: 20px;
    margin-block-start: 20px;
    -webkit-padding-after: 5em;
    padding-block-end: 5em;
    font-size: 2em;
    font-weight: bold;
    text-transform: uppercase;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .contact {
        font-size: 3em;
        font-weight: bold;
        -webkit-padding-after: 3.5em;
        padding: 1em 0 3.5em 0;
    }
}


footer .mail {
    position: relative;
    top: -3em;
    padding: 0.625em;
    font-size: 2em;
    border: 0.1875em solid #222222;
    text-decoration: none;
    color: #222222;
}

article:nth-child(1) {
    position: relative;
    top: -5.5em;
    padding: 0;
    text-align: center;
    text-transform: uppercase;
    font-size: 2em;
}

footer a:hover {
    text-decoration: underline;
}


.info {
    margin: 0;
    padding: 0;
    font-size: 1rem;
    font-style: oblique;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .info {
        font-size: 1.5rem;
    }
}

.social {
    justify-content: center;
    display: flex;
}

.social a {
    padding: 0;
    margin: 2.667em;
}

.social svg {
    width: 3em;
}

@media (min-width: 768px) and (max-width: 1024px) {
    .social svg {
        width: 5em;
    }
}

.social svg:hover {
    fill: #0271AE;
    transition: 0.3s;
}