        /* Déclaration des polices */
        @font-face {
            font-family: 'RockerSquad';
            src: url('fonts/RockerSquad.woff2') format('woff2'),
                url('fonts/RockerSquad.woff') format('woff');
            font-weight: normal;
            font-style: normal;
			font-display: fallback	;		
        }


        @font-face {
            font-family: 'Calibri';
            src: url('fonts/Calibri.woff2') format('woff2'),
                url('fonts/Calibri.woff') format('woff');
            font-weight: normal;
            font-style: normal;
			font-display: fallback;
        }

        /* Fallbacks */
        h1, footer h2 ,
        a {
            font-family: 'RockerSquad', Arial, Helvetica, sans-serif;
        }

        body,
        h2,
        h3,
        p {
            font-family: 'Helvetica', Arial, Helvetica, sans-serif;
        }

        /* FULL SCREEN BACKGROUND */
        html,
        body {
            width: 100%;
            height: 100%;
            margin: 0;
            background-color: transparent;
            background-size: cover; /* Toujours cover pour remplir l'écran */
            background-position: center center;
            background-repeat: no-repeat;
            background-attachment: fixed; /* Parallax sur desktop */
            color: white;
        }
		
		body::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 115vh;
    background-image: url('images/Yannick-accordeon.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -1;
    /* important pour mobile Safari */
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
}

		

        /* Mobile adjustment */
        @media (max-width: 768px) {
            html,
            body {
                background-position: top center;
				background-attachment: scroll; 
        min-height: 100vh;
            }
        }

        /* Overlay container */
        .overlay {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            /*min-height: 100vh;*/
            background: transparent;
        }

        /* Header */
        header h1,
        header h2 {
            text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.7);
        }

        header {
            text-align: center;
            padding: 40px 20px;
        }

        header img.logo {
            max-width: 200px;
            height: auto;
            margin-bottom: 20px;
        }

        header h1 {
            font-size: 5em;
            color: #ffffff;
        }

        main {
            text-align: center;
            padding: 20px;
        }

        main img.presentation {
            max-width: 90%;
            height: auto;
            border-radius: 20px;
            border: 5px solid #00fff6;
            margin-bottom: 20px;
        }

        main p {
            font-size: 1.2em;
            max-width: 700px;
            margin: 0 auto 40px auto;
            text-align: left;
        }

        main h3 {
            font-size: 2.7em;
            max-width: 700px;
            margin: 40px auto;
            text-align: left;
        }

        .social-buttons {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            gap: 15px;
            margin-bottom: 0px;
            text-transform: uppercase;

        }

        .social-buttons a {
            background-color: #ffc601;
            color: #000000;
            text-decoration: none;
            padding: 15px 25px;
            border-radius: 15px;
            font-size: 1.1em;
            width: 100%;
            max-width: 700px;
			letter-spacing:2px;

        }

        .dates-table {
            width: 100%;
            max-width: 700px;
            margin: 0 auto 0px auto;
            background: #190035;
            border-radius: 15px;
            padding: 20px;
        }

        p.dates-table {
            color: white;
            padding: 60px 40px;
            font-size: 1.5em;
        }

        .dates-table th,
        .dates-table td {
            padding: 10px;
            text-align: left;
        }

        footer {
            background: rgba(0, 0, 0, 0.6);
            text-align: left;
            padding: 30px 20px;
        }

        footer h2 {
            font-size: 2em;
            color: #00fff6;
        }

        footer a {
            color: #ffffff;
            text-decoration: none;
            font-family: 'Calibri', Arial, Helvetica, sans-serif;
        }

        .image-gallery {
            max-width: 700px;
            width: 100%;
            margin: 0 auto 40px auto;
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 16px;
        }

        .image-gallery img {
            width: 100%;
            height: auto;
            border-radius: 20px;
            border: 0px solid #fff;
            object-fit: cover;
            box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.7);
        }

        /* Mobile gallery */
        @media (max-width: 600px) {
            .image-gallery {
                grid-template-columns: 1fr;
            }
			}
		A.lien{
			font-size:0.5em;
			font-family: 'Helvetica', Arial, Helvetica, sans-serif;
			
		}
		
		/* Bouton multilingue */
.lang-switcher {
    position: fixed;
    top: 0px;
    right: 0px;
    z-index: 1000;
    font-family: Arial, sans-serif;
            background: rgba(0, 0, 0, 0.8);
    padding: 8px 15px;
    text-align: center;
	width:100%;
	text-align:right;
}

.lang-switcher a {
    color: #ffc601;
    text-decoration: none;
    margin: 0 0px 0 0;
    padding: 5px 5px;
    border-radius: 3px;
    transition: all 0.3s ease;
    font-family: 'Calibri','Helvetica', Arial, Helvetica, sans-serif !important;
	font-size:0.75em;
}

.lang-switcher a:hover {
    background: #ffc601;
    color: #000000;
}

.lang-switcher a.active {
    background: #ffc601;
    color: #000000;
}


/* Bouton CONTACT (haut gauche) */
.contact-btn {
    position: fixed;
    top: 4px;
    left: 15px;
    z-index: 1001;
    color: #000000;
    text-decoration: none;
    font-family: 'Calibri','Helvetica', Arial, Helvetica, sans-serif !important;
    font-weight: bolder;
    padding: 6px 18px;
    border-radius: 20px;
    text-transform: uppercase;	
	letter-spacing:1px;
	font-size:1em !important;
	
}

.contact-btn a{
}
	
.lang-switcher a.contact-btn {

    color: #ffffff;
    font-weight: bolder;
	
}
.lang-switcher a.contact-btn:hover {

    color: #000000;
    font-weight: bolder;
	
}

.contact-btn:hover {
    background: #ffffff;
    color: #000000;
}





.external-link  {
    font-family: Arial, sans-serif;
            background: rgba(0, 0, 0, 0.4);
    padding: 8px 15px;
    text-align: center;
	
    display: flex;
    justify-content: center;
    margin: 40px auto;
}

.external-link a {
    color: #ffc601;
    text-decoration: none;
    margin: 0 5px;
    padding: 5px 10px;
    border-radius: 3px;
    transition: all 0.3s ease;
    font-family: Arial, sans-serif;
}

.external-link a:hover {
    background-color: #ffffff;
    color: #000000;
    transform: translateY(-3px);
    box-shadow: 0 8px 18px rgba(0,0,0,0.6);
}


