        body {
            font-family: 'Poppins', sans-serif;
            background-color: #ecf0f3;
            margin: 0;
            padding: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            height: 100vh;
            overflow: hidden;
        }

        .main-content {
            width: 100%;
            max-width: 500px;
            height: 100%;
            overflow-y: scroll;
            padding: 40px;
			padding-left: 56px;
            box-sizing: border-box;
        }

        h1 {
            font-size: 2em;
            font-weight: 600;
            margin-bottom: 20px;
            color: #333;
            text-align: center;
        }
		
		h2 {
            font-size: 1.2em;
            font-weight: 600;
            margin-bottom: 20px;
            color: #333;
            text-align: left;
        }

        .search-container {
            position: relative;
            margin-bottom: 25px;
            width: 100%;
        }

        .search-container input {
            width: 100%;
            padding: 12px 40px 12px 15px;
            font-size: 1em;
            border: none;
            border-radius: 20px;
            background: #ecf0f3;
            box-shadow: inset 6px 6px 12px rgba(0,0,0,0.1), 
                        inset -6px -6px 12px rgba(255,255,255,0.7);
            color: #555;
            outline: none;
            transition: all 0.3s ease;
        }

        .search-container input:focus {
            background: #e3e8ec;
        }

        .search-container .search-icon {
            position: absolute;
            right: 15px;
            top: 50%;
            transform: translateY(-50%);
            color: #999;
            pointer-events: none;
        }

        .accordion {
            background: #ecf0f3;
            border-radius: 20px;
            padding: 15px 20px;
            margin-bottom: 20px;
            box-shadow: 7px 7px 15px rgba(0,0,0,0.1), 
                        -7px -7px 20px rgba(255,255,255,0.7);
            cursor: pointer;
            display: flex;
            justify-content: space-between;
            align-items: center;
            font-weight: 500;
            color: #555;
            transition: background 0.3s ease;
        }

        .accordion:hover {
            background: #e3e8ec;
        }

        .accordion i {
            transition: transform 0.3s ease;
        }

        .accordion.active i {
            transform: rotate(90deg);
        }

        .panel {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.4s ease;
            background: transparent;
        }

        .doc-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 12px 10px;
            color: #444;
            font-size: 1em;
            text-decoration: none;
            border-radius: 15px;
            transition: background 0.3s ease, transform 0.2s ease;
        }

        .doc-item:not(:last-child) {
            border-bottom: 1px solid rgba(0,0,0,0.05);
        }

        .doc-item:hover {
            background-color: #e3e8ec;
            transform: scale(1.01);
        }

        .doc-item i {
            color: #666;
            font-size: 1.2em;
        }

        .main-content::-webkit-scrollbar {
			width: 8px;
		}

		.main-content::-webkit-scrollbar-track {
			background: #ecf0f3;
			border-radius: 10px;
		}

		.main-content::-webkit-scrollbar-thumb {
			background-color: #cbd2dc;
			border-radius: 10px;
			transition: background-color 0.3s ease;
		}

		.main-content::-webkit-scrollbar-thumb:hover {
			background-color: #b3bcc8;
		}

        .spacer {
            height: 80px;
        }
		
		/* Bottom navigation bar */
        .bottom-bar {
            position: fixed;
            bottom: 0;
            width: 100%;
            max-width: 400px;
            height: 60px;
            background-color: #ecf0f3;
            display: flex;
            justify-content: space-around;
            align-items: center;
            border-radius: 30px 30px 0 0;
            box-shadow: 0px -5px 10px rgba(0,0,0,0.1), 
                        0px 5px 10px rgba(255,255,255,0.7);
        }

        .bottom-bar .icon-btn {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 50px;
            height: 50px;
            background: #ecf0f3;
            border-radius: 50%;
            box-shadow: 7px 7px 15px rgba(0,0,0,0.1), 
                        -7px -7px 20px rgba(255,255,255,0.7);
            transition: all 0.3s ease;
            cursor: pointer;
        }

        .bottom-bar .icon-btn i {
            font-size: 1.5em;
            color: #555;
        }

        .bottom-bar .icon-btn.active {
            background-color: #e0e5ec;
        }

        .bottom-bar .icon-btn:active {
            box-shadow: inset 7px 7px 15px rgba(0,0,0,0.1), 
                        inset -7px -7px 20px rgba(255,255,255,0.7);
        }
		
		/* HOME */
		
		.intro-text {
			font-size: 1em;
			color: #555;
			text-align: center;
			margin: 15px 0 25px;
			line-height: 1.6;
		}

		.image-card {
			width: 100%;
			max-width: 320px;
			margin: 0 auto;
			padding: 15px;
			border-radius: 20px;
			background: #ecf0f3;
			box-shadow: 7px 7px 15px rgba(0,0,0,0.1),
						-7px -7px 20px rgba(255,255,255,0.7);
			display: flex;
			justify-content: center;
			align-items: center;
			transition: transform 0.3s ease;
		}

		.image-card:hover {
			transform: scale(1.02);
			cursor: pointer;
		}

		.image-card img {
			width: 100%;
			/*border-radius: 15px;*/
			display: block;
		}
		
		.image-card p {
			margin: 5px;
			display: block;
		}

		/* Cartes d’activités avec image */

		.activity-card {
			width: 100%;
			margin-bottom: 20px;
			border-radius: 20px;
			background: #ecf0f3;
			box-shadow: 1px 1px 15px rgba(0,0,0,0.1),
						-1px -1px 20px rgba(255,255,255,0.7);
			overflow: hidden;
			transition: transform 0.3s ease, box-shadow 0.3s ease;
		}

		.activity-card:hover {
			transform: scale(1.02);
			box-shadow: inset 1px 1px 15px rgba(0,0,0,0.1),
						inset -1px -1px 20px rgba(255,255,255,0.7);
		}

		.card-link {
			display: block;
			text-decoration: none;
			color: inherit;
		}

		.card-image {
			width: 100%;
			height: 180px;
			background-size: cover;
			background-position: center;
			background-color: rgba(0,0,0, 0); /*modifier pour ajouter un filtre de couleur*/
			border-radius: 20px;
			position: relative;
			overflow: hidden;
			background-blend-mode: multiply;
		}

		/* Overlay dégradé sur l’image */
		.card-overlay {
			position: absolute;
			bottom: 0;
			width: 100%;
			padding: 15px;
			background: rgba(0,0,0,0.5);
			border-radius: 0 0 20px 20px;
		}

		/* Texte sur l’image */
		.card-text {
			color: #fff;
			font-weight: 500;
			display: flex;
			justify-content: space-between;
			align-items: center;
			flex-wrap: wrap;
		}

		.card-title {
			flex: 1 1 70%;
			font-size: 0.95em;
			font-weight: 500;
			line-height: 1.2em;
		}

		.card-text i {
			font-size: 1.2em;
			margin-left: 8px;
		}

		/* Effet néomorphique actif/pressé */
		.card-link:active .activity-card {
			box-shadow: inset 7px 7px 15px rgba(0,0,0,0.1),
						inset -7px -7px 20px rgba(255,255,255,0.7);
		}
		
