@import url('https://fonts.googleapis.com/css2?family=Open+Sans+Condensed:wght@300&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@200&display=swap');


* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
html {
    scroll-behavior: smooth;
}

body {
    min-height:100vh;
}
div.profile img {
    width: 100%;
    height: 100%; 
}

section#top {
    height: 100vh;
    flex-direction: row;
    background: url("../src/grenoble1.jpg");
    background-position: center;
    background-size: cover;
}
#legend {
    color:white;
    text-shadow: 0.1em 0.1em 0.2em black;
    
}
#banner {
    height: 100%;
    width: 100%;
}

#arrow {
    position: absolute;
    left:50%;
    bottom: 5%;
    transform: rotate(90deg);
    width: 3em;
    animation: arrow 1s infinite alternate;
}

@keyframes arrow {
    0%{
        bottom:5%
    }
    100%{
        bottom:7%;
    }
}
/* #arrow:hover {
    
} */

section.entire-screen {
    min-height: 100vh;
}

.hide {
    display: none;
}

svg.hamburger {
    fill:white;
}

/* to become black*/
.blue {
    background-color: rgb(14, 26, 78);
    color:white;
}
.blue .button {
    box-shadow: -0.5em -0.5em 0em white;
}
.blue .button:active, .button:hover, button:active, button:hover {
    box-shadow: -1em -1em 0em white;
}
.blue a[href] {
    color: orange;  
}
.blue div.cta a {
    color:white;
}

.contact {
    background: #F28705;
    color:white;
}

.contact label, .contact input::placeholder {
    color:white;
    opacity: 1;
}

.contact input, .contact textarea {
    background-color: #F28705;
}

body {
    transition: background-color 1s ease, color 1s ease;
    
}
div.console ul {
    list-style-type: '> ';
    padding-bottom: 0em;
}

span.lsres {
    padding-right: 3rem;
}

/*Présentation*/
section.presentation {
    padding-left:0!important;
}

section.presentation .me {
    padding-right: 10%;
}

/* Titres et textes */
h1, h2, h3, h4, h5, h6, div, span {
    font-family: 'Open Sans Condensed', sans-serif;
}
h1.big-title {
    font-size: 7.5em;
    line-height: 0.8em;
    margin: 0.15em 0;
    color:white;
    text-shadow: 0.1em 0.1em 0.5em black;
    
}
h1.big-title::after {
    content: '.';
    color: orange;
}

h1 span.thin {
    font-weight: 100;
    letter-spacing: initial;
}
h2 {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 3em;
    margin-bottom: 0.5em;
    line-height: 1em;
}

p {
    margin: 0.5rem 0;
    font-size: 18px;
}
p:last-of-type {
    margin-bottom: 1.5rem;
}

p, li, label, a, button, input, textarea {
    font-family: 'Nunito', sans-serif;
}

a[href] {
    text-decoration: none;
}

section {
    padding: 3rem;
}
/* Boutons */

.button, button {
    border: solid 0px;
    padding: 0.5em 1.5em;
    color: white;
    background-color: rgb(0, 63, 145);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    box-shadow: -0.5em -0.5em 0em rgb(0, 30, 70);
    transition: all 0.25s cubic-bezier(0.075, 0.82, 0.165, 1);
    display: inline-block;
    margin-top: 2em;
}

.button:active, .button:hover, button:active, button:hover {
    box-shadow: -1em -1em 0em rgb(0, 30, 70);
    letter-spacing: 0.2em;
    
}
a.danger {
    background-color: rgb(148, 0, 0);
    box-shadow: -0.5em -0.5em 0em rgb(70, 0, 0);
    
}
a.danger:hover {
    box-shadow: -1em -1em 0em rgb(70, 0, 0);
    
}

/*header*/
.pres {
    position: absolute;
    left: 50%;
    top: 20%;
    width: 20em;
}
.pres img {
    max-width: 100%;
    max-height: 100%;
}


/* MENU */
div.menu {
    position: absolute;
}

div.menu {
    position: absolute;
    width: 30px;
    cursor: pointer;
    right: 10%;
    top: 10%;
}

div.menu span {
    display: block;
    width: 30px;
    box-shadow: 0 2px 10px 0 rgba(0,0,0,0.3);
    border-radius: 3px;
    height: 5px;
    background: rgb(255, 255, 255);
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
}

div.menu.clicked {
    transform: translate(-10px);
}
div.menu.clicked span:nth-child(1) {
    transform: rotate(45deg) translate(14px);
}

div.menu.clicked span:nth-child(2) {
    visibility: hidden;
}

div.menu.clicked span:nth-child(3) {
    transform: rotate(-45deg) translate(14px);
}

div.menu span + span {
    margin-top: 5px;
}

div.fullmenu a[href] {
    color:white;
}


img.img-port {
    width: 100%;
    height: 10rem;
    object-fit:cover;
}

div.portfolio:hover img {
    transform: scale(1.1);
}

/*Portoflio*/
div.portfolio div a {
    color:unset;
}
div.portfolio {
    padding-bottom: 0.8rem;
}

div.portfolio img {
    animation-duration: 0.25s;
    transition: 1s cubic-bezier(0.075, 0.82, 0.165, 1);
}

div.portfolio h3 {
    font-size: 2em;
}
.portfolio:hover a.more-details:after{
    width:10%;
    right: 0;
}
a.more-details:after {
    background: none repeat scroll 0 0 transparent;
    content: "";
    display: block;
    height: 2px;
    background: #2F74D0;
    transition: width 1s ease 0s, right 0.5s ease 0s;
    width: 0;
}

div.fullmenu nav {
    position: absolute;
    right: 15%;
    top: 10%;
}
div.fullmenu nav ul li {
    list-style-type: none;
    display: inline-block;
    color:white;
    text-shadow: 0.1em 0.1em 0.5em black;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: .09em;
    
}
div.fullmenu nav ul li {
    padding-right: 2rem;
}

.not-appear {
    visibility: hidden;
}

/* Boxes */
.box {
    height: auto;
}
.box h3 {
    font-size: 2rem;
    font-weight: 100;
}
.box > img {
    width: 100%;
    height:20rem;
    object-fit: cover;
    opacity: 1;
    transition: ease .2s;
}
.box:nth-child(2) {
    padding-top: 10vh;
}
.box h3 {
    text-align: center;
}

/* Overlay */

.box:hover > img{
    opacity: 0;
}

.box img {
    width: auto;
    height: 4rem;
    padding: 0.5rem;
}



@media screen and (max-width: 767px) {
    section {
        padding:1.5rem;
    }
    #menu, #arrow {
        display: none;
    }
    section#presentons > div {
        padding: 1rem;
    }
    .portfolio .desc {
        padding: 1rem;
    }
    .portfolio + .portfolio {
        margin-top: 0.5em;
    }
    div.contact iframe {
        display:none;
    }
    div.box {
        flex-direction: column;
    }
    .box:nth-child(2) {
        padding-top: 2rem;
    }
    .box img {
        margin: 0.2rem;
    }
    div.img {
        display: none;
    }
    
    section.presentation .profile img {
        object-fit:cover;
        border-radius:50%;
        width: 75vw;
        height:75vw;
        line-height: 75vw;
    }
    img {
        margin: 1rem;
    }
    section.presentation .me {
        padding-right: inherit;
    }
}



p.emphasized {
    font-weight: 900;
    margin: 1em 0;
    font-size: 1.5em;
}

/*Footer */
footer p { 
    text-align: center;
}


/* Formulaire de contact  */
form div {
    display: flex;
    flex-direction: column;
    margin: 1em 0;
}
form textarea {
    margin: 1em 0;
    min-height: 10rem;
}
form div label {
    font-size: 0.8em;
    transition: ease-in 0.1s;
    
}
form#contact div label {
    color:rgb(199, 199, 199);
}
form#contact div:hover label {
    color: white;
}
form#contact div input, form#contact div textarea {
    border-bottom: rgb(255, 255, 255) 1px solid;
    color:white;
}
form div input, form div textarea {
    height: 1.5rem;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    animation-duration: 250ms;
    font-size: initial;
}

form div input:focus, form div textarea:focus {
    outline: none;
    border-bottom: rgb(199, 199, 199) 2px solid;
}
