/* Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body, html {
    width: 100%;
    height: 100%;
    overflow-x: hidden;
}

body {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    color: #333;
}

/* Header Supérieur */
.header-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
    background-color: #fff;
    border-bottom: 1px solid #ddd;
    height: 70px;
}

.header-top .logo img {
    height: 40px;
    margin-left: 15px;
}

.header-top .contact-info {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #333;
    margin-right: 15px;
}

.header-top .contact-info p {
    margin-left: 10px;
    font-weight: bold;
    color: rgb(80, 140, 202);
    /* background-color: rgb(80, 140, 202); */
}

.phone-icon {
    width: 30px;
    height: auto;
    margin-right: 8px;
}

/* Header Inférieur */
.header-bottom {
    display: flex;
    width: 100%;
    background-color: rgb(80, 140, 202);
    color: white;
    position: relative;
    height: 60px;
}

.header-bottom .service-section {
    
    flex: 0 0 45%;
    background-color: rgb(80, 140, 202);
    text-align: center;
    padding: 5px 0;
    cursor: pointer;
    clip-path: polygon(0 0, 100% 0, 95% 100%, 0 100%);
    transition: all 0.3s ease;
}

.header-bottom .info-section {

    flex:0 0 35%;
    background-color: #3a3a3a;
    text-align: center;
    position: relative;
    clip-path: polygon(5% 0, 100% 0, 95% 100%, 0 100%);
  
    color: white;
    cursor: pointer;
    transition: all 0.3s ease;
}

.header-bottom .group-section {
    flex: 0 0 20%;
    background-color: rgb(80, 140, 202);
    clip-path: polygon(5% 0, 100% 0, 100% 100%, 0 100%);
    text-align: center;
    padding: 5px 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.header-bottom a {
    text-decoration: none;
    color: white;
    font-size: 16px;
    font-weight: bold;
    display: block;
    height: 100%;
    line-height: 40px;
}

/* Tooltip */
.info-section {
    position: relative;
    background-color: rgb(73, 71, 73);
}

.info-section a {
    color: white;
    font-size: 16px;
    font-weight: bold;
    padding: 5px 10px;
    display: block;
    text-align: center;
}

/* .info-section:hover .tooltip {
    right: 20px;
    opacity: 1;
    transform: translate(0, -50%) scale(1); 
} */
.info-section:hover .tooltip {
    pointer-events: auto; /* Allow interactions when visible */
}
.tooltip.visible {
    right: 20px; /* Move into view */
    opacity: 1; /* Fully visible */
    transform: translate(0, -50%) scale(1);
    pointer-events: auto; /* Enable interactions */
}

.tooltip {
    display: block;
    position: fixed;
    top: 50%;
    right: -350px; /* Initially off-screen */
    width: 300px;
    height: 50%; /* Half the page height */
    transform: translate(0, -50%) scale(0.9); /* Center vertically and shrink initially */
    background-color: rgba(255, 255, 255, 0.95); /* Transparent white */
    color: #333;
    padding: 20px;
    border-radius: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    opacity: 0; /* Initially invisible */
    pointer-events: none; /* Ignore pointer events when hidden */
    transition: all 0.3s ease-in-out;
    font-size: 14px;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}
.tooltip-item {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.tooltip-item:last-child {
    margin-bottom: 0; /* Remove margin from the last item */
}
.tooltip-icon {
    width: 20px;
    height: 20px;
    margin-right: 10px;
}

.tooltip p {
    margin-bottom: 15px;
}

.tooltip strong {
    font-weight: bold;
    color: rgb(80, 140, 202);
}

/* Main Content */
.main-content {
    display: flex;
    height: calc(100vh - 110px);
    flex-wrap: wrap;
}

.content-left {
    /* width: 33.33%;
    background-color: #000;
    color: #fff;
    padding: 20px;
    overflow-y: auto; */
    flex: 1; /* Prend tout l'espace disponible */
    padding: 20px;
    background-color: #000;
    color: #fff;
    overflow-y: auto;
    display: flex;
    flex-direction: column; /* Aligner le contenu verticalement */
    justify-content: center;
}
.content-left h1 {
    font-size: 2rem;
    margin-bottom: 1rem;
    text-align: center;
}
.content-left ul {
    padding-left: 20px;
}
.content-left p, .content-left ul {
    margin-bottom: 1.5rem;
    text-align: justify; /* Justification pour une lecture plus agréable */
    width: 100%;
}
.content-left ul li {
    margin-bottom: 1rem;
}
.content-right {
    width: 66.66%;
}

.content-right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Responsive Design */
@media screen and (max-width: 768px) {
    .header-bottom {
        flex-direction: column;
        height: auto;
    }

    .main-content {
        flex-direction: column;
    }

    .content-left, .content-right {
        width: 100%;
    }

    .tooltip {
        width: 90%; /* Full width for small screens */
    }
}
