
        :root {
            --primary: #0066ff;
            --text-dark: #222;
            --bg-light: #f4f4f4;
        }
        body {
            font-family: Arial, Helvetica, sans-serif;
            margin: 0;
            padding: 0;
            color: var(--text-dark);
            line-height: 1.6;
        }
        header {
            padding: 20px;
            text-align: center;
        }
        #header_logo img { max-width: 250px; height: auto; }
        
        nav {
            background: #fff;
            padding: 10px;
            text-align: center;
            border-bottom: 2px solid var(--primary);
        }
        nav a { margin: 0 10px; text-decoration: none; color: #222; font-weight: bold; }

        #image { width: 100%; position: relative; overflow: hidden; height: 400px; }
        #visuel { width: 100%; height: 100%; object-fit: cover; }
        #string { position: absolute; bottom: 0; left: 0; width: 100%; height: 10px; background: url('/assets/string.png') repeat-x; }

        #content-wrapper { padding: 40px 20px; max-width: 900px; margin: auto; }
        h3 { color: var(--primary); border-bottom: 1px solid #ccc; padding-bottom: 10px; }
        
        footer { background: #262626; color: #fff; padding: 40px 20px; text-align: center; margin-top: 50px; }
        .foot-head { margin-bottom: 20px; }
        .foot-infos img { max-width: 150px; margin-top: 20px; }
        .foot-foot { font-size: 0.8em; opacity: 0.7; }

        @media (min-width: 768px) {
            #content-wrapper { padding: 60px; }
        }
    