/*****************
	  +1024px
******************/
@media screen and (min-width: 1024px) {
    /******	  NAV	 ******/
    .nav {
        height: calc(4rem + 2rem);
        display: flex;
        justify-content: space-between;
        margin: 0 15px;
        border-radius: var(--border-radius);
    }
    .nav__toggle {
        display: none;
    }
    .nav__list {
        height: 100%;
        display: flex;
        column-gap: 3rem;
        align-items: center;
    }
    .nav__link {
        height: 100%;
        padding: 0;
        justify-content: initial;
        column-gap: .25rem;
    }
    .nav__link:hover {
        background-color: transparent;
    }

    /******	  NAV DROPDOWNS	 ******/
    .dropdown__item,
    .dropdown__subitem {
        position: relative;
        height: 100%;
    }
    .dropdown__menu,
    .dropdown__submenu {
        max-height: initial;
        overflow: initial;
        position: absolute;
        left: auto;
        top: 6rem;
        opacity: 0;
        pointer-events: none;
        transition: opacity .3s, top .3s;
    }
    .dropdown__link,
    .dropdown__sublink {
        padding-inline: 1rem 3.5rem;
    }
    .dropdown__subitem .dropdown__link {
        padding-inline: 1rem;
    }
    .dropdown__submenu {
        position: absolute;
        right: 100%;
        top: .5rem;
    }
    /* Show dropdown menu */
    .dropdown__item:hover .dropdown__menu {
        opacity: 1;
        top: 6rem;
        pointer-events: initial;
        transition: top .3s;
    }
    /* Show dropdown submenu */
    .dropdown__subitem:hover > .dropdown__submenu {
        opacity: 1;
        top: 0;
        pointer-events: initial;
        transition: top .3s;
    }
}

/*****************
		1024px
******************/
@media (max-width: 1024px) {
    /******	  GENERAL	******/
    :root {
        --padding: 100px 15px;
    }
    h1 {
        font-size: 2.5rem;
    }
    h2 {
        font-size: 1.875rem;
    }
    h3 {
        font-size: 1.25rem;
    }
    .btn_cta_general {
        font-size: 1rem;
    }


    /******	  HEADER	******/
    .topbar_wrapper {
        display: none;
    }


    /******	  NAVIGATION	******/
    .nav {
        padding: 0 15px;
        height: 5rem;
    }
    .nav__menu {
        position: absolute;
        left: 0;
        top: 2.5rem;
        width: 100%;
        height: calc(100vh - 3.5rem);
        overflow: auto;
        pointer-events: none;
        opacity: 0;
        transition: top .4s, opacity .3s;
    }
    .nav__menu::-webkit-scrollbar {
        width: 0;
    }
    .nav__list {
        background-color: var(--color-text);
        padding-top: 1rem;
        height: 100vh;
        position: relative;
    }
    .nav__link:hover:after {
        display: none;
    }
    .contact_link_nav {
        width: fit-content;
        padding: 1.25rem 30px;
    }
    .dropdown__link, .dropdown__sublink {
        padding: 1.25rem 40px;
    }


    /* Show menu */
    .show-menu {
        opacity: 1;
        top: 5rem;
        pointer-events: initial;
    }


    /******	  ANIMATION TOGGLE MENU 	******/
    .bar, .bar::before, .bar::after {
        transition: all 0.2s linear;
        position: absolute;
        background: var(--color-white);
        margin: auto;
        width: 100%;
        height: 0.15rem;
        content: '';
        top: 50%;
        left: 0;
        cursor: pointer;
    }
    .bar {
        margin-top: -0.2rem;
    }
    .bar::before {
        top: -0.45rem;
    }
    .bar::after {
        top: 0.45rem;
    }
    .bar::before, .bar::after {
        transform: rotate(0deg);
    }
    .show-icon .bar {
        background: 0;
    }
    .show-icon .bar::before {
        transform: rotate(45deg);
    }
    .show-icon .bar::after {
        transform: rotate(-45deg);
    }
    .show-icon .bar::before, .show-icon .bar::after {
        top: 0;
    }
    .show-icon .bar, .show-icon .bar::before, .show-icon .bar::after {
        transition: all 0.2s linear;
    }


    /******	  ACCUEIL	******/
    /* HERO */
    .hero_home_wrapper {
        max-height: 700px;
        height: 700px;
    }
    .hero_home_content {

    }
    .hero_home_title {
        font-size: 2.5rem;
        text-align: center;
        max-width: unset;
    }
    .hero_home_cta {
        margin: var(--center);
        text-align: center;
        display: flex;
    }
    /* REASSURANCES */
    .quick-access__content {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .quick-access__item:nth-child(2) {
        border-right: unset;
    }
    .quick-access__item:first-of-type,
    .quick-access__item:nth-child(2) {
        border-bottom: 1px solid #E9E9E9;
    }
    .quick-access__item {
        padding: 30px;
    }
    /* PRESENTATION */
    .section-media__container {
        grid-template-columns: minmax(0,1fr);
        row-gap: 40px;
        column-gap: 0;
    }
    .section-media__link {
        grid-column: 1/2;
        margin-top: 0;
    }
    .section-media__img {
        object-fit: contain;
        width: auto;
        margin: var(--center);
        display: block;
        max-height: 500px;
    }
    /* EXPERTISES */
    .feature-slider {
        padding: 100px 15px 180px;
    }
    .feature-slider__heading {
        max-width: 100%;
        text-align: center;
    }
    .feature-slider__image-wrapper {
        height: 250px;
    }
    /* REALISATIONS */
    .slider-extended {
        padding: 100px 15px 180px;
    }
    .slider-extended__header{
        grid-template-columns: minmax(0,1fr);
        row-gap: 15px;
        padding-bottom: 60px;
    }
    .slider-extended__h2 {
        text-align: center;
    }
    .card-slider__cta {
        margin: var(--center);
    }
    #slider-extended .slider-extended__image {
        height: 400px;
    }
    /* AVIS */
    .card-slider__heading {
        max-width: 70%;
    }
    /* CONTACT */
    .contact-bottom-title {
        font-size: 1.875rem;
    }

    /******	  ACTUALITES	******/
    .actus_content {
        grid-template-columns: repeat(2, 1fr);
    }
    .actus_content .feature-slider__image-wrapper,
    #archives_slider .feature-slider__image-wrapper {
        height: 250px;
    }

    /******	  ARCHIVES ACTUS	******/
    .archivesActus_wrapper {
        padding: 100px 0 180px;
    }
    .archivesActus_content {
        grid-template-columns: minmax(0,1fr);
        row-gap: 50px;
    }
    .archivesActus_left {
        max-width: 100%;
        place-self: unset;
        padding: 0 15px;
    }
    .archivesActus_right {
        padding: 0 0 0 15px;
    }

    /*** CONTACT ***/
    .contact_content {
        grid-template-columns: minmax(0, 1fr);
        gap: 40px;
    }
    .content_left {
        order: 2;
    }
    .content_right {
        order: 1;
    }

    /*** PAGES DYNAMIQUES ***/
    .slider_top_titles_wrapper h1 {
        font-size: 2rem;
    }
    .slider_top_wrapper {
        max-height: 600px;
    }
    .slider_top_content {
        bottom: 80px;
    }
    .text_img {
        flex-direction: column;
    }
    .image_droite, .image_gauche {
        margin: 0 0 40px 0;
    }
    .text_champ figure img {
        max-height: 445px;
        width: 100%;
        object-fit: contain;
        height: auto;
    }
    .text_champ figure {
        width: 100%;
        order: 1;
        height: 100%;
    }
    .text_champ .texte_pag_dyn {
        width: 100%;
        order: 2;
    }
    .text__wrapper {
        padding: 0 15px 100px;
    }
    .carousel_wrapper {
        padding: 0 15px 100px;
    }
    .paragraphe_deroulant__wrapper {
        padding: 0 15px;
    }
    .wrapper-textChamp {
        padding: 100px 0 0;
    }

    /*** REALISATIONS ***/
    .reals_content {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .slider-extended__image {
        height: 400px;
    }
    .archivesActus_title {
        font-size: 1.875rem;
        padding-bottom: 20px;
    }
    #archives_real_slider .slider-extended__image {
        height: 300px;
    }

}

/*****************
		930px
******************/
@media (max-width: 930px) {
    /** FOOTER **/
    .footer_top_content {
        flex-direction: column;
        justify-content: center;
    }
    .footer_rs .toggleTexte {
        justify-content: center;
    }
    .footer_logo {
        margin: 0 auto;
    }
    .footer_links {
        grid-template-columns: minmax(0,1fr);
        width: 100%;
        row-gap: 10px;
    }
    footer .toggleTitre {
        pointer-events: initial;
        display: flex;
        cursor: pointer;
        margin: 15px;
        justify-content: space-between;
        align-items: center;
        color: var(--color-white);
        font-size: 1.125rem;
        position: relative;
    }
    footer .toggleTexte {
        display: none;
        margin-top: 15px;
        background-color: transparent;
        padding: 15px;
    }
    footer .col-grid-1 {
        position: relative;
    }
    footer .col-grid-1:first-of-type {
        border-top: none;
    }
    footer .toggleTitre:after {
        content: url("/design/img/nav-arrow-down.svg");
        height: fit-content;
        position: absolute;
        right: 0;
    }
    footer .toggleTitre.active:after {
        transform: rotate(180deg);
    }
    .footer_bottom_content {
        gap: 0;
    }
    footer .footer_contact .toggleTexte li {
        padding-bottom: 20px;
    }
}


/*****************
		665px
******************/
@media (max-width: 665px) {
    /** CONTACT **/
    .contact_wrapper {
        grid-template-columns: 1fr;
    }

    /** ACTUALITES **/
    .actus_content {
        grid-template-columns: 1fr;
    }

    /** REALISATIONS **/
    .reals_content {
        grid-template-columns: 1fr;
    }
}

/*****************
		630px
******************/
@media (max-width: 630px) {
    /***** ACCUEIL *****/
    /* AVIS */
    .card-slider__heading {
        max-width: 100%;
        text-align: center;
    }
    .top-right-arrow .splide__arrows {
        top: unset;
        bottom: -80px;
    }
    .card-slider {
        padding: 100px 15px 150px;
    }

    /** FOOTER **/
    .footer_bottom_content {
        justify-content: center;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

/*****************
		480px
******************/
@media (max-width: 480px) {
    /******** ACCUEIL **********/
    /* REASSURANCES */
    .quick-access__content {
        grid-template-columns: minmax(0,1fr);
    }
    .quick-access__item {
        border-right: 0;
    }
    .quick-access__item:nth-child(3) {
        border-bottom: 1px solid #E9E9E9;
    }
    /* REALISATIONS */
    .slider-extended__carousel-wrapper {
        padding: 0 15px;
    }
    #slider-extended .slider-extended__image,
    .slider-extended__image {
        height: 350px;
    }


    /** CAROUSEL PAGES DYNS **/
    .slick-slider{
        padding:0;
    }

    /** ARCHIVES ACTUS **/
    .archivesActus_right {
        padding: 0 15px;
    }
}

/*****************
		463px
******************/
@media (max-width: 463px) {
    /** CAROUSEL PAGES DYNS **/
    .slick-initialized .slick-slide {
        float: left;
    }
}


/*****************
		400px
******************/
@media (max-width: 400px) {
    /** REALISATIONS **/
    #archives_real_slider .slider-extended__image {
        height: 250px;
    }
}


/*****************
		340px
******************/
@media (max-width: 340px) {
    .container {
        margin-inline: 1rem;
    }

    .nav__link {
        padding-inline: 1rem;
    }

    .contact_link_nav {
        padding-inline: 1rem;
    }
}