body {
    margin: 0;
    padding: 0;
    font-size: 1.6vw;
    font-family: 'Open Sans';
    color: lightgray;
}

h1 {
    font-size: 3.2vw;
    padding: 0 0 2vw 0;
}

h2 {
    font-size: 2.4vw;
    padding: 0 0 1.5vw 0;
    margin: 0;
}

a, a:visited {
    color: mediumblue;
}
a:hover {
    color: deepskyblue;
}
.secret-link a, .secret-link a:hover {
	color: black !important;
	text-decoration: none;
	transition: none;
    cursor: text;
}

p {
    padding-bottom: 2.5vw;
    line-height: 125%;
    text-align: justify;
}

.pageContainer {
    width: 100%;
}

.header {
    height: 30vw;
    background-image: url('/media/bg1.png');
    background-size: cover;
    background-position: center;

    display: flex;
    align-items: center;
    justify-content: space-between;

    border-bottom: 0.5vw solid rgb(0, 191, 255);
}

.picture {
    display: flex;
    flex-grow: 1;
    justify-content: center;
    width: 45vw;
}

.picture img {
    border: 0.5vw solid rgb(0, 191, 255);
    border-radius: 20vw;
    width: 20vw;
    height: 20vw;
}

.title {
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.9);
    padding: 0 1vw;
    border: 0.5vw solid rgb(0, 191, 255);
    border-right-width: 0;
    background-clip: padding-box;
    width: 55vw;
}

.title a:hover {
    color: deepskyblue
}

.icon {
    font-size: 4vw;
    margin: auto 0;
    padding-right: 2.5vw;
}

.title-text {
    font-family: 'Heebo';
    font-size: 5vw;
    font-weight: 700;
    letter-spacing: -0.3vw;
    color: black;
}

.about, .contact {
    width: 75%;
    margin: 0 auto;
}

.about {
    padding: 3vw 0 1.5vw 0;
}

.portfolio {
    background-color: lightgray;
    color: black;
}
.portfolio-content {
    padding: 3vw 0;
    width: 75%;
    margin: 0 auto;
}

[class^="portfolio-carousel"] video, [class^="portfolio-carousel"] img {
    height: 25vw;
}

.slick-slide {
    outline: none;
    padding-right: 10px;
}

.contact {
    padding: 3vw 0;
}

.contact-details {
    background-color: lightgray;
    border: 1px dashed black;
    border-radius: 2vw;
    padding: 0.5vw;
}

.contact-details td:nth-child(1) {
    text-align: center;
}

.contact-details td {
    color: transparent;
    text-shadow: 0 0 16px #000;
}