
@media (max-width: 767px) {
    
    :root { --mobile-header-h: 64px; }
    
    /* Global fixes */
    html, body {
        scroll-behavior: smooth;
        margin: 0;
        padding: 0;
        overflow-x: clip;
    }

    body {
        transition: background-color 0.8s ease-in-out ;
    }
    
    
    header {
        transition: all 0.4s ease-in-out ;
        -webkit-transition: all 0.4s ease-in-out ;
        -moz-transition: all 0.4s ease-in-out;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        background: var(--base);
        z-index: 9999;
    }
    

    [data-style] {
        position: relative ;
        height: 10px ;
        z-index: 10 ;
        display: block ;
    }
    
    
    .hide-on-large { display: block !important; }
    .hide-on-pad { display: block !important; }
    .hide-on-phone { display: none !important; }
    

    .container-fluid {
        padding: 1%;
    }
    
    .navbur {
        background: var(--color-background) !important;
        border-bottom: .1px solid var(--color-background);
        box-shadow: 0 0 10px -10px #000a18;
        position: relative;
        transition: all .5s ease !important;
    }
    
    .navi {
        display: flex;
        align-items: center;
        justify-content: space-between;
        /* Ajoute cet attribut pour espacer les éléments */
        padding-left: 1vw;
        padding-right: 1vw;
        width: 100%;
    }
    
    .bar-container {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    
    
    
    
    .bar {
        width: 0.15vw;
        margin: 1px;
        
        animation: barAnimation 2s ease-in-out alternate-reverse infinite;
        border-radius: 100px;
        background-color: var(--second);
    }
    
    
    .bar:nth-child(2) {
        width: 0.30vw;
        animation-delay: 0.15s;
        /* Démarre l'animation de la deuxième barre 0.5 seconde après le début */
    }
    
    .bar:nth-child(3) {
        width: 0.45vw;
        animation-delay: 0.20s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(4) {
        width: 0.60vw;
        animation-delay: 0.25s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(5) {
        width: 0.75vw;
        animation-delay: 0.30s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(6) {
        width: 0.90vw;
        animation-delay: 0.35s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
        
    }
    
    .bar:nth-child(7) {
        width: 1.05vw;
        animation-delay: 0.40s;
        /* Démarre l'animation de la deuxième barre 0.5 seconde après le début */
    }
    
    .bar:nth-child(8) {
        width: 1.2vw;
        animation-delay: 0.45s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(9) {
        width: 1.35vw;
        animation-delay: 0.50s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(10) {
        width: 1.5vw;
        animation-delay: 0.55s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(11) {
        width: 1.35vw;
        animation-delay: 0.50s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(12) {
        width: 1.2vw;
        animation-delay: 0.45s;
        /* Démarre l'animation de la deuxième barre 0.5 seconde après le début */
    }
    
    .bar:nth-child(13) {
        width: 1.05vw;
        animation-delay: 0.40s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(14) {
        width: 0.9vw;
        animation-delay: 0.35s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(15) {
        width: 0.75vw;
        animation-delay: 0.30s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(16) {
        width: 0.60vw;
        animation-delay: 0.25s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
        
    }
    
    .bar:nth-child(17) {
        width: 0.45vw;
        animation-delay: 0.20s;
        /* Démarre l'animation de la deuxième barre 0.5 seconde après le début */
    }
    
    .bar:nth-child(18) {
        width: 0.30vw;
        animation-delay: 0.15s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    .bar:nth-child(19) {
        width: 0.15vw;
        animation-delay: 0.15s;
        /* Démarre l'animation de la troisième barre 1 seconde après le début */
    }
    
    
    
    
    @keyframes barAnimation {
        0% {
            height: 0vw;
        }
        
        25% {
            height: 6vw;
        }
        
        50% {
            height: 12vw;
        }
        
        75% {
            height: 6vw;
        }
        
        100% {
            height: 0vw;
        }
    }
    
    
    /* shrink pour changement de theme conditionné*/
    
    
    .shrink {
        background: var(--second) !important;
    }
    
    .shrink-color {
        color: var(--base) !important;
    }
    
    .shrink-color-bar:hover {
        background-color: var(--Home-color) !important;
    }
    
    .shrink-base-color {
        color: var(--base) !important;
    }
    
    .shrink-second-color {
        color: var(--second) !important;
    }
    
    .shrink-base-bg-color {
        background-color: var(--base) !important;
    }
    
    .shrink-second-bg-color {
        background-color: var(--second) !important;
    }
    
    
    .logo-Univ-container {
        align-self: center ;
        width: 60px ;
        height: 60px ;
        border-radius: 50%;
        overflow: hidden ;
        background-color: var(--second) ;
        display: flex ;
        justify-content: center ;
        align-items: center ;
        border: 2px solid var(--base) ;
        margin: 0 auto 20px auto ;
    }
    
    
    /**
    Nav Styles
    **/
    
    .nav {
        position: fixed ;
        top: 9% !important;
        right: 0 ;
        background-color: var(--base);
        bottom: 0;
        left: auto ;
        height: calc(100% - var(--mobile-header-h)) ;
        width: 75% ;
        margin-top: 0 ;
        border-radius: 12px 0 0 12px ;
        transform: translateX(100%) ;
        transition: transform 0.3s ease-in-out ;
        opacity: 1 ;
        display: block;
        z-index: 9998;
    }
    
    /* Bordure du menu mobile - claire par défaut (pour fond sombre) */
    .nav {
        border: 4px solid var(--second) !important;
    }
    
    /* Bordure sombre quand le menu a un fond clair */
    .nav.shrink-second-bg-color {
        border: 4px solid var(--base) !important;
    }
    
    /* Gestion humburger */
    
    #toggle2 {
        display: none;
    }
    
    #toggle2:checked + .hamburger + .nav {
        transform: translateX(0) !important;
    }
    
    /**
    Animations
    **/
    #toggle2:checked+.hamburger .top-bun {
        transform: rotate(-45deg);
        margin-top: 25px;
    }
    
    #toggle2:checked+.hamburger .bottom-bun {
        opacity: 0;
        transform: rotate(45deg);
    }
    
    #toggle2:checked+.hamburger .meat {
        transform: rotate(45deg);
        margin-top: -7px;
    }
    
    .bottom-bun,
    .meat,
    .top-bun {
        background-color: var(--second);
    }
    
    .hamburger {
        width: 2em;
        height: 45px;
        z-index: 5;
    }
    
    .hamburger div {
        position: relative;
        width: 2em;
        height: 7px;
        border-radius: 3px;
        background-color: var(--second);
        margin-top: 8px;
        transition: all 0.3s ease-in-out;
    }
    
    .humburger-container {
        display: flex;
        align-items: center;
        margin-left: auto;
        padding: 4%;
    }
    
    
    /* Force single-column list of links */
    .nav-wrapper {
        position: relative;
        overflow: hidden;
        overflow-y: auto;
        height: 100%;
    }
    
    .nav2 { text-align: left; margin: 0; padding: 2%; }
    .nav2 a {
        position: relative;
        text-decoration: none;
        color: var(--second);
        font-size: 2vh;
        margin-top: 0.5em;
        margin-bottom: 0.5em;
        transition: color 0.2s ease-in-out;
        letter-spacing: 1px;
    }
    
    
    .nav-link-home {
        color: var(--Home-color) !important
    }
    
    .top-menu2 {
        display: flex;
        margin: 0 1vw;
    }
    
    .top-menu3 {
        color: var(--second);
        text-decoration: none;
        font-weight: bold;
        text-transform: uppercase;
        letter-spacing: 0.15vw;
        position: relative;
        font-size: 1.1vw;
    }
    
    .top-menu3Home {
        color: var(--Home-color) !important;
        text-decoration: none;
        font-weight: bold;
        text-transform: uppercase;
        letter-spacing: 0.15vw;
        position: relative;
        font-size: 1.1vw;
    }
    
    .top-menu3:after {
        content: "";
        display: block;
        height: 0.1vw;
        background: var(--Home-color);
        width: 0;
        position: absolute;
        bottom: 0;
        left: 50%;
        transition: width 0.3s ease 0s, left 0.3s ease 0s;
    }
    
    /* Logo */
    
    .logo-container {
        padding-left: 2vw;
        display: flex;
        flex-direction: column;
    }
    
    .name-logo {
        font-family: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace;
        font-size: 6vw;
        font-weight: 800;
        color: var(--second);
        letter-spacing: 1px;
        text-transform: uppercase;
        transition: color 0.3s ease-in-out;
    }
    
    .surname-logo {
        font-family: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace;
        font-size: 4.5vw;
        font-weight: 800;
        color: #64ffda;
        letter-spacing: 1px;
        text-transform: uppercase;
        transition: color 0.3s ease-in-out;
    }
    
    .name-logo,
    .surname-logo {
        display: inline-block;
        margin-right: 2vw;
    }
    
    
    /* Style du réseau de neuronne */
    .neuron {
        fill: var(--Home-color);
        /* Couleur avec 60% d'opacité */
        cursor: pointer;
        r: 2vw;
        transition: r 0.3s, fill 0.3s;
    }
    
    .neuron:hover {
        fill: var(--base);
        r: 3vw;
    }
    
    .link {
        stroke: var(--Home-color);
        stroke-width: 0.2vw;
        transition: stroke 0.3s;
    }
    
    /* Gestion style du réseau de neurones (fond) */
    
    .label {
        font-size: 1.4vw;
    }
    
    /* Mobile Home: center contact button and social links */
    .btt-container { 
        display: flex !important; 
        flex-direction: column !important; 
        align-items: center !important; 
        gap: 32px; 
        margin-top: 20 !important; 
    }

    .btt-container .col-4, .btt-container .col-3, .btt-container .col-5 { 
        width: 100% !important; 
        display: block !important; 
    }

    .contact-home { 
        width: auto !important; 
        margin-bottom: 16px !important; 
    }

    .contact-me { 
        margin: 0 auto !important;
        display: flex;
        align-items: center;
        justify-content: center;
        /* Centre le texte et l'icône */
        background: var(--color-contact);
        border: none;
        color: var(--second);
        font-size: 4vw;
        border-radius: 15pt;
        padding: 6% 20%;
        transition: all 0.5s ease;
    }
    
    .contact-me i {
        margin-left: 0.8vw;
    }
    
    .contact-link {
        text-decoration: none;
    }

    .intro-contact { 
        width: auto !important; 
        text-align: center !important; 
        justify-content: center !important; 
        display: flex !important; 
        margin-top: 0 !important; 
    }

    .intro-contact ul2 { 
        display: flex !important; 
        justify-content: center !important; 
        align-items: center !important; 
        gap: 12px; 
        margin: 0 !important; 
        padding: 0 !important; 
        list-style: none !important; 
    
    }

    .icon-link { 
        display: inline-flex !important; 
        align-items: center !important; 
        justify-content: center !important; 
    }
    
    .icon-link i {
        margin-right: 2vw;
        font-size: 4vw;
        width: 8vw;
        color: #f5f5f5;
        border: 0.2vw solid var(--base);
        background: transparent;
        height: 8vw;
        border-radius: 100px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    
    .icon-link {
        text-decoration: none;
    }
    
    /* Home container sections */
    .Home-container {
        position: relative;
        z-index: 10;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        height: 100vh;
        background-color: var(--second);
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
        margin-top: 18%;
    }
    
    
    /* Gestion de la carte de visite */
    
    .intro-row-card-front {
        background-color: var(--second);
        border-radius: 10pt 0pt 0pt 0pt;
        padding: 3% 3% 3% 3%;
    }
    
    .intro-row-card-back {
        background-color: var(--second);
        border-radius: 0pt 10pt 0pt 0pt;
        padding: 3% 3% 3% 3%;
    }
    
    
    .small-intro.hide-on-large.hide-on-pad { 
        display: block !important; 
        background-color: transparent !important;
    }

    .small-intro .slogan { 
        line-height: 1.3;
        color: yellow;
        font-size: 3vw;
        font-weight: 200; 
    }

    .small-intro .presentation { 
        font-size: 14px; 
        line-height: 1.5; 
        color: #e9ecef;
        padding-top: 4vw;
        font-weight: 300;
        font-style: italic; 
    }
    
    .Economist {
        z-index: 11;
        font-size: 6vw;
        font-weight: 500;
        color: white;
        opacity: 1;
    }
    
    /* Ensure neural network stays behind content */
    .neural-network { 
        position: relative; 
        z-index: -1 !important; 
    }

    .intro-row { 
        position: relative;
        z-index: 1;
        flex-direction: column;
        padding: 0vh 5vh 0vh 5vh;
        align-items: center;
        justify-content: center;
        text-align: center; 
    }
    
    
    .neural-network { 
        height: 260px !important; 
        margin: 10% 3% 10% 3%;
    }

    .neural-network svg { 
        width: 100% !important; 
        height: 100% !important; 
    }
    
    /* Grid/flex simplifications */
    .intro-row, .btt-container { 
        display: block !important;
     }

    .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    .neuron {
        fill: var(--Home-color);
        cursor: pointer;
        r: 3vw;
        transition: r 0.3s, fill 0.3s;
    }
    
    
    /* Card/profile area: restore flip functionality on mobile */
    .profil-container { 
        padding: 4%;
     }

    .container-move { 
        transform: none !important; 
    }
    
    /* Gestion body2 qui contient les info de la carte de visite */
    
    .card2 .body2 {
        padding: 2%;
        text-align: left;
    }
    
    
    .card2 { 
        height: auto; 
        min-height: 250px; 
        max-height: 290px; 
        position: relative;
        perspective: 1000px;
        background-color: var(--base);
        border-radius: 20pt 0pt 20pt 0pt;
        box-sizing: border-box;
        box-shadow: 0px 0px 50px rgba(0, 0, 0, 1);
        margin-top: 20%;
        margin-bottom: 20%; }
        
        
        .card2.move {
            width: 100%;
            height: 42vw;
            transform-style: preserve-3d;
            transition: transform 0.5s;
        }

        .front-face, .back-face { 
            position: absolute !important; 
            width: 100% !important; 
            height: 100% !important; 
            backface-visibility: hidden !important; 
            box-sizing: border-box !important;
            display: flex !important;
            flex-direction: column !important;
        }

        .back-face { 
            transform: rotateY(180deg) !important; 
        }
        .flip-button, .flip-button-2 { 
            position: static !important; 
            margin: 16px auto 0; 
            display: block;
            background: transparent;
            border: none; }
            
            
            .back-face .body2 { 
                display: flex !important; 
                align-items: center !important; 
                justify-content: center !important; 
                flex-direction: column !important;
                padding: 15px 12px !important;
                box-sizing: border-box !important;
                overflow: hidden !important;
                flex: 1 !important;
                min-height: 0 !important;
            }
            .my-presentation { 
                font-size: 15px !important; 
                font-weight: 500;
                font-family: 'Optima', sans-serif;
                font-style: italic;
                max-width: 80%;
                line-height: 1.3 !important; 
                color: #000000 !important; 
                word-wrap: break-word !important; 
                overflow-wrap: break-word !important;
                text-align: center !important; 
                margin: 0 !important;
                display: block !important;
                flex-shrink: 0 !important;
                align-items: center;
                letter-spacing: 0.5px;
                justify-content: center;
            }
            
            .Data-Scientist {
                z-index: 11;
                font-size: 10vw;
                font-weight: 800;
                -webkit-text-fill-color: transparent;
                background: var(--color-title);
                -webkit-background-clip: text;
                white-space: nowrap;
                min-width: 85vw; 
            }
            
            
            .Data-Scientist-card {
                z-index: 11;
                font-weight: 600;
                -webkit-text-fill-color: transparent;
                background: var(--color-title);
                -webkit-background-clip: text;
                white-space: nowrap;
            }
            
            .Economist-card {
                z-index: 11;
                font-weight: 400;
                color: white;
                opacity: 1;
            }
            
            /* Gestion disposition de la carte de visite */
            
            .info-container {
                padding: 2%;
            }
            

            .body2 { display: flex !important; flex-direction: row !important; align-items: center !important; margin-top: 1%; }
            .body2 .col-6 { width: 50% !important; }
            
            .center-stack {
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
            }
            
            .info-container { 
                text-align: left !important; 
                display: flex !important;
                flex-direction: column !important;
                align-items: flex-start !important;
                justify-content: center !important;
                padding-left: 10px !important;
            }
            .info-container .info { 
                text-align: left !important; 
                display: flex !important;
                justify-content: flex-start !important;
                align-items: center !important;
                width: 100% !important;
                margin-bottom: 8px !important;
            }
            .info-container .value { 
                text-align: left !important; 
                display: block !important;
                width: 100% !important;
                margin: 0 !important;
                font-size: 11px !important;
                color: #000000 !important;
                font-family: 'Optima', sans-serif;
            }
            
      
            .services-container { 
                height: auto ;
                min-height: 100vh ; 
                overflow: hidden ;
                position: relative ;
                display: flex ;
                flex-direction: column ;
                justify-content: center ;
                padding: 24px 12px ;  
            }
            
            /* Services horizontal carousel */
            #contentContainer { 
                position: relative ; 
                left: auto ;
                top: auto ;
                transform: none ; 
                width: 100% ; 
                height: auto ; 
                padding: 0 ;
                display: flex ;
                flex-direction: column ;
                justify-content: center ;
                flex: 1 ;
                perspective: none ;
            }
            
            #carouselContainer { 
                position: relative ; 
                left: auto ;
                top: auto ;
                transform: none ;
                width: 100% ; 
                height: auto ; 
                display: flex ;
                flex-direction: row ;
                gap: 15px ;
                padding: 0 20px ;
                overflow-x: auto ;
                overflow-y: hidden ;
                scroll-behavior: smooth ;
                -webkit-overflow-scrolling: touch ;
                scrollbar-width: none ;
                -ms-overflow-style: none ;
                flex: 1 ;
                align-items: center ;
            }
            
            #carouselContainer::-webkit-scrollbar {
                display: none !important;
            }
            
            .carouselItem { 
                position: relative ; 
                visibility: visible ; 
                width: 280px;
                min-width: 280px ;
                height: 200px ; 
                left: auto ;
                top: auto ;
                transform: none ;
                margin: 0 ;
                display: block ;
                flex-shrink: 0 ;
            }
            
            .carouselItemInner { 

                background-size: cover ; 
                background-position: center ;
                background-repeat: no-repeat ;
                border-radius: 15px ;
                overflow: hidden ;
                justify-content: center ;
                box-sizing: border-box ;
                position: relative ;
                color: white;
                font-size: 1vw;
                font-weight: bold;
                text-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
                padding: 20px ;
                background-color: rgba(255, 255, 255, 0.15) ;
                backdrop-filter: blur(10px) brightness(1.1) ;
                border: 2px solid rgba(255, 255, 255, 0.3) ;
                box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5) ;

            }


    
            .carouselItemInner::before {
                content: '' ;
                position: absolute ;
                top: 0 ;
                left: 0 ;
                right: 0 ;
                bottom: 0 ;
                background: rgba(0, 0, 0, 0.3) ;
                z-index: 1 ;
                border-radius: 15px ;
            }
            
            .carouselItemInner > * {
                position: relative !important;
                z-index: 2 !important;
            }
            

            .titre-card { 

                text-align: center ; 
                padding: 0 12px ;
                text-shadow: 0 2px 4px rgba(0, 0, 0, 0.7) ;
                z-index: 3 ;
                position: relative ;
            }
            
            .description { 
                text-align: center !important;
                padding: 0 12px !important;
                word-wrap: break-word !important;
                text-shadow: 0 1px 3px rgba(0, 0, 0, 0.7) !important;
                z-index: 3 !important;
                position: relative !important;
                max-height: 200px !important;
                overflow-y: auto !important;
                background-color: transparent !important;
                border: none !important;
                list-style: none;
            }
            

            .carouselItem {
                opacity: 1 !important;
                visibility: visible !important;
                z-index: 1 !important;
            }
            

            
            
           
            .carouselItemInner img {
                max-width: 100% !important;
                height: auto !important;
                border-radius: 8px !important;
            }
            
            /* Mobile carousel adjustments */
            @media (max-width: 767px) {
                
                #carouselContainer {
                    transform: translateZ(-150px) !important; 
                }
                
               
                .carouselItem {
                    transform-origin: center center !important;
                }
                
                
                .carouselItemInner {
                    touch-action: pan-x !important;
                    user-select: none !important;
                }
            }
            
            /* Mobile carousel - simple 2D horizontal carousel */
            @media (max-width: 767px) {
                /* Completely hide desktop carousel on mobile */
                #contentContainer, #carouselContainer {
                    display: none !important;
                }
                
                /* Mobile carousel wrapper */
                .mobile-carousel-wrapper {
                    width: 100% ;
                    height: auto ;
                    min-height: 400px ;
                    overflow: hidden ;
                    position: relative ;
                    background: transparent ;
                    border-radius: 0 ;
                    margin: 20px 0 ;
                    padding: 0 ;
                }
                
                /* Mobile carousel container */
                .mobile-carousel-container {
                    display: flex !important;
                    height: 400px !important;
                    transition: transform 0.5s ease-in-out !important;
                }
                
                .mobile-carousel-item {
                    min-width: 100% ;
                    height: 100% ;
                    display: flex ;
                    align-items: center ;
                    justify-content: center ;
                    padding: 20px ;
                    box-sizing: border-box ;
                }
                
                /* Mobile carousel card */
                .mobile-carousel-card {
                    width: 100% ;
                    max-width: none ;
                    height: 100% ;
                    background-color: rgba(255, 255, 255, 0.15) ;
                    backdrop-filter: blur(10px) brightness(1.1) ;
                    border: 2px solid rgba(255, 255, 255, 0.3) ;
                    border-radius: 15px ;
                    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5) ;
                    display: flex ;
                    flex-direction: column ;
                    align-items: center ;
                    justify-content: center ;
                    text-align: center ;
                }
                

                .mobile-carousel-card .titre-card {
                    font-size: 24px !important;
                    font-weight: bold !important;
                    color: #ffffff !important;
                    margin-bottom: 15px !important;
                    width: 100% !important;
                    max-width: 100% !important;
                }
                
                .mobile-carousel-card .description {
                    font-size: 16px !important;
                    color: #ffffff !important;
                    line-height: 1.5 !important;
                    width: 100% !important;
                    max-width: 100% !important;
                }
                
                /* Mobile carousel images */
                .mobile-carousel-card img {
                    max-width: 100% !important;
                    height: auto !important;
                    border-radius: 8px !important;
                    margin: 10px 0 !important;
                    object-fit: cover !important;
                }
                

                .mobile-carousel-card .carouselItemInner {
                    display: flex !important;
                    flex-direction: column !important;
                    align-items: center !important;
                    width: 100% !important;
                    height: 100% !important;
                }
                

                .mobile-carousel-indicators {
                    position: relative ;
                    display: flex ;
                    justify-content: center ;
                    align-items: center ;
                    gap: 7px ;
                    z-index: 10 ;
                    flex-shrink: 0 ;
                    margin-top: 20px ;
                }
                
                .mobile-carousel-indicator {
                    width: 20px ;
                    height: 6px ;
                    border-radius: 3px ;
                    background: rgba(100, 100, 100, 0.4) ;
                    cursor: pointer ;
                    transition: all 0.3s ease ;
                    border: none ;
                    outline: none ;
                    pointer-events: auto ;
                    z-index: 11 ;
                    opacity: 0.7 ;
                }
                
                .mobile-carousel-indicator.active {
                    background: #64ffda !important;
                    opacity: 1 !important;
                    transform: scaleX(1.3) !important;
                    width: 24px !important;
                }
            }
            
            
            
            /* Experience pages: remove absolute elements causing overlap */
            .container-mission { display: flex; align-items: center; justify-content: space-between; gap: 12px; }

            
            /* Images */
            img, video { max-width: 100%; height: auto; }
            
            /* Photo carte de visite */
            .circle-container { 
                width: 80%; 
                margin: 0 auto; 
                border-radius: 100%;
                overflow: hidden; }
                
                
                
                .circle-image {
                    width: 100%;
                }
                
                .tag-list, .tag-list-back { overflow-x: auto; -webkit-overflow-scrolling: touch; gap: 8px; }
                .tag-list::-webkit-scrollbar, .tag-list-back::-webkit-scrollbar { display: none; }
                
                
                

                .contact-container {
                    display: block !important;
                    padding: calc(var(--mobile-header-h) + 20px) 20px 20px 20px !important;
                    height: auto !important;
                    background-color: transparent ;
                    position: relative ;
                    z-index: 1 ;
                }
                

                .contact-container.hide-on-large {
                    display: none !important;
                }
                
                .project-container {
                    display: block !important;
                    padding: calc(var(--mobile-header-h) + 20px) 20px 20px 20px ;
                    height: auto ;
                    background-color: transparent ;
                    position: relative ;
                    z-index: 1 ;
                }
                
                .third-container {
                    background-color: transparent ;
                    min-height: 100vh ;
                    height: auto ;
                    padding: calc(var(--mobile-header-h) + 20px) 20px 20px 20px ;
                    overflow: visible ;
                    position: relative ;
                    z-index: 1 ;
                }
                
                
                .third-container .hide-on-phone.hide-on-pad {
                    display: block !important;
                }
                
               
                .row.hide-on-large {
                    display: none !important;
                }
                
                
                .third-container .tools {
                    display: none !important; /* Masquer la navigation du bureau sur mobile */
                }
                
                
                .third-container .page-one {
                    padding: 0 !important;
                }
                
                
                .shrink-second-color {
                    color: var(--second) !important;
                }

                /* Mobile flip container responsive adjustments */
                @media (max-width: 480px) {

                    
                    .third-container .front, .third-container .back {
                        padding: 12px !important;
                    }
                    
                    .third-container .section-title {
                        font-size: 16px !important;
                        color: #3c3c3c;
                    }
                    
                    .third-container .styled-list {
                        font-size: 13px !important;
                    }
                }
                
                
                .Head, .location-2, .date, .title-tips, .location, .contact-me-title {
                    color: var(--base);
                }
                
                /* Mobile Skills section */
                .page-one {
                    padding: calc(var(--mobile-header-h) + 20px) 20px 20px 20px !important;
                    background-color: transparent !important;
                    position: relative !important;
                    z-index: 1 !important;
                }
                
                .page-one .Head {
                    font-size: 28px ;
                    text-align: center ;
                    margin-bottom: 30px ;
                    color: var(--base);
                    font-weight: bold ;
                }
                
                /* Hide desktop skills on mobile */
                .page-one h2#Skills {
                    display: none !important;
                }
                
                .page-one .row {
                    display: none !important;
                }
                
                
                .page-one h2#Programming {
                    display: none !important;
                }
                
                
                .skills-mobile {
                    padding: calc(var(--mobile-header-h) + 20px) 20px 20px 20px ;
                    background-color: transparent ;
                    position: relative ;
                    z-index: 1 ;
                    display: block ;
                    visibility: visible ;
                }
                
                .skills-mobile .Head {
                    font-size: 28px ;
                    text-align: center ;
                    margin-bottom: 30px ;
                    color: var(--second) ;
                    font-weight: bold ;
                }
                
                .skills-grid-mobile {
                    display: flex ;
                    flex-direction: column ;
                    gap: 15px ;
                    max-width: 100% ;
                }
                
                /* Chaque ligne contient 2 éléments côte à côte */
                .skill-row-mobile {
                    display: flex ;
                    gap: 15px ;
                    width: 100% ;
                }
                
                .skill-card-mobile {
                    flex: 1 ;
                    width: 50% ;
                    display: block ;
                    min-height: 0 ;
                }
                
                /* Style des cartes mobile skills -*/
                .skill-card-mobile .xp-container {
                    width: 100%;
                    height: 100%;
                    background-color: rgba(30, 30, 46, 0.7);
                    backdrop-filter: blur(10px) brightness(1.1);
                    border: 2px solid rgba(30, 30, 46, 0.8);
                    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
                    border-radius: 15px;
                    overflow: hidden;
                    color: white;
                    font-size: 18px;
                    font-weight: bold;
                    text-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    justify-content: flex-start;
                    padding: 1vw;
                    box-sizing: border-box;
                }
                
                .skill-card-mobile .xp-title {
                    color: #ffffff ;
                    font-size: 16px ;
                    text-align: center;
                    font-weight: bold ;
                    text-shadow: 0 0 10px rgba(255, 255, 255, 0.8) t;
                }
                
                .skill-card-mobile .xp-container p {
                    border: 1px solid var(--second);
                    border-radius: 15px;
                    padding: 3%;
                    margin-top: 0.8vw;
                }
                
                .skill-card-mobile .progress {
                    margin: 5px 0 ;
                    position: relative ;
                    width: 20vw ;
                    height: 20vw ;
                    background: none ;
                    align-items: center ;
                    flex-direction: column ;
                }
                
                
                .skill-card-mobile .progress::before {
                    content: '' ;
                    position: absolute ;
                    top: 50% ;
                    left: 0 ;
                    right: 0 ;
                    height: 3px ;
                    background-color: #ffffff ;
                    transform: translateY(-50%) ;
                    border-radius: 2px ;
                }
                
                .skill-card-mobile .circleProg {
                    
                    background-color: #1e1e2e ;
                    display: flex ;
                    justify-content: center ;
                    align-items: center ;
                    position: relative ;
                    z-index: 2 ;
                    margin: 0 auto ;
                    width: 20vw;
                    height: 20vw;
                    border-radius: 50%;
                }
                
                .skill-card-mobile .data-a-logo {
                    
                    object-fit: contain !important;
                    width: 50%;
                    height: auto;
                }
                
                .skill-card-mobile .Advanced {
                    color: #b4ffb0 ;
                    font-size: 14px ;
                    font-weight: 500 ;
                    margin-top: 15px ;
                }
                
                .skill-card-mobile .Experienced {
                    color: #f8ff98 ;
                    font-size: 14px ;
                    font-weight: 500 ;
                    margin-top: 15px ;
                }
                
                .skill-card-mobile .Intermediate {
                    color: #3fd1bb ;
                    font-size: 14px ;
                    font-weight: 500 ;
                    margin-top: 15px ;
                }
                
                
                .coding-languages-mobile {
                    padding: 20px ;
                    background-color: transparent ;
                    position: relative ;
                    z-index: 1 ;
                    display: block ;
                    visibility: visible ;
                }
                
                .coding-languages-mobile .Head {
                    font-size: 28px ;
                    text-align: center ;
                    margin-bottom: 30px ;
                    color: var(--second) ;
                    font-weight: bold ;
                }
                
                .coding-grid-mobile {
                    display: flex ;
                    flex-direction: column ;
                    gap: 15px ;
                    max-width: 100% ;
                }
                
                /* Chaque ligne contient 2 éléments côte à côte */
                .coding-row-mobile {
                    display: flex ;
                    gap: 15px ;
                    width: 100% ;
                }
                
                .coding-card-mobile {
                    flex: 1 ;
                    width: 50% ;
                    display: block ;
                    min-height: 0 ;
                }
                
                /* Style des cartes mobile coding languages - Même style que skills */
                .coding-card-mobile .xp-container {
                    width: 100%;
                    height: 100%;
                    background-color: rgba(30, 30, 46, 0.7);
                    backdrop-filter: blur(10px) brightness(1.1);
                    border: 2px solid rgba(30, 30, 46, 0.8);
                    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
                    border-radius: 15px;
                    overflow: hidden;
                    color: white;
                    font-size: 18px;
                    font-weight: bold;
                    text-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
                    
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    justify-content: flex-start;
                    padding: 1vw;
                    box-sizing: border-box;
                }
                
                .coding-card-mobile .xp-title {
                    color: #ffffff ;
                    font-size: 16px ;
                    text-align: center;
                    font-weight: bold ;
                    margin-bottom: 20px ;
                    text-shadow: 0 0 10px rgba(255, 255, 255, 0.8) ;
                }
                
                .coding-card-mobile .xp-container p {
                    border: 1px solid var(--second);
                    border-radius: 15px;
                    padding: 3%;
                    margin-top: 0.8vw;
                }
                
                .coding-card-mobile .progress {
                    margin: 20px 0 ;
                    position: relative ;
                    width: 20vw ;
                    height: 20vw ;
                    background: none ;
                    align-items: center ;
                    flex-direction: column ;
                }
                
                /* Barre horizontale avec icône centrée - Style desktop */
                .coding-card-mobile .progress::before {
                    content: '' ;
                    position: absolute ;
                    top: 50% ;
                    left: 0 ;
                    right: 0 ;
                    height: 3px ;
                    background-color: #ffffff ;
                    transform: translateY(-50%) ;
                    border-radius: 2px ;
                }
                
                .coding-card-mobile .circleProg {
                    background-color: #1e1e2e ;
                    display: flex ;
                    justify-content: center ;
                    align-items: center ;
                    box-shadow: 0 4px 15px rgba(0,0,0,0.2) ;
                    position: relative ;
                    z-index: 2 ;
                    margin: 0 auto ;
                    width: 20vw;
                    height: 20vw;
                    border-radius: 50%;
                }
                
                .coding-card-mobile .data-a-logo {
                    object-fit: contain !important;
                    width: 50%;
                    height: auto;
                }
                
                .coding-card-mobile .Advanced {
                    color: #b4ffb0 ;
                    font-size: 14px ;
                    font-weight: 500 ;
                    margin-top: 15px ;
                }
                
                .coding-card-mobile .Experienced {
                    color: #f8ff98 ;
                    font-size: 14px ;
                    font-weight: 500 ;
                    margin-top: 15px ;
                }
                
                .coding-card-mobile .Intermediate {
                    color: #3fd1bb ;
                    font-size: 14px ;
                    font-weight: 500 ;
                    margin-top: 15px ;
                }

                .skill-card-mobile .xp-title,
                .page-one .xp-title {
                    font-size: clamp(12px, 4vw, 16px); /* S'adapte à la largeur */
                    line-height: 1.2;
                    white-space: nowrap;
                }
                
               
                
                
                /* Mobile xp-title */
                .page-one .xp-title {
                    font-size: 16px !important;
                    font-weight: bold !important;
                    text-align: center !important;
                    margin-bottom: 15px !important;
                    color: white !important;
                }
                
                /* Mobile progress circle */
                .page-one .progress {
                    width: 80px ;
                    height: 80px ;
                    background: none ;
                    align-items: center ;
                    flex-direction: column ;
                    margin-bottom: 15px ;
                }
                
                .page-one .circleProg {
                    width: 80px ;
                    height: 80px ;
                    border-radius: 50% ;
                    background-color: rgba(30, 30, 46, 0.7) ;
                    backdrop-filter: blur(6px) ;
                    display: flex ;
                    justify-content: center ;
                    align-items: center ;
                }
                
                /* Mobile data-a-logo */
                .page-one .data-a-logo {
                    width: 50% ;
                    height: auto ;
                    object-fit: contain ;
                    filter: drop-shadow(0 0 8px rgba(255, 255, 255, 0.6)) ;
                    transition: transform 0.3s ease ;
                }
                
                
                
                .page-one .xp-container p {
                    border: 1px solid var(--second) ;
                    border-radius: 15px ;
                    padding: 8px 12px ;
                    margin-top: 0 ;
                    font-size: 12px ;
                    text-align: center ;
                    width: 100%;
                    box-sizing: border-box ;
                }
                
                .page-one .Beginner {
                    color: #17c0e9 !important;
                }
                
                .page-one .Intermediate {
                    color: #3fd1bb !important;
                }
                
                .page-one .Advanced {
                    color: #b4ffb0 !important;
                }
                
                .page-one .Experienced {
                    color: #f8ff98 !important;
                }
                
                /* Mobile Libraries section */
                .page-one .button-group {
                    display: flex !important;
                    gap: 15px !important;
                    margin-bottom: 30px !important;
                    justify-content: center !important;
                }
                
                .page-one .btn-lang {
                    display: flex ;
                    align-items: center ;
                    gap: 8px ;
                    padding: 12px 20px ;
                    background-color: var(--base) ;
                    border: 2px solid var(--second) ;
                    border-radius: 8px ;
                    cursor: pointer ;
                    font-weight: bold ;
                    font-size: 16px ;
                    transition: background-color 0.3s, transform 0.2s ;
                    color: var(--second) ;
                }
                
                .page-one .btn-lang img {
                    width: 24px !important;
                    height: 24px !important;
                    object-fit: contain !important;
                }
                
                .page-one .btn-lang:hover {
                    background-color: var(--second) !important;
                    color: var(--base) !important;
                    transform: scale(1.05) !important;
                }
                
                .page-one .btn-lang.active {
                    background-color: var(--second) !important;
                    color: var(--base) !important;
                }
                
                /* Mobile tag-scrollers */
                .page-one .tag-scrollers {
                    margin-bottom: 40px !important;
                    overflow: hidden !important;
                    position: relative !important;
                }
                
                .page-one .tag-scroller {
                    display: grid !important;
                    gap: 20px !important;
                    mask: linear-gradient(90deg, #0000, var(--background) 10%, var(--background) 90%, #0000) !important;
                    padding: 10px 0 !important;
                }
                
                .tag-list {
                    list-style: none !important;
                    margin: 0 !important;
                    padding: 0 !important;
                    display: flex !important;
                    flex-wrap: nowrap !important;
                    gap: 20px !important;
                }
                
                .tag-list a {
                    font-family: system-ui ;
                    font-size: 14px ;
                    line-height: 1 ;
                    padding: 8px 12px ;
                    border-radius: 15px ;
                    text-decoration: none ;
                    transition: all 0.3s ease ;
                    text-align: center ;
                    white-space: nowrap ;
                    display: inline-block ;
                }
                
                
                .tag-scroller.scrolling .tag-list {
                    width: max-content !important;
                    flex-wrap: nowrap !important;
                    animation: horizontal-scroll var(--duration) var(--direction, normal) linear infinite !important;
                }
                
                .tag-scroller.scrolling .tag-list:nth-child(even) {
                    --direction: reverse !important;
                }
                
                .tag-scroller:hover .tag-list {
                    animation-play-state: paused !important;
                }
                
                @keyframes horizontal-scroll {
                    to {
                        transform: translateX(calc(-50% - 0.75vw));
                    }
                }
                
                /* Mobile library themes - Même couleurs que desktop */
                .theme-data {
                    background-color: #6ed7e4 !important;
                    border-color: #6ed7e4 !important;
                    color: #063a45 !important;
                }
                
                .theme-ml {
                    background-color: #68e6d6 !important;
                    border-color: #68e6d6 !important;
                    color: #0e3f37 !important;
                }
                
                .theme-math {
                    background-color: #95f595 !important;
                    border-color: #95f595 !important;
                    color: #1e4b1c !important;
                }
                
                .theme-visual,
                .theme-viz {
                    background-color: #8effe6 !important;
                    border-color: #8effe6 !important;
                    color: #14403a !important;
                }
                
                .theme-stats {
                    background-color: #fff76b !important;
                    border-color: #fff76b !important;
                    color: #5e5300 !important;
                }
                
                .theme-scraping {
                    background-color: #95f595 !important;
                    border-color: #95f595 !important;
                    color: #1e4b1c !important;
                }
                
                .theme-reporting {
                    background-color: #68e6d6 !important;
                    border-color: #68e6d6 !important;
                    color: #0e3f37 !important;
                }
                
                .theme-default {
                    background-color: #e5e5e5 !important;
                    border-color: #c0c0c0 !important;
                    color: #2e2e2e !important;
                }
                
               
                .project-container .project-slider {
                    position: relative ;
                    overflow: hidden ;
                    padding: 20px 0 ;
                }
                
                .project-container .project-track {
                    display: flex ;
                    flex-direction: row;
                    gap: 15px ;
                    padding: 0 20px ;
                    overflow-x: auto ;
                    overflow-y: hidden ;
                    scroll-behavior: smooth ;
                    -webkit-overflow-scrolling: touch ;
                    scrollbar-width: none;
                    -ms-overflow-style: none ;
                }
                
                .project-container .project-track::-webkit-scrollbar {
                    display: none !important;
                }
                
                .project-container .project-card {
                    width: 280px ;
                    min-width: 280px ;
                    max-width: 280px ;
                    border-radius: 15px ;
                    padding: 20px ;
                    text-align: center ;
                    flex-shrink: 0 ;
                    background: rgba(255, 255, 255, 0.05) ;
                    backdrop-filter: blur(20px);
                    border: 1px solid rgba(255, 255, 255, 0.1) ;
                    box-shadow: 0 8px 32px rgba(0,0,0,0.1) ;
                    color: #ffffff ;
                    font-size: 16px ;
                    font-weight: normal ;
                    display: flex ;
                    flex-direction: column ;
                    margin-bottom: 0 ;
                }
                
                .project-container .project-card img {
                    width: 100% ;
                    height: 150px ;
                    object-fit: cover ;
                    border-radius: 10px ;
                    margin-bottom: 15px ;
                }
                
                .project-container .project-card h3 {
                    font-size: 18px ;
                    margin: 0 0 8px 0 ;
                    color: #ffffff ;
                    font-weight: bold ;
                    
                }
                
                .project-container .project-card h5 {
                    font-size: 12px ;
                    margin: 0 0 10px 0 ;
                    color: #ffffff ;
                    font-weight: normal ;
                    font-style: italic ;
                    
                }
                
                
                .project-container .project-card .text-project {
                    font-size: 12px ;
                    color: #ffffff ;
                    line-height: 1.4 ;
                    margin-bottom: 8px ;
                    
                }
                
                .project-container .project-card .list1 {
                    text-align: left ;
                    margin: 10px 0 ;
                    padding-left: 15px ;
                }
                
                .project-container .project-card .list1 li {
                    font-size: 12px ;
                    color: #ffffff ;
                    margin-bottom: 4px ;
                    line-height: 1.3 ;
                    
                }
                
                .project-container .project-card .pdf-button {
                    background: linear-gradient(135deg, #4FC3F7, #00BCD4) ;
                    color: white ;
                    border: none ;
                    border-radius: 8px ;
                    padding: 10px 16px ;
                    font-size: 12px ;
                    font-weight: bold ;
                    cursor: pointer ;
                    text-decoration: none ;
                    display: inline-block ;
                    margin-top: auto ;
                    transition: transform 0.2s ease ;
                    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) ;
                }
                

                
                /* Afficher les points pour la navigation horizontale en carrousel  */
                .project-container .dots-container {
                    display: flex ;
                    justify-content: center ;
                    align-items: center ;
                    gap: 8px ;
                    margin-top: 20px ;
                    padding: 0 20px ;
                    z-index: 10 ;
                    position: relative ;
                }
                
                .project-container .dot {
                    width: 24px ;
                    height: 4px ;
                    border-radius: 2px ;
                    background: rgba(255, 255, 255, 0.3) ;
                    cursor: pointer ;
                    transition: all 0.3s ease ;
                    border: none ;
                    outline: none ;
                    pointer-events: auto ;
                    z-index: 11 ;
                    opacity: 0.6 ;
                }
                
                
                .project-container .dot.active {
                    background: #64ffda !important;
                    opacity: 1 !important;
                    transform: scaleX(1.2) !important;
                }
                
                /* Mobile Contact section */
                .contact-container .contact-me-container {
                    width: 100% ;
                    max-width: 100% ;
                }
                
                .contact-container .contact-me-title {
                    text-align: center;
                    margin: 0 auto 30px auto ;
                    max-width: 100% ;
                }
                
                .contact-container .contact-me-title h3 {
                    font-size: 16px ;
                    color: #666 ;
                    margin: 0 0 15px 0 ;
                    font-weight: normal ;
                }
                
                .contact-container .contact-me-title h2 {
                    font-size: 32px ;
                    margin: 0;
                    font-weight: bold ;
                }
                
                .contact-container .row {
                    display: flex ;
                    flex-direction: column ;
                    margin: 0 ;
                    padding: 0 ;
                }
                
                .contact-container .col-md-3 {
                    display: none !important;
                }
                
                .contact-container .col-md-6 {
                    width: 100% ;
                    padding: 0 ;
                    margin: 0 ;
                }
                
                .contact-container .contact-form {
                    width: 100% !important;
                }
                
                .contact-container .contact-form .row {
                    display: flex ;
                    flex-direction: column ;
                    gap: 15px ;
                    margin: 0 ;
                }
                
                .contact-container .contact-area {
                    width: 100% ;
                    padding: 0 ;
                    margin: 0 ;
                }
                
                .contact-container .contact-area.col-md-6 {
                    width: 100% ;
                }
                
                .contact-container .contact-area.col-md-12 {
                    width: 100% ;
                }
                
                /* Mobile form inputs */
                .contact-container .email-me input,
                .contact-container .email-me textarea {
                    background-color: rgba(30, 30, 46, 0.9);
                    backdrop-filter: blur(10px) brightness(1.1) ;
                    border: 2px solid rgba(30, 30, 46, 0.8) ;
                    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5) ;
                    color: white ;
                    font-size: 16px ;
                    font-weight: normal ;
                    text-shadow: 0 0 5px rgba(0, 0, 0, 0.2) ;
                    width: 100% ;
                    margin-bottom: 0 ;
                    border-radius: 8px;
                    padding: 15px ;
                    box-sizing: border-box ;
                }
                
                .contact-container .email-me input::placeholder,
                .contact-container .email-me textarea::placeholder {
                    color: #cccccc ;
                    opacity: 1 ;
                }
                
                .contact-container .email-me input:focus,
                .contact-container .email-me textarea:focus {
                    outline: none ;
                    background-color: rgba(30, 30, 46, 0.6) ;
                    border-color: var(--Home-color) ;
                }
                
                .contact-container .email-me textarea {
                    resize: vertical ;
                    min-height: 120px ;
                    font-family: inherit ;
                }
                
                
                .contact-container .contact-me-2 {
                    display: flex ;
                    align-items: center ;
                    justify-content: center ;
                    background: var(--color-contact) ;
                    border: none ;
                    color: var(--second) ;
                    font-size: 16px ;
                    font-weight: bold ;
                    border-radius: 8px ;
                    padding: 15px 30px ;
                    margin-top: 20px ;
                    transition: all 0.3s ease ;
                    cursor: pointer ;
                    width: 100% ;
                    box-sizing: border-box ;
                }
                
                .contact-container .contact-me-2 i {
                    margin-left: 8px !important;
                }
                
                .contact-container .contact-me-2:hover {
                    background: var(--Home-color) !important;
                    color: var(--second) !important;
                    transform: scale(1.02) !important;
                }
                
                
                .contact-container .confirmation-message {
                    color: var(--second) ;
                    margin-top: 15px ;
                    text-align: center ;
                    font-size: 14px ;
                }

                .scrollable .third-container .Education, .scrollable .third-container .flip-container {
                  overflow-y: auto;
                  -webkit-overflow-scrolling: touch; /* indispensable pour iOS */
                }
                
                /* Mobile education/experience cards */
                .third-container .Education {
                    display: flex !important;
                    flex-direction: column !important;
                    margin: 0 0 30px 0 !important;
                    border-radius: 15px !important;
                    padding: 20px !important;
                    box-shadow: none !important;
                    backdrop-filter: none !important;
                    border: none !important;
                    min-height: auto !important;
                    height: auto !important;
                    max-width: 100% !important;
                }
                
                /* Style transparent seulement pour les cartes Education qui ne sont pas dans page1 */
                .third-container .col-12.Education:not(#page1 .col-12.Education) {
                    background: rgba(30, 30, 46, 0.7) !important;
                    box-shadow: 0 8px 32px rgba(0,0,0,0.2) !important;
                    
                    border: 1px solid rgba(255, 255, 255, 0.2) !important;
                }
                
                /* Styles de texte pour les cartes d'éducation transparentes (pas dans page1) */
                .third-container .col-12.Education:not(#page1 .col-12.Education) .date {
                    color: #ffffff !important;
                    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
                    font-weight: 500 !important;
                }
                
                .third-container .col-12.Education:not(#page1 .col-12.Education) .title-tips {
                    color: #ffffff !important;
                    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6) !important;
                    font-weight: bold !important;
                }
                
                .third-container .col-12.Education:not(#page1 .col-12.Education) .location {
                    color: #ffffff !important;
                    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
                    font-weight: 500 !important;
                }
                
                .third-container .col-1 {
                    width: 100% !important;
                    text-align: center !important;
                    margin-bottom: 15px !important;
                }
                
                .third-container .col-11 {
                    width: 100% !important;
                    padding-left: 0 !important;
                }
                
                /* Mobile icons */
                .third-container .Icon-Key {
                    width: 40px ;
                    height: 40px ;
                    object-fit: contain ;
                    filter: brightness(0) invert(1);
                }
                
                .third-container .Icon-Work {
                    width: 40px ;
                    height: 40px ;
                    object-fit: contain ;
                    filter: brightness(0) invert(1) ;
                }
                
                .third-container .Icon-Univ2 {
                    width: 16px ;
                    height: 16px ;
                    margin-right: 8px ;
                }
                
                .third-container .Icon-GE {
                    width: 40px ;
                    height: 40px ;
                    object-fit: contain ;
                }
                
                .third-container .Icon-Univ {
                    width: 40px ;
                    height: 40px ;
                    object-fit: contain ;
                    filter: brightness(0) invert(1) ;
                }
                
                .third-container .Icon-Koala {
                    width: 40px ;
                    height: 40px ;
                    object-fit: contain ;
                    filter: brightness(0) invert(1) ;
                }
                
                .third-container .Icon-JL {
                    width: 40px ;
                    height: 40px ;
                    object-fit: contain ;
                    filter: brightness(0) invert(1) ;
                }
                

                .third-container .education_text {
                    text-align: center ;
                }
                
                .barre-container {
                    width: 100%;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    height: 2px;
                    overflow: hidden;
                    position: relative;
                    margin-top: 15%;
                    margin-bottom: 3%;
                    padding: 0;
                }
                
                .barre-horizontale {
                    width: 0;
                    height: 100%;
                    background-color: var(--base);
                    animation: expand 3s infinite alternate;
                }
                
                @keyframes expand {
                    0% {
                        width: 0;
                    }
                    
                    100% {
                        width: 20%;
                    }
                }
                
                .third-container .date {
                    font-size: 14px ;
                    color: var(--base);
                    display: block ;
                    margin-bottom: 8px ;
                }
                
                .third-container .title-tips {
                    font-size: 20px ;
                    font-weight: bold ;
                    color: var(--base);
                }
                
                .third-container .location {
                    font-size: 16px ;
                    color: var(--base);
                    display: block ;
                    margin-bottom: 15px ;
                }
                
                .third-container .align-location {
                    display: flex ;
                    align-items: center ;
                    justify-content: center ;
                    margin-bottom: 15px ;
                }
                
                /* Mobile flip container - avec animation */
                .third-container .flip-container {
                    height: 500px ;
                    min-height: 500px ;
                    max-height: 500px ;
                    margin-top: 20px ;
                    position: relative ;
                    overflow: visible ;
                    z-index: 1 ;
                    perspective: 1000px ;
                    -webkit-perspective: 1000px ;
                    -moz-perspective: 1000px ;
                }
                
                .third-container .flipper {
                    width: 100% ;
                    height: 100% ;
                    position: relative ;
                    transform-style: preserve-3d ;
                    -webkit-transform-style: preserve-3d ;
                    -moz-transform-style: preserve-3d ;
                    transition: transform 0.6s ease-in-out ;
                    -webkit-transition: -webkit-transform 0.6s ease-in-out;
                    -moz-transition: -moz-transform 0.6s ease-in-out ;
                }
                
                .third-container .front, .third-container .back {
                    position: absolute ;
                    top: 0 ;
                    left: 0 ;
                    width: 100% ;
                    height: 100% ;
                    padding: 20px ;
                    box-sizing: border-box ;
                    border-radius: 15px ;
                    background: rgba(30, 30, 46, 0.7);
                    box-shadow: 0 8px 32px rgba(0,0,0,0.1) ;
                    border: 1px solid rgba(255, 255, 255, 0.1) ;
                    overflow-y: auto ;
                    overflow-x: hidden ;
                    -webkit-overflow-scrolling: touch ;
                    backface-visibility: hidden ;
                    -webkit-backface-visibility: hidden ;
                    -moz-backface-visibility: hidden ;
                    z-index: 1 ;
                }
                
                /* Glow effect for text on dark transparent background */
                .third-container .front *,
                .third-container .back * {
                    color: #ffffff ;
                }
                
                .third-container .back {
                    transform: rotateY(180deg) !important;
                    -webkit-transform: rotateY(180deg) !important;
                    -moz-transform: rotateY(180deg) !important;
                }
                
                .third-container .flip-container.flipped .flipper {
                    transform: rotateY(180deg) !important;
                    -webkit-transform: rotateY(180deg) !important;
                    -moz-transform: rotateY(180deg) !important;
                }
                
                
               
                .third-container .front .pdf-button,
                .third-container .back .pdf-button {
                    position: static ;
                    bottom: auto ;
                    right: auto ;
                    width: 100% ;
                    max-width: 200px ;
                    margin: 20px auto 0 ;
                    display: block ;
                    padding: 12px 20px ;
                    font-size: 14px ;
                    border-radius: 8px ;
                    background: linear-gradient(135deg, #17c0e9, #3fd1bb) ;
                    color: white ;
                    border: none ;
                    cursor: pointer ;
                    z-index: auto ;
                    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) ;
                }
                
                /* Custom scrollbar for mobile flip containers */
                .third-container .front::-webkit-scrollbar,
                .third-container .back::-webkit-scrollbar {
                    width: 6px !important;
                }
                
                .third-container .front::-webkit-scrollbar-track,
                .third-container .back::-webkit-scrollbar-track {
                    background: rgba(0, 0, 0, 0.1) !important;
                    border-radius: 3px !important;
                }
                
                .third-container .front::-webkit-scrollbar-thumb,
                .third-container .back::-webkit-scrollbar-thumb {
                    background: rgba(0, 0, 0, 0.3) !important;
                    border-radius: 3px !important;
                }
                
                
                /* Mobile mission container */
                .third-container .container-mission {
                    display: flex ;
                    flex-direction: column ;
                    align-items: center ;
                    text-align: center ;
                    margin-bottom: 15px ;
                    gap: 8px ;
                }
                
                .third-container .bold-text-mission {
                    font-size: 16px ;
                    font-weight: bold ;
                    color: #E0E0E0 t;
                    margin: 0 ;
                }
                
                /* Mobile section titles */
                .third-container .section-title {
                    font-size: 18px ;
                    font-weight: bold ;
                    color: #E0E0E0;
                    margin: 15px 0 8px 0 ;
                }
                
                /* Mobile styled lists */
                .third-container .styled-list {
                    font-size: 14px ;
                    line-height: 1.4 ;
                    color: #CCCCCC ;
                    margin-bottom: 15px ;
                    overflow-wrap: break-word ;
                    text-align: justify ;
                }
                
                .third-container .styled-list li {
                    margin-bottom: 6px ;
                    padding-left: 0 ;
                    line-height: 1.4 ;
                    text-align: justify ;
                }
                
                
                .third-container .title-back {
                    font-size: 18px ;
                    font-weight: bold ;
                    text-align: center ;
                    margin-bottom: 15px ;
                }
                
                
                .third-container .tag-list-back {
                    display: flex ;
                    flex-wrap: wrap ;
                    gap: 8px ;
                    justify-content: center ;
                    margin: 0 ;
                    padding: 0 ;
                    list-style: none ;
                }
                
                
                .third-container .tool-tag, 
                .third-container .lib-tag, 
                .third-container .hard-tag, 
                .third-container .soft-tag {
                    display: inline-block ;
                    padding: 4px 8px ;
                    font-size: 12px ;
                    border-radius: 12px ;
                    margin: 2px ;
                }
                
                .third-container .tool-tag {
                    background-color: #e3f2fd ;
                    color: #1976d2 ;
                    text-decoration: none;
                }
                
                .third-container .lib-tag {
                    background-color: #ddf8f2 !important;
                    border-color: #80cbc4 !important;
                    color: #1e5f56 !important;
                    text-decoration: none;
                }
                
                .third-container .hard-tag {
                    background-color: #fffbe5 !important;
        border-color: #ffe082 !important;
        color: #6d5e00 !important;
                    text-decoration: none;
                }
                
                .third-container .soft-tag {
                    background-color: #fdeef3 !important;
        border-color: #f48fb1 !important;
        color: #7c2946 !important;
                    text-decoration: none;
                }
                

                
                .third-container .flip-button-2 {
                    height: 50px ;
                    display: block ;
                    padding: 0 ;
                    background: transparent ;
                    border: none ;
                    border-radius: 50% ;
                    cursor: pointer ;
                    transition: all 0.3s ease ;
                    position: static ;
                    z-index: 9999 ;
                    visibility: visible ;
                    opacity: 1 ;
                    overflow: visible ;
                    pointer-events: auto ;
                    box-shadow: none ;
                }
                
                
                
                .third-container .flip-button-2 img {
                    width: 30px ;
                    height: 30px ;
                    transition: transform 0.3s ease ;
                    display: block ;
                    margin: 0 auto ;
                    filter: brightness(0) saturate(100%) invert(40%) sepia(90%) saturate(500%) hue-rotate(200deg) !important;
                    opacity: 1 ;
                    visibility: visible ;
                    position: relative ;
                    z-index: 10000 ;
                }
                
                .third-container .flip-container.flipped .flip-button-2 img {
                    transform: rotate(180deg) !important;
                }
                
                
               
                .third-container .flip-button-2 {
                    touch-action: manipulation !important;
                    -webkit-tap-highlight-color: transparent !important;
                }
                
                /* Animation de clic pour flip buttons sur mobile */
                .flip-button:active img,
                .third-container .flip-button-2:active img {
                    transform: rotate(180deg) ;
                    filter: brightness(0) saturate(100%) invert(50%) sepia(100%) saturate(600%) hue-rotate(220deg) !important;
                }
                
                /* État toggle pour flip buttons - rotation complète */
                .flip-button.toggled img,
                .third-container .flip-button-2.toggled img {
                    transform: rotate(360deg) ;
                    filter: brightness(0) saturate(100%) invert(40%) sepia(90%) saturate(500%) hue-rotate(200deg) !important;
                }
                
                /* Animation de clic pour le flip button sur mobile */
                .flip-button:active img {
                    transform: rotate(180deg);
                    filter: brightness(0) saturate(100%) invert(50%) sepia(100%) saturate(600%) hue-rotate(220deg);
                }
                
                /* État toggle pour flip button - rotation complète */
                .flip-button.toggled img {
                    transform: rotate(360deg);
                    filter: brightness(0) saturate(100%) invert(40%) sepia(90%) saturate(500%) hue-rotate(200deg);
                }
                
                /* Animation de retour après le clic */
                .flip-button img {
                    transition: transform 0.3s ease, filter 0.3s ease;
                    filter: brightness(0) saturate(100%) invert(40%) sepia(90%) saturate(500%) hue-rotate(200deg);
                    position: relative;
                    width: 40px;
                    height: auto;
                }
                
                
                
                
                .mobile-neural-bg {
                    position: fixed ;
                    top: 0 ;
                    left: 0 ;
                    width: 100vw ;
                    height: 100vh ;
                    z-index: -1 ;
                    background-color: var(--base);
                    transition: background-color 0.8s ease-in-out t;
                    pointer-events: none ;
                    display: block ;
                }
                
                
                .neural-network-bg-2:not(.mobile-neural-bg) {
                    display: none;
                }
                
                
                #neural-svg-mobile {
                    width: 100vw ;
                    height: 100vh ;
                    opacity: 0.4 ;
                }
                
                
                .mobile-neural-bg .neuron-2 {
                    fill: none;
                    stroke: var(--second);
                    stroke-width: 5;
                    transition: stroke 0.8s ease-in-out;
                }
                
                .mobile-neural-bg .link-2 {
                    stroke: var(--second);
                    stroke-width: 1;
                    stroke-opacity: 0.3;
                    transition: stroke 0.8s ease-in-out;
                }
                
                .mobile-neural-bg .link-2,
                .mobile-neural-bg .neuron-2 {
                    transition: stroke 0.8s ease-in-out;
                }
                
                
                
                
                /* Footer/copyright */
                .copy-right-container { padding: 4px 12px ; height: auto ; min-height: 20px ; }
                .copy-right-container .row { margin: 0 ; }
                .copy-right-container p { margin: 0 ; font-size: 12px ; }
                
            }
            
            
            