        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            background-image: url(img/fond.jpg);
            background-size: cover;
            font-family: "Mansalva", sans-serif;
            background-position: center;
            margin: 0;
            padding: 0;
            background-repeat: no-repeat;
            height: 100vh;
            width: 100vw;
            transition: opacity 0.6s ease;
            transition: filter 0.5s ease;
            background-attachment: fixed;
            position:relative;
        }

        .fade-to-black {
            transition: background-color 2s ease;
            background-color: #000 !important;
        }

        #fade-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background: #000;
            opacity: 0;
            pointer-events: none;
            transition: opacity 1.5s ease;
            z-index: 1000;
        }

        body.mode-nuit {
            background-image: url('img/fond1.jpg');
            background-position: top;

        }

        body.mode-jour {
            background-image: url('img/fond.jpg');
        }

        body.ronces {
            background-image: url('img/fondronces.jpg');

        }

        body.ronces.mode-nuit {
            background-image: url('img/fondronces1.jpg');
        }

        body.ronces.mode-jour {
            background-image: url('img/fondronces.jpg');
        }


        body.fade-out {
            opacity: 0;
        }

        nav {
            display: flex;
            justify-content: space-between;
            padding: 1rem 2rem;
        }

        .contact {
            color: #ddead1bc;
            text-decoration: none;
            font-size: 1.3rem;
        }

        .logo {
            font-family: "Major Mono Display", monospace;
            color: #ddead1bc;
            text-decoration: none;
            font-size: 1.5rem;
        }

        .logo:hover,
        .contact:hover {
            text-shadow: 0 0 15px rgba(0, 255, 150, 0.8);
        }

        .tomlabe {
            text-align: center;
            font-size: clamp(2rem, 8vw, 4rem);
            font-family: "Major Mono Display", monospace;
            margin-top: 5vh;
            color: transparent;
            -webkit-text-fill-color: transparent;
            background: linear-gradient(120deg, #354733 0%, #354733 48%, #a5c882 50%, #354733 52%, #354733 100%);
            background-size: 200% 100%;
            background-clip: text;
            -webkit-background-clip: text;
            animation: tomlabe 5s ease-in-out infinite;
            transition-duration: 1s;
        }

        @keyframes tomlabe {
            0% {
                background-position: -100% 0;
            }
            100% {
                background-position: 100% 0;
            }
        }

        .tomlabe:hover {
            text-shadow: 0 0 15px rgba(0, 163, 95, 0.882);
        }

        .devmaomusic {
            text-align: center;
            margin: 1vh auto;
            font-size: clamp(0.8rem, 3vw, 1.5rem);
            color: #ddead1e8;
            transition-duration: 1s;
        }

         .devmaomusic:hover {
            text-shadow: 0 0 15px rgba(0, 163, 95, 0.882);
        }

        .titresmusique {

            text-align: center;
            margin: 1vh auto;
            font-size: clamp(0.8rem, 3vw, 1.5rem);
            color: #ddead1e8;
            transition-duration: 1s;
        }

        .titresmusique:hover {
            text-shadow: 0 0 15px rgba(0, 163, 95, 0.882);
        }

        #clique {

            width: clamp(20px, 10vw, 40px);
            display: block;
            margin: 25vh auto;
            cursor: pointer;
            z-index: 9999;
            position: relative;

        }

        #cliqueall {

            text-align: center;
            cursor: pointer;
            margin-bottom: 10vh;
        }

        .cliquetext {

            color: #b8d4ff;
            margin-top: -24vh; 
            font-size: clamp(0.9rem, 2vw, 1.2rem);
            animation: pulseShrink 2s ease-in-out infinite;
            transition-duration: 1s;
        }

        .cliquetext:hover {

            text-shadow: 0 0 15px rgba(0, 163, 95, 0.882);
        }

        @keyframes pulseShrink {
            0% {
                transform: scale(1);
            }
            50% {
                transform: scale(0.9);
            }
            100% {
                transform: scale(1);
            }
        }

        .boutons {
            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
            margin: 3rem auto;
            flex-wrap: wrap;
            white-space: nowrap;
            width: 100%;
        }

        .boutons a {
            background-color: rgba(255, 255, 255, 0.138);
            color: #ddead1e8;
            padding: 12px 24px;
            border-radius: 12px;
            font-size: 1.2rem;
            text-align: center;
            text-decoration: none;
            font-family: "Gamja Flower", sans-serif;
            opacity: 0;
            transform: scale(0.9);
            transition: opacity 1s ease, transform 0.6s ease;
        }

        .boutons a.active {
            opacity: 1;
            transform: scale(1);
        }

        .boutons a:hover {
            background-color: rgba(255, 255, 255, 0.529);
        }

        @media screen and (min-width: 768px) {
            .boutons {
                flex-direction: row;
                justify-content: center;
            }
        }

        #ronces-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background-image: url('img/fondronces1.jpg'); 
            background-size: cover;
            background-position: center;
            opacity: 0;
            transition: opacity 2.5s ease;
            z-index: -1; 
            pointer-events: none;
        }


        .arbreentier {

            background-image: url(img/fondarbre1.jpg);
            background-position: top;
            background-size: cover;
            background-repeat: no-repeat;
            margin: 0;
            padding: 0;
            height: 100vh;
            width: 100vw;
        }

        .arbreentier.mode-jour {

            background-image: url('img/fondarbre.jpg');
        }

        .arbreentier.mode-nuit {

            background-image: url('img/fondarbre1.jpg');
        }

         #ronces-overlay.mode-nuit {
            background-image: url('img/fondronces1.jpg');
        }

        #ronces-overlay.mode-jour {
            background-image: url('img/fondronces.jpg');
        }

        .Logos {

            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
            margin: 3rem auto;
            flex-wrap: wrap;
            white-space: nowrap;
            width: 100%;
            opacity: 0;
            pointer-events: none;
            transition: opacity 1s;
            
        }

        .Logos img {
            max-width: 60px;
            height: auto;
        }

        .Logos.visible {
            opacity: 1;
            pointer-events: auto;
            transition: opacity 1s;
        }

        .html {

            margin-top: 5rem;
        }

        .css {

            margin-top: 7rem;
        }

        .devapropos {
            font-family: "Google Sans Code", monospace;
            color: #ddead1e8;
            opacity: 0;
            transition: opacity 0.5s;
            position: fixed;
            bottom: 2rem;   /* distance du bas de la page */
            left: 2rem;     /* distance du bord gauche */
            max-width: 90vw;
            margin: 0;
            z-index: 10;    /* pour être au-dessus du fond */
        }
        

        @media (min-width: 768px) {
            .devapropos {
                bottom: 3rem;
                left: 3rem;
                max-width: 600px;
            }
        
        }

        .devapropos:hover {
            text-shadow: 0 0 15px rgba(0, 163, 95, 0.882);
        }

        .logic {

            display: flex;
            flex-direction: row;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
            margin: 3rem auto;
            flex-wrap: wrap;
            white-space: nowrap;
            width: 100%;
            opacity: 1;
            pointer-events: none;
            transition: opacity 1s;
        }

        .logic img {
            max-width: 60px;
            height: auto;
        }

        .logic.visible {
            opacity: 1;
            pointer-events: auto;
            transition: opacity 1s;
        }

        .comparatif {
            display: flex;
            gap: 1rem;             
            justify-content: center;
            flex-wrap: wrap;       
            width: 100%;
            max-width: 900px;      
            margin: 3rem auto;
            opacity: 1;
            transition: opacity 1s;
            }

        .comparatif.visible {
            opacity: 1;
            pointer-events: auto;
            }


        .comparatif-groupe1,
        .comparatif-groupe2,
        .comparatif-groupe3,
        .comparatif-groupe4,
        .comparatif-groupe5
            {
            flex: 1 1 45%;
            background-color: rgba(255, 255, 255, 0.138);
            color: #ddead1e8;
            padding: 12px 24px;
            border-radius: 12px;
            font-size: 1.2rem;
            text-align: center;
            margin-bottom: 1rem;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 1rem;
            box-sizing: border-box;
            transform: scale(0.9);
            transition: opacity 1s ease, transform 0.6s ease;
            }

        .comparatif-groupe1:hover,
        .comparatif-groupe2:hover,
        .comparatif-groupe3:hover,
        .comparatif-groupe4:hover,
        .comparatif-groupe5:hover {
            background-color: rgba(255, 255, 255, 0.387);
            transition: background-color 0.3s ease;
            }

        @media screen and (max-width: 767px) {
            .comparatif {
                flex-direction: column;
                max-width: 100%;
                margin: 2rem auto;
            }
            .comparatif-groupe1,
            .comparatif-groupe2,
            .comparatif-groupe3,
            .comparatif-groupe4,
            .comparatif-groupe5 {
                flex: 1 1 100%;
                width: 100%;
            }
            }

            .comparatif button {
                margin-right: 10px;
                padding: 8px 12px;
                background: #222;
                color: #fff;
                border: none;
                border-radius: 6px;
                cursor: pointer;
            
            }
            .comparatif button:hover {
                background: #444;
            }

            .carousel-wrapper {
                position: relative;
                overflow: hidden;
                max-width: 100%;
                margin: auto;
            }

                .carousel-track {
                display: flex;
                transition: transform 0.5s ease-in-out;
            }

                .carousel-item {
                flex: 0 0 100%;
                padding: 10px;
                box-sizing: border-box;
            }

                .carousel-item iframe {
                width: 100%;
                height: 250px;
                border: none;
                border-radius: 10px;
            }

                /* Responsive grid (2 vidéos sur tablette, 3 sur grand écran) */
                @media (min-width: 600px) {
                .carousel-item {
                    flex: 0 0 50%;
                }
            }
                @media (min-width: 900px) {
                .carousel-item {
                    flex: 0 0 33.33%;
                }
            }

                .carousel-btn {
                position: absolute;
                top: 50%;
                transform: translateY(-50%);
                background-color: rgba(255, 255, 255, 0.7);
                border: none;
                font-size: 24px;
                cursor: pointer;
                padding: 5px 10px;
                z-index: 1;
            }
                .carousel-btn.prev { left: 0; }
                .carousel-btn.next { right: 0; }

                .carousel-track {
                    display: flex;
                    scroll-behavior: smooth;
                    transition: transform 0.5s ease-in-out;
            }

            .carousel-track {
                    width: 100%;
                    display: flex;
                    transition: transform 0.5s ease-in-out;
            }
            
            .test {

                display: flex;
                flex-direction: row;
                align-items: center; 
                justify-content: center;
                gap: 40px;
                padding: 40px;
                flex-wrap: wrap; 
            }

            .apropos {
                color: #ddead1e8;
                max-width: 500px;
                text-align: left;

            }

            .apropos:hover {
            text-shadow: 0 0 15px rgba(0, 163, 95, 0.882);
            }

            .aproposentier {

                display: flex;
                align-items: center;
                justify-content: center;
                gap: 40px;
                flex-wrap: nowrap;
            }

            .photoguitaretom {

                max-width: 100%;
                height: auto;
                width: 300px;
            }

            @media (max-width: 768px) {
                .test {
                    flex-direction: column;
                    text-align: center;
                }

                .apropos {
                    max-width: 100%;
                }
            }

            .contactformulaire {

                display: flex;
                flex-direction: row;
                align-items: center; 
                justify-content: center;
                gap: 40px;
                padding: 40px;
                flex-wrap: wrap; 
                color: #ddead1e8;
                max-width: 500px;
            }

            input, textarea {

                background-color: rgba(255, 255, 255, 0.138);
                color: #ddead1e8;
                padding: 12px 24px;
                font-size: 1.2rem;
                text-align: center;
                text-decoration: none;
                font-family: "Gamja Flower", sans-serif;
                border: none;
            }

            .contacttitre {

                color: #ddead1e8;
                text-align: center;
                transition-duration: 1s;
            }

            .boutoncontact {

                border-radius: 16px;
            }

            .contacttitre:hover {

                text-shadow: 0 0 15px rgba(0, 163, 95, 0.882);
            }


            input:hover, textarea:hover {

            background-color: rgba(255, 255, 255, 0.271);

            }

            .tout {

                display: flex;
                align-items: center;
                justify-content: center;
                gap: 40px;
                flex-wrap: nowrap;
            }

            .photoguitaretom {

                max-width: 100%;
                height: auto;
                width: 300px;
            }

            @media (max-width: 768px) {
                .tout {
                    flex-direction: column;
                    text-align: center;
                }

                .contactformulaire {
                    max-width: 100%;
                }
            }

            #cliqueall, #clique, .cliquetext {
                z-index: 10;
                position: relative;
            }

            #toggle-mode {
                position: absolute;
                top: 1rem;
                left: 50%;
                transform: translateX(-50%);
                
                width: 40px;
                height: 40px;
                border-radius: 50%;
                border: none;
                background: linear-gradient(135deg, #a5c882, #262e1d);
                color: white;
                font-size: 1.6rem;
                font-weight: bold;
                cursor: pointer;
                box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
                transition: all 0.3s ease;
                
                display: flex;
                align-items: center;
                justify-content: center;
                z-index: 1000;
            }

            #toggle-mode:hover {
                transform: translateX(-50%) scale(1.1) rotate(8deg);
            }

            @media (max-width: 600px) {
                #toggle-mode {
                    width: 40px;
                    height: 40px;
                    font-size: 1.3rem;
                    position: absolute;
                }
            }

                body {
                    transition: background-color 0.6s ease, color 0.6s ease;
            }

            @media (max-width: 600px) {
                #clique {
                    margin: 15vh auto; 
                    z-index: 11;
                }
            
            }



