/* 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(2, 1fr); /* Deux colonnes de largeur égale */
    gap: 20px; /* Espacement entre les éléments */
    justify-content: center; /* Centre le contenu horizontalement */
    padding: 20px;
    margin-left: 200px; /* Décalage à gauche */
    margin-right: 200px; /* Décalage à droite */
}

.sector {
    background-color: #f9f9f9; /* Couleur de fond claire */
    border: 1px solid #ddd; /* Bordure grise autour des éléments */
    border-radius: 8px; /* Coins arrondis */
    padding: 20px; /* Espacement interne */
    text-align: center; /* Centrage du texte */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Ombre douce autour du bloc */
}

.sector img {
    width: 100%; /* L'image occupe toute la largeur du bloc */
    height: auto; /* Maintient les proportions de l'image */
    border-radius: 8px 8px 0 0; /* Coins arrondis en haut de l'image */
    margin-bottom: 15px; /* Espacement sous l'image */
}

.sector h2 {
    font-size: 22px; /* Taille de la police pour le titre */
    color: #333; /* Couleur du texte */
    margin-bottom: 10px; /* Espacement sous le titre */
}

.sector p {
    font-size: 16px; /* Taille de la police pour le texte */
    color: #555; /* Couleur du texte */
    margin-bottom: 15px; /* Espacement sous le paragraphe */
}

.sector .btn {
    display: inline-block; /* Affichage en ligne pour le bouton */
    background-color: #333; /* Couleur de fond sombre */
    color: #fff; /* Couleur du texte en blanc */
    text-decoration: none; /* Supprime le soulignement */
    padding: 10px 20px; /* Espacement interne */
    border-radius: 5px; /* Coins arrondis pour le bouton */
    font-size: 16px; /* Taille de la police */
    font-weight: bold; /* Texte en gras */
    transition: background-color 0.3s; /* Transition douce au survol */
}

.sector .btn:hover {
    background-color: #555; /* Change la couleur au survol */
}

/* 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; /* Couleur de fond claire */
    padding: 10px 20px; /* Espacement interne */
    text-align: left; /* Texte aligné à gauche */
    margin-top: auto; /* Pousse le pied de page au bas de la page */
    display: flex; /* Flexbox pour aligner les éléments horizontalement */
    justify-content: space-between; /* Espacement entre les éléments */
    align-items: center; /* Centrage vertical */
}

footer .footer-text {
    font-size: 14px; /* Taille de la police pour le texte */
    color: #333; /* Couleur du texte */
}

footer .footer-links {
    font-size: 14px; /* Taille de la police pour les liens */
}

footer .footer-links a {
    text-decoration: none; /* Supprime le soulignement */
    color: #333; /* Couleur des liens */
    margin-left: 10px; /* Espacement entre les liens */
}

footer .footer-links a:hover {
    text-decoration: underline; /* Sous-ligne les liens au survol */
}

/* pour la page pompe à chaleur */

/* Styles pour les sections de contenu */
.content-section {
    display: flex; /* Flexbox pour une disposition flexible */
    align-items: stretch; /* Aligne l'image et le texte sur la même hauteur */
    justify-content: center; /* Centre horizontalement */
    padding: 20px 100px; /* Espacement interne de 100px de chaque côté */
}

/* Bloc de contenu */
.content-block {
    display: flex; /* Flexbox pour une disposition flexible */
    align-items: center; /* Aligne l'image et le texte en hauteur */
    border: 1px solid #ddd; /* Bordure grise */
    border-radius: 12px; /* Coins arrondis */
    padding: 20px; /* Espacement interne */
    background-color: #f9f9f9; /* Couleur de fond claire */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Ombre douce autour du bloc */
    overflow: hidden; /* Cache les débordements */
    gap: 20px; /* Espacement entre les éléments */
}

/* Styles pour le texte */
.content-text {
    flex: 1; /* Permet au texte de remplir l'espace restant */
    padding: 5px; /* Espacement interne */
    display: flex; /* Flexbox pour structurer le texte */
    flex-direction: column; /* Organisation du texte en colonne */
    justify-content: center; /* Centrage vertical du texte */
}

.content-text h2 {
    font-size: 32px; /* Taille du titre */
    margin-bottom: 5px; /* Espacement sous le titre */
    color: #333; /* Couleur du titre */
}

.content-text h3 {
    font-size: 20px; /* Taille de la sous-titre */
    margin-bottom: 5px; /* Espacement sous le sous-titre */
    color: #333; /* Couleur du sous-titre */
}

.content-text p {
    font-size: 16px; /* Taille du texte */
    color: #555; /* Couleur du texte */
    line-height: 1.6; /* Interligne pour aérer le texte */
    text-align: justify; /* Justifie le texte */
}

/* Styles pour les images */
.content-images {
    display: flex; /* Flexbox pour disposer les images */
    flex-direction: column; /* Organisation en colonne */
    gap: 20px; /* Espacement entre les images */
    max-width: 45%; /* Largeur maximale des images */
    height: 100%; /* Prend toute la hauteur disponible */
}

.content-image {
    width: 100%; /* Largeur de l'image */
    height: 100%; /* Hauteur de l'image */
    border-radius: 10px; /* Coins arrondis */
    object-fit: cover; /* Remplissage sans déformation */
}

/* Styles pour le lien "Nous contactez" */
a[href="../contact/contact.html"] {
    color: black; /* Couleur noire par défaut */
    text-decoration: underline; /* Texte souligné */
    font-weight: bold; /* Texte en gras */
}

a[href="../contact/contact.html"]:hover {
    text-decoration: underline; /* Conserve le soulignement au survol */
    color: blue; /* Change la couleur en bleu au survol */
}