@media (min-device-aspect-ratio: 16/11) and (max-device-aspect-ratio: 16/10) { /*MACBOOK*/
    site{ font-size: 0.65vw; }
}

@media (min-width: 1025px) { /* Desktop */
    .no_desktop{ display: none; }

    site {
        font-size: 0.733vw;
    }

    .heavy-texts { font-size: 4.5em; }
    .big-texts { font-size: 4.5em; }
    .large-texts { font-size: 3em; }
    .medium-texts { font-size: 2em; }
    .small-texts { font-size: 1.5em; }

}

/* Tablette */
@media (min-width: 768px) and (max-width: 1024px) {
    .no_tablet{ display: none; }  
    site {
        font-size: 1.22vw;
    }

    header .mainTitle, header a.button-menu {
        font-size: 3.2em;
        padding-bottom: .4em;
    }

    .heavy-texts { font-size: 3em; }
    .big-texts { font-size: 3em; }
    .large-texts { font-size: 2em; }
    .medium-texts { font-size: 1.5em; }
    .small-texts { font-size: 1em; }
}

/* Mobile */
@media (max-width: 767px) {
    .no_mobile { display: none; }  

    .heavy-texts  { font-size: 2.25em; }
    .big-texts  { font-size: 2em; }
    .large-texts  { font-size: 1.25em; }
    .medium-texts  { font-size: 1.15em; }
    .small-texts  { font-size: 1em; }

    .language-selection a  { background: transparent; }

    site  {
        font-size: 4vw;
    }

    header { font-size: 0.66em; }
    header .heavy-texts { font-size:3em; }
    menu { width: 100vw; right: -100vw; }
    menu .no_desktop { position: absolute; left: 39%; }
    menu .menuHead { justify-content: end; position: relative; }
    menu .menuHead a img  { height: 3em; }
    menu .liens .large-texts { font-size:2em; }
    menu .mmfoot { padding:1em; }
    menu .urlsocial { flex-direction: column-reverse; }
    menu .urlsocial .medium-texts { font-size: 2em; }


    header .mainTitle, header a.button-menu {
        padding-bottom: 0;
    }

    mainct { padding-top: 4em; }


    footer { flex-direction: column; gap: 1.5em; padding: 1.5em; margin-bottom: 5em; }
    footer .leftfoot { flex-direction: column; align-items: baseline; width: 100%; padding: 0; }
    footer .topleftfoot { justify-content: space-between; width: 100%; padding: 0; }
    footer .leftfoot .logo { width: 12em; margin-right: 1em; }
    footer .leftfoot nav { font-size: 1.5em; margin-top: 0; }
    footer .rightfoot { flex: none; width: 100%; padding: 0 0 2.5em; }
    footer .rightfoot .email { text-align: center; border-top: 1px solid var(--main-color); border-bottom: 1px solid var(--main-color);  }

    footer .rightfoot .email a {
      padding: 0.25em 0;
    }

    footer .rightfoot .square { font-size: 1em; margin: 1.5em 0; }

}