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

html
{
	font-size: 10px;
	font-family: 'Roboto', sans-serif;
	color: #eee;
}
body
{
	width: 100%;
	height: 100%;
	background: url("images/sitebg.jpg")no-repeat center fixed;
	background-size: cover;
}

.EmailBut
{
	 background-color: #0802AE; /* Green */
  	border: none;
  	color: white;
  	padding: 15px 32px;
 	text-align: center;
  	text-decoration: none;
  	display: inline-block;
  	font-size: 16px;
	border: 2px solid #23DCF1;
}

section
{
    padding: 6rem 0;

}

a
{
	text-decoration: none;
	color: #eee;
}

p
{
	font-size: 1.8rem;
	font-weight: 300;
}

img
{
	width: 100%;
}

i.fab.fa-instagram:hover
{
	color: red;
}

i.fab.fa-youtube:hover
{
	color: red;
}

i.fab.fa-spotify:hover
{
	color: green;
}


i.fab.fa-xing:hover
{
	color: green;
}

i
{
	padding-top: 15px;
	margin-right: 15px;
}


/*End global*/

/*Start reusable*/
.container
{
    width: 90%;
    max-width: 120rem;
    height: 100%;
    margin: 0 auto;
    position: relative;
}
.section-heading
{
    text-align: center;
    margin-bottom: 10rem;
}

.section-heading h1
{
    font-size: 3.5rem;
    color:  rgba(255,255,255,.3);
    font-weight: 300;
    text-transform: uppercase;
    position: relative;
    margin-bottom: 1rem;
}

.section-heading h1::before,
.section-heading h1::after
{
    content: '';
    position: absolute;
    bottom: -.5rem;
    left: 50%;
    transform: translate(-50%);
    background-color: rgba(255,255,255,.3);
}

.section-heading h1::before
{
    width: 10rem;
    height: 3px;
    border-radius: .8rem;
}

.section-heading h1::after
{
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 100%;
    bottom: -1rem
}

.section-heading h6 
{
    font-size: 1.6rem;
    font-weight: 300;
}

.has-margin-right
{
    margin-right: 5rem;
}

/*End reusable*/

/*Start header*/
header
{
	width: 100%;
	height: 100vh;	
}

.top-nav
{
	width: 100%;
	height: 100vh;
	position: fixed;
	top: -100vh;
    z-index: 50;
	background-color: #16162d;
	border-bottom-right-radius: 100%;
	border-bottom-left-radius: 100%;
	transition: all 650ms  cubic-bezier(1,0,0,1);
}

.nav-list
{
	list-style: none;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

li
{
	margin: 0 2rem;
}

.nav-link
{
	font-family: 'The Historia Demo', sans-serif;
	font-size: 3rem;
	padding: 1rem;
}

    .nav-link.text {
        font-size: 1.8rem;
    }

    .nav-link:hover,
    .nav-link:focus {
        background:  linear-gradient(to bottom, #23DCF1, #0802AE  75%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

.top-nav.open
{
	top: 0;
	border-radius: initial;
}

.menu-toggler
{
	position: fixed;
	top: 5rem;
	right: 5rem;
	width: 5rem;
	height: 4rem;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	cursor: pointer;
	z-index: 2500;
	transition: transform 650ms ease-out;
}

.menu-toggler.open
{
	transform: rotate(-45deg);
}

.bar {
    background:  linear-gradient(to right, #23DCF1, #0802AE  75%); /*linear-gradient(to right, #0802AE , #7A1F84 75%);*/
    width: 100%;
    height: 4px;
    border-radius: .8rem;
}
.bar.half
{
	width: 50%;
}

.bar.start
{
	transform-origin: right;
	transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57);
}

.open.bar.start
{
	transform: rotate(-450deg) translateX(0.8rem);
}

.bar.end
{
	align-self: flex-end;
	transform-origin: left;
	transition: transform 650ms cubic-bezier(0.54, -0.81, 0.57, 0.57);
}

.open.bar.end
{
	transform: rotate(-450deg) translateX(-0.8rem);
}

.landing-text
{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
    z-index: 1;

}

    .landing-text h1 {
        font-size: 20rem;
        font-family: 'The Historia Demo', sans-serif;
        background-color:  rgba(255,255,255,.3); /*  linear-gradient(138deg, #0802AE 22%, #7A1F84, #981A1A 75%);*/
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        padding: 1rem;
        user-select: none;
    }

.landing-text h6
{
    font-size: 2rem;
    font-weight: 300;
}

/*End header*/

/*Start about*/
.about .container
{
    display: flex;
    align-items: center;
    justify-content: center;
}

about-heading
{
    text-align: center;
    text-transform: uppercase;
    line-height: 0;
    margin-bottom: 6rem;
}

.about-heading h1
{
    font-size: 12rem;
    opacity: .3;
}

.about-heading h6
{
    font-size: 4rem;
    font-weight: 300;
}

.profile-img
{
    flex: 1;
    margin-right: 5rem;
}

.about-details
{
    flex:1;
}

.social-media
{
	
    margin-top: 3rem;
}

.social-media h1
{
font-size: 3rem;
	opacity: .3;
}

.social-media i
{
    font-size: 3rem;
    transition: color 650ms;
}

.fa-facebook-square:hover
{
    color: #4267b2;
}

.fa-twitter-square:hover {
    color: #38a1f3;
}

.fa-instagram-square:hover {
    color: #4267b2;
}

.fa-linkedin:hover {
    color: #4267b2;
}

.fa-youtube:hover {
    color: ##FF0000;
}

.fa-spotify:hover {
    color: #1DB954;
}


/*End about*/

/*Start services*/
.my-skills
{
    margin-top: 10rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(25rem,1fr));
    grid-gap: 2.5rem;
    text-align: center;

}

.skill
{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2rem;
}

.skill h1
{
    text-transform: uppercase;
    letter-spacing: 2px;
    margin: 2rem;
}

.icon-container {
    width: 10rem;
    height: 10rem;
    border: 3px solid #23DCF1;
    background-color: #0802AE;
    //background: linear-gradient(138deg, #0802AE 22%, #7A1F84, #981A1A 75%);
    margin-bottom: 2rem;
    display: flex;
    transform: rotate(45deg);
}

    .icon-container i {
        color: #23DCF1;
        font-size: 5rem;
        margin: auto;
        transform: rotate(-45deg);
    }
/*End services*/

/*Start portfolio*/
.portfolio-item
{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5rem;
}

.portfolio-item:last-child
{
    margin-bottom: 0;
}

.portfolio-img
{
    flex: 1;
}

.portfolio-description
{
    flex: 1;
}

.portfolio-description h6
{
    font-size: 1.5rem;
    text-transform: uppercase;
    font-weight: 300;
    opacity: 0.3;
}

.portfolio-description h1 {
    font-size: 3rem;
    font-weight: 300;
    margin: 1rem 0;
}

.portfolio-description .cta
{
    display: inline-block;
    margin-top: 2.5rem;
    font-size: 1.5rem;
    text-transform: uppercase;
    color: #3883ff;
    transition: color 650ms;
}

.portfolio-description .cta:hover
{
    color: #2f67cd;
}
/*End portfolio*/

/*Start timeline*/
.timeline ul {
    border-left: 4px solid #0802AE;
    border-radius: .8rem;
    background-color: rgba(255,255,255,0.05);
    margin: 0 auto;
    position: relative;
    padding: 5rem;
    list-style: none;
    text-align: left;
    width: 70%;
}

.timeline h1
{
    font-size: 2rem;
    text-transform: uppercase;
    font-weight: 300;
    margin-bottom: 1rem;
    opacity: .3;
    color: #23DCF1;
}

.timeline .date
{
    border-bottom: 1px solid rgba(255,255,255,0.1);
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    position: relative;
}

.timeline .date:last-of-type
{
    padding-bottom: 0;
    margin-bottom: 0;
    border: none;
}

.timeline .date::before,
.timeline .date::after
{
    position: absolute;
    display: block;
    top: 50%;
    transform: translateY(-50%);
}

.timeline .date::before
{
    content: attr(data-date);
    left: -21rem;
    text-align: right;
    min-width: 12rem;
    font-size: 1.5rem;
}

    .timeline .date::after {
        content: '';
        box-shadow: 0 0 0 4px #0802AE;
        border-radius: 100%;
        left: -8rem;
        height: 1.5rem;
        width: 1.5rem;
        background-color: #23DCF1;
        // background: linear-gradient(138deg, #0802AE 22%, #7A1F84, #981A1A 75%);
    }
/*End timeline*/

/*Start contact*/
.contact
{
    background-color: #221e3f;
}

form
{
    width: 70%;
    margin: 0 auto;
}
form label
{
    font-size: 1.5rem;
}

input,
select,
textarea
{
    width: 100%;
    padding: 1rem;
    margin-bottom: 5px;
    border: none;
    outline-color: #fd57bf;
}

    input[type="submit"] {
        width: initial;
        background-color: #52BBC6;
        color: #eee;
        padding: 1rem 2rem;
        border-radius: -8rem;
        cursor: pointer;
        transition: background-color 650ms;
    }

        input[type="submit"]:hover {
            color: #221e3f;
            background-color: #19D96C;
        }
/*End contact*/

/*Start footer*/
.copyright
{
    width: 100%;
    text-align: center;
    background-color: #16162d;
    padding: 2rem 0;
    position: relative;
}

.up
{
    position: absolute;
    width: 5rem;
    height: 5rem;
    background-color: #eee;
    top: -2.5rem;
    right: 5rem;
    border-radius: 100%;
    display: flex;
    animation: pulse 2s infinite;
    cursor: pointer;
}

.up i
{
    color: #16162d;
    font-size: 2rem;
    margin: auto;
}

.copyright p
{
    font-size: 1.4rem;
}
/*End footer*/

/*Start animations*/
@keyframes pulse 
{
    0% 
    {
        box-shadow: 0 0 0 0 rgba(253, 87, 191, 0.99);
    }
    70% {
        box-shadow: 0 0 0 2rem rgba(253, 87, 191, 0.0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(253, 87, 191, 0);
    }
}
/*End animations*/

/*Start media queries*/
@media screen and (max-width: 768px)
{
    body {
        background: url("images/sitebg2.jpg")no-repeat center fixed;
        background-size: cover;
    }

    .landing-text h1
    {
        font-size: 15rem;
    }

    .landing-text h6
    {
        font-size: 1.7rem;
    }

    .nav-list
    {
        flex-direction: column;
    }

    li
    {
        margin: 2rem 0;
    }

    .nav-link
    {
        font-size: 4.5rem;
    }

    .about-heading h1
    {
        font-size: 8rem;
    }

    .section-heading h1
    {
        font-size: 3rem;
    }

    .about-details .nav-list
    {
        flex-direction: initial;
    }

    .about-details li
    {
        margin: 0 2rem;
       
    }

    .icon-container {
        width: 7rem;
        height: 7rem;
    }

    .icon-container i
    {
        font-size: 4rem;
    }

    .timeline ul
    {
        margin: 0 0 0 auto;
    }

    .timeline .date:before
    {
        left: -20rem;

    }

    .timeline .date:after
    {
        left: -5.9rem;
    }

  

}

@media screen and (max-width: 600px)
{
    .menu-toggler
    {
        top: 2rem;
        right: 2rem;
    }

    .landing-text h1
    {
        font-size: 8rem;
    }

    .landing-text h6
    {
        font-size: 1.4rem;
    }

    .nav-link
    {
        font-size: 3.5rem;
    }

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

    profile-img {
        margin: 0 0 7rem 0;
    }

    .portfolio-item
    {
        flex-direction: column;
    }

    .portfolio-img
    {
        margin: 0 0 2rem 0;
        order: 1;
    }

    .portfolio-description
    {
        margin: 0;
        order: 2;
    }

    .timeline p
    {
        font-size: 1.6rem;
    }

    .timeline .date::before
    {
        font-size: 1.4rem;
    }

    form
    {
        width: 100%;
    }

    .up
    {
        right: 2rem;
    }

}

/*End media queries*/