 :root {
            --primary-blue: #0088cc;
            --light-blue: #33a0da;
            --dark-blue: #005580;
            --primary-gray: #cccccc;
            --light-gray: #f0f0f0;
            --dark-gray: #666666;
            --white: #ffffff;
        }
        
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }
        
        body {
            color: #333;
            line-height: 1.6;
        }
        
        header {
            background-color: white;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
            position: sticky;
            top: 0;
            z-index: 1000;
        }
        
        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 20px;
        }
        
        /* Navigation */
        .nav-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 15px 0;
        }
        
        .logo {
            height: 50px;
        }
        
        .main-nav {
            display: flex;
            gap: 30px;
        }
        
        .main-nav a {
            text-decoration: none;
            color: var(--dark-gray);
            font-weight: 500;
            transition: color 0.3s;
            position: relative;
        }
        
        .main-nav a:hover {
            color: var(--primary-blue);
        }
        
        .main-nav a.has-dropdown::after {
            content: "▼";
            font-size: 8px;
            margin-left: 5px;
            vertical-align: middle;
        }
        
        .nav-item {
            position: relative;
        }
        
        .dropdown {
            position: relative;
        }
        
        .dropdown-menu {
            position: absolute;
            top: 100%;
            left: 0;
            width: 600px;
            background-color: white;
            border-radius: 10px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.1);
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.3s, visibility 0.3s;
            z-index: 1000;
            margin-top: 10px;
            padding: 20px;
        }
        
        .dropdown:hover .dropdown-menu {
            opacity: 1;
            visibility: visible;
        }
        
        .dropdown-content {
            display: grid;
            grid-template-columns: 1fr;
            gap: 10px;
        }
        
        .dropdown-content.two-columns {
            grid-template-columns: 1fr 1fr;
            gap: 15px;
        }
        
        .dropdown-item {
            display: flex;
            align-items: flex-start;
            padding: 10px;
            text-decoration: none;
            color: var(--dark-gray);
            border-radius: 5px;
            transition: background-color 0.3s;
        }
        
        .dropdown-item:hover {
            background-color: var(--light-gray);
        }
        
        .item-icon {
            font-size: 24px;
            margin-right: 15px;
            color: var(--primary-blue);
            min-width: 24px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .item-content {
            flex: 1;
        }
        
        .item-content h4 {
            margin: 0 0 5px;
            color: var(--dark-blue);
            font-size: 16px;
        }
        
        .item-content p {
            margin: 0;
            font-size: 14px;
            color: var(--dark-gray);
        }
        
        .nav-right {
            display: flex;
            align-items: center;
            gap: 15px;
        }
        
        .btn {
            padding: 10px 20px;
            border-radius: 5px;
            text-decoration: none;
            font-weight: 600;
            transition: all 0.3s;
        }
        
        .btn-outline {
            border: 2px solid var(--primary-blue);
            color: var(--primary-blue);
        }
        
        .btn-outline:hover {
            background-color: var(--primary-blue);
            color: white;
        }
        
        .btn-primary {
            background-color: var(--primary-blue);
            color: white;
            border: 2px solid var(--primary-blue);
        }
        
        .btn-primary:hover {
            background-color: var(--dark-blue);
            border-color: var(--dark-blue);
        }
        
        .contact-icons {
            display: flex;
            gap: 15px;
            margin-left: 15px;
        }
        
        .contact-icon {
            color: #000;
            position: relative;
            cursor: pointer;
            transition: color 0.3s;
        }
        
        .contact-icon:hover {
            color: var(--primary-blue);
        }
        
        .contact-info {
            position: absolute;
            top: 100%;
            right: 0;
            background-color: white;
            padding: 5px 10px;
            border-radius: 5px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.2);
            white-space: nowrap;
            font-size: 14px;
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.3s, visibility 0.3s;
            z-index: 100;
        }
        
        .contact-icon.active .contact-info {
            opacity: 1;
            visibility: visible;
        }
		
		/* Style pour l'icône du téléphone (trait noir, fond blanc) */


        /* Hero Section */
        .hero {
            background: linear-gradient(135deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
            color: white;
            padding: 80px 0;
            position: relative;
            overflow: hidden;
            min-height: 400px;
            display: flex;
            align-items: center;
        }
        
        .hero-content {
            max-width: 500px;
            position: relative;
            z-index: 2;
            margin-left: auto;
            margin-right: 50px;
        }
        
        .hero h1 {
            font-size: 2.8rem;
            margin-bottom: 20px;
            line-height: 1.2;
        }
        
        .hero p {
            font-size: 1.2rem;
            margin-bottom: 30px;
            opacity: 0.9;
        }
        
   
        
        .hero .btn {
            padding: 12px 30px;
            font-size: 1.1rem;
        }
        
        /* Partners Section */

		.partners {
		padding: 60px 0;
		background-color: white; /* Changé de var(--light-gray) à white */
		position: relative;
		}

		/* Mise à jour des dégradés des côtés pour correspondre au fond blanc */
		.partners::before {
		left: 0;
		background: linear-gradient(to right, white, transparent);
		}

		.partners::after {
		right: 0;
		background: linear-gradient(to left, white, transparent);
		}
		
		
		.section-title {
            text-align: center;
            margin-bottom: 40px;
            font-size: 2rem;
            color: var(--dark-gray);
        }
        
        .partners-slider {
            overflow: hidden;
            position: relative;
            width: 100%;
            height: 80px;
        }
        
        .partners-track {
            display: flex;
            align-items: center;
            position: absolute;
            animation: scroll 40s linear infinite;
            width: fit-content;
        }
        
        .partner-logo {
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0.8;
            transition: all 0.3s ease;
            margin: 0 40px;
            filter: grayscale(30%);
        }
        
        .partner-img {
            max-height: 60px;
            max-width: 180px;
            object-fit: contain;
        }
        
        .partner-logo:hover {
            opacity: 1;
            filter: grayscale(0%);
            transform: scale(1.05);
        }
        
        /* Styles spécifiques aux logos si besoin d'ajustements individuels */
        .logo-boucherie, .logo-constant, .logo-leolea, .logo-kiosque, .logo-courtepaille {
            height: 55px;
        }
        
        .logo-rapid, .logo-atelier {
            height: 50px;
        }
        
        @keyframes scroll {
            0% {
                transform: translateX(0);
            }
            100% {
                transform: translateX(calc(-200px * 7)); /* Ajusté pour 7 logos */
            }
        }
        
        /* Products Section */
        .products {
            padding: 80px 0;
        }
        
        .product-item {
            display: flex;
            align-items: center;
            margin-bottom: 80px;
        }
        
        .product-item:nth-child(even) {
            flex-direction: row-reverse;
        }
        
        .product-image {
            flex: 1;
            padding: 0 30px;
        }
        
        .product-image img {
            max-width: 100%;
            box-shadow: 0 5px 20px rgba(0,0,0,0.1);
            border-radius: 10px;
        }
        
        .product-content {
            flex: 1;
            padding: 0 30px;
        }
        
        .product-content h3 {
            font-size: 1.8rem;
            margin-bottom: 15px;
            color: var(--primary-blue);
        }
        
        .product-content p {
            margin-bottom: 20px;
            color: var(--dark-gray);
        }
        
        /* Industries Section */
		
		
		
		.contact-icons {
		  position: relative;
		}

		.contact-icon {
		  cursor: pointer;
		  position: relative;
		}

		#phone-number, #email-number {
		  position: absolute;
		  top: 100%;
		  right: 0;
		  background: white;
		  padding: 8px 12px;
		  border-radius: 4px;
		  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
		  z-index: 100;
		  display: none;
		}
	
<!-- /* Style d'urgence pour forcer l'affichage des images */ -->
<!-- .industry-image img { -->
  <!-- display: block !important; -->
  <!-- visibility: visible !important; -->
  <!-- opacity: 1 !important; -->
  <!-- width: 100% !important; -->
  <!-- height: auto !important; -->
  <!-- min-height: 50px !important; -->
  <!-- z-index: 999 !important; -->
  <!-- position: relative !important; -->
<!-- } -->

<!-- /* S'assurer que les conteneurs sont visibles */ -->
<!-- .industry-image { -->
  <!-- display: block !important; -->
  <!-- min-height: 50px !important; -->
  <!-- background-color: #f0f0f0 !important; /* Couleur de fond pour voir si le conteneur s'affiche */ -->
<!-- } -->

        .industries {
            padding: 80px 0;
            background-color: white; 
        }
        
        .industries-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 30px;
        }
        
        .industry-card {
            background-color: white;
            border-radius: 10px;
            overflow: hidden;
            box-shadow: 0 5px 15px rgba(0,0,0,0.1);
            transition: transform 0.3s;
        }
        
        .industry-card:hover {
            transform: translateY(-10px);
        }
        
        .industry-image {
            height: 200px;
            overflow: hidden;
			display: flex;
			justify-content: center;
			align-items: center;
			height: 200px; /* Ajustez selon vos besoins */
        }
        
        .industry-image img {
            width: 55%;
            height: 55%;
            object-fit: cover;
            transition: transform 0.5s;
        }
        
        .industry-card:hover .industry-image img {
            transform: scale(1.1);
        }
        
        .industry-content {
            padding: 20px;
        }
        
        .industry-content h3 {
            margin-bottom: 10px;
            color: var(--primary-blue);
        }
        
        .industry-content p {
            margin-bottom: 20px;
        }
        
        .industry-content .btn {
            margin-top: 15px;
            display: inline-block;
        }
        
        /* Why Choose Section */
        .why-choose {
            padding: 80px 0;
            background-color: white;
        }
        
        .why-choose-content {
            max-width: 800px;
            margin: 0 auto;
            text-align: center;
        }
        
        .why-choose p {
            margin-bottom: 40px;
            font-size: 1.1rem;
        }
        
        .stats {
            display: flex;
            justify-content: space-between;
            text-align: center;
            margin: 40px 0;
        }
        
        .stat-item {
            flex: 1;
        }
        
        .stat-number {
            font-size: 2.5rem;
            font-weight: 700;
            color: var(--primary-blue);
            margin-bottom: 10px;
        }
        
        .stat-label {
            font-size: 1rem;
            color: var(--dark-gray);
        }
        
        /* CTA Section */
        .cta {
            padding: 80px 0;
            background: linear-gradient(135deg, var(--primary-blue) 0%, var(--dark-blue) 100%);
            color: white;
            text-align: center;
        }
        
        .cta h2 {
            font-size: 2.5rem;
            margin-bottom: 20px;
        }
        
        .cta p {
            font-size: 1.2rem;
            margin-bottom: 30px;
            opacity: 0.9;
            max-width: 800px;
            margin-left: auto;
            margin-right: auto;
        }
        
        /* Footer */
        footer {
            background-color: var(--dark-gray);
            color: white;
            padding: 60px 0 30px;
        }
        
        .footer-content {
            display: flex;
            justify-content: space-between;
            margin-bottom: 40px;
        }
        
        .footer-logo {
            height: 40px;
            margin-bottom: 20px;
        }
        
        .footer-column {
            flex: 1;
            padding: 0 20px;
        }
        
        .footer-column h4 {
            margin-bottom: 20px;
            font-size: 1.2rem;
        }
        
        .footer-links {
            list-style: none;
        }
        
        .footer-links li {
            margin-bottom: 10px;
        }
        
        .footer-links a {
            color: var(--light-gray);
            text-decoration: none;
            transition: color 0.3s;
        }
        
        .footer-links a:hover {
            color: white;
        }
        
        .newsletter {
            display: flex;
            margin-top: 20px;
        }
        
        .newsletter input {
            flex: 1;
            padding: 10px;
            border: none;
            border-radius: 5px 0 0 5px;
        }
        
        .newsletter button {
            padding: 10px 15px;
            background-color: var(--primary-blue);
            color: white;
            border: none;
            border-radius: 0 5px 5px 0;
            cursor: pointer;
            transition: background-color 0.3s;
        }
        
        .newsletter button:hover {
            background-color: var(--dark-blue);
        }
        
        .copyright {
            text-align: center;
            margin-top: 30px;
            padding-top: 20px;
            border-top: 1px solid rgba(255,255,255,0.1);
            font-size: 0.9rem;
            color: var(--light-gray);
        }
		
		 .product-image {
			display: flex;
			justify-content: center;
			align-items: center;
			background-color: transparent;
		}

		.product-image img {
			width: 50%;
			height: auto;
			background-color: transparent;
			object-fit: contain;
		}
		
		.hero-image {
		position: absolute;
		left: 80%; 
		bottom: 50%;
		transform: translate(-75%, 50%);
		max-height: 54%; /* Modifiez cette valeur */
		width: auto;
		z-index: 1;
		object-fit: contain;
		}

		.product-image img.upos-pad-img {
			width: 33% !important;
			height: auto;
			box-shadow: none !important; /* Supprime l'ombre portée */
			border-radius: 0 !important; /* Supprime les coins arrondis */
			background-color: transparent !important; /* Assure que le fond est transparent */
		}

		
		<!-- .contact-icon {
		 position: relative;
		 display: inline-block;
		 cursor: pointer;
		} -->
		
		
		
		
		.phone-number {
		display: none;
		position: absolute;
		top: 100%; /* Changé de bottom:100% à top:100% pour afficher sous l'icône */
		left: 50%;
		transform: translateX(-50%);
		background-color: #fff;
		border: 1px solid #ccc;
		border-radius: 5px;
		padding: 10px 15px;
		font-size: 16px;
		font-weight: bold;
		box-shadow: 0 2px 5px rgba(0,0,0,0.2);
		white-space: nowrap;
		z-index: 1000;
		margin-top: 10px; /* Changé de margin-bottom à margin-top */
	  }
	
	 .phone-number:before {
		content: '';
		position: absolute;
		top: -10px; /* Changé pour placer la flèche en haut */
		left: 50%;
		transform: translateX(-50%);
		border-width: 0 10px 10px; /* Inversé pour pointer vers le haut */
		border-style: solid;
		border-color: transparent transparent #fff; /* Modifié pour pointer vers le haut */
	  }
	
	.show-number {
      display: block;
    }
	
	.phone-number a:hover {
      text-decoration: underline;
    }
	
	
	/* Style unifié pour les popups téléphone et email */
        .contact-popup {
            display: none;
            position: absolute;
            top: 100%;
            left: 50%;
            transform: translateX(-50%);
            background-color: #fff;
            border: 1px solid #ccc;
            border-radius: 5px;
            padding: 10px 15px;
            font-size: 16px;
            font-weight: bold;
            box-shadow: 0 2px 5px rgba(0,0,0,0.2);
            white-space: nowrap;
            z-index: 1000;
            margin-top: 10px;
        }
        
        .contact-popup:before {
            content: '';
            position: absolute;
            top: -10px;
            left: 50%;
            transform: translateX(-50%);
            border-width: 0 10px 10px;
            border-style: solid;
            border-color: transparent transparent #fff;
        }
        
        .show-popup {
            display: block;
        }
        
        .contact-popup a:hover {
            text-decoration: underline;
        }
        
        .contact-icon {
            position: relative;
            display: inline-block;
            cursor: pointer;
        }
		
		
		/* Styles pour les deux popups (téléphone et email) */
    .phone-number {
        display: none;
        position: absolute;
        top: 100%;
        left: 50%;
        transform: translateX(-50%);
        background-color: #fff;
        border: 1px solid #ccc;
        border-radius: 5px;
        padding: 10px 15px;
        font-size: 16px;
        font-weight: bold;
        box-shadow: 0 2px 5px rgba(0,0,0,0.2);
        white-space: nowrap;
        z-index: 1000;
        margin-top: 10px;
    }
    
    .phone-number:before {
        content: '';
        position: absolute;
        top: -10px;
        left: 50%;
        transform: translateX(-50%);
        border-width: 0 10px 10px;
        border-style: solid;
        border-color: transparent transparent #fff;
    }
    
    .show-number {
        display: block;
    }
    
    /* Assurez-vous que les icônes sont bien positionnées */
    .contact-icon {
        position: relative;
        display: inline-block;
        cursor: pointer;
    }
	
	.hero .btn-outline {
    border: 2px solid rgba(255, 255, 255, 0.8); /* Bordure plus claire */
    color: rgba(255, 255, 255, 0.9); /* Texte plus clair */
}

	.hero .btn-outline:hover {
		background-color: rgba(255, 255, 255, 0.2); /* Fond légèrement transparent au survol */
		color: #ffffff; /* Texte blanc au survol */
		border-color: #ffffff; /* Bordure blanche au survol */
	}
	
		
		/* Modification pour supprimer le cadre blanc de l'image UPOS KSD */
	.product-item:nth-child(3) .product-image img {
		box-shadow: none !important; /* Supprime l'ombre portée */
		border-radius: 0 !important; /* Supprime les coins arrondis */
		background-color: transparent !important; /* Assure que le fond est transparent */
	}

	/* Modifie également le conteneur de l'image pour garantir la transparence */
	.product-item:nth-child(3) .product-image {
		background-color: transparent !important;
		box-shadow: none !important;
	}

	/* Classe générique pour supprimer les cadres des images qui en ont besoin */
	.no-frame {
		box-shadow: none !important;
		border-radius: 0 !important;
		background-color: transparent !important;
	}
	
	
	.product-image img {
    box-shadow: none !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
}

.product-image {
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
}

/* Styles spécifiques pour les images qui doivent garder leur apparence spéciale */
.product-image img:not(.upos-pad-img):not([src="upos_ksd.png"]):not([src="/api/placeholder/500/300"]) {
    box-shadow: 0 5px 20px rgba(0,0,0,0.1) !important;
    border-radius: 10px !important;
}

.upos-pay-img {
    width: 25% !important; /* 50% de 50% (taille par défaut) = 25% */
    height: auto;
    box-shadow: none !important;
    border-radius: 0 !important;
    background-color: transparent !important;
}

.upos-borne-img {
    width: 35% !important; /* 70% de 50% (taille par défaut) = 35% */
    height: auto;
    box-shadow: none !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
}

.product-item:nth-child(5) .product-image img {
    box-shadow: none !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
}

.product-item:nth-child(5) .product-image {
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
}

img {
    border: none !important;
    outline: none !important;
}

.product-image, 
.product-image_1, 
div[class^="product"] {
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

.product-item:nth-child(5) img,
.product-item:nth-child(6) img {
    box-shadow: none !important;
    border-radius: 0 !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    background: none !important;
}


//----
/* Nouvelle structure pour l'écosystème d'encaissement */
.ecosystem-container {
    display: flex;
    flex-direction: row-reverse; /* Image à droite */
    margin: 40px 0;
    gap: 30px;
}

.main-image {
    flex: 0 0 45%; /* Largeur fixe pour l'image principale */
    position: sticky;
    top: 100px; /* Pour que l'image reste visible pendant le scroll */
    align-self: flex-start;
    height: fit-content;
}

.restaurant-iso {
    width: 100%;
    height: auto;
    object-fit: contain;
    border-radius: 10px;
}

.product-grid {
    flex: 0 0 55%;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.product-card {
    display: flex;
    align-items: center;
    background-color: white;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    transition: transform 0.3s, box-shadow 0.3s;
}

.product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}

.product-card .product-image {
    flex: 0 0 200px; /* Augmenté de 100px à 200px */
    margin-right: 30px; /* Augmenté de 20px à 30px pour plus d'espace */
}

.product-card .product-image img {
    max-width: 100%;
    max-height: 160px; /* Doublé de 80px à 160px */
    object-fit: contain;
    box-shadow: none;
    border-radius: 0;
}

.product-card .product-icon {
    height: 160px; /* Doublé de 80px à 160px */
    width: auto;
}

.product-card .upos-bo-img {
    max-height: 120px; /* Taille plus grande pour l'image UPOS Back Office */
    width: auto;
}

.product-card .upos-evo-img {
    max-height: 120px; /* Taille plus grande pour l'image UPOS Back Office */
    width: auto;
}

.product-card .upos-v2-img {
    max-height: 120px; /* Taille plus grande pour l'image UPOS Back Office */
    width: auto;
}

.product-card .product-content {
    flex: 1;
}

.product-card h3 {
    color: var(--primary-blue);
    margin-bottom: 10px;
    font-size: 1.3rem;
}

.product-card p {
    margin-bottom: 15px;
    font-size: 0.95rem;
    color: var(--dark-gray);
}

.product-card .btn {
    padding: 8px 15px;
    font-size: 0.9rem;
}

/* Responsive */
@media (max-width: 992px) {
    .ecosystem-container {
        flex-direction: column;
    }
    
    .main-image {
        flex: 0 0 100%;
        position: relative;
        top: 0;
        margin-bottom: 30px;
    }
    
    .product-grid {
        flex: 0 0 100%;
    }
}

@media (max-width: 768px) {
    .product-card {
        flex-direction: column;
        text-align: center;
    }
    
    .product-card .product-image {
        margin-right: 0;
        margin-bottom: 15px;
    }
}