body{margin:0;font-family:Segoe UI,sans-serif;background:linear-gradient(#d0d0d066,#fff6),url(../images/voyage.jpg) no-repeat center center / cover;overflow:hidden;width:100%;height:100%}.desktop{position:relative;width:100%;height:100vh;overflow:hidden;transition:filter .3s ease;display:flex;flex-direction:column;justify-content:space-between}.icon-column{display:flex;flex-direction:column;gap:30px;padding:20px}.icon{display:flex;flex-direction:column;align-items:center;cursor:pointer;text-align:center;width:80px;transition:transform .2s;margin-top:10px;margin-left:3%}.icon:hover{transform:scale(1.1)}.icon-image{width:55px;height:auto;object-fit:contain;margin-bottom:5px}.icon p{font-size:.85rem;margin:0;line-height:1.2}.profile{position:absolute;top:20px;right:20px;width:150px;height:150px;border-radius:50%;overflow:hidden;border:3px solid #ccc;margin-right:3%;margin-top:3%;z-index:1}.profile img{width:100%;height:100%;object-fit:cover}.taskbar{height:70px;background:#e0e0e0;display:flex;justify-content:space-between;align-items:center;padding:0 15px;border-top:1px solid #ccc}.taskbar-left{display:flex;align-items:center;gap:10px}.taskbar-right{display:flex;align-items:center;gap:25px}.taskbar-icon{width:50px;cursor:pointer}.taskbar-app{position:relative;cursor:pointer}.taskbar-app img{width:50px;height:auto}.notif{position:absolute;top:-5px;right:-5px;background:red;color:#fff;font-size:.7rem;border-radius:50%;width:15px;height:15px;display:flex;align-items:center;justify-content:center}.searchbar{padding:8px 15px;border-radius:20px;border:1px solid #ccc;width:250px}.window{position:absolute;top:25%;left:35%;height:600px;background:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 6px 10px #00000040}.window-header{background:#0078d7;color:#fff;padding:5px 10px;display:flex;justify-content:space-between;align-items:center;border-top-left-radius:8px;border-top-right-radius:8px}.mail-overlay{position:fixed;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;inset:0;background:#00000073;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.mail-container{border-radius:16px;overflow:hidden;position:relative;max-height:80vh;overflow-y:auto;background:#ffffffe6;box-shadow:0 10px 40px #0000004d;transform:scale(.95);opacity:0;animation:popupIn .3s forwards;border:2px solid rgba(255,255,255,.2)}.mail-header{background-image:url(../images/fondmail.png);background-size:cover;background-position:center;display:flex;justify-content:space-between;align-items:center;padding:12px 24px;font-weight:700;font-size:20px;color:#0077c8}.mail-symbol{margin-left:auto;margin-right:auto}.mail-form{padding:32px}.mail-row{display:flex;gap:20px}.mail-field{flex:1;display:flex;flex-direction:column;margin-bottom:24px}.mail-field label{font-size:15px;margin-bottom:4px}.mail-field input,.mail-field textarea{border:none;border-bottom:1px solid #aaa;padding:6px 2px;background:transparent;outline:none;resize:none;transition:border-color .3s ease}.mail-field input:focus,.mail-field textarea:focus{border-color:#0077c8}.mail-submit{border:none;color:#555;font-style:italic;font-size:15px;cursor:pointer;float:right;transition:color .3s ease;margin-top:0;margin-bottom:7%}.mail-submit:hover{color:#0077c8}@keyframes slideIn{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.datetime{font-size:1rem;text-align:right}.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#f0f0f033;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:flex-end;align-items:center;z-index:200000;opacity:0;transition:opacity .3s ease}.popup-container{background:#fffc;padding:2rem 3rem;border-radius:10px;box-shadow:0 0 20px #0000001a;width:500px;max-width:90%;font-family:Playfair Display,serif;color:#747474}.popup-container h2{font-style:italic;font-weight:500;margin-bottom:1.5rem;text-align:left}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.input-row input{width:100%;box-sizing:border-box}input,textarea{width:97%;border:none;border-bottom:1px solid #555;background:transparent;padding:.5rem;font-size:1rem;resize:none}textarea{height:100px}.button-container{text-align:right;margin-top:1rem}button{border:none;background:#ffffffb3;padding:.5rem 1rem;font-style:italic;cursor:pointer;transition:all .2s ease-in-out;margin-top:.5rem;text-align:right;margin-right:0;color:#747474}button:hover{background:#0000001a}.surname{text-align:right}.directory-popup{height:400px;background:#ffffff26;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);border-radius:8px;box-shadow:0 8px 32px #0000004d;overflow:hidden;display:flex;flex-direction:column}.directory-header{padding:10px;background-color:#c8c8c84d;font-weight:700;border-bottom:1px solid rgba(255,255,255,.2);text-align:left}.directory-content{display:flex;flex-wrap:wrap;gap:20px;justify-content:flex-start;overflow-y:auto;overflow-x:hidden}.project-item{display:flex;flex-direction:column;align-items:center;cursor:pointer;width:100px;text-align:center;transition:transform .2s ease}.project-icon{width:64px;height:auto;margin-bottom:8px}.directory-popup{padding:16px}.directory-header{font-weight:700;margin-bottom:12px;font-size:1.1rem}.project-item{display:flex;flex-direction:column;align-items:center;cursor:pointer;width:200px;text-align:center;transition:transform .2s}.project-item:hover{transform:scale(1.05)}.project-icon{width:100%;height:auto;object-fit:cover;border-radius:4px;margin-bottom:4px}.window-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;width:600px;max-width:90vw;max-height:80vh;border-radius:8px;box-shadow:0 0 20px #0003;display:flex;flex-direction:column;overflow:hidden;z-index:1000}.window-header{background-color:#0078d7;color:#fff;padding:10px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:700;cursor:move;-webkit-user-select:none;user-select:none;min-height:40px}.window-title{flex-grow:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:1rem}.window-content{padding:15px;overflow-y:auto;overflow-x:hidden;flex-grow:1;display:flex;flex-direction:column}.window-wrapper{z-index:999}.window-container{background:#fff;width:100%;height:100%;display:flex;flex-direction:column;border-radius:8px;box-shadow:0 0 20px #0003;overflow:hidden}.window-header{background-color:#0078d7;color:#fff;padding:10px 16px;display:flex;justify-content:space-between;align-items:center;font-weight:700;cursor:move;-webkit-user-select:none;user-select:none}.window-close{background:transparent;border:none;color:#fff;font-size:1.2rem;cursor:pointer;margin-bottom:1.5%;margin-right:-1%}.send{margin-left:80%}.btn-cv{display:inline-block;margin-top:20px;background-color:#0078d7;color:#fff;padding:10px 16px;text-decoration:none;border-radius:5px;font-weight:700}.btn-cv:hover{background-color:#006dc4}.cv-wrapper{max-width:800px;margin:0 auto;padding:20px;background-color:#f8f9fa;border-radius:10px;box-shadow:0 0 10px #0000001a}.competences-popup{position:fixed;top:10%;left:50%;transform:translate(-50%);width:450px;background:#fff;border-radius:10px;box-shadow:0 8px 20px #0003;overflow:hidden;z-index:20;font-family:Segoe UI,sans-serif}.popup-header{background:#0078d7;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:10px 16px}.popup-header h2{font-size:1rem;font-weight:600;margin:0}.close-btn{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer}.popup-content{padding:20px;display:flex;flex-direction:column;gap:15px}.competences-content{padding:20px}.skill-row{display:flex;align-items:center;gap:15px;background:#f9f9f9;border-radius:8px;padding:12px 16px;margin-bottom:12px;box-shadow:0 1px 2px #0000000d}.skill-icon{width:40px;height:auto}.skill-row p{font-size:.95rem;color:#222;font-weight:500;margin:0}.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000004d;display:flex;align-items:center;justify-content:center}.popup-container{position:absolute;background:#fff;border-radius:10px;box-shadow:0 4px 20px #0003;overflow:hidden;resize:both;min-width:300px;min-height:250px;display:flex;flex-direction:column;transition:all .2s ease}.popup-header{background:#fff9c4;color:#007bff;font-weight:700;padding:10px 15px;display:flex;align-items:center;justify-content:space-between;cursor:move}.popup-form{flex:1;padding:15px;display:flex;flex-direction:column;gap:10px}.input-row{display:flex;gap:10px}input,textarea{width:100%;padding:8px;border:none;border-bottom:1px solid #aaa;outline:none}textarea{flex:1;resize:none}button.send{align-self:flex-end;background:none;border:none;color:gray;cursor:pointer;font-style:italic}.close-btn{background:none;border:none;cursor:pointer;color:#007bff}.resize-handle{position:absolute;bottom:0;right:0;width:15px;height:15px;background:transparent;cursor:se-resize}.window-close2{background:transparent;border:none;color:#007bff;font-size:1.5rem;cursor:pointer;margin-top:-24%;margin-right:-1%;margin-bottom:-14%}.color-texte{color:#007bff}.desktop{position:relative;z-index:10000}.about-overlay{position:fixed;inset:0;background:#0000004d;display:flex;justify-content:flex-end;align-items:center;z-index:99999}.about-panel{position:relative;background:#fff;width:1000px;height:auto;border-radius:8px 0 0 8px;box-shadow:-4px 0 20px #0000004d;overflow:hidden;display:flex;flex-direction:column;transition:width .2s ease,height .2s ease;z-index:100000}.about-header{background-image:url(../images/fond.png);background-size:cover;color:#007bff;background-position:center;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.about-close{background:none;border:none;font-size:22px;cursor:pointer;color:#007bff;margin-left:8px;z-index:10001}.about-content{padding:24px;overflow-y:auto;flex:1}.about-resize-handle{position:absolute;left:0;top:0;width:10px;height:100%;cursor:ew-resize;background:transparent}.apropos{margin-left:auto;margin-right:auto;text-align:center}.main-project-image{max-width:600px;border-radius:12px;margin-bottom:20px}.gallery{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.gallery img{width:200px;border-radius:8px;transition:transform .3s}.gallery img:hover{transform:scale(1.05)}.back-button{background:transparent;border:1px solid #fff;color:#fff;padding:8px 16px;border-radius:6px;cursor:pointer;margin-bottom:20px;transition:all .3s}.back-button:hover{background-color:#fff;color:#000}.space{margin-bottom:5%}.timeline-section{padding:80px 10%;background:#fafafa}.timeline-title{text-align:center;font-size:28px;margin-bottom:40px}.timeline{position:relative;margin:0 auto;padding-left:40px;border-left:2px solid #ccc;max-width:700px}.timeline-item{position:relative;margin-bottom:40px;animation:fadeInUp .6s ease forwards}.timeline-year{position:absolute;left:-70px;top:0;font-weight:700;font-size:20px;color:#0077c8}.timeline-content{background:#fff;padding:16px 20px;border-radius:12px;box-shadow:0 2px 8px #00000014;border-left:5px solid transparent;transition:all .3s ease}.timeline-content:hover{transform:translate(5px)}.timeline-item.exp .timeline-content{border-left-color:#0077c8}.timeline-item.edu .timeline-content{border-left-color:#fff9bc}.timeline-content h3{font-size:18px;margin:0}.timeline-content h4{font-size:15px;color:#666;margin:4px 0 8px}.timeline-content p{font-size:14px;color:#555}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.diplome-overlay{position:fixed;inset:0;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.diplome-popup{background:#fff;width:700px;max-height:75vh;overflow-y:auto;border-radius:16px;padding:20px 30px;position:relative;background:#ffffffe6;border:2px solid rgba(255,255,255,.2);box-shadow:0 10px 40px #0000004d;transform:scale(.95);opacity:0;animation:popupIn .3s forwards}.diplome-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.diplome-header h2{font-size:23px;font-weight:700;color:#007bff;background-image:url(../images/fondmail.png);background-size:cover;background-position:center;padding:1rem 8rem;border-radius:9px;margin-right:auto;margin-left:auto}.close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:#444}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.timeline-content li{list-style:disc;margin-bottom:4px;color:#444}.hobbies-overlay{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;z-index:10000;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.hobbies-popup{position:relative;max-width:900px;height:90%;background-size:cover;overflow-y:auto;background:#ffffffe6;border:2px solid rgba(255,255,255,.2);border-radius:16px;box-shadow:0 10px 40px #0000004d;transform:scale(.95);opacity:0;animation:popupIn .3s forwards}@keyframes slideIn{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.hobbies-title{text-align:center;font-size:2.5rem;margin-bottom:1.5rem;color:#0078d7;background-position-x:0%;background-position-y:0%;margin-top:-1%;background-image:url(../images/fond.png);background-size:cover;background-position:center;padding:1.5rem;border-top-right-radius:10px;border-top-left-radius:10px}.polaroid-wall{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;position:relative}.polaroid{width:180px;background:#fff;border:2px solid #b0b0b0;border-bottom:35px solid #fff;box-shadow:0 6px 15px #0003;text-align:center;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer;position:relative}.polaroid img{width:100%;height:150px;object-fit:cover;border-bottom:1px solid #ddd}.polaroid .caption{padding:8px}.polaroid .caption h3{font-size:1rem;font-family:Courier New,monospace}.polaroid .caption p{font-size:.85rem;color:#555;margin-top:.5rem;animation:fadeIn .3s ease}.highlight{border-color:#fff9bc;background:#fff8d2;transform:scale(1.05)}.polaroid:hover{transform:scale(1.07) rotate(0);box-shadow:0 10px 25px #0000004d}.active{z-index:10;transform:scale(1.15) rotate(0)!important}.window-close2{position:absolute;top:15px;right:20px;font-size:1.2rem;background:transparent;border:none;cursor:pointer}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pin{position:absolute;top:-8px;left:50%;transform:translate(-50%);width:12px;height:12px;background:#007bff;border-radius:50%;box-shadow:0 2px 4px #0000004d}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.project-details-overlay{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;animation:fadeIn .3s ease;background:#00000073;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.project-details-popup{background:#ffffffe6;border:2px solid rgba(255,255,255,.2);border-radius:16px;padding:24px;width:700px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;transform:scale(.95);opacity:0;animation:popupIn .3s forwards}.project-details-popup.fullscreen{width:90vw;height:90vh}.project-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.project-details-actions{display:flex;gap:10px}.fullscreen-btn,.close-btn{background:none;border:none;font-size:18px;cursor:pointer;transition:transform .2s ease}.fullscreen-btn:hover,.close-btn:hover{transform:scale(1.2)}.project-details-content{display:flex;flex-direction:column;gap:12px}.project-image{width:100%;border-radius:12px;object-fit:cover;max-height:300px}.project-description{line-height:1.6}.stack-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px}.stack-list li{background:#a8a8a833;padding:6px 12px;border-radius:8px;font-size:.9em;margin-top:-3%}.project-link{display:inline-block;margin-top:8px;color:#fff;background:#007bff4d;padding:8px 14px;border-radius:8px;text-decoration:none;transition:background .2s ease}.project-link:hover{background:#007bff80}@keyframes popupIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.taskbar{display:flex;justify-content:space-between;align-items:center;padding:.3rem 1rem;position:fixed;bottom:0;width:100%;z-index:100}.taskbar-icon img{width:40px;height:40px;cursor:pointer}.search-desktop{display:block}.desktop-only{display:flex;align-items:center;gap:.8rem;margin-right:2.8%}.mobile-menu{position:absolute;bottom:50px;left:10px;border-radius:12px;box-shadow:0 4px 10px #0006;padding:.8rem;display:flex;flex-direction:column;gap:.8rem;animation:fadeIn .2s ease-in-out;background:#ffffffe6}.mobile-menu .menu-item{display:flex;align-items:center;gap:.8rem;cursor:pointer;font-size:.9rem}.mobile-menu .menu-item img{width:22px;height:22px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.desktop-only,.search-desktop{display:none}.taskbar{justify-content:flex-start}.menu-button{background:none;border:none;padding:0}}.menu-button{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center}.menu-button img{display:block}.carousel-container{position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px;overflow:hidden}.carousel-image{max-width:400px;max-height:300px;width:auto;height:auto;border-radius:12px;box-shadow:0 4px 12px #00000040;object-fit:contain}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#0006;color:#fff;border:none;font-size:2rem;cursor:pointer;padding:6px 10px;border-radius:50%;transition:background .3s ease;z-index:10}.carousel-btn:hover{background:#000000b3}.carousel-btn.prev{left:15px}.carousel-btn.next{right:15px}.fullscreen .carousel-image{max-width:80%;max-height:80vh}body.modal-open{overflow:hidden}@media (max-width: 768px){.project-details-popup{width:90%;height:auto;overflow-y:auto;position:fixed;transform:none;border-radius:16px}.project-details-content img,.carousel-image{max-width:100%;height:auto;border-radius:12px}.project-details-header h2{font-size:1.2rem}.stack-list li{font-size:.9rem}.project-description{font-size:.95rem;line-height:1.4}}.overlay{position:fixed;inset:0;background:#00000059;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:9999!important}@media (max-width: 768px){.window{position:static!important;transform:none!important}}.overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000040;z-index:999}.submenu{margin-left:2.5rem;background:#ffffffe6;border-left:2px solid #0078d7;border-radius:8px;padding:5px}.submenu-item{padding:5px 10px;cursor:pointer}.submenu-item:hover{background-color:#e5f1ff}.cv-popup.centered,.directory-popup.centered,.autre-popup.centered,.competences-popup.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;z-index:1000}.overlay-centered{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000040;z-index:999}.cv-wrapper.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;max-width:700px;background:#fff;border-radius:12px;box-shadow:0 0 25px #0003;z-index:1001;padding:20px}.overlay-centered{position:fixed;top:0;left:0;width:100vw;height:100vh;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0003;z-index:1000}.window-close2{position:absolute;top:10px;right:15px;background:none;border:none;font-size:22px;cursor:pointer;color:#0078d7;transition:.2s ease}.window-close2:hover{color:#005a9e;transform:scale(1.1)}.btn-cv{display:inline-block;margin-top:15px;padding:10px 16px;background-color:#0078d7;color:#fff;border-radius:8px;text-decoration:none;transition:background-color .2s ease}.btn-cv:hover{background-color:#005fa3}
