@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;700&display=swap"); :root { --dark: #333333; --white: #ffffff; --light-grey: #f0f0f0; --primary-color: #e24444; --secondary-color: #df9f6c; } @font-face { font-family: "MonumentExtend"; src: url("./fonts/MonumentExtended-Regular.otf"); font-weight: normal; } @font-face { font-family: "MonumentExtend"; src: url("./fonts/MonumentExtended-Ultrabold.otf"); font-weight: bold; } ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { border: var(--dark) 0.5px solid; } * { margin: 0; padding: 0; box-sizing: border-box; font-family: "MonumentExtend", sans-serif; scroll-behavior: smooth; } body { background-color: var(--light-grey); color: var(--dark); } h1, h2, h3, h4, h5, h6 { text-transform: uppercase; color: var(--dark); } a { text-decoration: none; color: var(--primary-color); text-transform: uppercase; transition: border 400ms; } a:hover { color: var(--dark); border-color: var(--dark); } .link { border: transparent 3px solid; border-right: none; border-left: none; padding: 10px 0px; } button { background-color: transparent; outline: none; padding: 10px 15px; border: transparent solid 1px; text-transform: uppercase; cursor: pointer; font-size: 16px; margin: 8px 0; transition: 400ms color, 400ms background, 400ms border; } .btn-primary { background-color: var(--primary-color); border-color: var(--primary-color); color: var(--white); } .btn-primary:hover { background-color: transparent; color: var(--primary-color); } .btn-secondary { background-color: var(--light-grey); color: var(--primary-color); border-color: var(--primary-color); } .btn-secondary:hover { color: var(--dark); border-color: var(--dark); } p { font-family: "Inter", sans-serif; color: var(--dark); font-size: 14px; font-size: 20px; } header { width: 100%; border-bottom: var(--dark) solid 0.5px; display: flex; justify-content: space-between; align-items: center; padding: 16px 35px; position: fixed; background-color: var(--white); backdrop-filter: blur(20px); z-index: 2; } header > h1 { font-size: 30px; } .burger-button { display: none; } .menu > ul { list-style: none; display: flex; gap: 20px; } main { scroll-snap-type: proximity; } section { scroll-snap-align: start; } #home { display: grid; grid-template-columns: 2fr 1fr; align-items: center; gap: 50px; padding: 0 50px; width: 100%; height: 100vh; background: linear-gradient(90deg, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.9)), url("img/cover-main-bg.jpg"); background-position: center; background-repeat: no-repeat; background-size: cover; } #home > div:first-child > h2 { font-size: 70px; margin-bottom: 20px; } .back-card { background-color: var(--primary-color); color: var(--white); padding: 0px 5px; font-weight: normal; } #home > div:first-child > p { width: 90%; } #home > div:last-child { height: 100%; width: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-end; } #home > div:last-child > .social-media { font-size: 14px; margin-bottom: 50px; text-align: end; z-index: 1; } #home > div:last-child > .social-media > a { border-bottom: transparent 3px solid; margin-left: 15px; padding: 10px 0; font-size: 16px; } #home > div:last-child > .social-media > a:hover { border-color: var(--dark); } #projects { display: grid; grid-template-columns: 35% 32.5% 32.5%; grid-template-rows: 20vh 100px 70vh; margin-top: -20vh; text-align: center; column-gap: 15px; padding: 50px; z-index: 0; width: 100%; } .tech-icons { display: flex; flex-wrap: wrap; justify-content: center; gap: 5%; } .tech-icons img { height: 50px; /* ajustez la taille selon vos besoins */ transition: transform 0.3s; } .tech-icons img:hover { transform: scale(1.1); } #experiences > h2{ font-size: 52px; text-align: center; column-gap: 15px; padding: 50px; z-index: 0; width: 100%; } #projects > h2 { font-size: 52px; grid-column: 2 / 4; grid-row: 2 / 3; } .project { background: linear-gradient(rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.9)), url("img/bg.jpg"); background-repeat: no-repeat; background-position: center; background-size: cover; display: flex; flex-direction: column; text-align: left; justify-content: flex-end; padding: 25px; grid-row: 3 / 4; transition: 400ms ease-in-out; border: var(--primary-color) 0px solid; border-radius: 2%; } .project:nth-child(2) { background: linear-gradient(rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.9)), url("img/athletix\ mockup.png"); background-repeat: no-repeat; background-position: top center; background-size: cover; } .project:nth-child(3) { background: linear-gradient(rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.9)), url("img/rdash.png"); background-repeat: no-repeat; background-position: center center; background-size: contain; } .project:nth-child(4) { background: linear-gradient(rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.9)), url("img/Reflection.png"); background-repeat: no-repeat; background-position: top center; background-size: cover; } .experience { background: linear-gradient(rgba(192, 255, 163, 0.3), rgba(140, 237, 250, 0.9)); background-repeat: no-repeat; background-position: center; background-size: cover; display: flex; flex-direction: column; text-align: left; justify-content: flex-end; padding: 25px; grid-row: 3 / 4; transition: 400ms ease-in-out; border: var(--primary-color) 0px solid; } .project:hover { cursor: pointer; transition: 400ms ease-in-out; border: var(--primary-color) 25px solid; } .project > h2 { font-size: 35px; width: auto; } .project > p { text-transform: none; font-size: 16px; margin-top: 10px; transition: 400ms ease; background: -webkit-linear-gradient( rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.2) ); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } #projects > a:nth-child(2) { grid-row: 1 / 4; } #more-projects { margin: 10px auto 0; text-align: center; } #more-projects .back-card { font-size: 24px; padding: 10px 30px; border: var(--primary-color) solid 1px; transition: 400ms ease; } #more-projects .back-card:hover { background: transparent; color: var(--primary-color); } #skills { margin-top: 100px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; } #skills > h2 { font-size: 60px; } #skills > p { width: 75%; margin: auto; } .tech-stack { height: 90px; overflow: hidden; position: relative; background-color: var(--primary-color); color: var(--dark); } .tech-stack > div > h3 { color: var(--dark); font-size: 24px; font-weight: normal; white-space: nowrap; } .tech-stack > div { padding: 20px; position: absolute; top: 0; left: 0; height: 100%; line-height: 50px; text-align: center; /* Starting position */ -moz-transform: translateX(100%); -webkit-transform: translateX(100%); transform: translateX(100%); animation: scroll-left 30s linear infinite; } #contact { margin: auto; padding: 25px 0; text-align: center; height: 70vh; display: flex; justify-content: center; align-items: center; flex-direction: column; } #contact > h2 { font-size: 45px; } #contact > a:first-of-type { padding: 40px 0 0; color: var(--dark); display: block; font-size: 52px; } #contact > a:first-of-type:hover { color: var(--primary-color); } #contact > a { font-size: 30px; transition: 400ms; } .more-projects__container { padding-top: 80px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; width: 95%; margin: auto; display: none; } .more-projects__container--show { display: grid !important; } .more-projects__container > .project { grid-row: initial; height: 600px; } @keyframes scroll-left { 0% { -moz-transform: translateX(100%); /* Browser bug fix */ -webkit-transform: translateX(100%); /* Browser bug fix */ transform: translateX(100%); } 100% { -moz-transform: translateX(-100%); /* Browser bug fix */ -webkit-transform: translateX(-100%); /* Browser bug fix */ transform: translateX(-100%); } } #certifications { padding: 35px 75px 45px; } #certifications > h2 { font-size: 52px; } #certifications > p { width: 90%; } .courses-repository { display: flex; align-items: flex-start; margin-top: 30px; } .courses-repository > ul { list-style: none; } .courses-repository > ul > a > li { font-size: 18px; transition: 400ms ease; border: var(--primary-color) 1px solid; padding: 15px; } .courses-repository > ul > a > li:hover { background-color: var(--primary-color); color: var(--white); } /* Tablet */ @media screen and (max-width: 992px) { body { max-width: 100%; } header > .menu { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; display: flex; justify-content: center; align-items: center; background: var(--light-grey); visibility: hidden; opacity: 0; transition: 400ms ease-in-out; } .menu > ul { flex-direction: column; text-align: center; z-index: 0; } .link { font-size: 40px; } .burger-button { z-index: 1; } #home { grid-template-columns: 1fr; grid-template-rows: 80% auto; text-align: center; } #home > div:first-child > p { margin: auto; width: 80%; } #home > div:last-child { align-items: center; } .burger-button { display: inline; } #projects { margin: 20px 0 40px; grid-template-columns: 100vw; grid-template-rows: 10% 40% 25% 25%; height: 1200px; row-gap: 15px; padding: 50px 10px; } #projects > h2 { grid-column: 1 / 2; grid-row: 1 / 2; } #projects > .project:nth-child(2) { grid-column: 1 / 2; grid-row: 2 / 3; } #projects > .project:nth-child(3) { grid-column: 1 / 2; grid-row: 4 / 5; } .project { width: 95%; margin: -40px 0 45px 8px; } #skills { margin-bottom: 100px; } #skills > p { width: 90%; } #certifications { padding: 30px 25px; } #certifications > p { width: 100%; } .courses-repository { display: flex; flex-direction: column; } .courses-repository > ul { width: 100%; } #contact { margin: 100px auto; padding: 0 25px; width: 100%; } #contact > h2 { font-size: 34px; } #contact > a:first-of-type { font-size: 30px; padding: 25px 0 0; } #contact > a { font-size: 24px; } } /* Mobile */ @media screen and (max-width: 600px) { header { padding: 15px 20px 15px 10px; } header > h1 { padding: 0; font-size: 18px; } .burger-button { width: 28px !important; } .link { font-size: 30px; } button { font-size: 10px; } h2 { font-size: 28px !important; } p { font-size: 16px !important; } #home { height: 80vh; padding: 0; grid-template-rows: auto 5%; } #home > div:first-child > h2 { font-size: 36px !important; } #home > div:first-child > p { width: 90%; margin: auto; } #home > div:last-child > .social-media { margin: 30px; } #home > div:last-child > .social-media > a { font-size: 14px; text-align: center; margin: 0; padding: 0; } #home > div:first-child > a:first-of-type { display: none; } #projects { grid-template-rows: 5% 40% 25% 25%; margin: 0; padding-bottom: 0; } .project { margin: 0; padding: 10px; } #more-projects > a { font-size: 14px !important; } #skills { margin: 100px 0 80px; } #skills > h2 { font-size: 34px !important; } #certifications { text-align: center; } #certifications > h2 { font-size: 26px !important; } #contact { margin: 30px auto; } #contact > h2 { font-size: 24px !important; } #contact > a:first-of-type { font-size: 100%; } #contact > a { font-size: 14px; } } .ease-in-out { transition-timing-function: cubic-bezier(.4,0,.2,1); } .duration-1000 { transition-duration: 1s; } .transition-all { transition-property: all; transition-timing-function: cubic-bezier(.4,0,.2,1); transition-duration: .15s; } .text-gray-500 { --tw-text-opacity: 1; color: rgb(107 114 128 / var(--tw-text-opacity)); } .font-medium { font-weight: 500; } .text-xl { font-size: 1.25rem; line-height: 1.75rem; } .py-1 { padding-top: .25rem; padding-bottom: .25rem; } .px-5 { padding-left: 1.25rem; padding-right: 1.25rem; } .bg-grey-400 { --tw-bg-opacity: 1; background-color: rgb(20 19 20 / var(--tw-bg-opacity)); } .border-grey-300 { --tw-border-opacity: 1; border-color: rgb(36 36 36 / var(--tw-border-opacity)); } .border { border-width: .5px; } .rounded-full { border-radius: 9999px; } .justify-center { justify-content: center; } .items-center { align-items: center; } .flex { display: flex; }