@font-face {
    font-family: Aileron;
    src: url(../fonts/Aileron-SemiBold.woff2) format("woff2"), url(../fonts/Aileron-SemiBold.woff) format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aileron;
    src: url(../fonts/Aileron-Regular.woff2) format("woff2"), url(../fonts/Aileron-Regular.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aileron;
    src: url(../fonts/Aileron-Light.woff2) format("woff2"), url(../fonts/Aileron-Light.woff) format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aileron;
    src: url(../fonts/Aileron-Bold.woff2) format("woff2"), url(../fonts/Aileron-Bold.woff) format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Dune Rise;
    src: url(../fonts/Dune_Rise.woff2) format("woff2"), url(../fonts/Dune_Rise.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: DNA;
    src: url(../fonts/DNA.woff2) format("woff2"), url(../fonts/DNA.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

:root {
    --dna: "DNA"
}

.elementor-element.hm-banner br {
    display: none
}

.elementor-element.hm-banner p br {
    display: block
}

.elementor-element.hm-banner .elementor-widget-heading h1.elementor-heading-title {
    font-family: var(--dna);
    font-weight: 400;
    font-size: 70px;
    line-height: 80px;
    letter-spacing: -2.4px;
    text-align: center;
    color: #fff
}

.elementor-widget-heading h1.elementor-heading-title span {
    color: #ff7032
}

body.home .elementor-widget-heading h2.elementor-heading-title {
    font-family: var(--dna);
    font-weight: 400;
    font-size: 60px;
    line-height: 60px;
    letter-spacing: -1.5px;
    color: #000
}

.elementor-widget-heading h3.elementor-heading-title {
    font-family: Aileron;
    font-weight: 600;
    font-size: 24px;
    line-height: 32px;
    letter-spacing: 0px;
    color: #000
}

body {
    font-family: Aileron;
    font-weight: 400;
    color: #000
}

body.home p {
    font-family: Aileron;
    font-weight: 400;
    font-size: 20px;
    line-height: 32.5px;
    letter-spacing: 0px;
    color: #000;
    margin-bottom: 30px
}

body.home p:last-child {
    margin-bottom: 0
}

p:last-child {
    margin-bottom: 0
}

a {
    color: #ff7032;
    transition: all .5s ease-in-out
}

a:hover {
    color: #000
}

strong,
b {
    font-weight: 600
}

.elementor-element.df-btn a {
    font-family: Aileron;
    font-weight: 400;
    font-size: 14px;
    line-height: 14px;
    letter-spacing: .5px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    color: #fff;
    border-radius: 10px;
    padding: 17px 44px;
    width: max-content;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    transition: all .3s ease-in-out
}

.elementor-element.df-btn a:before {
    transition: all .3s ease-in-out;
    content: "";
    transform: scale(1);
    background: #ff7032;
    width: 100%;
    height: 100%;
    z-index: -1;
    position: absolute;
    top: 0;
    border-radius: 10px;
    left: 0
}

.elementor-element.df-btn a:hover:before {
    transform: scale(1.05);
    background: #ff7032e6
}

.elementor-element.hm-banner p {
    color: #fffc;
    max-width: 766px;
    margin: 0 auto;
    font-size: 20px;
    line-height: 35px;
    letter-spacing: 0px
}

.elementor-element.hm-banner .elementor-element.df-btn a {
    font-weight: 600;
    border-radius: 10px;
    box-shadow: 0 5.17px 5.17px #00000040
}

.elementor-element.hm-banner .elementor-widget-heading h1.elementor-heading-title,
.elementor-element.hm-banner p {
    text-shadow: 0px 4px 4px rgba(0, 0, 0, .25)
}

html {
    scroll-behavior: smooth
}

.elementor-element.hm-banner {
    position: relative;
    overflow: hidden
}

.elementor-element.hm-banner .scroll-mouse-link {
    position: absolute;
    left: 50%;
    bottom: 60px;
    transform: translate(-50%);
    display: inline-block;
    text-decoration: none;
    z-index: 8
}

.elementor-element.hm-banner .scroll-mouse {
    width: 24px;
    height: 40px;
    border: 2px solid rgba(255, 255, 255, .3);
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-top: 6px;
    cursor: pointer;
    animation: scrollDot 2s infinite ease-in-out
}

.elementor-element.hm-banner .scroll-mouse:after {
    content: "";
    width: 4px;
    height: 8px;
    background: #ffffff80;
    border-radius: 50px
}

@keyframes scrollDot {
    0% {
        transform: translateY(0);
        opacity: 1
    }

    50% {
        transform: translateY(10px);
        opacity: 1
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

.who-we-are-sec img {
    box-shadow: 0 25px 50px -12px #00000040
}

.who-we-are-sec .right-col .img-col {
    position: relative
}

.who-we-are-sec .right-col .img-col:after {
    position: absolute;
    content: "";
    /* Elias, 2026-08-26 : « le bloc orange sur l'image doit etre derriere
       l'image, pas dessus ». Le voile etait peint APRES l'image, faute de
       z-index : il la couvrait sur toute sa zone de chevauchement. A -1 il
       passe dessous et ne reste visible que la ou il DEBORDE, ce qui est le
       motif d'origine. Verifie a 1512 et a 390 sur les trois pages qui
       portent ce composant : le voile reste visible, l'image passe devant. */
    z-index: -1;
    background: #ff70321a;
    width: 100%;
    height: 100%;
    right: -32px;
    bottom: -32px;
    border-radius: 16px;
    max-width: 256px;
    max-height: 256px
}

body .who-we-are-sec .e-con-inner .left-col .counter-col {
    max-width: calc(100% / 3 - 21.33px)
}

body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-title {
    font-family: Aileron;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0px;
    color: #000
}

body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number,
body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number-suffix {
    font-family: Aileron;
    font-weight: 400;
    font-size: 36px;
    line-height: 40px;
    letter-spacing: 0px;
    color: #ff7032;
    margin-bottom: 8px
}

html[lang=ar] body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number-wrapper,
html[lang=ar] body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number-wrapper {
    flex-direction: row-reverse;
    justify-content: flex-end;
}

html[lang=ar] body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number,
html[lang=ar] body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number-suffix {
    flex-grow: unset;
    white-space: unset
}

.elementor-element.center-title-sec h2 {
    margin-bottom: 14px
}

.elementor-element.center-title-sec p {
    max-width: 630px;
    margin: 0 auto
}

.elementor-element.what-we-do-sec .icon-box-row .icon-box-col {
    background: #fff;
    width: calc(100% / 3 - 32px);
    padding: 40px;
    border-radius: 16px;
    box-shadow: 0 1px 2px -1px #0000001a, 0 1px 3px #0000001a
}

.elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-content .elementor-image-box-title {
    margin-top: 0;
    font-family: Aileron;
    font-weight: 700;
    font-size: 24px;
    line-height: 32px;
    letter-spacing: 0px;
    color: #000;
    margin-bottom: 17px
}

.elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-content .elementor-image-box-description {
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0px;
    color: #000;
    margin-bottom: 12px
}

.elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-content .elementor-image-box-description:last-child {
    margin-bottom: 0
}

.elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-wrapper .elementor-image-box-img {
    margin-bottom: 17px
}

.elementor-element.portfolio-sec .elementor-element.center-title-sec p {
    max-width: 635px
}

.elementor-element.work-with-section .elementor-element.center-title-sec p {
    max-width: 631px
}

.elementor-element.work-with-section .contact-form {
    background: #fff;
    padding: 49px;
    box-shadow: 0 8px 10px -6px #0000001a, 0 20px 25px -5px #0000001a;
    width: 100%;
    max-width: 896px;
    margin: 0 auto;
    border: 1px solid rgba(229, 231, 235, 1);
    border-radius: 24px
}

.elementor-element.work-with-section .contact-form h2 {
    font-family: Aileron;
    font-weight: 400;
    font-size: 30px;
    line-height: 36px;
    letter-spacing: 0px;
    color: #000;
    margin-top: 0;
    margin-bottom: 16px
}

.elementor-element.work-with-section .contact-form .contact-form-title {
    margin-bottom: 32px
}

.elementor-element.work-with-section .contact-form .contact-form-field {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 22px;
    column-gap: 24px;
    margin-bottom: 24px
}

.elementor-element.work-with-section .contact-form .contact-form-field .row-field {
    width: calc(50% - 12px)
}

.elementor-element.work-with-section .contact-form .contact-form-field .textarea-field {
    width: 100%
}

html[lang=ar] .elementor-element.work-with-section .contact-form .contact-form-field input,
html[lang=ar] .elementor-element.work-with-section .contact-form .contact-form-field textarea,
html[lang=ar] .elementor-element.work-with-section .contact-form .contact-form-field select {
    text-align: right
}

.elementor-element.work-with-section .contact-form .contact-form-field input,
.elementor-element.work-with-section .contact-form .contact-form-field textarea,
.elementor-element.work-with-section .contact-form .contact-form-field select {
    width: 100% !important;
    max-width: 100% !important;
    transition: .5s !important;
    padding: 14.5px 12px !important;
    outline: none;
    border: 1px solid rgba(229, 231, 235, 1);
    font-family: Aileron;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0px;
    background: #f5f7fa;
    color: #717182;
    border-radius: 8px
}

.elementor-element.work-with-section .contact-form .contact-form-field select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../../../../wp-content/uploads/2025/12/new-arrow.svg) 97% / 15% no-repeat #fff;
    background-size: 14px;
    padding-right: 40px !important;
    background-color: #f5f7fa;
    line-height: 17px
}

html[lang=ar] .elementor-element.work-with-section .contact-form .contact-form-field select {
    padding-right: 12px !important;
    padding-left: 40px !important;
    background-position-x: 5%
}

header .header-row .logo-col a.ar {
    display: none
}

html[lang=ar] header .header-row .logo-col a {
    display: none
}

html[lang=ar] header .header-row .logo-col a.ar {
    display: flex
}

.elementor-element.work-with-section .contact-form .contact-form-field label {
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    display: inline-block;
    margin-bottom: 5px
}

.elementor-element.work-with-section .contact-form .contact-form-field label span {
    color: #ff7032
}

.wpcf7-form-control-wrap {
    position: relative;
    display: flex
}

.contact-form .contact-form-field textarea {
    resize: none;
    max-height: 64px !important
}

.contact-form>.contact-button>p {
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center
}

.contact-button button.wpcf7-form-control.wpcf7-submit:before {
    transition: all .3s ease-in-out;
    content: "";
    transform: scale(1);
    background: #ff7032;
    width: 100%;
    height: 100%;
    z-index: -1;
    position: absolute;
    top: 0;
    border-radius: 10px;
    left: 0
}

.contact-button button.wpcf7-form-control.wpcf7-submit:hover:before {
    transform: scale(1.05);
    background: #000
}

.contact-button button.wpcf7-form-control.wpcf7-submit {
    outline: 0;
    color: #fff;
    font-family: Aileron;
    font-weight: 600;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0px;
    padding: 24px;
    border: 0;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: all .3s ease-in-out;
    gap: 15px;
    border-radius: 8px;
    z-index: 1;
    box-shadow: 0 4px 6px -4px #0000001a, 0 10px 15px -3px #0000001a;
    width: 100%
}

.wpcf7-spinner,
.wpcf7 form .wpcf7-response-output {
    display: none !important
}

.wpcf7-not-valid {
    border: 1px solid #d63637 !important
}

span.wpcf7-not-valid-tip {
    display: none
}

body footer .ftr-row .ftr-col-1 {
    width: 47%;
    padding-right: 184px
}

html[lang=ar] body footer .ftr-row .ftr-col-1 {
    padding-right: 0;
    padding-left: 184px
}

body footer .ftr-row .ftr-col-1 .elementor-element.elementor-widget-text-editor {
    margin-bottom: 20px
}

body footer .ftr-row .ftr-col-1 .elementor-element.elementor-widget-text-editor p {
    text-align: justify;
    max-width: 330px;
}

body footer .ftr-row .ftr-col-2 {
    width: 25%;
    padding-right: 48px
}

html[lang=ar] body footer .ftr-row .ftr-col-2 {
    padding-right: 0;
    padding-left: 48px
}

body footer .ftr-row .ftr-col-3 {
    width: 28%;
}

body footer .ftr-row .elementor-widget-heading h2.elementor-heading-title {
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #fff;
    margin-bottom: 25px
}

body footer .ftr-row p {
    font-size: 16px;
    line-height: 26px;
    color: #ffffffb3
}

body footer .ftr-row .ftr-col-1 .elementor-element.elementor-widget-theme-site-logo {
    position: relative
}

html[lang=ar] body footer .ftr-row .ftr-col-1 .elementor-element.elementor-widget-theme-site-logo,
html[lang=ar] body footer .ftr-row .ftr-col-1 .elementor-widget-social-icons {
    text-align: right
}

html[lang=ar] body footer .ftr-row .ftr-col-1 .elementor-element.elementor-widget-theme-site-logo:before {
    right: 0;
    left: auto
}

body footer .ftr-row .ftr-col-1 .elementor-element.elementor-widget-theme-site-logo:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 4px;
    background: #ff7032;
    bottom: 0;
    left: 0;
    max-width: 120px
}

body footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main li.current_page_item .elementor-item {
    color: #ff7032
}

body.parent-pageid-2006 footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main li.active .elementor-item,
body.parent-pageid-718 footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main li.active .elementor-item {
    color: #ff7032
}

body footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item {
    padding: 0;
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #ffffffb3;
    width: max-content;
    transition: all .5s ease-in-out
}

body footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
body footer .ftr-btm-row .elementor-element.ftr-btm-text.elementor-widget.elementor-widget-text-editor a:hover {
    color: #ff7032
}

body footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu li {
    margin-bottom: 15px
}

body footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu li:last-child {
    margin-bottom: 0
}

body footer .ftr-row .ftr-col-3 .elementor-widget-icon-box .elementor-icon-box-description {
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #ffffffb3;
    text-align: left
}

html[lang=ar] body footer .ftr-row .ftr-col-3 .elementor-widget-icon-box .elementor-icon-box-description {
    text-align: right
}

body footer .ftr-row .ftr-col-3 .elementor-widget-icon-box .elementor-icon-box-icon {
    margin-top: 5px
}

body footer .ftr-btm-row .elementor-element.ftr-btm-text.elementor-widget.elementor-widget-text-editor,
body footer .ftr-btm-row .elementor-element.ftr-btm-text.elementor-widget.elementor-widget-text-editor a {
    width: calc(50% - 10px);
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    transition: all .5s ease-in-out;
    color: #ffffff80
}

body footer .ftr-btm-row .elementor-element.ftr-btm-text.elementor-widget.elementor-widget-text-editor .anchor-link.active a {
    color: #ff7032
}

body footer .ftr-btm-row .elementor-element.ftr-btm-text.elementor-widget.elementor-widget-text-editor .anchor-wrap {
    display: flex;
    justify-content: end;
    gap: 25px
}

#who-we-are,
#product-portfolio,
#work-with-dna-nexus {
    scroll-margin-top: 170px
}

.wpml-ls-statics-footer.wpml-ls.wpml-ls-legacy-list-horizontal {
    display: none !important
}

body footer .ftr-row .ftr-col-1 .elementor-social-icon svg {
    fill: transparent
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box {
    width: calc(100% / 3 - 21.33px);
    position: relative;
    overflow: hidden;
    cursor: pointer;
    display: flex;
    box-shadow: 0 4px 6px -4px #0000001a, 0 10px 15px -3px #0000001a;
    border-radius: 16px
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box .elementor-image-box-content .elementor-image-box-title {
    font-family: Aileron;
    font-weight: 400;
    font-size: 24px;
    line-height: 32px;
    letter-spacing: 0px;
    color: #fff;
    margin: 0
}

html[lang=ar] .elementor-element.portfolio-sec .portfolio-row .portfolio-box .elementor-image-box-content .elementor-image-box-title {
    text-align: right
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box .elementor-image-box-content {
    position: absolute;
    bottom: 24px;
    left: 0;
    padding: 0 24px;
    z-index: 9
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box .elementor-image-box-wrapper .elementor-image-box-img img {
    width: 100%;
    object-fit: cover;
    transform: scale(1.01);
    object-position: top;
    transition: all .5s ease-in-out
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box .elementor-image-box-wrapper {
    display: flex
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, #000000e6, #0006, #0000);
    z-index: 2;
    pointer-events: none;
    transition: all .6s ease-in-out
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box:hover:before {
    transition: all .6s ease-in-out;
    background: linear-gradient(0deg, #ff7032, #ff703266, #ff703200)
}

body .elementor-element.work-with-section {
    background: linear-gradient(180deg, #fff, #f5f7fa)
}

.bg-design {
    background: #ff70321a;
    color: #ff7032;
    font-family: Aileron;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: .7px;
    text-align: center;
    text-transform: uppercase;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: max-content;
    margin: 0 auto 25px;
    padding: 8px 15px;
    gap: 7px
}

body .elementor-element.work-with-section .global-row .html-box-col {
    width: calc(100% / 3 - 21.33px)
}

body .elementor-element.work-with-section .global-row .html-box-col a {
    display: block;
    border-radius: 16px
}

body .elementor-element.work-with-section .global-row .global-box {
    border-radius: 16px;
    border: 1px solid #E5E7EB;
    background: #fff;
    padding: 33px;
    transition: all .5s ease-in-out;
    text-align: center
}

body .elementor-element.work-with-section .global-row .global-box:hover {
    border-color: #ffd4c2;
    box-shadow: 0 15px 15px -8px #00000040
}

body .elementor-element.work-with-section .global-row .global-box:hover img {
    background: transparent
}

body .elementor-element.work-with-section .global-row .global-box img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: contain;
    background: #f5f7fa;
    padding: 24px 43px;
    border-radius: 14px;
    transition: all .5s ease-in-out;
	height: 140px;
}

body .elementor-element.work-with-section .global-row .global-box p {
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #000;
    margin-bottom: 9px
}

body .elementor-element.work-with-section .global-row .global-box p:last-child {
    margin-bottom: 0
}

body .elementor-element.work-with-section .global-row .global-box p span.box-span {
    font-family: Aileron;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #000;
    margin-bottom: 10px;
    letter-spacing: 0px;
    opacity: .7
}

body .elementor-element.work-with-section .global-row .global-box p span.icon-before {
    position: relative;
    padding-left: 20px;
    transition: all .5s ease-in-out;
    color: #ff7032
}

body .elementor-element.work-with-section .global-row .global-box:hover p span.icon-before {
    color: #000
}

body .elementor-element.work-with-section .global-row .global-box p span.icon-before:before {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: 16px;
    height: 16px;
    background-image: url(/../../wp-content/uploads/2025/12/USA-Icon.svg);
    object-fit: cover;
    transition: all .5s ease-in-out
}

body .elementor-element.work-with-section .global-row .global-box:hover p span.icon-before:before {
    filter: brightness(0)
}

.elementor-element.portfolio-sec .portfolio-row .portfolio-box:hover .elementor-image-box-wrapper .elementor-image-box-img img {
    transition: all .5s ease-in-out;
    transform: scale(1.1)
}

header .header-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding: 32px 0
}

header .header-row .logo-col {
    width: 107px
}

header .header-row .logo-col a {
    display: flex
}

header .header-row .logo-col a img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: cover;
    transition: all .5s ease-in-out
}

header .header-row .hamburger-menu {
    display: flex;
    cursor: pointer
}

header .header-row .hamburger-menu svg {
    height: 24px;
    transition: all .5s ease-in-out;
    width: 24px
}

/* 2026-09-13, tache menu-clavier-et-evitement (lot 5 du plan du 2026-09-12).
   Le bouton du menu est un vrai <button> (include/header-shortcode.php). Le
   theme parent (Hello, reset.css) peint tout bouton : bordure et texte #c36,
   padding .5rem 1rem, rayon 3px, transition, et un fond #c36 au survol et au
   focus, en priorite (0,2,0). Sans remise a zero, le bouton passe de 18x18 a
   52x36 au telephone et pousse le selecteur de langue de 34 px. La remise a
   zero vaut pour chaque etat : (0,2,1) au repos, (0,3,1) au survol, au focus,
   a l appui et en-tete defile. Elle ne touche NI outline NI box-shadow :
   l anneau bicolore de Hello en :focus-visible (contour noir 2 px, ombre
   blanche 4 px) reste, lisible sur l en-tete sombre du haut de page comme sur
   l en-tete blanc apres defilement. */
header .header-row .hamburger-menu,
header .header-row .hamburger-menu:hover,
header .header-row .hamburger-menu:focus,
header .header-row .hamburger-menu:active,
header.nav-down .header-row .hamburger-menu {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    transition: none;
    -webkit-appearance: none;
    appearance: none
}

/* 2026-09-13, enquete de l anneau carre. Safari (macOS et iOS) ne donne pas le
   focus a un bouton clique ou touche : le focus que js/custom.js pose sur la
   croix a l ouverture, puis rend au bouton a la fermeture, y compte comme un
   focus clavier, et l anneau de Hello (reset.css, button:focus-visible, (0,1,1))
   restait dessine apres un simple clic, carre blanc sur l en-tete sombre.
   custom.js pose html.dna-geste-pointeur quand le dernier geste est un pointeur :
   l anneau de ces deux boutons, et d eux seuls, est alors retire ((0,4,2) et
   (0,5,4)). Au clavier la classe tombe et l anneau de Hello revient tel quel. */
html.dna-geste-pointeur header .header-row .hamburger-menu:focus-visible,
html.dna-geste-pointeur header .header-row nav.nav-link button.mobile_menu_bar_inner:focus-visible {
    outline: none;
    box-shadow: none
}

/* 2026-09-15, tache menu-zone-44 (defaut D du releve du 2026-09-13). La zone
   cliquable du bouton du menu et de la croix du panneau n etait que leur
   dessin : 18x18 px au telephone (css/responsive.css), 20 px jusqu a 1216 px,
   24 px au-dela, sous les 44 px de la charte. Le dessin (svg) recoit 13 px de
   rembourrage sur chaque bord, repris par une marge negative de meme valeur :
   sa place dans la rangee ne change pas, donc ni le trait, ni le bouton, ni
   les voisins ne bougent, et la zone fait 44, 46 ou 50 px de cote. C est la
   technique du selecteur de langue de cet en-tete.
   Le rembourrage est sur le dessin et pas sur le bouton : un clic dans la zone
   tombe sur le svg, comme un clic sur le trait. Rembourre, le bouton recevait
   lui-meme le clic de la marge, et au banc Safari du 2026-09-14 (moteur 26.0)
   les liens du panneau perdaient alors leur anneau au clavier. L anneau de
   Hello reste dessine autour du bouton ; au survol, seul le trait de la croix
   s allume, sur toute la zone. */
header .header-row .hamburger-menu svg,
header .header-row nav.nav-link button.mobile_menu_bar_inner svg {
    box-sizing: content-box;
    padding: 13px;
    margin: -13px
}

/* functions.php enveloppe maintenant le contenu dans <main id="content">. Le
   pied corporate 362/1962 porte en ligne une regle qui ne vise le conteneur de
   contenu QUE s il est enfant direct du body (source
   wordpress/build_footer_menu.py, l. 60-68) : fond blanc et flow-root, les
   portails 3495/3502 restant transparents. Sans ce report, About, Contact,
   Privacy, Terms, Thank-you et Careers passeraient en texte noir sur le fond
   noir du body, et les marges des sections sortiraient du conteneur. Memes
   regles, meme exception, pour le conteneur place dans <main>. Les pieds ne
   bougent pas. */
body>main#content>.elementor[data-elementor-type=wp-page] {
    background-color: #fff;
    display: flow-root
}

body.elementor-page-3495>main#content>.elementor[data-elementor-type=wp-page],
body.elementor-page-3502>main#content>.elementor[data-elementor-type=wp-page] {
    background-color: transparent
}

/* Le lien d evitement pose le focus sur <main id="content" tabindex="-1"> :
   sans cette regle, le navigateur entoure toute la page d un cadre. */
#content[tabindex="-1"]:focus {
    outline: none
}

header .header-row nav.nav-link {
    background: linear-gradient(180deg, #292929, #1a1a1a, #000);
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
    margin: 0;
    padding: 45px 64px 30px;
    overflow: hidden;
    overflow-y: auto;
    flex-direction: column;
    justify-content: space-between !important;
    align-items: flex-start !important;
    transition: all .6s ease;
    display: flex;
    flex-wrap: nowrap;
    z-index: 209;
    row-gap: 30px;
    opacity: 0;
    visibility: hidden
}

body.active-responsive-menu header .header-row nav.nav-link {
    visibility: visible;
    opacity: 1
}

header .header-row nav.nav-link ul.menu {
    padding: 0;
    width: 100%
}

header .main-header {
    top: 0;
    width: 100%;
    background: transparent;
    border-radius: 0;
    position: fixed;
    z-index: 9;
    transition: all .5s ease-in-out
}

header.nav-down .main-header {
    background: #fff;
    box-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a
}

header.nav-down .header-row .logo-col a img {
    filter: brightness(0)
}

header.nav-down .header-row .hamburger-menu svg {
    filter: brightness(0)
}

body.active-responsive-menu {
    overflow: hidden;
    position: relative
}

li.menu_text {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 65px !important;
    margin-top: 0 !important
}

button.mobile_menu_bar_inner {
    width: 24px;
    height: 24px;
    background: transparent;
    border-radius: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    transition: all .5s ease-in-out
}

button.mobile_menu_bar_inner svg path {
    transition: all .5s ease-in-out
}

button.mobile_menu_bar_inner:hover svg path {
    fill: #ff7032
}

button.mobile_menu_bar_inner svg {
    width: 100%;
    height: auto
}

nav.nav-link ul>li {
    width: 100%
}

header .header-row nav.nav-link ul.menu li {
    list-style: none;
    margin: 8px 0
}

header .header-row nav.nav-link ul.menu li a {
    font-family: var(--dna);
    font-weight: 400;
    font-style: normal;
    font-size: 36px;
    line-height: 40px;
    color: #fff;
    letter-spacing: -.9px;
    display: block;
    width: 100%;
    padding: 16px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    transition: all .3s ease-in-out;
    z-index: 99;
    position: relative
}

header .header-row nav.nav-link ul.menu li a:hover {
    color: #ff7032;
    border-color: #ff7032
}

header .header-row nav.nav-link ul.menu li.current_page_item a,
header .header-row nav.nav-link ul.menu li.current-menu-parent a,
header .header-row nav.nav-link ul.menu li.current-menu-parent a span.mobile-toggle:after,
header .header-row nav.nav-link ul.menu li.current_page_item a span.mobile-toggle:after {
    color: #ff7032;
    border-color: #ff7032
}

ul.sub-menu {
    position: static;
    width: 100%;
    background: transparent;
    box-shadow: none;
    border: none;
    transition: none;
    padding: 8px 0 8px 16px;
    display: none;
    flex-wrap: wrap;
    list-style: none;
    gap: 16px
}

header .header-row nav.nav-link ul.menu li ul.sub-menu li {
    width: calc(50% - 10px);
    display: inline-block;
    vertical-align: top
}

header .header-row nav.nav-link ul.menu li ul.sub-menu li a {
    border: 0;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0px;
    padding: 0;
    color: #fff;
    opacity: .7
}

header .header-row nav.nav-link ul.menu li ul.sub-menu li.current-menu-item a {
    color: #ff7032
}

header .header-row nav.nav-link ul.menu li ul.sub-menu li a:hover {
    color: #ff7032
}

header .header-row nav.nav-link ul.menu li ul.sub-menu li:nth-child(odd) {
    margin-right: 8px
}

html[lang=ar] header .header-row nav.nav-link ul.menu li ul.sub-menu li:nth-child(odd) {
    margin-left: 8px;
    margin-right: 0
}

header .header-row nav.nav-link ul.menu li ul.sub-menu li:nth-child(2n) {
    margin-left: 8px
}

html[lang=ar] header .header-row nav.nav-link ul.menu li ul.sub-menu li:nth-child(2n) {
    margin-right: 8px;
    margin-left: 0
}

.menu>li.menu-item-has-children {
    position: relative
}

span.mobile-toggle {
    width: 100%;
    height: 73px;
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s ease-in-out;
    cursor: pointer
}

header .header-row nav.nav-link ul.menu li a:hover span.mobile-toggle:after {
    border-color: #ff7032;
    right: 7px
}

html[lang=ar] header .header-row nav.nav-link ul.menu li a:hover span.mobile-toggle:after {
    left: 7px;
    right: auto
}

html[lang=ar] span.mobile-toggle:after {
    left: 12px;
    transform: rotate(-135deg);
    right: auto
}

span.mobile-toggle:after {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    border-right: 3px solid #777;
    border-top: 3px solid #777;
    transform: rotate(45deg);
    opacity: 1;
    right: 12px;
    top: 25px;
    transition: all .3s ease-in-out
}

span.mobile-toggle.dt-open:after {
    transform: rotate(135deg)
}

html[lang=ar] span.mobile-toggle.dt-open:after {
    transform: rotate(-225deg)
}

.year-ling {
    width: 100%;
    display: flex;
    justify-content: center
}

.year-ling.ar {
    display: none
}

html[lang=ar] .year-ling.ar {
    display: flex
}

html[lang=ar] .year-ling {
    display: none
}

body .year-ling p {
    font-family: Aileron;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0px;
    text-align: center;
    color: #fff;
    opacity: .5;
    width: 100%
}

.elementor-widget-heading h1.elementor-heading-title {
    font-family: var(--dna);
    font-weight: 400;
    color: #fff;
    font-size: 60px;
    line-height: 60px;
    letter-spacing: 0px;
    margin-bottom: 18px
}

.elementor-element.ineer-banner-section p {
    color: #fffc;
    font-size: 20px;
    line-height: 28px
}

.elementor-element.ineer-banner-section .bg-design {
    margin-bottom: 30px;
    color: #fff;
    border-color: #ff70324d;
    background: #ff703233;
    padding: 9px 16px
}

p {
    font-family: Aileron;
    font-weight: 400;
    font-size: 18px;
    line-height: 29.25px;
    letter-spacing: 0px;
    color: #000;
    margin-bottom: 20px
}

.elementor-element.ineer-banner-section.partner-page p {
    max-width: 652px;
    margin: 0 auto
}

.elementor-element.partner-form-heading .elementor-widget-heading h2.elementor-heading-title {
    font-family: Aileron;
    font-weight: 700;
    font-size: 28.55px;
    line-height: 38.07px;
    text-align: center;
    color: #000;
    margin-bottom: 8px;
    letter-spacing: 0
}

.elementor-element.partner-form-heading p {
    margin: 0 auto;
    max-width: 785px;
    color: #0009;
    font-size: 21.41px;
    line-height: 33.31px
}

.elementor-element.ineer-banner-section.portfolio-page:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #000000e6, #0009, #0000);
    z-index: 2;
    pointer-events: none
}

.elementor-element.ineer-banner-section.portfolio-page .elementor-widget-heading h1.elementor-heading-title {
    font-size: 48px;
    line-height: 48px;
    margin-bottom: 10px
}

html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page .elementor-widget-heading h1.elementor-heading-title,
html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page p {
    text-align: right
}

/* 2026-09-04. Les bandeaux medicaux (solutions, technologies, marques) reutilisent
   les classes du bandeau portfolio, mais leur contenu est centre dans les deux
   langues : le CSS de page le demande, et les deux regles arabes heritees (celle
   ci-dessus, et le « margin: 0 » que le CSS de page tient de l agro) le battaient
   a la specificite. Sept classes contre six, sans !important. L agro garde son
   miroir (gauche en anglais, droite en arabe) : ces regles ne le visent pas. */
html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.dna-hero.medical-solution-hero .elementor-widget-heading h1.elementor-heading-title,
html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.dna-hero.medical-solution-hero p,
html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.dna-hero.medical-brand-hero .elementor-widget-heading h1.elementor-heading-title,
html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.dna-hero.medical-brand-hero p {
    text-align: center
}

html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.dna-hero.medical-solution-hero .content-wrap,
html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.dna-hero.medical-brand-hero .content-wrap {
    margin: 0 auto
}

.elementor-element.ineer-banner-section.portfolio-page p {
    font-size: 24px;
    line-height: 32px
}

.elementor-element.portfolio-sec-row .bg-white {
    background: #fff;
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0 1px 2px -1px #0000001a, 0 1px 3px #0000001a
}

.elementor-element.portfolio-sec-row .bg-white.partner-box {
    padding: 0
}

.elementor-element.portfolio-sec-row .bg-white.partner-box .global-box {
    padding: 32px;
    text-align: center
}

.elementor-element.portfolio-sec-row .partner-box h3 {
    margin-top: 0;
    margin-bottom: 23px;
    font-family: var(--dna);
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0px;
    text-align: center;
    color: #000
}

.elementor-element.portfolio-sec-row .partner-box img {
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: cover;
    background: #f5f7fa;
    padding: 19px 16px;
    border-radius: 14px;
    transition: all .5s ease-in-out
}

.elementor-element.portfolio-sec-row .partner-box p {
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 24px;
    padding: 0 !important
}

.elementor-element.portfolio-sec-row .partner-box p span {
    color: #ff7032;
    transition: all .5s ease
}

.elementor-element.portfolio-sec-row .partner-box:hover p span {
    text-decoration: underline
}

.elementor-element.portfolio-sec-row .partner-box:hover img {
    background: #ff70320d
}

.elementor-element.portfolio-sec-row .partner-box p:last-child {
    margin-bottom: 0
}

.elementor-element.portfolio-sec-row .partner-box p a:hover {
    text-decoration: underline;
    color: #ff7032
}

.elementor-element.portfolio-sec-row ul.elementor-icon-list-items li.elementor-icon-list-item {
    gap: 12px;
    margin-bottom: 16px
}

html[lang=ar] .elementor-element.portfolio-sec-row ul.elementor-icon-list-items li.elementor-icon-list-item {
    text-align: right;
    justify-content: start
}

html[lang=ar] .elementor-element.portfolio-sec-row .request-quote-box ul.elementor-icon-list-items li.elementor-icon-list-item:nth-child(2) .elementor-icon-list-icon svg {
    transform: scaleX(-1)
}

.elementor-element.portfolio-sec-row ul.elementor-icon-list-items li.elementor-icon-list-item:last-child {
    margin-bottom: 0
}

.elementor-element.portfolio-sec-row ul.elementor-icon-list-items li.elementor-icon-list-item svg {
    margin: 0;
    fill: transparent
}

.elementor-element.portfolio-sec-row ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-text {
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #000;
    padding: 0
}

.elementor-element.portfolio-sec-row .elementor-element.df-btn a {
    width: 100%
}

.elementor-element.portfolio-sec-row .elementor-widget-heading h2.elementor-heading-title {
    font-weight: 400;
    font-size: 30px;
    line-height: 36px;
    letter-spacing: 0px;
    margin-bottom: 0
}

.elementor-element.portfolio-sec-row p {
    padding-right: 23.66px
}

html[lang=ar] .elementor-element.portfolio-sec-row p {
    padding-left: 23.66px;
    padding-right: 0
}

.elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box {
    width: calc(50% - 12px)
}

.elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box h3.elementor-icon-box-title {
    font-family: Aileron;
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0px;
    color: #000;
    margin-top: 0;
    margin-bottom: 8px
}

html[lang=ar] .elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box h3.elementor-icon-box-title {
    text-align: right
}

html[lang=ar] .elementor-element.portfolio-sec-row .applications-box ul.elementor-icon-list-items li.elementor-icon-list-item {
    text-align: right;
    justify-content: start
}

.elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box p {
    padding-right: 10.34px;
    font-family: Aileron;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: #000
}

html[lang=ar] .elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box p {
    padding-left: 10.34px;
    padding-right: 0;
    text-align: right
}

.elementor-element.portfolio-sec-row .applications-box ul.elementor-icon-list-items li.elementor-icon-list-item {
    margin-bottom: 12px
}

.elementor-element.portfolio-sec-row .applications-box ul.elementor-icon-list-items li.elementor-icon-list-item:last-child {
    margin-bottom: 0
}

.elementor-element.ineer-banner-section.portfolio-page.led-portfolio .content-wrap {
    margin: 0 auto;
    max-width: 727.88px
}

html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.led-portfolio .content-wrap,
html[lang=ar] .elementor-element.ineer-banner-section.portfolio-page.IV-portfolio .content-wrap {
    margin: 0
}

.elementor-element.ineer-banner-section.portfolio-page.IV-portfolio .content-wrap {
    margin: 0 auto;
    max-width: 835.25px
}

.elementor-element.ineer-banner-section.portfolio-page {
    overflow: hidden
}

body .about-sec.who-we-are-sec .e-con-inner .left-col .counter-col {
    max-width: calc(50% - 12px);
    padding: 32px;
    background: #f5f7fa;
    border-radius: 16px
}

html[lang=ar] body .about-sec.who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-title {
    text-align: right;
    justify-content: start;
}

body .about-sec.who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-title {
    font-size: 16px;
    line-height: 24px;
    text-align: center
}

.our-mission-vision-sec .our-mission-vision-row .our-mission-vision-box {
    width: calc(50% - 24px);
    background: #fff;
    border-radius: 16px;
    padding: 40px
}

.our-mission-vision-sec .our-mission-vision-row .our-mission-vision-box h3.elementor-icon-box-title {
    margin-top: 0;
    margin-bottom: 16px;
    font-size: 30px;
    line-height: 36px;
    font-family: Aileron;
    font-weight: 400
}

.our-mission-vision-sec .our-mission-vision-row .our-mission-vision-box p.elementor-icon-box-description {
    font-family: Aileron;
    font-weight: 400
}

.why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item {
    gap: 16px
}

.why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item svg {
    margin: 0;
    fill: transparent
}

.why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item svg path {
    color: #ff7032
}

.why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-text {
    font-family: Aileron;
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    letter-spacing: 0px;
    color: #000;
    padding: 0
}

html[lang=ar] .why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-text {
    text-align: right
}

html[lang=ar] .why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item {
    justify-content: flex-start
}

.why-nexus-sec .why-nexus-row {
    margin: 0 auto;
    max-width: 896px
}

.elementor-widget-heading h2.elementor-heading-title {
    font-size: 48px;
    line-height: 48px;
    font-family: var(--dna);
    font-weight: 400;
    letter-spacing: -1.5px;
    color: #000
}

body {
    overflow-x: hidden
}

body.home footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main li.current_page_item .elementor-item {
    color: #ffffffb3
}

body.home footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main li.current_page_item .elementor-item:hover {
    color: #ff7032
}

.aos-small-up[data-aos=fade-up] {
    opacity: 0 !important;
    transform: translateY(20px) !important;
    will-change: transform, opacity
}

.aos-small-up[data-aos=fade-up].aos-animate {
    opacity: 1 !important;
    transform: translateY(0) !important
}

.aos-small-right[data-aos=fade-right] {
    transform: translate(-15px);
    opacity: 0;
    transition: transform 1.5s ease, opacity 1.5s ease
}

.aos-small-right[data-aos=fade-right].aos-animate {
    transform: translate(0);
    opacity: 1
}

.aos-small-right-to-left[data-aos=fade-left] {
    transform: translate(15px);
    opacity: 0;
    transition: transform 1.5s ease, opacity 1.5s ease
}

.aos-small-right-to-left[data-aos=fade-left].aos-animate {
    transform: translate(0);
    opacity: 1
}

.aos-small-zoom[data-aos=zoom-in] {
    transform: scale(.95) !important;
    opacity: 0 !important;
    transition: transform 1.5s ease, opacity 1.5s ease !important
}

.aos-small-zoom[data-aos=zoom-in].aos-animate {
    transform: scale(1) !important;
    opacity: 1 !important
}

.elementor-element.work-with-section .form-below p {
    font-size: 16px;
    line-height: 24px;
    color: #0009
}

.elementor-element.carrer-box-bottom-sec {
    background: linear-gradient(135deg, #292929, #ff7032cc)
}

body .elementor-element.carrer-box-bottom-sec .carrer-icon-box {
    max-width: 649px !important;
    margin: 0 auto;
    margin-bottom: 32px !important
}

.elementor-element.carrer-box-bottom-sec .carrer-icon-box .elementor-icon-box-title {
    margin-top: 0;
    font-family: Aileron;
    font-weight: 400;
    font-size: 30px;
    line-height: 36px;
    letter-spacing: 0px;
    text-align: center;
    color: #fff;
    margin-bottom: 16px
}

.elementor-element.carrer-box-bottom-sec .carrer-icon-box p {
    font-family: Aileron;
    font-weight: 400;
    font-size: 18px;
    line-height: 29.25px;
    letter-spacing: 0px;
    text-align: center;
    color: #fffc
}

.elementor-element.carrer-box-bottom-sec .elementor-element.df-btn a {
    gap: 8px;
    padding: 14px 44px;
    color: #000
}

.elementor-element.carrer-box-bottom-sec .elementor-element.df-btn a:before {
    background: #fff
}

.elementor-element.carrer-box-bottom-sec .elementor-element.df-btn a:hover:before {
    background: #ff7032
}

.elementor-element.carrer-box-bottom-sec .elementor-element.df-btn a:hover {
    color: #fff
}

.elementor-element.carrer-box-bottom-sec .elementor-element.df-btn a:hover svg {
    filter: brightness(1)
}

.elementor-element.carrer-box-bottom-sec .elementor-element.df-btn a svg {
    transition: all .6s ease;
    filter: brightness(0)
}

header .header-row .right-col {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px
}

.wpml-ls-legacy-dropdown-click {
    width: 100%
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
    padding-right: calc(10px + 2em)
}

html[lang=ar] .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
    padding-left: calc(10px + 2em) !important
}

.wpml-ls-legacy-dropdown-click a {
    font-family: Aileron;
    font-size: 15px;
    font-weight: 400;
    text-transform: uppercase;
    color: #000;
    padding: 10px;
    border: 1px solid #000
}

.wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
    background: url(../../../../wp-content/uploads/2025/12/arrow.svg) 91% 16px no-repeat transparent;
    background-size: 13px;
    width: 20px;
    height: 26px;
    border: none;
    top: -1px
}

.job-item {
    border: 1px solid #E5E7EB;
    width: 100%;
    padding: 33px;
    border-radius: 16px;
    margin-bottom: 40px;
    transition: all .3s ease-in-out
}

.job-item:hover {
    border-color: #ffd4c2;
    box-shadow: 0 14px 30px #00000026, 0 0 #00000040
}

.job-item:last-child {
    margin-bottom: 0
}

.job-top .elementor-element.df-btn a:hover:before {
    background: #000
}

.job-box-desc {
    background: #f5f7fa;
    border-radius: 14px;
    padding: 24px;
    width: calc(50% - 16px)
}

.job-box {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    padding-top: 31px
}

.job-desc {
    padding-top: 30px;
    font-size: 18px;
    line-height: 29.25px;
    color: #000c;
    border-top: 1px solid #F3F4F6;
    margin-top: 27px
}

h2.job-title {
    font-size: 24px;
    line-height: 32px;
    margin: 0;
    padding-bottom: 13px;
    transition: all .3s ease-in-out
}

.job-item:hover h2.job-title {
    color: #ff7032
}

span.job-badge {
    font-size: 14px;
    line-height: 20px;
    background: #ff70321a;
    padding: 4px 13px;
    border-radius: 100px;
    margin-bottom: 10px;
    display: inline-block;
    pointer-events: none
}

.job-meta {
    width: 74%;
    padding-right: 20px
}

.job-top .elementor-element.df-btn {
    width: 26%
}

.job-top {
    display: flex;
    flex-wrap: wrap
}

.job-box-desc ul {
    padding: 0;
    list-style: none
}

.job-box-desc ul li {
    position: relative;
    padding-left: 32px;
    margin-bottom: 12px;
    color: #000000b2
}

html[lang=ar] .job-box-desc ul li {
    padding-left: 0;
    padding-right: 32px;
    text-align: right
}

html[lang=ar] .job-top .elementor-element.df-btn {
    text-align: left
}

.job-top .elementor-element.df-btn a {
    gap: 12px;
    margin: 0 0 0 auto;
    padding: 14px 44px
}

.job-box-desc ul li:last-child {
    margin-bottom: 0
}

.job-box-desc ul li:after {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: 20px;
    height: 20px;
    background-image: url(../../../../wp-content/uploads/2025/12/list-icon.svg);
    background-repeat: no-repeat;
    background-size: contain
}

html[lang=ar] .job-box-desc ul li:after {
    left: auto;
    right: 0
}

.job-box-desc h3 {
    margin: 0 0 15px;
    font-size: 18px;
    line-height: 28px;
    position: relative;
    padding-left: 13px;
    font-weight: 600
}

.job-box-desc h3:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 4px;
    height: 24px;
    border-radius: 100px;
    background: #ff7032
}

html[lang=ar] .job-box-desc h3 {
    padding-left: 0;
    padding-right: 13px;
    text-align: right
}

html[lang=ar] .job-box-desc h3:after {
    left: auto;
    right: 0
}

.job-meta ul {
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px
}

.job-meta ul li {
    position: relative;
    padding-left: 23px;
    color: #0009
}

html[lang=ar] .job-meta ul li {
    padding-left: 0;
    padding-right: 23px
}

html[lang=ar] .job-meta ul li.location:after,
html[lang=ar] .job-meta ul li.time:after {
    left: auto;
    right: 0
}

.job-meta ul li.location:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url(../../../../wp-content/uploads/2025/11/location-icon.svg);
    background-repeat: no-repeat;
    background-size: contain
}

.job-meta ul li.time:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background-image: url(../../../../wp-content/uploads/2025/12/time-icon.svg);
    background-repeat: no-repeat;
    background-size: contain
}

body.home.wp-singular.page-template {
    padding-top: 0
}

body.error404,
body.page-id-388,
body.page-id-410,
body.page-id-529,
body.page-id-1975,
body.page-id-1972,
body.page-id-1951,
body.page-id-4384,
body.page-id-4385 {
    padding-top: 112px
}

body.error404 header>.elementor-element,
body.page-id-388 header>.elementor-element,
body.page-id-410 header>.elementor-element,
body.page-id-529 header>.elementor-element,
body.page-id-1975 header>.elementor-element,
body.page-id-1972 header>.elementor-element,
body.page-id-1951 header>.elementor-element,
body.page-id-4384 header>.elementor-element,
body.page-id-4385 header>.elementor-element {
    background: #292929;
    box-shadow: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a
}

body.error404 header.nav-down>.elementor-element,
body.page-id-388 header.nav-down>.elementor-element,
body.page-id-410 header.nav-down>.elementor-element,
body.page-id-1972 header.nav-down>.elementor-element,
body.page-id-1975 header.nav-down>.elementor-element,
body.page-id-529 header.nav-down>.elementor-element,
body.page-id-1951 header.nav-down>.elementor-element,
body.page-id-4384 header.nav-down>.elementor-element,
body.page-id-4385 header.nav-down>.elementor-element {
    background: #fff
}

body .single-typography h1 {
    text-align: left !important;
    padding-bottom: 20px;
    margin-bottom: 0 !important
}

html[lang=ar] body .single-typography h1,
html[lang=ar] body .single-typography h2,
html[lang=ar] body .single-typography h3,
html[lang=ar] body .single-typography h4,
html[lang=ar] body .single-typography h5,
html[lang=ar] body .single-typography h6 {
    text-align: right !important
}

body .single-typography h2,
body .single-typography h3,
body .single-typography h4,
body .single-typography h5,
body .single-typography h6 {
    color: #000;
    margin: 0;
    padding: 8px 0 10px;
    font-weight: 700;
    text-align: left;
    font-family: var(--dna)
}

body .single-typography h2 {
    font-size: 36px;
    line-height: 54px
}

body .single-typography h3 {
    font-size: 32px;
    line-height: 54px
}

body .single-typography h4 {
    font-size: 30px;
    line-height: 40px
}

body .single-typography h5 {
    font-size: 28px;
    line-height: 38px
}

body .single-typography h6 {
    font-size: 26px;
    line-height: 36px
}

.single-typography ul li ul {
    padding-top: 8px;
    margin-bottom: 0;
    padding-bottom: 0
}

.single-typography p img {
    vertical-align: bottom
}

.single-typography ul li,
.single-typography ol li,
.single-typography p {
    color: #000
}

.single-typography p {
    margin-bottom: 30px
}

.single-typography ol,
.single-typography ul {
    padding: 0 0 30px;
    list-style: none
}

html[lang=ar] .single-typography ol li,
html[lang=ar] .single-typography ul li {
    padding-left: 0;
    padding-right: 19px
}

html[lang=ar] .single-typography ul li:before {
    left: auto;
    right: 0;
    transform: rotate(180deg)
}

.single-typography ol li,
.single-typography ul li {
    margin-bottom: 8px;
    position: relative;
    padding-left: 19px;
    font-size: 20px;
    line-height: 30px;
    font-family: Aileron
}

.single-typography ol li {
    padding-left: 34px;
    counter-increment: custom-counter;
    margin-bottom: 10px
}

.single-typography ol li:before {
    content: counter(custom-counter);
    position: absolute;
    left: 0;
    top: 3.5px;
    height: 23px;
    color: #fff;
    width: 23px;
    background: #ff7032;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    font-weight: 600;
    line-height: 27px;
    border-radius: 50px;
    font-family: Aileron;
    text-align: center
}

.single-typography ol li:last-child,
.single-typography ul li:last-child {
    margin-bottom: 0
}

.single-typography ul li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 7px;
    height: 14px;
    background-color: #ff7032;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.808' height='11.647' viewBox='0 0 6.808 11.647'%3E%3Cpath id='Union_1' data-name='Union 1' d='M.288,11.358a.984.984,0,0,1,0-1.391L4.432,5.823.288,1.679A.984.984,0,1,1,1.679.288L6.52,5.127a.984.984,0,0,1,0,1.391l-4.84,4.839a.982.982,0,0,1-1.391,0Z' transform='translate(0 0)' fill='%23ff6e15'/%3E%3C/svg%3E%0A");
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.808' height='11.647' viewBox='0 0 6.808 11.647'%3E%3Cpath id='Union_1' data-name='Union 1' d='M.288,11.358a.984.984,0,0,1,0-1.391L4.432,5.823.288,1.679A.984.984,0,1,1,1.679.288L6.52,5.127a.984.984,0,0,1,0,1.391l-4.84,4.839a.982.982,0,0,1-1.391,0Z' transform='translate(0 0)' fill='%23ff6e15'/%3E%3C/svg%3E%0A");
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    transition: background-color .3s, opacity .3s
}

.single-typography p:last-child {
    margin-bottom: 0
}

.single-typography li a,
.single-typography p a {
    transition: all .5s ease;
    color: #ff7032;
    font-weight: 600
}

.single-typography li a:hover,
.single-typography p a:hover {
    color: #000
}

.single-typography b,
.single-typography strong {
    font-weight: 600
}

.skip-link.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important
}

.skip-link.screen-reader-text:focus {
    background-color: #fff;
    color: #000;
    display: block;
    top: 5px;
    left: 5px;
    width: auto;
    height: auto;
    clip: auto !important;
    clip-path: none !important;
    z-index: 100000;
    padding: 15px 23px;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px #0009;
    text-decoration: none;
    font-size: 1rem;
    font-weight: 700
}

.elementor-element.work-with-section .contact-form .contact-form-field input:-webkit-autofill,
.elementor-element.work-with-section .contact-form .contact-form-field textarea:-webkit-autofill,
.elementor-element.work-with-section .contact-form .contact-form-field select:-webkit-autofill {
    -webkit-text-fill-color: rgba(113, 113, 130, 1) !important;
    -webkit-box-shadow: 0 0 0px 1000px rgba(245, 247, 250, 1) inset !important;
    transition: background-color 5000s ease-in-out 0s
}

.elementor-element.work-with-section .contact-form .contact-form-field input:-webkit-autofill:hover,
.elementor-element.work-with-section .contact-form .contact-form-field input:-webkit-autofill:focus,
.elementor-element.work-with-section .contact-form .contact-form-field textarea:-webkit-autofill:hover,
.elementor-element.work-with-section .contact-form .contact-form-field textarea:-webkit-autofill:focus,
.elementor-element.work-with-section .contact-form .contact-form-field select:-webkit-autofill:hover,
.elementor-element.work-with-section .contact-form .contact-form-field select:-webkit-autofill:focus {
    -webkit-text-fill-color: rgba(113, 113, 130, 1) !important;
    -webkit-box-shadow: 0 0 0px 1000px rgba(245, 247, 250, 1) inset !important
}

body .elementor-element.ineer-banner-section.portfolio-page {
    min-height: 490px !important;
}

body footer .ftr-row .ftr-col-3 .elementor-widget-icon-box .elementor-icon-box-description br.loc {
    display: none;
}

@media screen and (max-width:1440px) {
    .who-we-are-sec .right-col .img-col:after {
        right: -20px;
        bottom: -20px
    }
}

@media screen and (max-width:1216px) {
    body.home p {
        font-size: 18px;
        line-height: 30px;
        margin-bottom: 20px
    }

    .elementor-element.df-btn a {
        padding: 14px 30px
    }

    .elementor-element.hm-banner .elementor-widget-heading h1.elementor-heading-title {
        font-size: 55px;
        line-height: 65px
    }

    .elementor-element.hm-banner p {
        font-size: 18px;
        line-height: 33px
    }

    .elementor-element.hm-banner .scroll-mouse {
        width: 22px;
        height: 38px
    }

    .elementor-element.hm-banner .scroll-mouse:after {
        width: 3px;
        height: 6px
    }

    body.home .elementor-widget-heading h2.elementor-heading-title {
        font-size: 48px;
        line-height: 58px
    }

    body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number,
    body .who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-number-suffix {
        font-size: 30px;
        line-height: 34px
    }

    body .who-we-are-sec .e-con-inner .left-col .counter-col {
        max-width: calc(100% / 3 - 21.33px)
    }

    .elementor-element.center-title-sec h2 {
        margin-bottom: 12px
    }

    .elementor-element.what-we-do-sec .icon-box-row .icon-box-col {
        padding: 30px;
        width: calc(100% / 3 - 20px)
    }

    .elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-wrapper .elementor-image-box-img img {
        width: 50px;
        height: 50px
    }

    .elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-wrapper .elementor-image-box-img {
        margin-bottom: 10px
    }

    .elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-content .elementor-image-box-title {
        font-size: 22px;
        margin-bottom: 10px;
        line-height: 30px
    }

    .elementor-element.work-with-section .contact-form {
        padding: 40px
    }

    .elementor-element.work-with-section .contact-form .contact-form-field label {
        font-size: 15px;
        line-height: 22px
    }

    body footer .ftr-row .ftr-col-1 {
        width: 45%;
        padding-right: 70px
    }

    html[lang=ar] body footer .ftr-row .ftr-col-1 {
        padding-right: 0;
        padding-left: 70px
    }

    body footer .ftr-row .ftr-col-2 {
        width: 21%;
        padding-right: 40px
    }

    body footer .ftr-row .ftr-col-3 {
        width: 34%;
    }

    html[lang=ar] body footer .ftr-row .ftr-col-2 {
        padding-right: 0;
        padding-left: 40px
    }

    body footer .ftr-row .elementor-widget-heading h2.elementor-heading-title {
        margin-bottom: 15px
    }

    .elementor-element.what-we-do-sec .icon-box-row .icon-box-col .elementor-image-box-content .elementor-image-box-description br {
        display: none
    }

    .elementor-element.portfolio-sec .portfolio-row .portfolio-box {
        width: calc(100% / 3 - 17px)
    }

    .elementor-element.portfolio-sec .portfolio-row .portfolio-box .elementor-image-box-content .elementor-image-box-title {
        font-size: 21px;
        line-height: 29px
    }

    .elementor-element.portfolio-sec .portfolio-row .portfolio-box .elementor-image-box-content {
        bottom: 15px;
        padding: 0 15px
    }

    body .elementor-element.work-with-section .global-row .global-box {
        padding: 25px
    }

    body .elementor-element.work-with-section .global-row .html-box-col {
        width: calc(100% / 3 - 17px)
    }

    .bg-design {
        margin-bottom: 20px
    }

    header .header-row {
        padding: 25px 0
    }

    header .header-row nav.nav-link {
        padding: 30px 45px
    }

    li.menu_text {
        margin-bottom: 35px !important
    }

    header .header-row nav.nav-link ul.menu li a {
        font-size: 28px;
        line-height: 32px;
        padding: 12px 0
    }

    header .header-row nav.nav-link ul.menu li ul.sub-menu li a {
        font-size: 16px;
        line-height: 24px
    }

    span.mobile-toggle {
        height: 57px
    }

    span.mobile-toggle:after {
        width: 12px;
        height: 12px;
        top: 20px
    }

    header .header-row .logo-col {
        width: 90px
    }

    header .header-row .hamburger-menu svg {
        height: 20px;
        width: 20px
    }

    button.mobile_menu_bar_inner {
        width: 20px;
        height: 20px
    }

    #who-we-are,
    #product-portfolio,
    #work-with-dna-nexus {
        scroll-margin-top: 140px
    }

    .elementor-element.ineer-banner-section .bg-design {
        margin-bottom: 25px
    }

    .elementor-widget-heading h1.elementor-heading-title {
        font-size: 48px;
        line-height: 58px;
        margin-bottom: 12px
    }

    p {
        font-size: 16px;
        line-height: 28px;
        margin-bottom: 15px
    }

    .elementor-element.work-with-section .contact-form h2 {
        font-size: 26px;
        line-height: 32px;
        margin-bottom: 12px
    }

    .elementor-element.work-with-section .contact-form .contact-form-title {
        margin-bottom: 20px
    }

    .elementor-element.work-with-section .contact-form .contact-form-field input,
    .elementor-element.work-with-section .contact-form .contact-form-field textarea,
    .elementor-element.work-with-section .contact-form .contact-form-field select {
        padding: 11.5px 10px !important
    }

    .elementor-element.work-with-section .contact-form .contact-form-field select {
        height: 42px;
        padding-right: 25px !important
    }

    .contact-button button.wpcf7-form-control.wpcf7-submit {
        padding: 13px
    }

    .elementor-element.partner-form-heading .elementor-widget-heading h2.elementor-heading-title {
        font-size: 24px;
        line-height: 32px
    }

    .elementor-element.partner-form-heading p {
        font-size: 16px;
        line-height: 26px
    }

    .elementor-element.portfolio-sec-row .bg-white {
        padding: 25px
    }

    .elementor-element.portfolio-sec-row .elementor-widget-heading h2.elementor-heading-title {
        font-size: 26px;
        line-height: 32px
    }

    .elementor-element.portfolio-sec-row .partner-box h3 {
        font-size: 18px;
        line-height: 26px;
        margin-bottom: 18px
    }

    .elementor-element.portfolio-sec-row ul.elementor-icon-list-items li.elementor-icon-list-item {
        gap: 10px;
        margin-bottom: 12px
    }

    .elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box {
        width: calc(50% - 10px)
    }

    .elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box h3.elementor-icon-box-title {
        font-size: 18px;
        line-height: 26px;
        margin-bottom: 5px
    }

    .elementor-element.portfolio-sec-row p,
    .elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box p {
        padding-right: 0
    }

    html[lang=ar] .elementor-element.portfolio-sec-row p,
    html[lang=ar] .elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box p {
        padding-left: 0
    }

    .elementor-element.portfolio-sec-row .key-features-box .key-features-icon-box p br {
        display: none
    }

    .elementor-element.ineer-banner-section.portfolio-page .elementor-widget-heading h1.elementor-heading-title {
        font-size: 36px;
        line-height: 40px
    }

    .elementor-element.ineer-banner-section.portfolio-page p {
        font-size: 22px;
        line-height: 30px
    }

    body .about-sec.who-we-are-sec .e-con-inner .left-col .counter-col .elementor-counter .elementor-counter-title {
        font-size: 15px;
        line-height: 23px
    }

    body .about-sec.who-we-are-sec .e-con-inner .left-col .counter-col {
        padding: 25px
    }

    .our-mission-vision-sec .our-mission-vision-row .our-mission-vision-box {
        width: calc(50% - 20px);
        padding: 30px
    }

    .our-mission-vision-sec .our-mission-vision-row .our-mission-vision-box h3.elementor-icon-box-title {
        margin-bottom: 12px;
        font-size: 26px;
        line-height: 32px
    }

    .elementor-widget-heading h2.elementor-heading-title {
        font-size: 40px;
        line-height: 46px
    }

    .why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item {
        gap: 12px
    }

    .why-nexus-sec .why-nexus-row ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-text {
        font-size: 16px;
        line-height: 26px
    }

    .elementor-element.carrer-box-bottom-sec .carrer-icon-box .elementor-icon-box-title {
        font-size: 26px;
        line-height: 32px;
        margin-bottom: 12px
    }

    .elementor-element.carrer-box-bottom-sec .carrer-icon-box p {
        font-size: 16px;
        line-height: 28px
    }

    body .elementor-element.carrer-box-bottom-sec .carrer-icon-box {
        margin-bottom: 25px !important
    }

    .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle {
        padding-right: calc(10px + 1.7em)
    }

    .wpml-ls-legacy-dropdown-click a.wpml-ls-item-toggle:after {
        background-size: 12px;
        width: 15px;
        height: 24px
    }

    .wpml-ls-legacy-dropdown-click a {
        font-size: 14px
    }

    .elementor-element.carrer-box-bottom-sec .elementor-element.df-btn a {
        padding: 11px 30px
    }

    html[lang=ar] .elementor-element.work-with-section .contact-form .contact-form-field select {
        padding-right: 10px !important;
        padding-left: 25px !important
    }

    body footer .ftr-row .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-nav-menu li {
        margin-bottom: 10px
    }

    .elementor-element.hm-banner br {
        display: block
    }

    body.error404,
    body.page-id-388,
    body.page-id-410,
    body.page-id-529,
    body.page-id-1975,
    body.page-id-1972,
    body.page-id-1951,
    body.page-id-4384,
    body.page-id-4385 {
        padding-top: 90.36px
    }

    .single-typography ol li,
    .single-typography ul li {
        font-size: 18px;
        line-height: 30px
    }

    body .single-typography h2,
    body .single-typography h3,
    body .single-typography h4,
    body .single-typography h5,
    body .single-typography h6 {
        color: #000;
        margin: 0;
        padding: 8px 0 10px;
        font-weight: 700;
        text-align: left;
        font-family: var(--dna)
    }

    body .single-typography h2 {
        font-size: 32px;
        line-height: 42px
    }

    body .single-typography h3 {
        font-size: 30px;
        line-height: 40px
    }

    body .single-typography h4 {
        font-size: 26px;
        line-height: 36px
    }

    body .single-typography h5 {
        font-size: 24px;
        line-height: 34px
    }

    body .single-typography h6 {
        font-size: 22px;
        line-height: 32px
    }

    .single-typography ol,
    .single-typography ul {
        padding-bottom: 24px
    }

    .single-typography p {
        margin-bottom: 24px
    }

    .single-typography ul li {
        margin-bottom: 6px
    }

    .single-typography ol li {
        margin-bottom: 8px
    }

    .job-top .elementor-element.df-btn a {
        padding: 11px 30px
    }

    body .elementor-element.ineer-banner-section.portfolio-page {
        min-height: 500px !important;
    }
	body .elementor-element.work-with-section .global-row .global-box img {
	height: 110px;
}
}

@media screen and (max-width:991px) {

    .elementor-element.portfolio-sec .portfolio-row .portfolio-box,
    body .elementor-element.work-with-section .global-row .html-box-col {
        width: calc(100% / 3 - 14px)
    }

    body .elementor-element.work-with-section .global-row .global-box img {
        padding: 20px 35px
    }

    header .header-row {
        padding: 20px 0
    }

    header .header-row nav.nav-link ul.menu li ul.sub-menu li {
        width: 100%;
        display: block
    }

    header .header-row nav.nav-link ul.menu li ul.sub-menu li:nth-child(odd) {
        margin-right: 0
    }

    header .header-row nav.nav-link ul.menu li ul.sub-menu li:nth-child(2n) {
        margin-left: 0
    }

    header .header-row nav.nav-link ul.menu li ul.sub-menu li {
        margin-bottom: 16px
    }

    .elementor-element.portfolio-sec-row .partner-box img {
        max-width: 250px
    }

    .our-mission-vision-sec .our-mission-vision-row .our-mission-vision-box {
        width: calc(50% - 15px);
        padding: 30px
    }

    .who-we-are-sec .right-col .img-col {
        max-width: 500px;
        margin: 0 auto
    }

    .elementor-element.portfolio-sec-row .elementor-element.df-btn a {
        width: max-content;
        margin: 0
    }

    body.error404,
    body.page-id-388,
    body.page-id-410,
    body.page-id-529,
    body.page-id-1975,
    body.page-id-1972,
    body.page-id-1951,
    body.page-id-4384,
    body.page-id-4385 {
        padding-top: 80.36px
    }

    .job-box {
        gap: 25px
    }

    .job-box-desc {
        width: calc(50% - 13px)
    }

    body footer .ftr-row .ftr-col-3 .elementor-widget-icon-box .elementor-icon-box-description br {
        display: none;
    }

    .elementor-element.portfolio-sec-row .portfolio-sec-right-col {
        max-width: 400px;
    }

    .elementor-element.hm-banner .elementor-widget-heading h1.elementor-heading-title {
        font-size: 30px;
        line-height: 44px
    }

    body.home .elementor-widget-heading h2.elementor-heading-title {
        font-size: 36px;
        line-height: 46px
    }

    .elementor-widget-heading h1.elementor-heading-title {
        font-size: 30px;
        line-height: 40px;
        margin-bottom: 8px
    }

    header .header-row nav.nav-link ul.menu li a {
        font-size: 20px;
        line-height: 28px;
        padding: 8px 0
    }

    header .header-row nav.nav-link {
        padding: 20px 30px
    }

    span.mobile-toggle {
        height: 45px
    }

    span.mobile-toggle:after {
        top: 14px
    }

    .elementor-element.portfolio-sec-row .elementor-widget-heading h2.elementor-heading-title {
        font-size: 22px;
        line-height: 28px
    }

    .elementor-widget-heading h2.elementor-heading-title {
        font-size: 28px;
        line-height: 34px
    }

    .elementor-element.ineer-banner-section.portfolio-page .elementor-widget-heading h1.elementor-heading-title {
        font-size: 24px;
        line-height: 34px
    }

    .elementor-element.ineer-banner-section.portfolio-page p {
        font-size: 20px;
        line-height: 28px
    }

    .elementor-element.ineer-banner-section p {
        font-size: 18px;
        line-height: 26px;
    }

    .elementor-element.partner-form-heading .elementor-widget-heading h2.elementor-heading-title {
        font-size: 20px;
        line-height: 28px
    }

    .elementor-element.work-with-section .contact-form h2 {
        font-size: 22px;
        line-height: 28px;
        margin-bottom: 8px
    }

    h2.job-title {
        font-size: 21px;
        line-height: 29px;
        padding-bottom: 10px
    }

    .elementor-element.carrer-box-bottom-sec .carrer-icon-box .elementor-icon-box-title {
        font-size: 22px;
        line-height: 38px;
        margin-bottom: 10px
    }

    body footer .ftr-row .ftr-col-2 {
        width: 22%;
    }

    body footer .ftr-row .ftr-col-3 {
        width: 33%;
    }
    body footer .ftr-row .ftr-col-1 .elementor-element.elementor-widget-text-editor p{max-width: 220px;}
}

/* @media screen and (max-width:898px) {
    body footer .ftr-row .ftr-col-3 .elementor-widget-icon-box .elementor-icon-box-description br.loc {
        display: block;
    }
} */

#apply-clinical-product-specialist,
#apply-accounting-hr-office-manager,
#apply-senior-medical-aesthetic-sales-specialist,
#apply-medical-aesthetic-sales-specialist {
    scroll-margin-top: 170px;
}

@media screen and (max-width: 1216px) {
    #apply-clinical-product-specialist,
    #apply-accounting-hr-office-manager,
    #apply-senior-medical-aesthetic-sales-specialist,
    #apply-medical-aesthetic-sales-specialist {
        scroll-margin-top: 140px;
    }
}


/* ---------------------------------------------------------------------------
   FORMULAIRE DE CANDIDATURE — page Careers (2026-08-24)
   Portee : .dna-apply-form uniquement. Les autres formulaires du site (Contact,
   Partners) ne bougent pas d'un pixel : ils n'ont pas cette classe.
   Les valeurs reprennent le vocabulaire deja en place dans cette feuille :
   #ff7032 (l'orange du site, cf. span.job-badge), rayon 10px (les boutons),
   la police Aileron heritee du theme.
   --------------------------------------------------------------------------- */

/* Les champs s'arrondissent, comme les cartes et les boutons du site. */
.dna-apply-form .row-field input,
.dna-apply-form .textarea-field input,
.dna-apply-form .textarea-field textarea {
    border-radius: 10px;
}

/* Le selecteur de fichier arrivait brut du navigateur, seul element de la page
   a ne suivre aucune regle du site. */
.dna-apply-form input[type="file"] {
    border: 1px solid #666;
    border-radius: 10px;
    padding: 8px 12px;
    width: 100%;
    background: #fff;
    font-family: inherit;
    font-size: 15px;
    color: #000c;
}

.dna-apply-form input[type="file"]::file-selector-button {
    border: 1px solid #ff7032;
    border-radius: 8px;
    background: #ff70321a;
    color: #000;
    font-family: inherit;
    font-size: 14px;
    padding: 6px 16px;
    margin-right: 14px;
    cursor: pointer;
    transition: background .3s ease-in-out;
}

.dna-apply-form input[type="file"]::file-selector-button:hover {
    background: #ff703233;
}

/* La case de consentement etait collee a son texte et au bouton. */
.dna-apply-form .dna-consent {
    margin-top: 18px;
}

.dna-apply-form .dna-consent .wpcf7-list-item {
    margin: 0;
}

/* CF7 emboite input et libelle dans un <label> : c'est LUI qu'il faut mettre en
   flex, pas le .wpcf7-list-item qui l'enveloppe. */
.dna-apply-form .dna-consent .wpcf7-list-item label {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
}

.dna-apply-form .dna-consent input[type="checkbox"] {
    margin-top: 4px;
    width: 16px;
    height: 16px;
    accent-color: #ff7032;
    flex: 0 0 auto;
}

/* Le bouton d'envoi : orange plein, texte et fleche blancs, texte centre. */
.dna-apply-form .dna-apply-submit {
    margin-top: 22px;
}

.dna-apply-form .dna-apply-submit button.wpcf7-form-control.wpcf7-submit {
    background: #ff7032;
    border: 1px solid #ff7032;
    color: #fff;
    border-radius: 10px;
    padding: 11px 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
    transition: background .3s ease-in-out, border-color .3s ease-in-out;
}

.dna-apply-form .dna-apply-submit button.wpcf7-form-control.wpcf7-submit:hover {
    background: #e35f22;
    border-color: #e35f22;
}

.dna-apply-form .dna-apply-submit button.wpcf7-form-control.wpcf7-submit svg path {
    stroke: #fff;
}

/* Sans le bouton « Apply Now », le titre de l'offre reprend toute la largeur. */
.job-top-sans-bouton .job-meta {
    width: 100%;
    padding-right: 0;
}

/* ---------------------------------------------------------------------------
   LES QUATRE ANCRES ARABES. Mesure du 2026-08-24 : leur scroll-margin-top valait
   0 px face a un bandeau fixe de 112 px, donc le champ Nom arrivait CACHE sous
   l'en-tete. Memes valeurs que les ancres anglaises et que #who-we-are et ses
   voisines, plus haut dans cette feuille : c'est la convention du theme.
   --------------------------------------------------------------------------- */

#apply-clinical-product-specialist-ar,
#apply-accounting-hr-office-manager-ar,
#apply-senior-medical-aesthetic-sales-specialist-ar,
#apply-medical-aesthetic-sales-specialist-ar {
    scroll-margin-top: 170px;
}

@media screen and (max-width: 1216px) {
    #apply-clinical-product-specialist-ar,
    #apply-accounting-hr-office-manager-ar,
    #apply-senior-medical-aesthetic-sales-specialist-ar,
    #apply-medical-aesthetic-sales-specialist-ar {
        scroll-margin-top: 140px;
    }
}


/* ---------------------------------------------------------------------------
   PAGES CARRIERES MEDICALES — 4454 sur med.dnanexus.eg/careers/ et, depuis le
   2026-08-27, 4455 sur med.dnanexus.eg/ar/careers/
   (2026-08-24, ouvert a l'arabe le 2026-08-27)

   Portee : les classes `dna-careers-*`, `dna-role-*`, `dna-why-*` et `dna-btn`,
   toutes emises par le seul bloc de `functions.php` garde sur ces deux pages.
   Aucune regle existante n'est modifiee : les deux pages agro, qui gardent
   l'ancien rendu, ne rencontrent aucune de ces classes. Le sens de lecture est
   traite en fin de feuille, sous « PAGE CARRIERES ARABE ».

   LES COULEURS SONT CELLES DE LA FEUILLE : #ff7032 (l'orange du site),
   #e35f22 au survol, #E5E7EB pour les filets, #f5f7fa pour les tuiles.
   L'ENCRE DES BOUTONS PLEINS EST SOMBRE, et c'est un choix : du blanc sur
   #ff7032 donne 2,77:1, sous le minimum lisible. Du #141414 sur le meme
   orange donne 6,2:1. Le precedent est deja dans cette feuille — la tuile
   `span.job-badge` et le bouton de choix de fichier posent tous deux du texte
   sombre sur de l'orange.
   --------------------------------------------------------------------------- */

/* L'attribut `hidden` est battu par les `display` du theme : il faut le dire. */
.dna-role-panel[hidden] {
    display: none !important;
}

/* --- les boutons, partages par les quatre sections --- */

.dna-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-family: inherit;
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    text-align: center;
    padding: 12px 26px;
    border-radius: 10px;
    border: 1px solid #ff7032;
    text-decoration: none;
    cursor: pointer;
    transition: background .3s ease-in-out, border-color .3s ease-in-out;
}

.dna-btn-plein,
.dna-btn-plein:visited {
    background: #ff7032;
    color: #fff;
}

.dna-btn-plein:hover,
.dna-btn-plein:focus {
    background: #e35f22;
    border-color: #e35f22;
    color: #fff;
}

.dna-btn-clair,
.dna-btn-clair:visited {
    background: #fff;
    color: #141414;
}

.dna-btn-clair:hover,
.dna-btn-clair:focus {
    background: #ff70321a;
    color: #141414;
}

/* Le parcours au clavier doit se VOIR. */
.dna-btn:focus-visible {
    outline: 3px solid #141414;
    outline-offset: 3px;
}

/* --- section 1 : les deux appels du bandeau --- */

.dna-careers-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: center;
    margin-top: 26px;
}

/* --- titres et chapeaux des sections 2 a 4 --- */

.dna-careers-h2 {
    font-size: 36px;
    line-height: 46px;
    margin: 0 0 12px;
}

.dna-careers-intro {
    font-size: 18px;
    line-height: 29.25px;
    color: #000c;
    max-width: 760px;
    margin: 0;
}

/* --- section 2 : Why DNA Nexus --- */

.dna-careers-why {
    padding-bottom: 56px;
}

.dna-why-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 32px;
    margin-top: 32px;
}

.dna-why-card {
    background: #fff;
    border: 1px solid #E5E7EB;
    border-radius: 16px;
    padding: 28px;
}

.dna-why-title {
    font-size: 22px;
    line-height: 30px;
    margin: 0 0 10px;
}

.dna-why-text {
    font-size: 17px;
    line-height: 27px;
    color: #000c;
    margin: 0;
}

/* --- section 3 : Open Roles --- */

.dna-careers-roles .jobs-wrapper {
    margin-top: 32px;
}

.dna-role-top {
    align-items: center;
}

.dna-role-meta {
    font-size: 16px;
    line-height: 24px;
    color: #000c;
    margin: 0;
}

.dna-role-actions {
    width: 26%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

/* Le panneau : le filet le separe de la fiche, et la description ne pose plus
   le sien — les annonces 3 et 4 n'en ont pas, elles ouvriraient sans separation. */
.dna-role-panel {
    margin-top: 24px;
    border-top: 1px solid #F3F4F6;
}

.dna-role-panel > .job-desc {
    border-top: 0;
    margin-top: 0;
    padding-top: 24px;
}

.dna-role-panel > .job-box:first-child {
    padding-top: 24px;
}

.dna-role-panel-actions {
    padding-top: 28px;
}

/* --- le formulaire partage --- */

.dna-careers-apply {
    margin-top: 48px;
    background: #fff;
    border: 1px solid #E5E7EB;
    border-radius: 16px;
    padding: 33px;
}

.dna-apply-heading {
    font-size: 22px;
    line-height: 30px;
    margin: 0 0 18px;
}

#dna-selected-role {
    font-weight: 700;
}

/* --- section 4 : l'appel final --- */

.dna-careers-cta {
    margin-top: 56px;
    padding-top: 40px;
    border-top: 1px solid #E5E7EB;
}

.dna-careers-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 24px;
}

/* --- les ancres des deux sections, meme convention que les quatre offres --- */

#open-roles,
#dna-careers-apply {
    scroll-margin-top: 170px;
}

@media screen and (max-width: 1216px) {

    #open-roles,
    #dna-careers-apply {
        scroll-margin-top: 140px;
    }
}

@media screen and (max-width: 767px) {

    .dna-careers-h2 {
        font-size: 28px;
        line-height: 36px;
    }

    .dna-role.job-item {
        padding: 24px;
    }

    .dna-role-top .job-meta,
    .dna-role-actions {
        width: 100%;
        padding-right: 0;
    }

    .dna-role-actions {
        justify-content: flex-start;
        margin-top: 18px;
    }

    .dna-careers-apply {
        padding: 24px;
    }
}

/* Deux boutons cote a cote ne tiennent pas sur un telephone : ils s'empilent
   et prennent toute la largeur plutot que de couper leur libelle. */
@media screen and (max-width: 560px) {

    .dna-careers-hero-actions,
    .dna-careers-cta-actions,
    .dna-role-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .dna-careers-hero-actions .dna-btn,
    .dna-careers-cta-actions .dna-btn,
    .dna-role-actions .dna-btn {
        width: 100%;
    }
}


/* LES DEUX RETOUCHES DES CARTES D'OFFRE (2026-08-25). Elles etaient imprimees
   en ligne dans la page, sous `<style id="dna-careers-cartes">` ; elles sont
   reprises ici a l'identique, declaration pour declaration.
     1. le titre de l'offre virait a l'orange des que la souris entrait dans la
        carte, pas sur le titre lui-meme : la couleur de survol est epinglee
        sur celle du repos.
     2. le resume de l'offre etait a 18px/29.25px, deux pixels de plus que les
        puces des encadres et que le corps du site : il rentre dans le rang. */
.job-item:hover h2.job-title {
    color: #000
}

.job-desc {
    font-size: 16px;
    line-height: 26px
}


/* ---------------------------------------------------------------------------
   PAGE CARRIERES ARABE — 4455, servie sur med.dnanexus.eg/ar/careers/
   (2026-08-27)

   Le bloc anglais n'a jamais porte de regle de sens : il n'en avait pas
   besoin. Les memes classes servent maintenant les deux langues, et seules les
   proprietes PHYSIQUES demandent a etre retournees. `justify-content:
   flex-end` et `flex-start`, `margin: 0`, `text-align` et l'ordre des boites
   en `flex` heritent du sens du document : ils se retournent seuls, et une
   regle de plus les casserait.

   Les regles historiques `html[lang=ar] .job-box-desc ...` et
   `html[lang=ar] .job-meta ul li ...`, plus haut dans cette feuille, habillent
   deja le contenu des panneaux : puces, titres d'encadre et ligne d'etat.
   Rien n'y est modifie.
   --------------------------------------------------------------------------- */

/* La fiche compacte : `.job-meta` porte 20px de marge interne vers son bouton,
   ecrits a droite depuis 2025. En arabe le bouton est a gauche. */
html[lang=ar] .dna-role-top .job-meta {
    padding-right: 0;
    padding-left: 20px;
}

/* Sur telephone, le bouton passe sous le titre et la marge n'a plus d'objet :
   la regle anglaise la retire a droite, celle-ci la retire a gauche. */
@media screen and (max-width: 767px) {

    html[lang=ar] .dna-role-top .job-meta,
    html[lang=ar] .dna-role-actions {
        padding-left: 0;
    }
}

/* 2026-09-05. Le logo de marque au-dessus du nom du produit (tache
   pill-bubbles, decision d Elias) : hauteur par marque en variable, encre
   egalisee ; centre au telephone. */
.medical-hero .medical-hero-brand {
    margin: 0 0 16px;
    line-height: 0;
}
.medical-hero .medical-hero-brand img.dna-brand-logo {
    display: inline-block;
    width: auto;
    max-width: 100%;
    height: var(--dna-logo-h, 44px);
    vertical-align: middle;
}
/* 2026-09-05 soir (tache hero-produit-ar-droite, decision d Elias sur capture
   de /ar/products/medifuge-cgf/) : en arabe, le logo et le titre latin se calent
   a DROITE, comme le chapo arabe et le bouton. Le CSS de page pose
   `unicode-bidi: plaintext` sur ces blocs avec `text-align: start` : un nom
   latin ou une image sans lettre arabe prennent alors le sens gauche-droite et
   partent a gauche. `right` est physique, il ne depend pas du sens. Sept
   classes et un attribut contre les six classes de la regle de page. */
html[lang=ar] body .medical-hero .elementor-element.medical-hero-body .elementor-widget.medical-hero-brand-wrap p.medical-hero-brand,
html[lang=ar] body .medical-hero .elementor-element.medical-hero-body .elementor-widget-heading.medical-hero-title h1.elementor-heading-title {
    text-align: right;
}
/* Meme soir, meme capture (« CGF MF 200 sur la meme ligne ») : le nom du
   produit passe de 70 a 60 px a partir de 1217 px, les deux langues. A 1512 la
   colonne fait 537 px : a 70 px, 5 fiches sur 61 tiennent sur 3 ou 4 lignes
   (MEDIFUGE CGF MF 200, Series 2 CONTOUR PLUS, NUMATRIX Micrograft Kit, PV 200P
   et 200R) ; a 60 px, MEDIFUGE tient sur deux lignes, MEDIFUGE puis CGF MF 200.
   60 est le cran « h1 banniere interne » de la charte ; l interligne garde le
   rapport 80/70 du hero. Cinq classes et un type contre les quatre classes de
   la regle .hm-banner du theme. Les autres paliers (55 sous 1216, 30 au
   telephone) ne bougent pas. */
@media (min-width: 1217px) {
    .medical-hero .elementor-element.medical-hero-body .elementor-widget-heading.medical-hero-title h1.elementor-heading-title {
        font-size: 60px;
        line-height: 68px;
    }
}
@media (max-width: 767px) {
    .medical-hero .medical-hero-brand,
    html[lang=ar] body .medical-hero .elementor-element.medical-hero-body .elementor-widget.medical-hero-brand-wrap p.medical-hero-brand,
    html[lang=ar] body .medical-hero .elementor-element.medical-hero-body .elementor-widget-heading.medical-hero-title h1.elementor-heading-title {
        text-align: center;
    }
    .medical-hero .medical-hero-brand img.dna-brand-logo {
        height: calc(var(--dna-logo-h, 44px) * 0.7727);
    }
}

/* == Candidature : un envoi qui se voit (2026-08-29) == */
/* Decision d'Elias. Portee : les formulaires de candidature des carrieres
   medicales seuls (.dna-careers-apply). Les regles generales ci-dessus (roue et
   message caches) continuent de servir tous les autres formulaires du site.
   Le script dna-careers-envoi-visible du theme pose aria-busy sur le bouton au
   depart de l'envoi et le retire sur un refus. */

/* Le bouton bloque : grise, sans clic, jusqu'a la page de remerciement. */
.dna-careers-apply .dna-apply-form .dna-apply-submit button.wpcf7-form-control.wpcf7-submit[aria-busy="true"] {
    opacity: .72;
    cursor: progress;
    pointer-events: none;
}

/* La fleche laisse place a une roue blanche, de la taille de la fleche. */
.dna-careers-apply .dna-apply-form .dna-apply-submit button.wpcf7-form-control.wpcf7-submit[aria-busy="true"] svg {
    display: none;
}

.dna-careers-apply .dna-apply-form .dna-apply-submit button.wpcf7-form-control.wpcf7-submit[aria-busy="true"]::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    box-sizing: border-box;
    border: 2px solid rgba(255, 255, 255, .45);
    border-top-color: #fff;
    border-radius: 50%;
    animation: dna-envoi-tourne .8s linear infinite;
}

@keyframes dna-envoi-tourne {
    to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
    .dna-careers-apply .dna-apply-form .dna-apply-submit button.wpcf7-form-control.wpcf7-submit[aria-busy="true"]::after {
        animation: none;
        border-color: #fff;
    }
}

/* Le message de Contact Form 7 (champ manquant, refus, echec), dans la langue
   du formulaire : visible sous la candidature. Cache tant que rien n'a ete
   envoye, pendant l'envoi et a la remise a zero. */
.dna-careers-apply .wpcf7 form .wpcf7-response-output {
    display: block !important;
    margin: 16px 0 0;
    padding: 12px 16px;
    border: 1px solid #d63637;
    border-radius: 10px;
    background: #fff5f3;
    color: #1a1a1a;
    font-size: 15px;
    line-height: 1.5;
}

.dna-careers-apply .wpcf7 form.init .wpcf7-response-output,
.dna-careers-apply .wpcf7 form.submitting .wpcf7-response-output,
.dna-careers-apply .wpcf7 form.resetting .wpcf7-response-output {
    display: none !important;
}

.dna-careers-apply .wpcf7 form.sent .wpcf7-response-output {
    border-color: #2e7d32;
    background: #f1f8f1;
}