@font-face{
    font-family: zx-spectrum;
    src: url("../assets/font/zx-spectrum.ttf");
}

*, ::before, ::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    width: 100vw;
    height: 100vh;
    background-color: rgb(0, 0, 0);
    font-family: zx-spectrum;
    font-size: 15px;
    line-height: 2;
    color: white;
    overflow-x: hidden;
}

.section {
    width: 100%;
    height: 100%;
    display: block;
}

.button-top {
    display: inline-block;
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 1;
    cursor: pointer;
}

.button-top img {
    width: 1.5vw;
}

.button-back {
    display: inline-block;
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 1;
    cursor: pointer;
}

.button-back img {
    width: 6vw;
}

.toggle {
    display: none;
}

.devicon-python-plain {
    width: 400px;
    height: 400px;
}

@keyframes demo {
    from {transform: scale(0.9);}
    50% {transform: scale(1);}
    to {transform: scale(0.9);}
}


/*-------------------------NAV--------------------- */
.nav{
    height: 6vh;
    width: 100%;
    padding-top: 1vh;
    background-color: transparent;
    display: flex;
	justify-content: end;
    align-items: center;
	position: fixed;
    z-index: 1000;
}
.nav__pop-up {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    width: 17px;
    cursor: pointer;
    margin-left: auto;
    margin-right: auto;
}
.nav ul {
    list-style-type: none;
    display: flex;
    margin-right: 25px;
    
}
.nav ul li {
    font-size: 0.8rem;
    margin: 0 10px;
}

a:link { 
    text-decoration:none; 
    color: white;
} 

a:visited {
    color: white;
}

a:hover {
    color: #FF00C1;
}

/* i:hover {
    color:#7700ff;
} */


/*-------------------------HOME--------------------- */

.ctn-home {
    width: 100%;
    height: 160%;
    background-image: url("../assets/img/bg-main.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    display: flex;
}

.ctn-home__img {
    width: 50%;
    height: 100%;
    padding-top: 4%;
    padding-left: 4%;
}

.home-img {
    width: 100%;
}

.ctn-home__ctn-title {
    position: absolute;
    z-index: 1;
    width: 50%;
    height: 80%;
    padding-top: 22%;
    margin-left: 35%;
    margin-top: 50px;
}

.ctn-home__ctn-title__title1 {
    font-size: 4.4vw;
}

.ctn-home__ctn-title__title2 {
    font-size: 4.4vw;
    color: rgb(255, 255, 255);
    overflow: hidden; /* Ensures the content is not revealed until the animation */
    border-right: .15em solid rgb(255, 255, 255); /* The typwriter cursor */
    white-space: nowrap; /* Keeps the content on a single line */
    margin: 0 auto; /* Gives that scrolling effect as the typing happens */
    letter-spacing: .15em; /* Adjust as needed */
    animation: 
      typing 3.5s steps(30, end),
      blink-caret .5s step-end infinite;
}
  
/* The typing effect */
@keyframes typing {
    from { width: 0 }
    to { width: 100% }
}
  
/* The typewriter cursor effect */
@keyframes blink-caret {
    from, to { border-color: transparent }
    50% { border-color: #7700ff}
}

.ctn-home__ctn-title__button {
    background-color: rgb(0, 0, 0);
    border: 2px solid #7700ff; 
    color: rgb(255, 255, 255);
    padding: 1rem 2rem;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 1rem;
    margin: 20px 10px;
    transition-duration: 0,4s;
    cursor: pointer;
}

.ctn-home__ctn-title__button:hover {
    background-color: #7700ff;
    color: white;
}


/*-------------------------ABOUT-------------------- */
.ctn-about {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: left;
}

.ctn-about__img {
    width: 50%;
    height: 100%;
    background-image: url("../assets/img/portrait.png");
    background-size: cover;
}

.ctn-about__ctn-text {
    position: absolute;
    width: 100%;
    height: 50%;
    margin-top: 10%;
    z-index: 1;
}

.ctn-about__ctn-text__text {
    margin-left: 45%;
    margin-right: 5%;
    font-size: 0.7rem;
}


/*------------------------SKILLS-------------------- */
.ctn-skills {
    width: 100%;
    height: 100%;
    padding-top: 25vh;
}

.ctn-skills__grid-row1 {
    width: 50%;
    height: 25%;
    margin-left: 25%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ctn-skills__grid-row2 {
    width: 50%;
    height: 25%;
    margin-left: 25%;
    margin-top: 5%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.ctn-skills__skills {
    width: 100%;
    height: 100%;
}

.skills {
    width: 100%;
    cursor: pointer;
}

.flip-card {
    background-color: transparent;
    width: 80%;
    height: 80%;
    perspective: 1000px; /* 3D effect */
}
  
/* This container is needed to position the front and back side */
.flip-card-inner {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    transition: transform 0.8s;
    transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card:hover .flip-card-inner {
    transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-card-front, .flip-card-back {
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-backface-visibility: hidden; /* Safari */
    backface-visibility: hidden;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {
    color: black;
}

/* Style the back side */
.flip-card-back {
    height: 150%;
    background-color: black;
    color: white;
    transform: rotateY(180deg);
}


/*------------------------PROJECTS-------------------- */
.ctn-projects {
    width: 100%;
    height: 100%;
    display: flex;
    text-align: center;
}

.ctn-projects__fashion {
    width: 50%;
    height: 70%;
    display: grid;
    place-items: center;
    background-color: #000000;
    background-image: url("../assets/img/fd.png");
    background-repeat: no-repeat;
    background-size: cover;
    /*border: 1px solid #7700ff;*/
}

.fashion__img {
    width: 100%;
    height: 100%;
}

.ctn-projects__programming {
    width: 50%;
    height: 70%;
    display: grid;
    place-items: center;
    background-image: url("../assets/img/programming.png");
    background-repeat: no-repeat;
    background-size: cover;
    /*border: 1px solid #7700ff;*/
}

.programming__img {
    width: 100%;
    height: 100%;
}

h2 {
    animation: demo 3s infinite;
}


/*------------------------CONTACT-------------------- */
.ctn-contact {
    width: 100%;
    height: 100%;
    margin-top: -20%;
}

.ctn-contact-bg {
    width: 100%;
    height: 80%;
    background-image: url("../assets/img/grille1.png");
    background-repeat: no-repeat;
    background-size: 99.5% 100%;
}

.ctn-contact__ctn-social {
    width: 100%;
    height: 40%;
    padding-bottom: 5%;
    /* border-top: 3px solid #FF00C1; */
}

.ctn-contact__text {
    width: 100%;
    padding-top: 5%;
    padding-left: 5%;
    padding-bottom: 5%;
    font-size: 1rem;
}

.social_link {
    display: flex;
    padding-left: 5%;
    justify-content: left;
}

.social_link li {
    list-style: none; 
    padding-right: 1%;
}

i {
    color: white;
}

.insta:hover {
    color:#7700ff;
}

.mail:hover {
    color:#7700ff;
}

.linkedin:hover {
    color:#7700ff;
}

.git:hover {
    color:#7700ff;
}


footer {
    color: #302e2e;
    text-align: center;
    padding-top: 10%;
    padding-bottom: 5%;
}

/*----------------------FASHION DESIGN--------------- */
.fd-ctn-main {
    width: 100%;
    height: 100%; 
}

.fd-ctn-main__img {
    position: absolute;
    width: 50%;
    height: 100%;
    background-image: url("../assets/img/fd2.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    
}

.fd-ctn-main__ctn-text {
    z-index: 1;
    position: absolute;
    width: 50%;
    height: 50%;
    margin-left: 45%;
    margin-top: 10%;
}

.fd-ctn-main__ctn-text__text {
    font-size: 0.7rem; 
}


/*----------------------PROGRAMMING------------------ */
.p-ctn-grid {
    width: 100%;
    height: 100vh; 
    display: grid;
    grid-template-columns: 25% 25% 25% 25%;
    grid-template-rows:50% 50% 50% 50%;
    grid-auto-flow: dense;
    padding-top: 5%;
    background-color: #000000;
}

.p-ctn-grid-responsive { 
    display: none;
}
  
.p-ctn-grid .projet {
    background-color:black;
    border: 1px solid #7700ff;
    text-align: center;
    padding: 45% 0 0 0;
    font-size: 1rem;
    color: white;
}

.projet-title {
    width: 200px;
    height: 35px;
    background-color: rgb(0, 0, 0);
    /*border: 2px solid #7700ff; */
    color: rgb(255, 255, 255);
    margin: auto;
}

.coming_soon {
    width: 100%;
    font-size: 3vw;
    padding-top: 40vh;
    text-align: center;
}


/*----------------------PROJET DETAIL--------------- */
.projet-ctn-main {
    width: 100%;
    height: 100%; 
    display: block;
    justify-content: center;
    text-align: left;
    padding-top: 5%;
}

.projet-ctn-main__ctn-text {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 5%;
    padding-left: 5%;
    padding-right: 5%;
    font-size: 1rem;
}

.projet-ctn-main__ctn-text h1 {
    display: block;
    font-size: 2rem; 
    color: #7700ff;
    padding-bottom: 3vh;
}

.p1-ctn-main__ctn-text-langage {
    width: 100px;
    height: 35px;
    margin-top: 2%;
    padding-top: 0.2%;
    display: inline-block;
    background-color: #7700ff;
    text-align: center;
    font-size: 1rem; 
    font-family: Arial, Helvetica, sans-serif;
    background-color: rgb(0, 0, 0);
    border: 2px solid #7700ff; 
    color: rgb(255, 255, 255);
    text-decoration: none;
}

.link-git {
    display: inline-block;
    background-color: #7700ff;
    color: #ffffff;
}

.projet-ctn-main__img {
    display: block;
    width: 100%;
    height: 100%;
    margin-top: 5%;
}

.img-project {
    width: 100%;
}

.img-project-wheel {
    width: 30%;
}

.img-project-algorythmie {
    width: 30%;
}

.img-project-coffeewars {
    width: 70%;
}

.img-project-yoda {
    width: 70%;
}

.img-project-shopping {
    width: 40%;
}

.img-project-puissance3 {
    width: 40%;
}

.img-project-loterie {
    width: 30%;
}

 


/*----------------------RESPONSIVE------------------ */

/* Smartphone */
@media screen and (min-width: 0px) and (max-width: 767px) {
.nav {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #000000;
}

.nav ul li {
    font-size: 8px;
    margin: auto;
    margin-left: 1%;
    margin-right: 1%;

}

.button-top img {
    width: 3vw;
}

.button-back img {
    width: 12vw;
}

.nav__pop-up {
    display: none;        
}

/*HOME*/
.ctn-home {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: left;
}
.ctn-home__img {
    position: absolute;
    width: 90%;
    padding-top: 20%;
    padding-left: 5%;
}

.ctn-home__ctn-title {
    position: absolute;
    width: 100%;
    height: 100%;
    padding-top: 90%;
    margin-left: 0%;
}
.ctn-home__ctn-title__title1  {
    font-size: 1rem;
    padding-left: 10%;
    
}
.ctn-home__ctn-title__title2 {
    font-size: 1.5rem;
    padding-left: 10%;
}
.ctn-home__ctn-title__button {
    margin-left: 10%;
}


/*ABOUT*/
.ctn-about__img {
    width: 100%;
    height: 55%;
}

.ctn-about__ctn-text {
    height: 70%;
    margin-top: 10%; 
}

.ctn-about__ctn-text__text {
    margin-top: 65%;
    margin-left: 8%;
    margin-right: 5%;
    font-size: 8px;
}


/*SKILLS*/
.ctn-skills__grid-row1 {
    /*display: none;*/
    width: 90%;
    height: 50%;
    margin-left: 5%;
}

.ctn-skills__grid-row2 {
    width: 90%;
    height: 50%;
    margin-left: 5%;
    margin-top: -40%;
}

.flip-card {
    width: 80px;
}

.flip-card-back {
    display: none;
}


/*PROJETS*/
.ctn-projects {
    display: block;
}

.ctn-projects__fashion {
    width: 100%;
    height: 50%;
}

.ctn-projects__programming {
    width: 100%;
    height: 50%;
}

h2 {
    font-size: 1rem;
}

.img-project-wheel {
    width: 80%;
}

.img-project-algorythmie {
    width: 90%;
}

.img-project-wheel {
    width: 100%;
}

.img-project-tarot {
    width: 100%;
}


/*FASHIONDESIGN*/
.fd-ctn-main {
    display: flex;
    justify-content: left;
}

.fd-ctn-main__img {
    width: 100%;
    height: 55%;
    margin-left: 0%;
    margin-top: 0%;
}

.fd-ctn-main__ctn-text {
    width: 100%;
    height: 100%;
    margin-left: 0%;
    margin-top: 0%;
}
    
.fd-ctn-main__ctn-text__text {
    margin-top: 70%;
    margin-left: 8%;
    margin-right: 5%;
    padding-bottom: 15%;
    font-size: 8px;
}
    

/*PROGRAMMING*/
.p-ctn-grid {
    display: none;
}

.p-ctn-grid-responsive {
    width: 100%;
    height: 100vh; 
    display: block;
    justify-content: center;
    text-align: center;
    padding-top: 10%;
    font-size: 12px;
}

.projet-title-responsive {
    padding-top: 10%; 
}
      
.p-ctn-grid .projet {
    font-size: 0.6rem;
}


/*PROJET DETAIL*/
.projet-ctn-main__ctn-text {
    width: 100%;
    height: 25%;
    font-size: 0.6rem;
            
}
    
.projet-ctn-main__ctn-text h1 {
    font-size: 1rem; 
    padding-top: 5%;
}

.img-project-wheel {
    width: 100%;
}

.img-project-loterie {
    width: 100%;
}

.img-project-shopping {
    width: 100%;
}

.img-project-algorythmie {
    width: 100%;
}

.img-project-puissance3 {
    width: 100%;
}

.img-project-tarot {
    width: 100%;
}

.img-project-yoda{
    width: 100%;
}

.img-project-coffeewars {
    width: 100%;
}


/*CONTACT*/
   
.ctn-contact {
    margin-top: 0%;
    padding-top: 20%;
    margin-top: 0%;
}
    
.ctn-contact-bg {
    display: none;
}

.social_link li {
    padding-right: 5%;
}


/*.ctn-contact-bg-responsive {}*/

.ctn-contact__ctn-social {
    border-top: 1px solid #FF00C1;
}


footer {
    font-size: 1vh;
}


/* Tablette */
@media screen and (min-width: 768px) and (max-width: 959px) {
   
}
