/* //////////////////// MEDIA QUERIES //////////////////// */
/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {

    /*GENERAL*/
    p,
    ul li,
    ol li {
        font-size: 14px;
        line-height: 1.6;
    }

    .singleboxCard .number,
    .bigTitle {
        font-size: 26px;
    }

    .medTitle {
        font-size: 18px;
    }

    .singleBigCard .insideContent .bigTitle {
        font-size: 20px;
    }

    .uppTitle {
        font-size: 14px;
    }

    .mainButton {
        padding: 15px 20px;
    }

    .contentLine {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .whiteBack.bigImageCardBlock + .whiteBack,
    body.single .whiteBack + .whiteBack,
    .whiteBack + .whiteBack.contactLine {
        padding-top: 80px;
    }

    body.archive .whiteBack + .whiteBack {
        padding-top: 60px;
    }

    .visualBlock + .whiteBack,
    .visualBlock + .lightBack {
        padding-top: 80px;
    }

    .smallLink span {
        font-size: 12px;
        letter-spacing: .5px;
    }

    .smallLink svg {
        width: 16px;
        height: 16px;
    }

    /*MAIN MENU*/
    .mainMenu .logo {
        width: 200px;
        height: 74px;
        display: block;
        margin: 0 0 60px 0;
    }

    .mainNav .menu li {
        width: 24.5%;
        padding: 0 8px;
        position: relative;
    }

    .mainNav .menu li a {
        font-size: 13px;
    }

    .mainNav .menu li .sub-menu li {
        margin: 0 0 13px 0;
    }

    .mainNav .menu li .sub-menu li a {
        font-size: 14px;
        letter-spacing: 0.2px;
    }

    /*ASSOCIATES*/
    .singleAssociate img {
        width: 120px;
        margin: 0 20px 0 0;
    }

    .singleAssociate .presentation .name span {
        font-size: 16px;
    }

    /*CONTENT LINES*/
    .contactContent {
        min-height: 370px;
    }

    .visualLineContainer .content {
        padding: 50px;
    }

    .singleVerticalCard .medTitle br {
        display: none;
    }

    .singleSmallCard {
        height: 190px;
    }

    .singleBigCard {
        padding-top: 130%;
    }

    .singleMemberCard .image .hover svg,
    .singleStudyCard .image .hover img {
        width: 32px;
        height: 32px;
    }

    .singleRefContent .content {
        padding: 15px;
    }

    .singleRefContent .content .description h3 {
        margin: 0 0 15px 0;
    }

    /*SINGLE*/
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

    /*GENERAL*/
    .whiteBack.bigImageCardBlock + .whiteBack,
    body.single .whiteBack + .whiteBack,
    .whiteBack + .whiteBack.contactLine {
        padding-top: 70px;
    }

    body.archive .whiteBack + .whiteBack {
        padding-top: 50px;
    }

    .contentLine {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .mainButton {
        padding: 15px 20px;
    }

    /*HEADER MENU*/
    .headNav .menu {
        margin: 0 50px 0 0;
    }

    .headNav .menu li {
        margin: 0 30px 0 0;
    }

    .headNav .menu li a {
        font-size: 14px;
        letter-spacing: 0.2px;
    }

    .controleNav span {
        display: none;
    }

    /*MAIN MENU*/
    .mainMenu .logo {
        margin: 0 0 80px 0;
    }

    .mainNav .menu {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .mainNav .menu li {
        width: 50%;
        padding: 0 15px;
        position: relative;
        margin: 0 0 80px 0;
    }

    .mainNav .menu li:nth-last-child(-n+2) {
        margin: 0;
    }

    /*CONTACT FORM*/
    .contactLineContent .leftPart .title {
        font-size: 16px;
    }

    .contactLineContent .rightPart .socialLinks a {
        height: 46px;
        width: 80px;
        padding: 0 25px;
    }

    .contactLine .form {
        margin: 50px 0 0 0;
    }

    .form input[type="submit"] {
        padding: 15px 20px;
    }

    /*ASSOCIATES*/
    .singleAssociate {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
    }

    .singleAssociate img {
        width: 100px;
        margin: 0 0 15px 0;
    }

    .singleAssociate .presentation .name {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .singleAssociate .presentation .name .divider {
        width: 15px;
    }

    /*FOOTER*/
    footer {
        padding: 70px 0 50px;
    }

    .footerContainer .footerPost {
        display: none;
    }

    .footerInfos p {
        font-size: 16px;
    }

    .legalPart {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin: 70px 0 0 0;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .legalPart .navigation {
        margin: 0;
    }

    .legalPart .menu {
        margin: 0 0 10px 0;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    /*HOME HEADBAND*/
    .headband {
        height: 60vh;
        min-height: 550px;
    }

    .headbandContent {
        padding: 0;
    }

    .headbandContent .logo {
        width: 160px;
        height: 49px;
    }

    .headbandContent h1 {
        font-size: 15px;
        letter-spacing: 7px;
    }

    .headband .discoverLink svg {
        width: 22px;
        height: 22px;
    }

    .headband .discoverLink {
        bottom: 55px;
    }

    /*CONTENT LINES*/
    .collapseContent .singleCollapse .card-header img {
        max-height: 26px;
        max-width: 26px;
    }

    .collapseContent .singleCollapse .card-header.collapsed:hover h4,
    .collapseContent .singleCollapse .card-header h4 {
        font-size: 16px;
    }

    .singleNumber:nth-last-child(-n+4) {
        margin: 0 0 30px 0;
    }

    .singleNumber:nth-last-child(-n+2) {
        margin: 0;
    }

    .visualLineContainer {
        flex-direction: column;
    }

    .singleHorizontalCard {
        padding: 25px;
    }

    .singleHorizontalCard img {
        max-width: 32px;
        max-height: 32px;
        margin: 0 25px 0 0;
    }

    .singlePostCardContainer:nth-last-child(-n+3) .singlePostCard,
    .singleReferenceCardContainer:nth-last-child(-n+3) .singleReferenceCard,
    .singleStudyCardContainer:nth-last-child(-n+3) .singleStudyCard {
        margin: 0 0 30px 0;
    }

    .singlePostCardContainer:nth-last-child(-n+2) .singlePostCard,
    .singleReferenceCardContainer:nth-last-child(-n+2) .singleReferenceCard,
    .singleStudyCardContainer:nth-last-child(-n+2) .singleStudyCard {
        margin: 0;
    }

    .singleLogoCard .logoContainer {
        height: 140px;
    }

    .singleboxCard img {
        max-width: 32px;
        max-height: 32px;
    }

    .singleboxCard .hoverContent {
        position: absolute;
        background-color: #f2be10;
        z-index: 2;
        padding: 15px;
    }

    .visualLineContainer .image {
        height: 300px;
    }

    /*BLOG*/

    body.archive .allPosts {
        margin: 0;
    }

    .allPosts {
        padding: 0;
        margin: 0 0 40px 0;
    }

    body.single-etudes .postContent,
    body.single-references .postContent {
        margin: 0;
    }

    .postContent {
        padding-right: 15px;
        margin: 0 0 40px 0;
    }
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

    /*GENERAL*/
    .contentLine {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .whiteBack.bigImageCardBlock + .whiteBack,
    body.archive .whiteBack + .whiteBack,
    body.single .whiteBack + .whiteBack,
    .whiteBack + .whiteBack.contactLine {
        padding-top: 50px;
    }

    .mainButton {
        padding: 12px 20px;
        width: 100%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .mainButton span {
        font-size: 12px;
        letter-spacing: 1px;
    }

    .singleboxCard .number,
    .bigTitle {
        font-size: 18px;
    }

    .medTitle {
        font-size: 16px;
    }

    .uppTitle {
        font-size: 12px;
    }

    .visualBlock + .whiteBack,
    .visualBlock + .lightBack {
        padding-top: 50px;
    }

    /*HEADER*/
    header {
        padding: 20px 0;
    }

    .headerContent .logo img {
        display: block;
        width: 70px !important;
        height: 22px !important;
    }

    .headNav .menu {
        margin: 0 15px 0 0;
    }

    .headNav .menu li {
        margin: 0 15px 0 0;
    }

    .headNav .menu li a {
        font-size: 10px;
        letter-spacing: 0px;
    }

    .controleNav img {
        height: 15px;
        width: 15px;
    }

    /*MAIN MENU*/
    .mainNav .col-sm-12 {
        padding: 0;
    }

    .mainMenu {
        align-items: flex-start;
        justify-content: flex-start;
        padding: 30px 15px;
    }

    .mainMenu .closeNav {
        position: absolute;
        top: 30px;
        right: 30px;
    }

    .mainMenu .socialLinks {
        position: absolute;
        right: 30px;
        bottom: 30px;
    }

    .mainMenu .logo {
        margin: 0 0 40px 15px;
        width: 130px;
        height: 48px;
    }

    .mainNav .menu {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: calc(100vh - 230px);
        overflow: auto;
    }

    .mainNav .menu::-webkit-scrollbar {
        width: 3px;
        height: 3px;
    }

    .mainNav .menus::-webkit-scrollbar-button {
        width: 34px;
        height: 34px;
    }

    .mainNav .menu::-webkit-scrollbar-thumb {
        background: #f2be10;
    }

    .mainNav .menu::-webkit-scrollbar-thumb:hover {
        background: #f2be10;
    }

    .mainNav .menu::-webkit-scrollbar-thumb:active {
        background: #f2be10;
    }

    .mainNav .menu::-webkit-scrollbar-track {
        background: #1B0332;
    }

    .mainNav .menu::-webkit-scrollbar-track:hover {
        background: #1B0332;
    }

    .mainNav .menu::-webkit-scrollbar-track:active {
        background: #1B0332;
    }

    .mainNav .menu::-webkit-scrollbar-corner {
        background: transparent;
    }

    .mainNav .menu li {
        width: 100%;
        padding: 0;
        margin: 0 0 30px 0;
    }

    .mainNav .menu li:nth-last-child(-n+2) {
        margin: 0 0 30px 0;
    }

    .mainNav .menu li:last-child {
        margin: 0;
    }

    .mainNav .menu li a {
        font-size: 11px;
        min-height: auto;
    }

    .mainNav .menu li .sub-menu {
        margin: 15px 0 0 0;
    }

    .mainNav .menu li .sub-menu li {
        margin: 0 0 8px 0;
    }

    .mainNav .menu li .sub-menu li a {
        font-size: 12px;
        letter-spacing: 0px;
    }

    /*CONTACT FORM*/
    .contactLineContent {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .contactLineContent .rightPart {
        margin: 15px 0 0 0;
    }

    .contactLineContent .rightPart .socialLinks {
        display: none !important;
    }

    /*ASSOCIATES*/
    .associatesLine {
        padding: 30px 0;
    }

    .associatesContainer {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .singleAssociate {
        width: 100%;
        margin: 0 0 30px 0;
    }

    .singleAssociate:last-child {
        margin: 0;
    }

    .singleAssociate img {
        width: 75px;
        margin: 0 0 10px 0;
    }

    .singleAssociate .presentation p {
        margin: 0;
    }

    /*FOOTER*/
    footer {
        padding: 50px 0 30px;
    }

    .footerInfos p {
        font-size: 14px;
    }

    footer .titleFoot {
        font-size: 13px !important;
        margin: 0 0 10px 0;
    }

    .footerInfos {
        margin: 0 0 30px 0;
    }

    .footerNav .menu li {
        margin: 0 0 10px 0;
    }

    .footerNav .menu li a {
        font-size: 12px;
        letter-spacing: 1px;
    }

    .legalPart {
        margin: 30px 0 0 0;
    }

    .legalPart .menu {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .legalPart .menu li {
        margin: 0 0 10px 0;
    }

    .legalPart .menu li a {
        font-size: 12px;
        letter-spacing: 1px:
    }

    /* HOME HEABDAND */
    .headband {
        height: 60vh;
        min-height: 460px;
    }

    .headbandContent .logo {
        width: 120px;
        height: 37px;
    }

    .headbandContent h1 {
        font-size: 11px;
        letter-spacing: 2px;
    }

    .headband .LinkToBlog {
        right: 20px;
        bottom: 20px;
        font-size: 12px;
        padding: 10px 15px;
    }

    .headband .discoverLink {
        bottom: 30px;
    }

    /* CONTENT LINES */
    .headTitle {
        padding: 130px 0 100px;
    }

    .titleLine {
        padding-right: 0px;
    }

    .supTitleLine {
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        margin: 0 0 25px 0;
    }

    .supTitleLine .supTitle {
        margin: 0 0 10px 0;
    }

    .supTitleLine .divider {
        display: none;
    }

    .supTitleLine .smallLink {
        margin: 0 0 0 25px;
    }

    .introductionLine {
        margin-bottom: 30px;
    }

    .accordeonsContainer,
    .linksLine {
        margin-top: 30px;
    }

    .conclusionLine {
        margin-top: 30px;
    }

    .conclusionLine p {
        font-size: 95%;
        color: #380665;
    }

    .accordeonsContainer .row:first-child {
        margin-bottom: 30px;
    }

    .accordeonsLine h3 {
        margin: 0 0 10px 0;
    }

    .collapseContent .singleCollapse {
        margin: 0 0 10px 0;
    }

    .collapseContent .singleCollapse .card-header.collapsed:hover h4,
    .collapseContent .singleCollapse .card-header h4 {
        font-size: 14px;
        line-height: 1.2;
    }

    .collapseContent .singleCollapse .card-header img {
        max-height: 22px;
        max-width: 22px;
    }

    .collapseContent .singleCollapse .card-header:after {
        width: 22px;
        height: 22px;
        background-size: 20px;
        top: calc(50% - 11px);
    }

    .singleNumber .number {
        font-size: 26px;
        margin: 0 0 5px;
    }

    .singleNumber .number sup {
        top: 5px;
        right: -15px;
    }

    .contactContent {
        min-height: 530px;
        flex-direction: column;
    }

    .contactContent .contactInfos {
        width: 100%;
        padding: 30px;
    }

    .contactContent .contactMap {
        width: 100%;
    }

    .visualLineContainer .image .videoLauncher button {
        width: 60px;
        height: 60px;
        background-size: 20px;
        background-position: 23px center;
    }

    .visualLineContainer .content {
        padding: 30px;
    }

    .modal-dialog {
        max-width: 95%;
        width: 700px;
        margin: 2.5%;
    }

    .modal-dialog .modal-content .closeModal {
        right: -5px;
    }

    .singleMemberCardContainer:nth-last-child(-n+3) .singleMemberCard {
        margin: 0 0 15px 0;
    }

    .singleMemberCardContainer:last-child .singleMemberCard {
        margin: 0;
    }

    .singleMemberCard {
        display: flex;
        align-items: center;
    }

    .singleMemberCard .image {
        display: block;
        width: 130px;
        padding-top: 130px;
        margin: 0 25px 0 0;
    }

    .singleMemberCard .image .hover svg,
    .singleStudyCard .image .hover img {
        margin: 0;
    }

    .singleStudyCard .image .hover .uppTitle {
        margin: 20px 0 0;
    }

    .singleMemberCard .image .hover .uppTitle {
        display: none;
    }

    .singleMemberCard p {
        text-align: left;
    }

    .singleBigCard {
        padding-top: 110%;
    }

    .singleBoxCardContainer:nth-last-child(-n+3) .singleboxCard,
    .singleImage,
    .singleLogoCardContainer:nth-last-child(-n+3) .singleLogoCard,
    .singleStudyCard,
    .singleOfferCard,
    .singlePostCardContainer:nth-last-child(-n+3) .singlePostCard,
    .singleReferenceCardContainer:nth-last-child(-n+3) .singleReferenceCard,
    .singleStudyCardContainer:nth-last-child(-n+3) .singleStudyCard,
    .singleOfferCardContainer:nth-last-child(-n+3) .singleOfferCard,
    .smallCardContainer:nth-last-child(-n+3) .singleSmallCard,
    .singleVerticalCardContainer:nth-last-child(-n+2) .singleVerticalCard,
    .singleHorizontalCard,
    .singleHorizontalCardContainer:nth-last-child(-n+2) .singleHorizontalCard {
        margin: 0 0 15px 0;
    }

    .singleBoxCardContainer:last-child .singleboxCard,
    .singleImage:last-child,
    .singleLogoCardContainer:last-child .singleLogoCard,
    .singlePostCardContainer:last-child .singlePostCard,
    .singleReferenceCardContainer:last-child .singleReferenceCard,
    .singleStudyCardContainer:last-child .singleStudyCard,
    .singleOfferCardContainer:last-child .singleOfferCard,
    .smallCardContainer:last-child .singleSmallCard,
    .singleVerticalCardContainer:last-child .singleVerticalCard {
        margin: 0;
    }

    .allPostsLink {
        margin-top: 30px;
    }

        .referencesSlider .slick-arrow {
        display: none !important;
    }

    
    /* REF & ETUDES */
    .archiveIntroduction {
        position: relative;
        margin: 0 0 30px 0;
        padding: 0 0 30px 0;
    }

    .archiveIntroduction p {
        font-size: 15px;
    }

    .categoriesList li {
        margin: 0 10px 10px;
    }

    .categoriesList li a {
        font-size: 12px;
    }

    /* BLOG */
    .headbandPostBlock {
        height: auto;
        max-height: 100%;
        padding-top: 120px;
    }

    .headbandPostBlock .content h1 {
        font-size: 20px;
    }

    .headbandPostBlock .categoryList {
        padding: 8px;
        font-size: 12px;
    }

    .headbandPostBlock .categoryList a {
        font-size: 12px;
    }

    .postContent h2 {
        font-size: 20px;
    }

    .postContent h3 {
        font-size: 18px;
    }

    .postContent h4,
    .postContent h5,
    .postContent h6 {
        font-size: 16px;
    }

    .postContent blockquote,
    .postContent .wp-block-gallery,
    .postContent .wp-block-file,
    .postContent .wp-block-embed__wrapper {
        margin: 30px 0;
    }

    .postContent blockquote {
        padding: 20px;
    }

    .postContent blockquote p {
        font-size: 16px;
    }

    .postContent blockquote cite {
        font-size: 14px;
    }

    .postContent {
        margin: 0 0 30px 0;
    }

    .navPosts {
        padding: 15px;
        margin: 15px 0 0;
    }

    .navPosts .third .nav-posts span strong {
        display: none;
    }

    /* SIDEBAR */
    .widget_search {
        padding: 0px;
        border: none;
    }

    .widget {
        margin: 0 0 15px 0;
    }

    .ctf-tweets,
    .widgetNewsForm,
    .widget_recent_entries ul,
    .widget_categories ul {
        padding: 15px;
    }

    .widget .widgetContainer h3 {
        font-size: 16px;
        padding: 10px 15px;
    }

    .widgetNewsForm .widgettitle {
        font-size: 16px;
        line-height: 22px;
        margin: 0 0 15px 0;
    }
}

/* Small devices (landscape phones) */
@media only screen and (min-width: 320px) and (max-width: 820px) and (min-device-aspect-ratio: 1/1) and (orientation: landscape) {

    /* ALERTE LANDSCAPE */
    .alerteLandscape {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background-color: #380665;
        z-index: 100002;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -ms-grid-row-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .alerteLandscape img {
        display: inline-block;
        margin: 30px 0 20px;
        width: 50px;
        height: 50px;
    }

    .alerteLandscape p {
        text-align: center;
        padding: 0;
        position: relative;
        width: 80%;
        margin: 0 10%;
        font-weight: 600;
        text-transform: uppercase;
        font-size: 10px;
        color: #FFF;
        letter-spacing: 1.2px;
        line-height: 15px;
    }

    .alerteLandscape p strong {
        font-weight: 700;
        color: #F2BE10;
    }
}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {}