/* Hero section */
.hero-section {
    position: relative;
    z-index: 2;
    color: #fff;
    top: 0;
    height: 40%;
}


.hero-section h3 {
    position: relative;
    font-size: 64px;
    font-weight: 600;
    margin-bottom: 1rem;
    padding-top: 10%;
    z-index: 3;
}
/* End of hero section */

/* Second section */
.images_decor {
    background: var(--bs-purple);
}

.images_wrapper {
    position: relative;
    height: 100%;
}

.images_decor {
    position: absolute;
}

.images_decor.top {
    top: 0;
    right: 0;
    width: 177px;
    height: 28.62px;
}

.images_decor.right {
    top: 0;
    left: 0;
    width: 24px;
    height: 211.07px;
}

.images_decor.bottom {
    bottom: 0;
    right: 0;
    width: 24px;
    height: 155.91px;
} 

.content-list li{
    margin-bottom: 20px;
    line-height: 30px;
}

.image_1 {
    position: absolute;
    right: 0px;
    top: 37px;
    width: 88%;
}

.image_1 img,
.image_2 img {
    width: 100%;
}

.image_2 {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 88%;
    z-index: 3;
}

.inscription-section_wrapper {
    height: 520px;
}

.events-command {
    width: 100%;
}

.events-command_img {
    position: relative;
}

.events-command_img img {
    width: 100%;
}

.purple-shadow-box-left {
    box-shadow: -14px 13px 0px 0px #4000A6;
}

.recruitement_image_1 {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 60%;
}

.recruitement_image_1 img,
.recruitement_image_2 img {
    width: 100%;
}

.recruitement_image_2 {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 3;
    width: 56%;
}

.recruitement_images_decor.top {
    position: absolute;
    top: 0px;
    right: 0;
    width: 176px;
    height: 50px;
    background: var(--bs-purple);
}

.recruitement_images_decor.bottom {
    position: absolute;
    bottom: 0px;
    left: 0;
    width: 200px;
    height: 40px;
    background: var(--bs-purple);
}

.inscription-section__content-right h1 {
    font-weight: 600;
}

.text p {
    font-size: 20px;
}
/* End of second section  */

/* fonctionalities section */
.fonctionalities_wrapper {
    display: grid;
    gap: 20px;
    width: 100%;
}

/* Desktop: 3 columns, 2 rows */
@media (min-width: 1024px) {
    .fonctionalities_wrapper {
        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: 1fr;
    }
}

/* Tablet: 2 columns, 3 rows */
@media (min-width: 768px) and (max-width: 1023px) {
    .fonctionalities_wrapper {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 1fr;
    }
}

/* Mobile: 1 column, 6 rows */
@media (max-width: 767px) {
    .fonctionalities_wrapper {
        grid-template-columns: 1fr;
        grid-auto-rows: 1fr;
    }
}

.fonctionalities_item {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4 / 3; /* keep same proportions */
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.1);
    width: 100%;
}

.fonctionalities_item .overlay-title {
    position: absolute;
    left: 0;
    top: 120px;
    padding: 0 1rem;
    color: #fff;
    z-index: 1;
}

.fonctionalities_item .title {
    font-size: 24px;
}

.fonctionalities_item .content {
    font-size: 17px;
}
/* End of fonctionalities section */

/* Access section */
.access-section_image {
    position: relative;
    overflow: hidden;
}

.access-section_image img {
    width: 100%;
}
/* End of access section */

/* continuity section */
.content p {
    font-size: 20px;
}
/* end of continuity section */