/* Styles généraux pour le corps */
body {
    font-family: Arial, sans-serif; /* Police principale */
    margin: 0; /* Supprime les marges par défaut */
    padding: 0; /* Supprime les espacements internes par défaut */
    display: flex; /* Active la disposition en flexbox */
    flex-direction: column; /* Colonne pour structurer les sections */
    height: 100%; /* Prend toute la hauteur disponible */
}

/* Styles pour l'élément HTML principal */
html {
    height: 100%; /* Assure une hauteur complète */
}

/* En-tête central avec des logos */
.central-header {
    background-color: #f4f4f4; /* Couleur de fond claire */
    padding: 20px 0; /* Espacement interne vertical */
    display: flex; /* Flexbox pour l'alignement des éléments */
    justify-content: space-between; /* Espace entre les logos gauche et droite */
    align-items: center; /* Centrage vertical des logos */
    position: relative; /* Nécessaire pour d'autres éléments positionnés */
}

/* Logo à gauche */
.central-header .left-logo {
    margin-left: 120px; /* Espacement à gauche */
    width: 15%; /* Largeur proportionnelle */
}

/* Logo à droite */
.central-header .right-logo {
    margin-right: 150px; /* Espacement à droite */
    width: 18%; /* Largeur proportionnelle */
}

/* Logo principal */
.large-logo {
    height: auto; /* Hauteur automatique pour respecter les proportions */
    width: 15%; /* Largeur proportionnelle */
}

/* Navigation principale */
.main-nav {
    background-color: #333; /* Couleur de fond sombre */
    text-align: center; /* Texte centré */
    padding: 10px 0; /* Espacement interne vertical */
}

/* Liste des éléments de navigation */
.main-nav ul {
    list-style-type: none; /* Supprime les puces des listes */
    margin: 0; /* Supprime les marges */
    padding: 0; /* Supprime les espacements internes */
    display: inline-block; /* Permet un centrage horizontal */
}

/* Élément individuel dans la navigation */
.main-nav ul li {
    display: inline; /* Affichage en ligne */
    margin: 0 15px; /* Espacement horizontal entre les éléments */
}

/* Liens de navigation */
.main-nav ul li a {
    text-decoration: none; /* Supprime le soulignement */
    color: white; /* Couleur blanche pour les liens */
    font-weight: bold; /* Texte en gras */
}

/* Styles pour les sous-menus */
.main-nav .submenu {
    display: none; /* Les sous-menus sont masqués par défaut */
    position: absolute; /* Positionnement relatif au parent */
    background-color: #444; /* Couleur de fond des sous-menus */
    list-style-type: none; /* Supprime les puces des listes */
    margin: 0; /* Supprime les marges */
    padding: 0; /* Supprime les espacements internes */
    z-index: 1000; /* Priorité d'affichage */
    border-radius: 5px; /* Coins arrondis */
    overflow: hidden; /* Cache tout débordement */
}

/* Liens des sous-menus */
.main-nav .submenu li a {
    text-decoration: none; /* Supprime le soulignement */
    color: white; /* Texte blanc */
    padding: 10px 20px; /* Espacement interne pour chaque lien */
    display: block; /* Les liens occupent toute la largeur */
    white-space: nowrap; /* Empêche le retour à la ligne */
}

/* Effet au survol des liens des sous-menus */
.main-nav .submenu li a:hover {
    background-color: #555; /* Change de couleur au survol */
}

/* Affichage des sous-menus au survol */
.main-nav .has-submenu:hover .submenu {
    display: block; /* Affiche les sous-menus */
}

/* Positionnement des sous-menus */
.main-nav .has-submenu {
    position: relative; /* Nécessaire pour positionner les sous-menus */
}

.main-nav .submenu {
    top: 100%; /* Positionne les sous-menus sous le parent */
    left: 0; /* Aligne les sous-menus à gauche */
}

/* Section principale */
main {
    padding: 20px; /* Espacement interne */
    text-align: center; /* Centre le contenu */
    flex: 1; /* Permet à la section principale de remplir l'espace restant */
}

/* Titre principal */
main h1 {
    text-align: center; /* Centre le titre */
    margin-top: 20px; /* Espacement supérieur */
    font-size: 28px; /* Taille de la police */
    color: #333; /* Couleur du texte */
}

/* Paragraphe dans la section principale */
main p {
    margin-bottom: 10px; /* Espacement inférieur */
    font-size: 18px; /* Taille de la police */
    color: #555; /* Couleur du texte */
}

/* Styles spécifiques à la page "Secteurs d'activités" */
.sectors-container {
    display: grid; /* Utilisation de la grille pour une meilleure disposition */
    grid-template-columns: repeat(3, 1fr); /* Deux colonnes de largeur égale */
    gap: 20px; /* Espacement entre les éléments */
    justify-content: center; /* Centre le contenu horizontalement */
    padding: 20px;
	margin-left: 170px;
	margin-right: 170px;
}

.sector {
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    text-align: justify;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.sector img {
    width: 100%;
    height: auto;
    border-radius: 8px 8px 0 0;
    margin-bottom: 15px;
}

.sector h2 {
    font-size: 22px;
    color: #333;
    margin-bottom: 10px;
}

.sector p {
    font-size: 16px;
    color: #555;
    margin-bottom: 15px;
	text-align: justify;
}

.sector .btn {
    display: inline-block;
    background-color: #333;
    color: #fff;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    transition: background-color 0.3s;
}

.sector .btn:hover {
    background-color: #555;
}

/* Ajustement pour les écrans plus petits */
@media (max-width: 768px) {
    .sectors-container {
        grid-template-columns: 1fr; /* Une seule colonne sur les petits écrans */
    }
}


/* Pied de page */
footer {
    background-color: #f4f4f4;
    padding: 10px 20px;
    text-align: left;
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

footer .footer-text {
    font-size: 14px;
    color: #333;
}

footer .footer-links {
    font-size: 14px;
}

footer .footer-links a {
    text-decoration: none;
    color: #333;
    margin-left: 10px;
}

footer .footer-links a:hover {
    text-decoration: underline;
}

/* pour la page climatisation */

/* Styles pour les sections de contenu */
.content-section {
    display: flex;
    align-items: stretch; /* Aligne les éléments enfants sur toute la hauteur */
    justify-content: center;
    padding: 20px 200px;
    gap: 20px;
}

.content-section.reverse-layout {
    flex-direction: row-reverse;
}

.content-block {
    display: flex;
    align-items: center;
    flex: 1;
    border: 1px solid #ddd;
    border-radius: 12px;
    padding: 20px;
    background-color: #f9f9f9;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    display: flex;
    align-items: stretch; /* Assure que l'image et le texte sont sur la même hauteur */
}

.bubble {
    border: 1px solid #333; /* Bordure de 1px */
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: stretch; /* Assure que tout est aligné */
}

.content-image {
    width: 45%; /* Largeur fixe à 45% */
    height: 100%; /* La hauteur occupe 100% de celle du bloc */
    object-fit: cover; /* Couvre l'espace sans déformer l'image */
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    margin-right: 20px;
}

.content-text {
    flex: 1;
    padding: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center; /* Centre verticalement le texte */
	text-align: justify;
}

.content-text h2 {
    font-size: 24px;
    margin-bottom: 15px;
    color: #333;
}

.content-text p {
    font-size: 16px;
    color: #555;
    line-height: 1.6;
	text-align: justify;
}