 <style>
        body {
            font-family: 'Open Sans', sans-serif;
            background-color: #f8f9fa;
            color: #444444;
            position: relative;
            min-height: 100vh;
            overflow-x: hidden;
	    background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('/assets/img/bg.webp') center center;
        }

.bg-custom {
  position: relative;
  position: relative;
  min-height: 100vh;
  background: #fff;
}

.bg-custom::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-image: linear-gradient(rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.4)), url(/assets/img/bg.webp);
  background-position: center;
  background-size: cover; /* L’image s'adapte à l’écran sans déformation */
  background-repeat: no-repeat;
  opacity: 0.2; /* Transparence ajustable */
  z-index: -1;
  will-change: transform; /* Optimisation performance */
}	
        
        h1, h2, h3, h4, h5, h6 {
            font-family: 'Raleway', sans-serif;
        }
        
        .error-page {
            height: 100vh;
            background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url('/assets/img/bg.webp') center center;
            background-size: cover;
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .error-container {
            text-align: center;
            max-width: 700px;
            padding: 30px;
        }
        
        .error-number {
            font-size: 160px;
            line-height: 1;
            font-weight: 900;
            color: #EF6603;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
            margin-bottom: 0;
        }
        
        .error-title {
            font-size: 36px;
            font-weight: 700;
            color: #ffffff;
            margin: 10px 0 30px;
        }
        
        .error-text {
            color: #eee;
            font-size: 18px;
            margin-bottom: 30px;
        }
        
        .btn-home {
            background: #EF6603;
            color: #fff;
            border: 2px solid #EF6603;
            padding: 10px 30px;
            font-weight: 600;
            transition: 0.3s;
            border-radius: 4px;
            text-decoration: none;
            display: inline-block;
            margin-bottom: 30px;
        }
        
        .btn-home:hover {
            background: transparent;
            color: #EF6603;
        }
        
        .social-links {
            margin-top: 20px;
        }
        
        .social-links a {
            font-size: 18px;
            display: inline-block;
            background: rgba(255, 255, 255, 0.1);
            color: #fff;
            line-height: 1;
            padding: 9px 0;
            margin-right: 4px;
            border-radius: 50%;
            text-align: center;
            width: 36px;
            height: 36px;
            transition: 0.3s;
        }
        
        .social-links a:hover {
            background: #EF6603;
            color: #fff;
            text-decoration: none;
        }
        
        .footer {
            background: rgba(34, 34, 34, 0.8);
            color: #fff;
            font-size: 14px;
            text-align: center;
            padding: 20px 0;
            position: absolute;
            bottom: 0;
            width: 100%;
        }
        
        .contact-info {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            margin-bottom: 15px;
        }
        
        .contact-item {
            margin: 0 15px;
            color: #fff;
        }
        
        .contact-item i {
            margin-right: 5px;
            color: #EF6603;
        }
        
        .contact-item a {
            color: #fff;
            text-decoration: none;
        }
        
        .contact-item a:hover {
            color: #EF6603;
        }
        
        @media (max-width: 768px) {
            .error-number {
                font-size: 120px;
            }
            
            .error-title {
                font-size: 28px;
            }
            
            .error-text {
                font-size: 16px;
            }
        }
        
        @media (max-width: 576px) {
            .error-number {
                font-size: 100px;
            }
            
            .error-title {
                font-size: 24px;
            }
            
            .contact-info {
                flex-direction: column;
            }
            
            .contact-item {
                margin: 5px 0;
            }
        }
    </style>
