@font-face {
    font-family: 'Gilroy-Light';
    font-style: normal;
    font-weight: normal;
    src: local('Gilroy-Light'), url('../fonts/gilroy/Gilroy-Light.woff') format('woff');
}

@font-face {
    font-family: 'Gilroy-Medium';
    font-style: normal;
    font-weight: normal;
    src: local('Gilroy-Medium'), url('../fonts/gilroy/Gilroy-Medium.woff') format('woff');
}

@font-face {
    font-family: 'Gilroy-SemiBold';
    font-style: normal;
    font-weight: normal;
    src: local('Gilroy-SemiBold'), url('../fonts/gilroy/Gilroy-SemiBold.ttf') format('truetype');
}

@font-face {
    font-family: 'Gilroy-Regular';
    font-style: normal;
    font-weight: normal;
    src: local('Gilroy-Regular'), url('../fonts/gilroy/Gilroy-Regular.woff') format('woff');
}

@font-face {
    font-family: 'Gilroy-Bold';
    font-style: normal;
    font-weight: normal;
    src: local('Gilroy-Bold'), url('../fonts/gilroy/Gilroy-Bold.woff') format('woff');
}


@font-face {
    font-family: 'Gilroy-ExtraBold';
    font-style: normal;
    font-weight: normal;
    src: local('Gilroy-ExtraBold'), url('../fonts/gilroy/Gilroy-ExtraBold.woff') format('woff');
}


@font-face {
    font-family: 'Gilroy-Heavy';
    font-style: normal;
    font-weight: normal;
    src: local('Gilroy-Heavy'), url('../fonts/gilroy/Gilroy-Heavy.woff') format('woff');
}



:root {
    --color-primary: #0000B4;
    --color-primary-hover: #0101aa;
    --color-secondary: #00A676;
    --color-yellow: #FFC014;
    --color-white: #ffffff;
    --color-black: #000000;
    --color-light-blue: #EEF5FF;
    --color-education: #61C4A7;
    --color-health: #5E67F6;
    --color-gender: #5E67F6;
    --color-fintech: #C34F28;
    --color-agriculture: #C34F28;
    --color-job: #00A8B0;
    --color-ai-consumer-tech: #FCC014;
}

body {
    font-family: "Gilroy-Regular", sans-serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
}

.container {
    max-width: 1140px;
}

a {
    text-decoration: none;
    color: var(--color-primary);
}

b,
strong {
    font-family: "Gilroy-Bold", sans-serif;
}

.bg-health {
    background-color: var(--color-health) !important;
    color: var(--color-white) !important;
}

.bg-agriculture {
    background-color: var(--color-agriculture) !important;
    color: var(--color-white) !important;
}

.bg-gender {
    background-color: var(--color-gender) !important;
    color: var(--color-white) !important;
}

.bg-ai,
.bg-education {
    background-color: var(--color-education) !important;
    color: var(--color-white) !important;
}

.bg-fintech {
    background-color: var(--color-fintech) !important;
    color: var(--color-white) !important;
}

.bg-yellow {
    background-color: var(--color-yellow) !important;
    color: var(--color-black) !important;
}

.gap-10 {
    gap: 10px;
}

.gap-15 {
    gap: 15px;
}

.gap-20 {
    gap: 20px;
}

.gap-30 {
    gap: 30px;
}

h1,
h2,
h3 {
    font-family: 'Gilroy-Bold', sans-serif;
}

#practices .more-link a,
.btn {
    padding: 12px 25px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    font-size: 18px !important;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.btn-sm {
    font-size: 16px !important;
    padding: 6px 20px;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}

#practices .more-link a,
.btn-primary {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

.btn-yellow {
    color: var(--color-black);
    background-color: var(--color-yellow);
    border-color: var(--color-yellow);
}

#practices .more-link a:hover,
.btn-yellow:hover,
.btn-primary:hover {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: var(--color-black);
}

.btn-secondary {
    color: var(--color-black);
    background-color: var(--color-white);
    border-color: var(--color-black);
}

.btn-secondary:hover {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: var(--color-black);
}

.btn-black {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: var(--color-black);
}

.btn-black:hover {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

.btn-white {
    color: var(--color-black);
    background-color: var(--color-white);
    border-color: var(--color-black);
}

.btn-white:hover {
    color: var(--color-white);
    background-color: var(--color-black);
    border-color: var(--color-white);
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary-hover);
}

img {
    max-width: 100%;
    height: auto;
}

a.site-logo img {
    height: 32px;
}

header nav.navbar {
    padding: 20px 0;
}

.blue-hero {
    background: var(--color-primary);
    color: var(--color-white);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

header nav .nav-item a {
    color: var(--color-black);
    padding: 10px 15px !important;
    font-size: 18px;
    letter-spacing: 1px;
    font-family: 'Gilroy-Medium', sans-serif;
}

.blue-hero nav .nav-item a {
    color: var(--color-white);
}

header nav .nav-item a.is-active {
    color: var(--color-primary) !important;
}

.blue-hero nav .nav-item a.is-active {
    color: var(--color-yellow) !important;
}

ul[data-block="contact_cta"] .nav-item a {
    background: var(--color-black);
    border: solid 2px var(--color-black);
    border-radius: 8px;
    padding: 12px 30px !important;
    font-size: 16px;
    color: var(--color-white);
}

ul[data-block="contact_cta"] .nav-item a:hover {
    background: var(--color-primary);
    border: solid 2px var(--color-primary);
    color: var(--color-white);
}




#hero {
    padding: 20px 0 0;
}

#block-yuxdesign-introhero h3 {
    font-size: 40px;
    font-family: 'Gilroy-Bold', sans-serif;
    font-weight: 800;
}

/*Rotate words*/
.rw-sentence .fixed-sentence {
    font-size: 56px;
    font-family: 'Gilroy-Bold', sans-serif;
    color: var(--color-yellow);
    padding-top: 100px;
}

.rw-sentence .rw-words {
        font-size: 86px;
    font-family: 'Gilroy-ExtraBold', sans-serif;
    line-height: 86px;
}

.rw-wrapper {
    position: relative;
}

.rw-words {
    display: block;
    position: relative;
}

.rw-words-1 span {
    position: absolute;
    width: 100%;
    opacity: 0;
    -webkit-animation: rotateWord 12s linear infinite 0s;
    -ms-animation: rotateWord 12s linear infinite 0s;
    animation: rotateWord 12s linear infinite 0s;
}

.rw-words-1 span.word-purple {
    color: #9747FF;
}

.rw-words-1 span.word-green {
    color: #00FFA3;
}

.rw-words-1 span.word-yellow {
    color: var(--color-yellow);
}

.rw-words-1 span.word-orange {
    color: #FF6600;
}

.rw-words-1 span:nth-child(2) {
    -webkit-animation-delay: 3s;
    -ms-animation-delay: 3s;
    animation-delay: 3s;
}

.rw-words-1 span:nth-child(3) {
    -webkit-animation-delay: 6s;
    -ms-animation-delay: 6s;
    animation-delay: 6s;
}

.rw-words-1 span:nth-child(4) {
    -webkit-animation-delay: 9s;
    -ms-animation-delay: 9s;
    animation-delay: 9s;
}

@-webkit-keyframes rotateWord {
    0% {
        opacity: 0;
    }

    5% {
        opacity: 0;
        -webkit-transform: translateY(-30px);
    }

    10% {
        opacity: 1;
        -webkit-transform: translateY(0px);
    }

    25% {
        opacity: 1;
        -webkit-transform: translateY(0px);
    }

    30% {
        opacity: 0;
        -webkit-transform: translateY(30px);
    }

    100% {
        opacity: 0;
    }
}

@-ms-keyframes rotateWord {
    0% {
        opacity: 0;
    }

    5% {
        opacity: 0;
        -ms-transform: translateY(-30px);
    }

    10% {
        opacity: 1;
        -ms-transform: translateY(0px);
    }

    25% {
        opacity: 1;
        -ms-transform: translateY(0px);
    }

    30% {
        opacity: 0;
        -ms-transform: translateY(30px);
    }

    100% {
        opacity: 0;
    }
}

@keyframes rotateWord {
    0% {
        opacity: 0;
    }

    5% {
        opacity: 0;
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }

    10% {
        opacity: 1;
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
    }

    25% {
        opacity: 1;
        -webkit-transform: translateY(0px);
        transform: translateY(0px);
    }

    30% {
        opacity: 0;
        -webkit-transform: translateY(30px);
        transform: translateY(30px);
    }

    100% {
        opacity: 0;
    }
}

#block-yuxdesign-views-block-focus-areas-block-focus-area h2,
.section-header h2 {
    font-size: 40px;
}

#block-yuxdesign-views-block-focus-areas-block-focus-area .view-header {
    font-size: 18px;
    margin-bottom: 40px;
}

.section-desc {
    max-width: 600px;
}

.section-desc h3 {
    font-size: 32px !important;
}

.section-desc p {
    font-size: 16px !important;
}

#hero .field--name-body img {
    max-height: 600px;
    width: auto;
    max-width: 100%;
    height: auto;
}

#hero .field--name-body p {
    margin-bottom: 0;
    font-size: 18px;
}

#what-we-do {
    padding: 100px 0;
}

#block-yuxdesign-whatwedointro {
    margin-bottom: 40px;
}

.one-what-we-do {
    position: relative;
    border-radius: 20px;
    transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    overflow: hidden;

}

.one-what-we-do .block-what-we-do {
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    transition: background-size 0.4s ease;
}

.one-what-we-do:hover .block-what-we-do {
    background-size: 110%;
}

.one-what-we-do::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.10) 20%, rgba(0, 0, 0, 0.80) 100%);
    opacity: 1;
    z-index: 2;
    transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
}

.one-what-we-do:hover::before {
    backdrop-filter: blur(2.5px);
}


.one-what-we-do .block-what-we-do div {
    position: relative;
    z-index: 9;
}

#what-we-do .one-what-we-do:hover .tags .item-list ul li {
    display: inline-block;
    background: rgba(255, 255, 255, 0.30);
    backdrop-filter: blur(5px);
}

.one-what-we-do:hover .tags .item-list ul li,
.one-what-we-do:hover .block-what-we-do h6,
.one-what-we-do:hover .block-what-we-do h2 {
    color: var(--color-white);
}

.one-what-we-do .field--name-body {
    padding: 15px 0;
    line-height: 20px;
}

.region.region-what-we-do-2-3 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 24px;
}

.region.region-what-we-do-2-3 .one-what-we-do:first-child {
    margin-top: 48px;
}

.region.region-what-we-do-2-3 .one-what-we-do:last-child {
    margin-bottom: 48px;
}

.intro-what-we-do {
    display: flex;
    gap: 50px;
    flex-wrap: wrap;
    justify-content: space-between;
}

.intro-what-we-do div {
    flex: 0 1 auto;
}

.intro-what-we-do p {
    max-width: 400px;
    margin-bottom: 0;
}

.block-what-we-do {
    position: relative;
    min-height: 550px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
    background-size: auto 100% !important;
    background-repeat: no-repeat !important;
    background-position: center bottom !important;
}

.block-what-we-do .body p {
    color: white;
    font-family: 'Gilroy-Medium', sans-serif;
    letter-spacing: 0.3px;
}

.block-what-we-do h2 a,
.block-what-we-do h2 {
    font-size: 30px;
    color: var(--color-black);
    font-family: "Gilroy-Light", sans-serif;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 1px;
}

.block-what-we-do h6 a,
.block-what-we-do h6 {
    font-size: 36px;
    color: var(--color-black);
    font-family: "Gilroy-Medium", sans-serif;
}

.tags .item-list ul li {
    display: inline-block;
    background: rgba(255, 255, 255, 0.30);
    backdrop-filter: blur(5px);
    padding: 6px 10px;
    margin: 5px;
    border-radius: 20px;
    font-size: 15px;
    font-family: "Gilroy-Light", sans-serif;
}

#what-we-do .tags .item-list ul li {
    display: none;
}

.tags .item-list ul li a {
    text-decoration: none;
    color: #ffffff;
    font-weight: bold;
    position: relative;
}

.tags .item-list ul li a::before {
    content: "#";
    margin-right: 5px;
}

#block-yuxdesign-annonce {
    margin-top: 60px;
    background: var(--color-primary);
    color: var(--color-white);
    border-radius: 20px;
    padding: 20px;
    text-align: center;
}

#block-yuxdesign-annonce2 {
    margin-top: 60px;
    background: #DAE6FB;
    color: var(--color-black);
    border-radius: 20px;
    padding: 20px;
    text-align: center;
}

#block-yuxdesign-annonce2 h6 a.btn {
    flex: 0 0 auto;
}

#block-yuxdesign-annonce2 h6,
#block-yuxdesign-annonce h6 {
    display: flex;
    align-items: center;
    gap: 30px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    font-size: 20px;
    justify-content: center;
    margin-bottom: 0;
    text-align: left;
    line-height: 28px;
}

#block-yuxdesign-annonce2 h6 img,
#block-yuxdesign-annonce h6 img {
    height: 48px;
}

#block-yuxdesign-annonce h6 a {
    flex: 0 0 auto;
}

.view-id-partenaires .view-content {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    justify-content: center;
}

.view-id-partenaires .view-content .views-field-field-logo img {
    width: auto;
    max-width: 120px;
    max-height: 60px;
    min-height: 56px;
    margin: 10px;
    /*filter: sepia(1) saturate(10000%) hue-rotate(225deg);
    -webkit-filter: sepia(1) saturate(10000%) hue-rotate(225deg);*/
}

.view-id-partenaires .view-content .views-field-field-logo img:hover {
    /*filter: sepia(0) saturate(100%) hue-rotate(0deg);
    -webkit-filter: sepia(0) saturate(100%) hue-rotate(0deg);*/
}

#practices {
    background: var(--color-light-blue);
    padding: 100px 0;
}

#practices .view-header {
    text-align: center;
    max-width: 680px;
    margin: auto;
    margin-bottom: 60px;
}

#practices .more-link {
    display: flex;
    justify-content: flex-end;
    margin-top: 25px;
}

#practices .view-content {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: center;
}

#practices .nav-tabs {
    gap: 15px;
    border-bottom: 0 !important;
    justify-content: center;
}

#practices .nav-tabs .nav-link {
    border-radius: 12px;
    border: 2px solid #F3F8FF;
    background: #F3F8FF;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
    color: var(--color-black);
    font-size: 18px;
    font-family: 'Gilroy-Medium', sans-serif;
    transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
}

#practices .nav-tabs .nav-link span {
    opacity: 0.5;
}

#practices .nav-tabs .nav-link img {
    filter: grayscale(100%) brightness(0%) invert(0);
    transition: filter 0.3s ease;
    -webkit-filter: grayscale(100%) brightness(0%) invert(0);
    -webkit-transition: filter 0.3s ease;
    -moz-transition: filter 0.3s ease;
    -ms-transition: filter 0.3s ease;
    -o-transition: filter 0.3s ease;
    opacity: 0.5;
}

#practices .nav-tabs .nav-link.active span,
#practices .nav-tabs .nav-link:hover span {
    opacity: 1;
}

#practices .nav-tabs .nav-link.active img,
#practices .nav-tabs .nav-link:hover img {
    filter: none;
    -webkit-filter: none;
    opacity: 1;
}

#practices .nav-tabs .nav-link.tab-agriculture.active,
#practices .nav-tabs .nav-link.tab-agriculture:hover {
    color: var(--color-agriculture);
    border-color: var(--color-agriculture);
}

#practices .nav-tabs .nav-link.tab-health.active,
#practices .nav-tabs .nav-link.tab-health:hover {
    color: var(--color-health);
    border-color: var(--color-health);
}

#practices .nav-tabs .nav-link.tab-fintech.active,
#practices .nav-tabs .nav-link.tab-fintech:hover {
    color: var(--color-fintech);
    border-color: var(--color-fintech);
}

#practices .nav-tabs .nav-link.tab-education.active,
#practices .nav-tabs .nav-link.tab-education:hover {
    color: var(--color-education);
    border-color: var(--color-education);
}

#practices .nav-tabs .nav-link.tab-gender.active,
#practices .nav-tabs .nav-link.tab-gender:hover {
    color: var(--color-gender);
    border-color: var(--color-gender);
}

#practices .tab-pane {
    padding-top: 15px;
}

#practices .tab-pane .view-content {
    display: initial;
}

#practices .tab-pane .views-field-title a {
    font-family: 'Gilroy-SemiBold', sans-serif;
    line-height: 22px;
    color: var(--color-black);
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}


#practices .tab-pane .views-view-responsive-grid__item-inner .views-field-field-image {
    position: relative;
    margin-bottom: 15px;
    border-radius: 12px;
    overflow: hidden;
    display: inline-block;
}

#practices .tab-pane .views-view-responsive-grid__item-inner .views-field-field-image img {
    transition: transform 0.5s ease;
    -webkit-transition: transform 0.5s ease;
    -moz-transition: transform 0.5s ease;
    -ms-transition: transform 0.5s ease;
    -o-transition: transform 0.5s ease;
}

#practices .tab-pane .views-view-responsive-grid__item-inner:hover .views-field-field-image img {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
}

#practices .tab-pane .views-view-responsive-grid__item-inner:hover a {
    color: var(--color-primary);
}

#intro-about-us h3,
#footprint h3,
.view-header h3 {
    font-family: Gilroy-Bold;
    font-size: 40px;
    font-style: normal;
}

.view-header p {
    font-family: 'Gilroy-Regular', sans-serif;
}

#practices .one-practice {
    display: flex;
    align-items: center;
    gap: 20px;
    font-size: 26px;
    font-family: 'Gilroy-Medium', sans-serif;
    padding: 20px 30px;
    border-radius: 12px;
    background: var(--color-white);
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
    transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
}

#practices .one-practice .nom a {
    color: var(--color-black);
}

.one-practice:hover {
    background-color: var(--bg-color) !important;
    color: var(--color-white);
}

.one-practice:hover a {
    color: var(--color-white) !important;
}

.one-practice:hover .icone img {
    filter: invert(1);
}


#footprint {
    padding: 100px 0;
}

.footprint ul {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
    padding-left: 0;
}

.footprint ul li {
    list-style: none;
}

.footprint ul li img {
    max-height: 48px;
}

.footprint .field--name-field-image {
    padding: 0 40px;
}

.partenaires .view-header {
    font-family: 'Gilroy-Medium', sans-serif;
    color: var(--color-black);
    margin-bottom: 20px;
    font-size: 20px;
}

#works {
    padding: 100px 0;
}

#works .view-header {
    padding: 20px 40px;
    text-align: center;
}

.intro_what_we_do h5,
.intro-what-we-do h6 {
    font-family: 'Gilroy-SemiBold', sans-serif;
}

#block-yuxdesign-joboffersintro h2,
#block-yuxdesign-whatwedointro h3,
#testimonials .view-header h2,
#edit-titre-intro h3,
#block-yuxdesign-discoveryux h2,
#works .view-header h2 {
    font-size: 40px;
    font-family: 'Gilroy-Bold', sans-serif;
    font-weight: 800;
}

.job-offer-body .region,
#contenu-page-article .region {
    padding: 0 !important;
}

.article-header-block {
    background: var(--color-primary);
    color: var(--color-white);
    padding: 80px 0;
}

.article-header-block h1.article-title {
    margin-bottom: 30px;
}

.article-tags .field--name-field-tags {
    display: flex;
    flex-flow: wrap;
    gap: 10px;
}

#contenu-page-article .article-body-block .author-info img {
    width: 60px;
    border-radius: 100px !important;
    border: 1.5px solid var(--color-yellow);
    -webkit-border-radius: 100px !important;
    -moz-border-radius: 100px !important;
    -ms-border-radius: 100px !important;
    -o-border-radius: 100px !important;
}

.article-body-block .author-info .author-nane {
    color: var(--color-primary);
    font-family: 'Gilroy-Bold', sans-serif;
    font-size: 18px;
}

.article-tags .field--name-field-tags .field__item {}

.article-tags .field--name-field-tags .field__item a {
    border-radius: 3px;
    background: rgba(255, 255, 255, 0.21);
    position: relative;
    font-family: 'Gilroy-Light', sans-serif;
    font-size: 14px;
    display: flex;
    padding: 5px 10px 5px 18px;
    align-items: flex-start;
    color: var(--color-white);
    text-decoration: none;
}

.article-tags .field--name-field-tags .field__item a::before {
    content: "#";
    position: absolute;
    left: 10px;
}

.article-cover .field--type-image {
    position: relative;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    margin-bottom: 30px;
    overflow: hidden;
}

#contenu-page-article .article-body-block img {
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
}

.article-cover .field--type-image img {}

.view-display-id-page_work .un-case-study,
#research-projects .un-article,
.view-display-id-block_yuxies_journeys .un-article,
.view-display-id-page_publications .un-article {
    margin-bottom: 20px;
}

#research-projects .views-field-field-image,
.view-display-id-page_work .un-case-study .views-field-field-image,
.view-display-id-block_yuxies_journeys .un-article .views-field-field-image,
.view-display-id-page_publications .un-article .views-field-field-image {
    border-radius: 6px;
    position: relative;
    margin-bottom: 15px;
    overflow: hidden;
}

.view-display-id-page_work .un-case-study .views-field-field-image img,
.view-display-id-block_yuxies_journeys .un-article .views-field-field-image img,
#research-projects .un-article .views-field-field-image img,
.view-display-id-page_publications .un-article .views-field-field-image img {
    transition: transform 0.5s ease;
    -webkit-transition: transform 0.5s ease;
    -moz-transition: transform 0.5s ease;
    -ms-transition: transform 0.5s ease;
    -o-transition: transform 0.5s ease;
}

.view-display-id-page_work .un-case-study:hover .views-field-field-image img,
.view-display-id-block_yuxies_journeys .un-article:hover .views-field-field-image img,
#research-projects .un-article:hover .views-field-field-image img,
.view-display-id-page_publications .un-article:hover .views-field-field-image img {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
}

.view-display-id-page_work .un-case-study .views-field-title,
.view-display-id-block_yuxies_journeys .un-article .views-field-title,
#research-projects .un-article .views-field-title,
.view-display-id-page_publications .un-article .views-field-title {
    position: relative;
    margin-bottom: 10px;
}

.view-display-id-page_work .un-case-study .views-field-title a,
.view-display-id-block_yuxies_journeys .un-article .views-field-title a,
#research-projects .un-article .views-field-title a,
.view-display-id-page_publications .un-article .views-field-title a {
    color: var(--color-black);
    font-size: 17px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    line-height: 22px;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.view-display-id-page_work .un-case-study:hover .views-field-title a,
.view-display-id-block_yuxies_journeys .un-article:hover .views-field-title a,
#research-projects .un-article:hover .views-field-title a,
.view-display-id-page_publications .un-article:hover .views-field-title a {
    color: var(--color-primary);
}

.view-display-id-page_publications .un-article .views-field-uid,
#research-projects .un-article .views-field-uid,
.view-display-id-block_yuxies_journeys .un-article .views-field-uid {
    color: var(--color-primary);
    font-family: 'Gilroy-SemiBold', sans-serif;
}

.view-display-id-block_yuxies_journeys .un-article .dot,
.view-display-id-page_publications .un-article .dot {
    position: relative;
    width: 7px;
    height: 7px;
    background: var(--color-primary);
    border-radius: 5px;
}

.view-display-id-block_yuxies_journeys .un-article .user-date,
.view-display-id-page_publications .un-article .user-date {
    display: flex;
    align-items: center;
    gap: 10px;
}

.view-display-id-page_publications .un-article .views-field-created {}

.view-filters #edit-field-categorie-article-target-id ul {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    align-items: center;
    list-style: none;
    padding: 0;
}

.view-filters #edit-field-categorie-article-target-id ul li a {
    display: flex;
    padding: 8px 15px;
    align-items: center;
    gap: 10px;
    border-radius: 6px;
    border: 2px solid #EEF1F5;
    background: #EEF1F5;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
    color: #A7ABB2;
    font-family: 'Gilroy-Medium', sans-serif;
    font-size: 16px;
    transition: all 0.4s ease-in;
    -webkit-transition: all 0.4s ease-in;
    -moz-transition: all 0.4s ease-in;
    -ms-transition: all 0.4s ease-in;
    -o-transition: all 0.4s ease-in;
}

.view-filters #edit-field-categorie-article-target-id ul li a:hover,
.view-filters #edit-field-categorie-article-target-id ul li a.bef-link--selected {
    background: var(--color-primary);
    color: var(--color-white);
}

.path-publications .page-title {
    background: var(--color-yellow);
    color: var(--color-black);
    padding: 120px 0;
    margin-bottom: 30px;
}

.view-display-id-page_job_offer .views-view-responsive-grid__item {
    border: solid 1px #fafafa;
    border-radius: 12px;
    box-shadow: 0 15px 40px #0707070d;
    background: rgba(255, 255, 255, 0.40);
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}

.path-job-offer .one-job {
    padding: 20px;
    justify-content: space-between;
    gap: 15px;
}

#block-yuxdesign-views-block-job-offer-block-job-about .one-job {
    padding: 15px;
    background: #fff;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
}

.path-job-offer .one-job a {
    margin-bottom: 10px;
    display: block;
    font-size: 18px;
    line-height: 22px;
    color: var(--color-black);
    font-family: Gilroy-Bold, sans-serif;
    text-decoration: none;
    transition: 0.4s ease-in-out;
}

#block-yuxdesign-views-block-job-offer-block-job-about .one-job a {
    color: #0000B4;
    display: inline-block;
    padding: 8px 25px;
    border: solid 1px #0000B4;
    border-radius: 4px;
    margin-bottom: 10px;
    text-transform: uppercase;
    font-family: 'Gilroy-Medium', sans-serif;
    text-decoration: none;
    background-color: #ffffff;
}

#block-yuxdesign-views-block-job-offer-block-job-about .views-field-field-location {
    padding-left: 22px;
    position: relative;
}

#block-yuxdesign-views-block-job-offer-block-job-about .views-field-field-location::before {
    content: "";
    position: absolute;
    width: 18px;
    height: 16px;
    background: url(../img/localisation-blue.svg) no-repeat center center;
    background-size: auto 100%;
    left: 0;
    top: 2px;
}

#block-yuxdesign-views-block-job-offer-block-job-about .one-job:hover a,
.path-job-offer .one-job:hover a {
    color: var(--color-primary);
}

.page-node-type-page .page-title,
.path-job-offer .page-title,
.path-work .page-title {
    background: var(--color-primary);
    color: var(--color-white);
    padding: 120px 0;
    margin-bottom: 30px;
}

.path-webform .page-title {
    background: var(--color-job);
    color: var(--color-white);
    padding: 120px 0;
    margin-bottom: 30px;
}

.path-webform .region.region-content {
    max-width: 800px;
    margin: auto;
}

.article-categories .cat {
    display: flex;
    padding: 12px 20px;
    align-items: center;
    gap: 10px;
    border-radius: 12px;
    border: 2px solid #FFF;
    background: #FFF;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
    color: var(--color-black);
    font-family: 'Gilroy-Medium', sans-serif;
}

.article-categories .cat img {
    filter: grayscale(100%) brightness(0%) invert(0);
    -webkit-filter: grayscale(100%) brightness(0%) invert(0);
}

.case-study-meta .field__label {
    font-family: 'Gilroy-SemiBold', sans-serif;
    font-size: 18px;
}

.case-study-meta .field__item {
    font-family: 'Gilroy-Light', sans-serif;
}

#job-hero {
    background: var(--color-primary);
    color: var(--color-white);
    padding: 100px 0 80px;
    margin-bottom: 20px;
}

.job-hero .job-infos {
    gap: 50px;
    flex-wrap: wrap;
}

.job-hero .job-infos .field__label {
    font-family: 'Gilroy-SemiBold', sans-serif;
}

.job-hero .job-infos .field__item {
    font-family: 'Gilroy-Light', sans-serif;
}

.job-hero h2 {
    margin-bottom: 15px;
}

#yux_team {
    background: #F6F8FC;
    padding: 100px 0;
}

#yux_team .views-view-responsive-grid__item {
    border-radius: 16px;
    background: #FFF;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
}

#yux_team .un-membre {
    display: flex;
    padding: 15px 20px 25px 20px;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

#yux_team .un-membre .views-field-field-avatar {
    margin-bottom: 10px;
}

#yux_team .un-membre .views-field-field-avatar img {
    height: 80px;
    width: auto;
}

#yux_team .un-membre .views-field-title {
    font-family: 'Gilroy-SemiBold', sans-serif;
    color: var(--color-black);
    font-size: 20px;
}

#yux_team .un-membre .views-field-field-pays {
    font-family: 'Gilroy-Light', sans-serif;
    color: #888;
}

#yux_team .un-membre .views-field-field-poste {
    font-family: 'Gilroy-Regular', sans-serif;
    color: var(--color-primary);
}

#what_work_yux {
    padding: 100px 0 50px;
}

#yux_team .section-header p,
#what_work_yux .section-header p {
    max-width: 680px;
    margin: auto;
}

#what_work_yux .custom-card {
    display: flex;
    padding: 25px;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    align-self: stretch;
    background: var(--color-primary);
    color: var(--color-white);
    border-radius: 12px;
    height: 100%;
}

#what_work_yux .custom-card .emoji {
    font-size: 26px;
}

#what_work_yux .custom-card h5 {
    font-size: 18px;
    font-family: 'Gilroy-SemiBold', sans-serif;
}

#what_work_yux .custom-card p {
    font-family: 'Gilroy-Light', sans-serif;
}

#yuxies_journey {
    padding: 40px 0;
}

/********/
.one-project {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

.one-project img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
}

/* Par défaut, afficher la structure */
.one-project .structure {
    position: absolute;
    bottom: 10px;
    left: 10px;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 5px;
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.one-project .logo img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.one-project .nom-structure {
    font-size: 16px;
    font-weight: bold;
}

/* Caption caché par défaut */
.one-project .caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    color: white;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    align-items: center;
    opacity: 0;
    transform: translateY(100%);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.one-project .caption .title a {
    color: #fff;
    font-size: 24px;
    font-family: 'Gilroy-SemiBold', sans-serif;
}

/* Au survol, afficher caption et cacher structure */
.one-project:hover .caption {
    opacity: 1;
    transform: translateY(0);
}

.one-project:hover .structure {
    opacity: 0;
    transform: translateY(-20px);
}

/* Styles supplémentaires pour un look plus moderne */
.one-project .title {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
}

.one-project .tags ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
}

#hero_about_us {
    background: #ffffff;
    padding: 100px 0;
}

#hero_about_us .field--name-field-image {
    text-align: center;
}

#our_story {
    padding: 100px 0;
}

#our_story .view-header {
    margin-bottom: 50px;
}

#our_story .view-id-our_story .one-story {
    padding-left: 15px;
    position: relative;
    border-left: solid 4px;
    border-radius: 0;
    border-color: var(--color-yellow);
}

#our_story .view-id-our_story .views-field-field-avatar {
    margin-bottom: 5px;
}

#our_story .view-id-our_story .views-field-field-avatar img {
    max-height: 40px;
    width: auto;
    max-width: 200px;
    margin-bottom: 10px;
}

#our_story .view-id-our_story .views-field-body {
    font-size: 14px;
    line-height: 20px;
    color: #666;
}

#our_story .view-id-our_story .views-field-title {
    font-size: 20px;
    display: inline-block;
    border-radius: 4px;
    font-family: 'Gilroy-Bold', sans-serif;
}

#services {
    position: relative;
    padding: 100px 0;
    background: var(--color-light-blue);
}

.path-frontpage #services::before {
    position: absolute;
    content: '';
    height: 0px;
    width: 100%;
    background: transparent;
    top: 0;
}

.path-frontpage #services {
    padding: 100px 0;
}

#services::before {
    position: absolute;
    content: '';
    height: 300px;
    width: 100%;
    background: var(--color-primary);
    top: 0;
}

#block-yuxdesign-servicesintro p {
    font-size: 20px;
}

#block-yuxdesign-views-block-services-block-services h2 {
    font-size: 40px;
}

#block-yuxdesign-views-block-services-block-services .view-header {
    font-size: 18px;
    margin-bottom: 50px;
    font-family: 'Gilroy-Medium', sans-serif;
    color: var(--color-primary) !important;
}
.view-display-id-block_services  .view-header {
    color: var(--color-white) !important;
}

#block-yuxdesign-joboffersintro h2,
#footprint h3,
#block-yuxdesign-views-block-services-block-services h2 {
    background: #0000b4;
    display: inline-block;
    padding: 0 10px;
    color: #fff;
}

.our_story .view-header h5,
#footprint h5 {
    font-family: 'Gilroy-Medium', sans-serif;
}

#block-yuxdesign-views-block-services-block-services .views-view-responsive-grid__item {
    background: #fff;
    border-radius: 12px;
    padding: 30px 25px;
    height: 100%;
    box-shadow: 0 5px 25px #0000000f;
    position: relative;
    border: solid 2px transparent;
    transition: all 0.3s ease;
}

#block-yuxdesign-views-block-services-block-services .views-view-responsive-grid__item:hover {
    border-color: var(--color-primary);
    box-shadow: 0 5px 25px #0000001f;
}

#block-yuxdesign-views-block-services-block-services .views-view-responsive-grid__item .views-field-body {
    color: #777;
    line-height: 2;
}

#block-yuxdesign-views-block-services-block-services h5 {
    font-size: 20px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    margin-bottom: 15px;
    color: var(--color-primary);
    font-style: italic;
}

.page-node-type-page .page-title {
    margin-bottom: 0 !important;
}


#hero_kitala {
    padding: 60px 0 100px 0;
    background: var(--color-primary);
    color: var(--color-white);
    position: relative;
}

#hero_kitala img {
    height: 50px;
    width: auto;
    margin-bottom: 30px;
}

#hero_kitala h4 {
    font-family: 'Gilroy-Light', sans-serif;
    font-size: 24px;
    margin-bottom: 20px;
    line-height: 32px;
}

#datasets {
    padding: 80px 0;
}

#datasets h2 {
    font-size: 40px;
    font-family: 'Gilroy-Bold', sans-serif;
    margin-bottom: 20px;
    text-align: center;
}

#datasets .card {
    box-shadow: 0 0 40px #04080d1c;
    border-radius: 8px;
    border: none;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    height: 100%;
}

#datasets .card-body {
    position: relative;
    padding: 15px 0px;
}

#datasets .card-body img {
    height: 32px;
    width: auto;
    margin-right: 10px;
}

#datasets .card h4 {
    font-size: 18px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    margin-bottom: 15px;
    color: var(--color-black);
}
#datasets .card p.strong {
    font-family: 'Gilroy-SemiBold', sans-serif;
    color: #545454 !important;
}

#research-projects {
    padding: 80px 0;
    background: var(--color-light-blue);
}

#block-yuxdesign-views-block-publication-block-page-kitala h2 {
    margin-bottom: 20px;
    font-size: 40px;
}

#papers_links {
    padding: 100px 0;
}

#papers_links .field--name-body a {
    text-decoration: underline;
    font-family: 'Gilroy-Semibold', sans-serif;
    font-size: 18px;
}

#papers_links .field--name-body p em {
    color: #777;
}

/**************************/
/*************************/
#focus-area-accordion {
    padding: 100px 0;
}

.accordion-item {
    border: none;
    margin-bottom: 1rem;
    border-radius: 0.5rem;
    overflow: hidden;
}

.accordion-header {
    margin-bottom: 0;
}

.custom-accordion-button {
    background-color: transparent;
    border: none;
    font-size: 26px;
    font-weight: bold;
    padding: 20px;
    padding-bottom: 0;
    width: 100%;
    text-align: left;
    color: #2522ef;
    border-radius: 8px 8px 0 0;
    position: relative;
    box-shadow: none !important;
    display: flex;
    align-items: center;
    -webkit-border-radius: 8px 8px 0 0;
    -moz-border-radius: 8px 8px 0 0;
    -ms-border-radius: 8px 8px 0 0;
    -o-border-radius: 8px 8px 0 0;
}

.custom-accordion-button:not(.collapsed) {
    background-color: transparent;
    color: #eb1717;
}

.custom-accordion-button:focus {
    box-shadow: none;
}

.custom-accordion-button::after {
    content: "";
    background: url('../img/circle-plus.svg') no-repeat center center;
    background-size: 98% 98%;
    filter: none;
    transform: rotate(0deg);
    transition: transform 0.2s ease-in-out;
    position: absolute;
    right: 20px;
    width: 32px;
    height: 32px;
    border-radius: 32px;
    position: absolute;
    bottom: 15px;
}

.custom-accordion-button:not(.collapsed)::after {
    background: url('../img/circle-minus.svg') no-repeat center center;
    background-size: 98% 98%;
    transform: rotate(0deg);

}

.custom-accordion-item-financial .custom-accordion-button::after,
.custom-accordion-item-ai .custom-accordion-button::after {
    left: 20px;
    right: auto;
}

.accordion-title-icon {
    width: 36px;
    height: 36px;
}

img.img-category {
    width: auto;
    height: 170px;
}

.accordion-title {
    font-size: 22px;
    font-family: 'Gilroy-SemiBold', sans-serif;
}

.custom-accordion-item-financial {
    border: solid 2px var(--color-fintech);
}

.custom-accordion-item-education {
    border: solid 2px var(--color-education);
}

.custom-accordion-item-health {
    border: solid 2px var(--color-health);
}

.custom-accordion-item-ai {
    border: solid 2px var(--color-yellow);
}

#focus-area-accordion .accordion-body .un-article {
    margin-bottom: 20px;
}

#focus-area-accordion .accordion-body .un-article .views-field-field-image {
    border-radius: 6px;
    position: relative;
    margin-bottom: 15px;
    overflow: hidden;
}

#focus-area-accordion .accordion-body .un-article .views-field-title a {
    display: inline-block;
    color: var(--color-black);
    font-size: 14px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    line-height: 20px;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

#focus-area-accordion .accordion-body .more-link a {
    display: inline-block;
    text-align: center;
    text-decoration: none;
    padding: 10px 20px;
    font-size: 16px !important;
    font-family: 'Gilroy-SemiBold', sans-serif;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
}

#focus-area-accordion .accordion-body.custom-accordion-body-health .more-link a {
    color: var(--color-white);
    background-color: var(--color-health);
    border: solid 2px var(--color-health);
}

#focus-area-accordion .accordion-body.custom-accordion-body-health .more-link a:hover {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

#focus-area-accordion .accordion-body.custom-accordion-body-financial .more-link a {
    color: var(--color-white);
    background-color: var(--color-fintech);
    border: solid 2px var(--color-fintech);
}

#focus-area-accordion .accordion-body.custom-accordion-body-financial .more-link a:hover {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

#focus-area-accordion .accordion-body.custom-accordion-body-education .more-link a {
    color: var(--color-white);
    background-color: var(--color-education);
    border: solid 2px var(--color-education);
}

#focus-area-accordion .accordion-body.custom-accordion-body-education .more-link a:hover {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

#focus-area-accordion .accordion-body.custom-accordion-body-ai .more-link a {
    color: var(--color-white);
    background-color: var(--color-yellow);
    border: solid 2px var(--color-yellow);
}

#focus-area-accordion .accordion-body.custom-accordion-body-ai .more-link a:hover {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}
.intro-accordion-button {
    color: var(--color-white);
    font-size: 16px;
    font-family: 'Gilroy-Regular', sans-serif;
    line-height: 22px;
    margin-top: 8px;
}

/**************************/
/*************************/

/********/
#projects .more-link {
    text-align: center;
    position: relative;
    max-width: 300px;
    margin: auto;
    margin-top: 40px;
}

.view-yux-group .views-view-responsive-grid__item {
    text-align: center;
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    height: 100%;
    box-shadow: 0 5px 25px #0000000f;
}

.region-services .un-service img {
    width: auto;
    height: 60px;
    position: relative;
    margin-bottom: 15px;
}

.view-yux-group .un-yux-group img {
    max-height: 150px;
    width: auto;
}

#yux_group {
    padding: 100px 0;
    background: #F6F8FC;
}

#block-yuxdesign-views-block-job-offer-block-job-about h2,
#block-yuxdesign-heroaboutus .field--name-body h3,
#yux_group h2 {
    margin-bottom: 30px;
    font-size: 40px;
}

.view-display-id-block_spin_off_ventures {
    margin-top: 40px
}

.view-display-id-block_spin_off_ventures .un-yux-group {
    text-align: left;
}

.view-display-id-block_spin_off_ventures .un-yux-group img {
    max-height: 46px;
    margin-bottom: 15px;
    width: auto;
}

.block-views-blockyux-group-block-yux-group .view-header,
.view-display-id-block_spin_off_ventures .view-header {
    margin-bottom: 15px;
    font-style: italic;
    font-family: "Gilroy-Light", sans-serif;
    font-size: 20px;
}

#projects .more-link a {
    display: inline-block;
    color: var(--color-white);
    background-color: var(--color-black);
    border: solid 2px var(--color-black);
    text-align: center;
    text-decoration: none;
    padding: 15px 30px;
    font-size: 18px !important;
    font-family: 'Gilroy-SemiBold', sans-serif;
    border-radius: 15px;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    -ms-border-radius: 15px;
    -o-border-radius: 15px;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
}

#projects .more-link a:hover {
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

#block-yuxdesign-mapquote .field--name-body {
    margin: 40px auto 10px;
    gap: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #acc4f340;
    padding: 20px;
    border-radius: 15px;
}

#block-yuxdesign-mapquote h6 {
    font-size: 22px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    color: var(--color-black);
    line-height: 32px;
    margin-bottom: 0;
}

#block-yuxdesign-mapquote .field--name-body p {
    flex: 0 0 auto;
    margin-bottom: 0;
}

#testimonials {
    padding: 160px 0 100px;
    background: linear-gradient(0deg, #ECF2FA 0%, #ECF2FA 100%), linear-gradient(0deg, #D7FDFF 0%, #D7FDFF 100%), #00E0FF;
}

#testimonials .view-header {
    text-align: center;
    padding: 20px;
}

#discover_yux {
    padding: 100px 0;
    background: var(--color-light-blue);
}

#block-yuxdesign-discoveryux img {
    max-width: 600px;
    max-height: 600px;
    min-height: 550px;
    min-width: 100%;
}

#block-yuxdesign-discoveryux h2 {
    margin-bottom: 50px;
}

#block-yuxdesign-discoveryux h6 {
    text-align: left;
    font-family: 'Gilroy-Medium', sans-serif;
    font-size: 18px;
    color: var(--color-black);
}

#block-yuxdesign-discoveryux h5 {
    font-size: 20px;
    color: var(--color-primary);
    margin-bottom: 50px;
    font-family: 'Gilroy-SemiBold', sans-serif;
}

#testimonials .owl-carousel .owl-stage-outer {
    padding-left: 2.25px;
}

#carousel-testimonials .owl-nav {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: center;
    position: absolute;
    width: 100%;
    top: -100px;
}

#carousel-testimonials .owl-nav [class*=owl-]:hover {
    background: initial;
    color: initial;
    text-decoration: none;
}

#carousel-testimonials .owl-nav button span {
    display: flex;
    width: 45px;
    height: 45px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 100px;
    background: #FFF;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.20);
    font-size: 40px;
}

#carousel-testimonials .avatar {
    flex-shrink: 0;
}

#carousel-testimonials .avatar img {
    width: 60px;
    border-radius: 100%;
    height: 60px;
    object-fit: cover;
}

#carousel-testimonials .username {
    font-family: 'Gilroy-SemiBold', sans-serif;
    font-size: 17px;
}

#carousel-testimonials .job-title {
    font-style: italic;
    color: #626262;
    font-size: 14px;
    line-height: 1.3;
}

#carousel-testimonials .owl-stage {
    display: flex;
    align-items: stretch;
}

#carousel-testimonials .owl-item {
    padding: 20px;
}

#carousel-testimonials .owl-item .item {
    display: flex;
    flex-direction: column;
    height: 100%;
}

#carousel-testimonials .owl-item .item .user {
    /*margin-top: auto !important;*/
}

#newsletter {
    padding: 100px 0;
}

.newsletter-form-wrapper {}

.newsletter-form-wrapper #edit-form-image img {
    max-width: 100%;
    height: auto;
}

.newsletter fieldset.inline-form input[type="email"] {
    padding: 14px;
    padding-right: 100px;
    border-color: var(--color-black);
}

.newsletter fieldset.inline-form input[type="submit"] {
    position: absolute;
    right: 15px;
    top: 5px;
    width: 100px;
    padding: .55rem;
    background: var(--color-yellow);
    color: var(--color-black);
    border: none;
}

.newsletter fieldset.inline-form .fieldset-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
}

.newsletter fieldset.inline-form .fieldset-wrapper .form-item,
.newsletter fieldset.inline-form .fieldset-wrapper .form-actions {
    margin: 0;
}

.newsletter .webform-flex--container {
    margin: 0;
}

#job_offers {
    background: linear-gradient(0deg, #DCE7FF 0%, #DCE7FF 100%), #00E0FF;
    padding: 80px 0;
    position: relative;
}

#job_offers::before {
    position: absolute;
    content: '';
    width: 400px;
    height: 400px;
    right: 30%;
    bottom: -90px;
    border-radius: 100%;
    opacity: 0.2;
    background: linear-gradient(180deg, #4FFFF4 0%, #3789FF 100%);
    mix-blend-mode: multiply;
    filter: blur(75px);
    z-index: 0;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
    -o-border-radius: 100%;
}

#block-yuxdesign-views-block-job-offer-block-job-offers {
    position: relative;
    z-index: 3;
}

#block-yuxdesign-views-block-job-offer-block-job-offers .one-job {
    padding: 25px 25px 10px;
    justify-content: space-between;
    align-self: stretch;
    margin-bottom: 10px;
    position: relative;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.40);
    gap: 20px;
    height: 100%;
}

#block-yuxdesign-fellow,
.fellow,
.region-fellow {
    height: 100%;
}

#block-yuxdesign-fellow::before,
#block-yuxdesign-views-block-job-offer-block-job-offers .one-job::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 20px;
    /* Taille de la bordure */
    padding: 1px;
    background: linear-gradient(to bottom, rgb(255, 255, 255), rgba(255, 255, 255, 0));
    -webkit-mask:
        linear-gradient(#fff 0 0) content-box,
        linear-gradient(#fff 0 0);
    /* Masque pour que le dégradé soit uniquement sur la bordure */
    -webkit-mask-composite: destination-out;
    mask-composite: exclude;
    pointer-events: none;
}

#block-yuxdesign-fellow {
    position: relative;
    padding: 25px;
    border-radius: 20px;
    background: var(--color-primary);
    color: #fff;
}

#block-yuxdesign-fellow .field--name-body {
    height: 100%;
    display: flex;
    gap: 30px;
    align-items: center;
}

#block-yuxdesign-fellow .field--name-body p {
    margin-bottom: 0;
    font-size: 18px;
}

#block-yuxdesign-fellow .field--name-body h4,
#block-yuxdesign-fellow .field--name-body p:last-child {
    flex: 0 0 auto;
}

#block-yuxdesign-fellow .field--name-body h4 {
    font-family: 'Gilroy-SemiBold', sans-serif;
    font-size: 22px;
}

#block-yuxdesign-fellow h5 a {
    text-decoration: none;
    font-size: 18px;
    display: flex;
    gap: 10px;
    color: var(--color-white);
    font-family: 'Gilroy-Bold', sans-serif;
}

#block-yuxdesign-fellow h5 a img {
    height: 18px;
}

#block-yuxdesign-views-block-job-offer-block-job-offers .view-footer {
    margin-top: 15px;
}

#block-yuxdesign-views-block-job-offer-block-job-about .view-footer {
    margin-top: 40px;
}

#block-yuxdesign-views-block-job-offer-block-job-about .view-footer span,
#block-yuxdesign-views-block-job-offer-block-job-offers .view-footer span {
    font-family: 'Gilroy-SemiBold', sans-serif;
    color: var(--color-primary);
}

#block-yuxdesign-views-block-job-offer-block-job-offers .views-view-responsive-grid__item,
#block-yuxdesign-views-block-job-offer-block-job-offers .views-view-responsive-grid__item .views-view-responsive-grid__item-inner,
#block-yuxdesign-views-block-job-offer-block-job-offers .views-view-responsive-grid__item .views-view-responsive-grid__item-inner .views-field {
    height: 100%;
}

#block-yuxdesign-views-block-job-offer-block-job-offers .one-job .type-location {
    display: flex;
    gap: 0px;
    align-items: flex-start;
    flex-direction: column;
}

#block-yuxdesign-views-block-job-offer-block-job-offers .one-job .job-meta a {
    margin-bottom: 10px;
    display: block;
    font-size: 18px;
    line-height: 22px;
    color: var(--color-black);
    font-family: 'Gilroy-Bold', sans-serif;
    text-decoration: none;
    transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    -ms-transition: all 0.4s ease-in-out;
    -o-transition: all 0.4s ease-in-out;
}

#block-yuxdesign-views-block-job-offer-block-job-about .one-job:hover .job-meta a,
#block-yuxdesign-views-block-job-offer-block-job-offers .one-job:hover .job-meta a {
    color: var(--color-primary);
}

#block-yuxdesign-views-block-job-offer-block-job-offers .one-job .job-meta .type-location {
    font-size: 14px;
}

#block-yuxdesign-views-block-job-offer-block-job-offers .one-job .view-job {
    display: flex;
}

.path-job-offer .one-job .view-job a,
#block-yuxdesign-views-block-job-offer-block-job-about .one-job .view-job a,
#block-yuxdesign-views-block-job-offer-block-job-offers .one-job .view-job a {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url('../img/view-job.svg');
    background-size: contain;
    background-repeat: no-repeat;
    text-indent: -9999px;
    overflow: hidden;
}

.path-job-offer .one-job:hover .view-job a,
#block-yuxdesign-views-block-job-offer-block-job-offers .one-job:hover .view-job a {
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url('../img/view-job-blue.svg');
    background-size: contain;
    background-repeat: no-repeat;
    text-indent: -9999px;
    overflow: hidden;
}
#block-yuxdesign-content ul.pagination {
    margin-top: 40px;
}

.page-link {
    position: relative;
    display: block;
    color: var(--color-primary);
    background-color: var(--color-white);
    border: var(--bs-pagination-border-width) solid var(--color-primary);
}

.page-link:hover,
.page-link.active,
.active>.page-link {
    z-index: 3;
    color: var(--color-white);
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

/************/
#focus_areas {
    padding: 100px 0;
    position: relative;
}

#focus_areas::before {
    position: absolute;
    content: '';
    height: calc(100% - 300px);
    width: 100%;
    background: var(--color-primary);
    top: 0;
    z-index: 0;
}

#block-yuxdesign-views-block-focus-areas-block-focus-area h2,
#block-yuxdesign-views-block-focus-areas-block-focus-area .view-header {
    color: var(--color-white);
}

.focus-area-card {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 470px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-width: 2px;
    border-style: solid;
}

.focus-area-image {
    width: 100%;
    height: 100%;
    background-size: 90%;
    background-position: right bottom;
    position: relative;
    background-repeat: no-repeat;
    transition: background-size 0.5s ease-in-out;
    -webkit-transition: background-size 0.5s ease-in-out;
    -moz-transition: background-size 0.5s ease-in-out;
    -ms-transition: background-size 0.5s ease-in-out;
    -o-transition: background-size 0.5s ease-in-out;
}

.focus-area-card:hover .focus-area-image {
    background-color: var(--color-white) !important;
}

.focus-area-card:hover .focus-area-image {
    background-size: 50%;
}

.focus-area-overlay {
    padding: 20px 40px 20px 20px;
    position: absolute;
    left: 0;
    background: transparent;
    color: var(--color-white);
    width: auto;
    opacity: 0;
    transform: scale(0.95) translate(20px, 20px);
    transform-origin: bottom right;
    transition: all 0.4s ease;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.focus-area-overlay .focus-area-all-logos {
    opacity: 0;
    transition: opacity 0.4s ease;
    margin-bottom: 10px;
}
.focus-area-overlay .focus-area-all-logos img {
    max-height: 170px;
    width: auto;
}
.focus-area-card:hover .focus-area-overlay {
    opacity: 1;
    transform: scale(1) translate(0, 0);
    height: auto;
}
.focus-area-card:hover .focus-area-overlay .focus-area-all-logos {
    opacity: 1;
    transform: scale(1) translate(0, 0);
    height: auto;
}
.focus-area-all-logos,
.focus-area-logos {
    max-width: 50%;
}

.focus-area-logos ul {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    list-style: none;
}

.focus-area-logos ul li {
    margin: 0;
    width: 70px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.focus-area-logos ul li img {
    margin: 0;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.focus-area-logos p,
.focus-area-description p {
    margin-bottom: 0;
}

.focus-area-categories img {
    height: 32px;
    width: auto;
    filter: brightness(0) invert(1);
}

.focus-area-card:hover .focus-area-categories img {
    filter: none;
}

.focus-area-categories {
    font-size: 18px;
    font-family: 'Gilroy-SemiBold', sans-serif;
    padding: 30px 20px 0 20px;
    padding-bottom: 5px;
}

.focus-area-categories .focus-area-icon {
    display: inline-block;
}

.focus-area-categories a {
    padding: 3px 10px;
    color: #fff;
    text-transform: uppercase;
    font-style: italic;
    font-size: 18px;
    display: inline-block;
}

.focus-area-description,
.focus-area-logos,
.focus-area-button {
    margin-bottom: 1rem;
    height: 0;
    transition: all 0.4s ease;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    color: transparent;
    display: none;
}

.focus-area-card:hover .focus-area-overlay .focus-area-description,
.focus-area-card:hover .focus-area-overlay .focus-area-logos,
.focus-area-card:hover .focus-area-overlay .focus-area-button {
    margin-bottom: 1rem;
    display: initial;
    height: auto;
    color: initial;
}

.focus-area-logos img {
    max-height: 40px;
    margin-right: 1rem;
}

.focus-area-button {
    display: inline-block;
    width: fit-content;
}
.focus-area-button a {
    padding: 10px 20px;
    color: var(--color-white);
    background-color: inherit;
    border-color: inherit;
    font-family: 'Gilroy-Regular', sans-serif;
    font-size: 14px !important;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}





#footer {
    padding-top: 100px;
    padding-bottom: 0 !important;
    background: #F6F8FC url('../img/bg-footer.png') no-repeat center center;
    background-size: auto 75%;
}

#block-yuxdesign-footercontactinfo .field--name-body {
    display: flex;
    gap: 40px;
}

#block-yuxdesign-footercontactinfo .field--name-body p strong {
    color: var(--color-black);
    font-family: 'Gilroy-Regular', sans-serif !important;
}

#block-yuxdesign-footercontactinfo .field--name-body p {
    flex: 1;
    max-width: 50%;
    color: var(--color-primary);
    font-family: 'Gilroy-Medium', sans-serif;
}

#block-yuxdesign-footercontactinfo .field--name-body p img {
    height: 32px;
    width: auto;
    margin-right: 10px;
    display: flex;
    margin-bottom: 32px;
    margin-top: 10px;
}

#lets-chat {
    background: var(--color-yellow);
    padding: 60px 0;
}

#testimonials {
    padding: 100px 0 140px;
    background: var(--color-primary);
    color: var(--color-white);
    text-align: center;
}

#lets-chat h3 {
    font-size: 36px;
    margin-bottom: 15px;
}

#views-bootstrap-testimonials-block-testimonials .carousel-indicators {
    bottom: -60px;
    gap: 4px;
}

#views-bootstrap-testimonials-block-testimonials .carousel-indicators [data-bs-target],
#views-bootstrap-testimonials-block-testimonials .carousel-indicators button {
    width: 12px;
    height: 12px;
    border-radius: 10px !important;
    -webkit-border-radius: 10px !important;
    -moz-border-radius: 10px !important;
    -ms-border-radius: 10px !important;
    -o-border-radius: 10px !important;
    border: none !important;
}

#views-bootstrap-testimonials-block-testimonials .carousel-indicators button.active {
    background: var(--color-yellow);
}

#views-bootstrap-testimonials-block-testimonials .user {
    flex-direction: column;
    text-align: center;
}

#views-bootstrap-testimonials-block-testimonials .user .username a {
    color: var(--color-wh);
    font-size: 22px;
    font-family: 'Gilroy-SemiBold', sans-serif;
}

#views-bootstrap-testimonials-block-testimonials .user .avatar img {
    width: 60px;
    height: 60px;
    border-radius: 100px;
}

#views-bootstrap-testimonials-block-testimonials .carousel-item .item p {
    margin: auto;
    font-size: 22px;
    max-width: 750px;
    margin-bottom: 30px;
    position: relative;
    padding: 60px 20px 0px 20px;
}

#views-bootstrap-testimonials-block-testimonials .carousel-item .item p::before {
    position: absolute;
    content: '';
    background: url('../img/quote.svg') no-repeat;
    width: 60px;
    height: 60px;
    background-size: 100% auto;
    left: 0;
    top: 0;
}

#intro-about-us .row {
    align-items: center;
}

/* valeur a zero pour cacher l'animation */
#yux-team-animation {
    width: 0;
    height: 0;
}

#intro-about-us img {
    max-height: 380px;
    width: auto;
    border-radius: 12px;
}

.scene {
    position: relative;
    width: 240px;
    height: 240px;
    display: none;
}

.shape {
    position: absolute;
    opacity: 0;
    animation-duration: 3s;
    /* animation + pause */
    animation-iteration-count: infinite;
    animation-fill-mode: forwards;
    animation-timing-function: ease-out;
}

/* Kitala animation (rose) */
.kitala {
    animation-name: kitalaAnim;
    position: absolute;
    left: 8px;
    bottom: 24px;
    z-index: 5;
}

@keyframes kitalaAnim {
    0% {
        transform: translateY(-100px) scale(0.5);
        opacity: 0;
    }

    40% {
        transform: translate(90px, 20px);
        opacity: 1;
    }

    80% {
        transform: translate(90px, 20px);
        opacity: 1;
    }

    100% {
        transform: translateY(-100px) scale(0.5);
        opacity: 0;
    }
}

/* YUX animation (bleu clair) */
.yux {
    animation-name: yuxAnim;
    top: 65px;
    left: 80px;
}

@keyframes yuxAnim {
    0% {
        transform: translateX(-150px) rotate(-45deg);
        opacity: 0;
    }

    40% {
        transform: translate(110px, 50px);
        opacity: 1;
    }

    80% {
        transform: translate(110px, 50px);
        opacity: 1;
    }

    100% {
        transform: translateX(-150px) rotate(-45deg);
        opacity: 0;
    }
}

/* Kula animation (jaune) */
.kula {
    animation-name: kulaAnim;
    left: 40px;
    top: 35px;
    z-index: 4;
}

@keyframes kulaAnim {
    0% {
        transform: scale(0);
        opacity: 0;
    }

    40% {
        transform: translate(140px, 100px);
        opacity: 1;
    }

    80% {
        transform: translate(140px, 100px);
        opacity: 1;
    }

    100% {
        transform: scale(0);
        opacity: 0;
    }
}

/* Nuda animation (orange) */
.nuda {
    animation-name: nudaAnim;
    top: 20px;
    right: 10px;
    z-index: 1;
}

@keyframes nudaAnim {
    0% {
        transform: translateY(100px) rotate(180deg);
        opacity: 0;
    }

    40% {
        transform: translate(40px, 180px);
        opacity: 1;
    }

    80% {
        transform: translate(40px, 180px);
        opacity: 1;
    }

    100% {
        transform: translateY(100px) rotate(180deg);
        opacity: 0;
    }
}

/* Common (bleu foncé) */
.common {
    animation-name: commonAnim;
    right: 0;
    bottom: 0;
    z-index: 6;
}

@keyframes commonAnim {
    0% {
        transform: translateX(200px) scale(0.3);
        opacity: 0;
    }

    40% {
        transform: translate(200px, 50px);
        opacity: 1;
    }

    80% {
        transform: translate(200px, 50px);
        opacity: 1;
    }

    100% {
        transform: translateX(200px) scale(0.3);
        opacity: 0;
    }
}






.footer_menus .footer_menu,
.footer_widgets .footer_widget {
    flex: 1 1 300px;
    min-width: 300px;
    box-sizing: border-box;
}

.footer_menu h5 {
    font-family: 'Gilroy-Bold', sans-serif;
}

.footer_menu.footer_menu_1 ul {
    flex-direction: row;
    gap: 40px;
    margin-bottom: 25px;
}

.footer_menu.footer_menu_1 ul li,
.footer_menu.footer_menu_1 ul li a {
    font-family: 'Gilroy-SemiBold', sans-serif;
}

.footer_copyright {
    padding: 25px 0;
    margin-top: 30px;
    border-top: solid 1px #d6d6d6;
}

.footer_privacy nav ul {
    display: flex;
    flex-direction: row;
    gap: 30px;
    justify-content: flex-end;
}

.footer_rs a {
    display: flex;
    width: 48px;
    height: 48px;
    justify-content: center;
    align-items: center;
    border-radius: 30px;
    background: rgba(220, 229, 242, 0.60);
}

.footer_privacy nav ul li {}

.footer_privacy nav ul li a {
    font-family: 'Gilroy-SemiBold', sans-serif;
}

/* Responsive styles */
@media (max-width: 9992px) {
    .navbar-toggler {
        border-color: var(--color-white);
    }

    .navbar-toggler-icon {
        filter: invert(1) grayscale(100%) brightness(200%);
    }

    .hero-content-wrapper {
        padding: 80px 20px 0 20px;
    }

    #hero .field--name-body img {
        width: auto;
        max-width: 100%;
        height: auto;
        margin: auto;
        display: block;
    }

}
@media (max-width: 992px) {
    .rw-sentence .fixed-sentence {
    font-size: 48px;
    font-family: 'Gilroy-Bold', sans-serif;
    color: var(--color-yellow);
    padding-top: 90px;
}

.rw-sentence .rw-words {
        font-size: 86px;
    font-family: 'Gilroy-ExtraBold', sans-serif;
    line-height: 76px;
}

}

@media screen and (max-width: 768px) {
    .rw-sentence .rw-words {
        font-size: 46px;
        font-family: 'Gilroy-ExtraBold', sans-serif;
    }

    .rw-sentence .fixed-sentence {
        font-size: 32px;
        font-family: 'Gilroy-Bold', sans-serif;
        color: var(--color-white);
        padding-top: 64px;
    }

    #hero .field--name-body img {
        max-height: 350px;
    }

    #block-yuxdesign-annonce2 h6 {
        flex-wrap: wrap;
    }

    #block-yuxdesign-fellow .field--name-body {
        flex-wrap: wrap;
    }

    .footer_rs a {
        width: 32px;
        height: 32px;
    }

    .footer_rs a svg {
        width: 20px;
        height: 20px;
    }

    .copyright.text-end {
        padding-top: 20px;
        text-align: center !important;
    }

    .view-yux-group .un-yux-group img {
        padding: 25px;
        width: auto;
        height: 100px;
    }

}

@media screen and (max-width: 360px) {
    .rw-sentence .rw-words {
        font-size: 36px;
        font-family: 'Gilroy-ExtraBold', sans-serif;
    }

    .rw-sentence .fixed-sentence {
        font-size: 26px;
        font-family: 'Gilroy-Bold', sans-serif;
        color: var(--color-white);
        padding-top: 56px;
    }
}